Baixe o app para aproveitar ainda mais
Prévia do material em texto
Gerenciamento da Qualidade Qualidade de Software CMMI O que é um processo de software • Processo - uma seqüência de passos realizados para um determinado propósito. (IEEE) • Processo de Software - conjunto de atividades, métodos, práticas e tecnologias que as pessoas utilizam para desenvolver e manter software e produtos relacionados (CMMI) Processo de desenvolvimento de software Entendimento Modificação Revalidação Projeto Codificação Teste Análise de Sistema Análise de Requisitos DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO Atividades de Apoio • Gerenciamento de Configuração • Garantia de Qualidade de Software • Planejamento e Acompanhamento Fonte: Erika Nina Höhn Premissa para a qualidade do processo de software • A Qualidade do Processo de Software é dependente da qualidade do Processo de Desenvolvimento de Software realizado. DEFINIÇÃO CONSTRUÇÃO MANUTENÇÃO A T IV ID A D E S D E A P O IO Processo de Desenvolvimento de Software SEI – instituto de Engenharia de Software que é um centro de pesquisa na Universidade de Carnegie-Mellon Modelo de avaliação de capacitação de fornecedores CMM (Capability Maturity Model) Framework CMMI Surge para integrar os vários modelos CMM de Engenharia de Sistemas e de Software Qualidade de processo de software X Maturidade de processo de software • A maturidade dos processos de software de uma organização influencia na sua capacidade de atingir metas de custo, qualidade e cronograma. • A qualidade do processo de software pode ser analisada através do nível de maturidade do processo. Processo de software imaturo • CARACTERÍSTICAS • Processo de Desenvolvimento de Software ad hoc; improvisado. • Processo de Desenvolvimento de Software fortemente dependente dos profissionais. • Processo de Desenvolvimento de Software indisciplinado. Processo de software imaturo • CONSEQÜÊNCIAS • Produtividade geralmente menor • Prazo e qualidade de difícil previsão • Custos de manutenção geralmente altos • Baixa visão do progresso e da qualidade • Mais riscos na adoção de nova tecnologia • “Incêndios” freqüentes Processo de software maduro Características • Processo de desenvolvimento de software conhecido por todos • Processo de desenvolvimento de software com apoio visível da alta administração • Auditagem da fidelidade ao processo de desenvolvimento de software • Medidas do Produto e do Processo de desenvolvimento de software Processo de software maduro Características • Adoção disciplinada de tecnologia • Uso de teste-piloto • Papéis e responsabilidades claras e inequivocamente definidos • Acompanhamento da qualidade do produto e da satisfação do cliente Processo de software maduro Consequências • Expectativas para custos, cronograma, funcionalidades e qualidade de produto de um modo geral, usualmente, alcançadas. • Melhoria constante do processo de desenvolvimento de software porque: • ele é definido e documentado • compreendido, vivo e ativo Melhoria de processo de software • O crescente reconhecimento da importância de se garantir a Qualidade de um Produto de Software (considerando os requisitos dos diversos pontos de vista) tem levado muitas organizações a melhorar o controle sobre todos os elementos envolvidos no desenvolvimento desse produto Melhoria de Qualidade de Processo de Software CMMI • CMMI é um modelo de melhoria desenvolvido pelo Instituto de Engenharia de Software da Universidade Carnegie Mellon (SEI). • Apresenta de forma organizada os processos que uma organização necessita executar para atingir os seus objetivos. CMMI • É uma evolução do CMM. • Uma estrutura que descreve os elementos chaves de um processo de software eficaz. • Um caminho de melhoramento evolucionário (5 níveis de maturidade) para organizações de software mudarem de um processo de software imaturo, ad hoc, para um processo maduro, disciplinado. • Fornece uma maneira da organização manter, melhorar, institucionalizar e gerenciar os seus processos. Representação • Representação Contínua (Continuous) • Permite que a organização escolha uma determinada área de processo (ou grupo de áreas de processo) e melhore processos relacionados a ela. • Utiliza níveis de capacidade para caracterizar a melhoria associada. • Representação por Estágios (Staged) • Utiliza conjuntos predefinidos de áreas de processo para definir um caminho de melhoria para uma organização. • Esse caminho é caracterizado por níveis de maturidade. • Cada nível contém um conjunto de áreas de processos que caracterizam diferentes comportamentos organizacionais. Representação • Por estágios (Staged) • Caminho de melhoria pré-definido • 5 Níveis de maturidade: • Contínua (Continuous) • Possibilita escolher uma única área de processo para evoluir • 4 Níveis de capacitação: Área de processo em OtimizaçãoÁrea de processo Inicial Organização em OtimizaçãoOrganização Inicial Áreas Objetivos Práticas Áreas de processo relevantes para a capacitação e aprimoramento do processo de sottware Gerenciamento do Processo Definição de processo organizacional Foco no processo organizacional Treinamento organizacional Desempenho de processo organizacional Inovação e implantação organizacional Gerenciamento do Projeto Planejamento de projeto Monitoração e controle de projeto Gerenciamento de acordo com fornecedores Gerenciamento de projeto integrado Gerenciamento de riscos Integração de equipes Gerenciamento quantitativo de projeto Áreas de Processo Engenharia Engenharia de requisitos Desenvolvimento de requisitos Solução técnica Integração de produto Verificação Validação Apoio Gerenciamento de configuração Gerenciamento de qualidade de processo e produto Medição e análise Análise de decisão e resolução Ambiente organizacional para integração Análise causal e resolução As áreas de processo são agrupadas em categorias que possuem características em comum: Interpretando os níveis de capacitação O CMMI Continuous classifica as áreas de processo da organização em seis níveis de capacitação: • 0 – Incompleto: Possui um processo que não seja realizado ou seja realizado parcialmente • 1 – Realizado: Possui um processo realizado; Satisfaz os objetivos específicos • 2 – Gerenciado: O processo é planejado e realizado; Possui gerência • 3 – Definido: Possui um processo único para a organização que é planejado e realizado • 4 – Gerenciado Quantitativamente: O processo é controlado usando estatísticas ou qualquer outra técnica quantitativa • 5 – Em Otimização: O processo é continuamente melhorado CMMI por Estágios : permite avaliação da maturidade do processo em 5 níveis Áreas 24 Objetivos Práticas Descrições abstratas de um estado desejado que devem ser atingidos por uma organização. Áreas 24 Objetivos Práticas Maneiras de atingir um objetivo CMMI reconhece que o objetivo é mais importante que suas práticas ... organizações podem usar quaisquer práticas para se atingir um dos objetivos Área de Processo Declaração do propósito Notas Introdutórias Áreas de Processo Relacionadas Objetivos Específicos Objetivos Genéricos Práticas Específicas Práticas Genéricas Produtos de Trabalho Sub-práticas Elaborações de Práticas Genéricas Chave: Requerido Esperado Informativo Estrutura do modelo Fonte: WESLEY, Addison. CMMI: Guidelinesfor Process Integration and Product Improvement. 2003. Áreas de processo (PA) • Áreas do processo onde a organização deve focar para ter o seu processo melhorado. • O nível de capacitação de uma área de processo representa o grau de institucionalização que esta área de processo possui dentro da empresa. • Para melhorar o nível de capacitação, a organização tem objetivos a realizar. Área de Processo Declaração do propósito Notas Introdutórias Áreas de Processo Relacionadas Objetivos Específicos Objetivos Genéricos Práticas Específicas Práticas Genéricas Produtos de Trabalho Sub-práticas Elaborações de Práticas Genéricas Chave: Requerido Esperado Informativo Modelo de componentes Fonte: WESLEY, Addison. CMMI: Guidelines for Process Integration and Product Improvement. 2003. Objetivos Específicos (SG) • Objetivos que se relacionam a uma específica Área de Processo. • Descrevem o que deve ser implementado para satisfazer a área de processo. • São utilizados em avaliações para determinar se a área de processo foi satisfeita. Área de Processo Declaração do propósito Notas Introdutórias Áreas de Processo Relacionadas Objetivos Específicos Objetivos Genéricos Práticas Específicas Práticas Genéricas Produtos de Trabalho Sub-práticas Elaborações de Práticas Genéricas Chave: Requerido Esperado Informativo Modelo de componentes Fonte: WESLEY, Addison. CMMI: Guidelines for Process Integration and Product Improvement. 2003. Objetivos Genéricos (GG) • Objetivos que são comuns a múltiplas Áreas de Processo do modelo. • Elas ajudam a determinar se a área de processo foi institucionalizada indicando se os processos são efetivos, repetíveis e duradouros. • Cada área de processo possui 5 objetivos genéricos, ou seja, cada objetivo genérico está associado a um nível de capacitação. Área de Processo Declaração do propósito Notas Introdutórias Áreas de Processo Relacionadas Objetivos Específicos Objetivos Genéricos Práticas Específicas Práticas Genéricas Produtos de Trabalho Sub-práticas Elaborações de Práticas Genéricas Chave: Requerido Esperado Informativo Modelo de componentes Fonte: WESLEY, Addison. CMMI: Guidelines for Process Integration and Product Improvement. 2003. Práticas • Práticas são atividades que devem ser realizadas para que os objetivos de cada área de processo sejam satisfeitos. • As práticas descrevem a infra-estrutura e as atividades que mais contribuem para a implementação e institucionalização eficaz da área de processo. • Subpráticas e exemplos são fornecidos no modelo para ajudar a explicar a prática com mais detalhes. Área de Processo Declaração do propósito Notas Introdutórias Áreas de Processo Relacionadas Objetivos Específicos Objetivos Genéricos Práticas Específicas Práticas Genéricas Produtos de Trabalho Sub-práticas Elaborações de Práticas Genéricas Chave: Requerido Esperado Informativo Modelo de componentes Fonte: WESLEY, Addison. CMMI: Guidelines for Process Integration and Product Improvement. 2003. Esquema de numeração • Cada prática específica possui a seguinte modelo de numeração: • SP X.Y-Z Nome de prática específica • Onde: • X = Número do objetivo específico • Y = Número sequencial da prática específica • Z = Nível de capacitação da prática específica Área de Processo Declaração do propósito Notas Introdutórias Áreas de Processo Relacionadas Objetivos Específicos Objetivos Genéricos Práticas Específicas Práticas Genéricas Produtos de Trabalho Sub-práticas Elaborações de Práticas Genéricas Chave: Requerido Esperado Informativo Modelo de componentes Fonte: WESLEY, Addison. CMMI: Guidelines for Process Integration and Product Improvement. 2003. Práticas genéricas (GP) • Descrevem o que deve ser feito para a realizar o objetivo genérico. • Está voltada à institucionalização. • Práticas genéricas estão diretamente relacionadas com os níveis de capacitação. Áreas Monitoração e controle do projeto Objetivos Os requisitos são analisados e validados e uma definição de funcionalidade necessária é desenvolvida Práticas Analisar os requisitos derivados para assegurar que eles são necessários e suficientes Exemplo Referências: Somerville, Ian. Engenharia de Software. 8ª. Edição. São Paulo: Pearson Addison Wesley, 2007. CMMI - http://www.sei.cmu.edu/cmmi/ http://cmmiinstitute.com/ CMMI® para Desenvolvimento – Versão 1.2 http://www.sei.cmu.edu/library/assets/whitepapers/cmmi-dev_1-2_portuguese.pdf PINHEIRO, DIOGO GRAÇA. Iniciando o CMMI em uma pequena empresa de engenharia de software Diagnóstico e proposta de implementação: Disponível em: http://pro.poli.usp.br/wp- content/uploads/2012/pubs/iniciando-o- cmmi-em-uma-pequena-empresa-de-engenharia-de-software.pdf Apresentação feita pela Profa. Erika Nina Höhn
Compartilhar