visão geral de engenharia de software - seja bem-vindo...
TRANSCRIPT
![Page 1: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/1.jpg)
Visão Geral de Engenharia de
Software
Ricardo de Almeida Falbo
Ontologias para Engenharia de Software Departamento de Informática
Universidade Federal do Espírito Santo
![Page 2: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/2.jpg)
Agenda
• Engenharia de Software: Definição
• Processo de Software
• Normas e Modelos de Qualidade de Processo de Software
– CMMI
– ISO/IEC 12207
– ISO 29110
– MR-MPS-SW (MPS.BR)
– SWEBOK
– ISO/IEC 24744
![Page 3: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/3.jpg)
Engenharia de Software
• O que é?
• Segundo o IEEE Standard Glossary for Software Engineering: “a aplicação de uma abordagem sistemática, disciplinada e quantificável para o desenvolvimento, operação e manutenção de software, i.e., a aplicação de engenharia a software.”
• Área da Ciência da Computação voltada à especificação, desenvolvimento e manutenção de sistemas de software, com aplicação de tecnologias e práticas de gerência de projetos e outras disciplinas, visando organização, produtividade e qualidade no processo de software.
![Page 4: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/4.jpg)
Processo de Software
• Envolve as atividades, métodos e práticas que guiam os profissionais na produção de software.
4
Processo de Software
Processos
Atividades
Pré-atividades
Subatividades
Artefatos
Insumos
Produtos
Recursos
Recursos Humanos
Ferramentas de Software
Hardware
Procedimentos
Métodos
Técnicas
Roteiros
![Page 5: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/5.jpg)
Processo de Software
5
Processo de Desenvolvimento de Software
Processo de Gerência de Projetos
Processos de Apoio
Produto
de
Software
![Page 6: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/6.jpg)
Processo de Desenvolvimento
• Engloba as atividades que contribuem diretamente para o desenvolvimento do produto de software a ser entregue ao cliente, incluindo a sua documentação:
– Levantamento e Análise de Requisitos
– Projeto
– Implementação
– Testes
– Implantação e Entrega do Sistema
6
![Page 7: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/7.jpg)
Processo de Engenharia de Requisitos e Processo de Software
7
Levantamento de Requisitos
Análise de Requisitos
Projeto
V&V de Requisitos
Gerência de Requisitos
Gerência de Configuração
Gerência da Qualidade
Processo de Desenvolvimento
...
Gerência de Projetos
![Page 8: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/8.jpg)
Processo de Desenvolvimento
Planejamento
Determinação do Escopo do Software
Definição do Processo de Software do Projeto
Realização de Estimativas
Estimativa de Tamanho
Estimativa de Esforço
Estimativa e Alocação de Recursos
Estimativa de Tempo e Elaboração do Cronograma do Projeto
Estimativa de Custos e Elaboração do Orçamento do Projeto
Identificação de Riscos e Planejamento de Respostas aos Riscos
Iniciação Acompanhamento
Levantamento preliminar de requisitos marco
Encerramento
8
Processo de Gerência de Projetos
![Page 9: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/9.jpg)
Processos de Apoio
• Documentação de Software
• Gerência de Configuração de Software
– Controle de Questões
– Controle de Alterações
– Controle de Versões
• Gerência da Qualidade
– Verificação & Validação
– Testes, Inspeções, Revisões
– Garantia da Qualidade
• Medição
• Reutilização
• Gestão do Conhecimento
![Page 10: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/10.jpg)
CMMI
• Objetivo: fornecer direcionamentos para melhorar os processos de uma organização e sua capacidade de gerenciar o desenvolvimento, aquisição e manutenção de produtos e serviços.
• Provê abordagens comprovadas em uma estrutura que ajuda organizações a avaliar sua maturidade ou capacidade em determinada área de processo, estabelecer prioridades para melhoria, e implementar essas melhorias.
![Page 11: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/11.jpg)
CMMI
• Trabalha com duas representações: em estágio e contínua.
• Ambas as representações contém áreas de processo comuns. Porém, na representação em estágio, as áreas de processo estão agrupadas em níveis de maturidade e na representação contínua, a mesma área de processo está dividida em categorias.
• A abordagem em estágio é passível de certificação.
![Page 12: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/12.jpg)
CMMI
![Page 13: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/13.jpg)
CMMI
![Page 14: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/14.jpg)
![Page 15: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/15.jpg)
CMMI
![Page 16: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/16.jpg)
CMMI Nível Área de Processo
5 (mais alto) Gerência do Desempenho Organizacional
Análise de Causas e Resolução de Problemas
4 Desempenho do Processo Organizacional
Gerência Quantitativa de Projeto
3
Análise de Decisão e Resolução
Gerência de Riscos
Gerência Integrada de Projeto
Treinamento Organizacional
Definição do Processo Organizacional
Foco no Processo Organizacional
Validação
Verificação
Integração de Produto
Solução Técnica
Desenvolvimento de Requisitos
2
Medição e Análise
Gerência de Configuração
Garantia da Qualidade de Processo e Produto
Gerência de Acordo com Fornecedores
Monitoramento e Controle de Projeto
Planejamento de Projeto
Gerência de Requisitos
![Page 17: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/17.jpg)
ISO 12207 - Processos de Ciclo de Vida
• Abrange tanto a Engenharia de Software quanto a Engenharia de Sistemas.
• Estabelece uma estrutura comum para os processos de ciclo de vida de software e de sistemas, com terminologia bem definida, que pode ser referenciada pela indústria de software.
• Estabelece uma estrutura comum para os processos de ciclo de vida de software.
• A estrutura contém processos, atividades e tarefas que devem ser aplicados na aquisição, fornecimento, desenvolvimento, operação e manutenção de produtos de software.
![Page 18: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/18.jpg)
ISO 12207
• Esse conjunto de processos, atividades e tarefas foi projetado para ser adaptado de acordo com as características de cada projeto de software, o que pode envolver o detalhamento, a adição e a supressão de processos, atividades e tarefas não aplicáveis ao mesmo.
• Estrutura
– Processo
• Propósito
• Resultados
• Atividades
– Tarefas
![Page 19: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/19.jpg)
ISO 12207 Processo
Propósito
Resultados
Atividade
Tarefa
![Page 20: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/20.jpg)
ISO/IEC 12207 - Processos de Ciclo de Vida
![Page 21: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/21.jpg)
ISO 29110 - Perfis de ciclo de vida para micro organizações • É uma série de normas de Engenharia de Software, voltada
para micro organizações de software (até 25 pessoas).
• Um grupo de perfis oferece uma abordagem progressiva para atender à maioria das micro organizações (MOs).
![Page 22: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/22.jpg)
ISO 29110
Parte Certificadora
Guia de Avaliação
Guia de Implementação
![Page 23: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/23.jpg)
ISO 29110
• Entrada: foca em MOs iniciantes e naquelas que estejam trabalhando em projetos pequenos (tamanho inferior a seis pessoas-mês)
• Básico: descreve as práticas de desenvolvimento de software de um único aplicativo por uma única e sem nenhum risco especial ou fatores situacionais.
• Intermediário: visa MOs que estejam desenvolvendo múltiplos projetos
• Avançado: se aplica às MOs que querem crescer como negócios de desenvolvimento de software independente
![Page 24: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/24.jpg)
ISO 29110
• Cada perfil tem um conjunto de processos.
• Para implementar cada processo, devem ser executadas as suas atividades, atingidos seus objetivos e produzidos os produtos de trabalho obrigatórios.
• Estrutura:
– Processo • Propósito
• Objetivos
• Produtos de Entrada, Internos e de Saída
• Papéis Envolvidos
• Atividades (indica objetivos relacionados)
– Tarefas (para cada tarefa, são informados os papéis envolvidos e os produtos de entrada e saída).
![Page 25: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/25.jpg)
ISO 29110
• Perfil Básico
![Page 26: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/26.jpg)
ISO 29110
• Perfil Básico
![Page 27: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/27.jpg)
ISO 29110
• Cada atividade da ISO/IEC 29110 é descrita utilizando uma tabela de quatro colunas: papéis envolvidos em uma atividade específica, tarefas, suas entradas e saídas.
• Exemplo de uma tarefa da atividade de Análise de Requisitos do Software
• Para ajudar as MOs, é descrito o conteúdo típico dos documentos produzidos durante a execução de um projeto.
![Page 28: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/28.jpg)
MPS.BR
• O MPS.BR – Melhoria de Processo do Software Brasileiro (SOFTEX, 2011) tem como objetivo definir um modelo de melhoria e avaliação de processo de software, adequado, preferencialmente, às micro, pequenas e médias empresas brasileiras.
• O MPS.BR está dividido em três componentes:
– Modelo de Referência (MR-MPS)
– Método de Avaliação (MA-MPS)
– Modelo de Negócio (MN-MPS)
![Page 29: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/29.jpg)
![Page 30: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/30.jpg)
MR-MPS-SW
• Estrutura:
– Processo
• Propósito
• Resultados Esperados
![Page 31: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/31.jpg)
MR.MPS
![Page 32: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/32.jpg)
SWEBOK 3.0
![Page 33: Visão Geral de Engenharia de Software - Seja Bem-Vindo ...falbo/files/OES/OES2-ES-Visao_Geral.pdf · •Normas e Modelos de Qualidade de Processo de Software –CMMI –ISO/IEC 12207](https://reader031.vdocuments.net/reader031/viewer/2022020415/5be30efc09d3f23e6c8c6dd5/html5/thumbnails/33.jpg)
ISO/IEC 24744
• Software Engineering — Metamodel for Development Methodologies
• Define um Metamodelo para Metodologias de Desenvolvimento, incluindo três aspectos principais:
– Processos
– Produtos de Trabalho a usar ou produzir
– Pessoas e Ferramentas envolvidas.