Qualidade de Software Aula 6 / 2010 Prof. Dr. Luís Fernando Garcia luis@garcia.pro.br www.garcia.pro.br
Introdução As três dimensões críticas
Introdução
Começando MAL
CMMI Impeditivos
CMMI Desculpas
CMMI Desculpas
CMMI PASSOS IMPLANTAÇÃO
CMMI Treinamentos
CMMI Exemplo de Serviços
CMMI Exemplo de Serviços
CMMI Exemplo de Serviços
CMMI Exemplo de Serviços
CMMI Exemplo de Serviços
CMMI Exemplo de Serviços
CMMI SCAMPI?. níveis A e B?
CMM e CMMI
CMM e CMMI SEI Instituto de Engenharia de Software 1986 Estrutura de modelo de maturidade Requisição do governo americano (DoD) Avaliar a capacidade de fornecedores Melhoria dos processos dos fornecedores
CMM e CMMI SW-CMM Foco Inicial Desenvolvimento de Software Não incluia: Recursos Humanos Finanças Foco em PROJETOS curto prazo Foco em PEQUENOS PASSOS (níveis)
CMM CMM - Capability Maturity Model for Software CMMI Integration Maturidade? O quanto um processo está: Definido Gerenciado Medido Controlado Efetivo
CMM evolução/histórico
CMM e CMMI CMM 1993 (versão 1.1) vigente CMMI versão 1.2 caminhando para a versão 1.3 www.sei.cmu.edu/cmmi
CMM e CMMI CMMI versão 1.2 caminhando para a versão 1.3 www.sei.cmu.edu/cmmi
CMM - proposta Baseado na experiência prática das empresas; Refletir o melhor estado da prática; Ser documentado; Ser público.
CMM - Objetivos guiar organizações a conhecerem e melhorarem seus processos de software. Identifica práticas para um processo de software maduro, definindo as características de um processo de software efetivo. Descreve como as práticas de engenharia de software evoluem sob certas condições. Organiza os estágios de evolução da melhoria dos processos em cinco níveis de maturidade.
CMM - Níveis
CMM - Níveis Necessidade de ordenação: Níveis inferiores servem de base e fundamento para os superiores Risco de abandono do processo em crises
CMM Nível 1 - Inicial
CMM Nível 1 - Inicial Não há repetibilidade dos processos Em crise há abandono de procedimentos As chances de sucesso baseiam-se em habilidades pessoais/gurus/heróis Sucesso, qdo existe, em projetos com experiência anterior Tentativas isoladas de manutenção de procedimentos do processo As qualidades pertencem as pessoas, não aos processos
CMM Nível 1 - Inicial Estimativas/cronogramas não realistas Mesmo o planejado não é seguido (falta de costume) Requisitos codificação (ERRO!) Documentação = burocracia (ERRO!)
Nível 1 visibilidade
CMM Nível 1 - Inicial Para avançar ao nível 2 Mudança cultural Resistência a mudanças Reações intransigentes Falta de credibilidade de que dá/dará certo Introdução gradativa de KPAs
CMM Nível 2 - Repetível Políticas de gerência de desenvolvimento de software definidas e seguidas Utilização de experiências anteriores, de maneira formalizada e não-intuitiva Projetos usam processos definidos, documentados, usados, disseminados, medidos, fiscalizados e com rotinas de melhoria Gerência de projetos
CMM Nível 2 - Repetível Compromissos assumidos com bases realistas (especialmente quando há Knowhow)... Compromissos assumidos com base em requisitos documentados Desenvolvimento é acompanhado e revisado (custos, prazos, etc...) Mecanismos formais de correção de desvios Gerência de requisitos
CMM Nível 2 - Repetível A definição de processos é feita por projeto pode não haver padronização na organização Disciplina ao executar projetos // mas ainda não está preparada para mudanças maiores Processos repetíveis com resultados esperados As qualidades pertencem aos projetos, não às pessoas
Nível 2 visibilidade
CMM Nível 3 - Definido
CMM Nível 3 - Definido Processos estabelecidos e padronizados na organização não somente repetição de sucessos de projetos anteriores Estabelecimento de infra-estrutura de processos adaptáveis a mudanças Aderência a processo mesmo em crise Processos ainda em nível qualitativo
CMM Nível 3 - Definido Foco em documentação (não é mais burocracia!) Relação não-conformidades qualidade Processos de engenharia de software e gerenciais aplicados Oportunidade de escolha das melhores práticas Treinamento (técnico e gerencial)
CMM Nível 3 - Definido Possibilidade de adaptação dos processos as necessidades dos clientes Os processos pertencem à organização e não aos projetos
Nível 3 visibilidade
Analisando níveis 2 e 3
CMM Nível 4 - Gerenciado Estabelecimento de metas quantitativas para processos e produtos Avaliação e análise contínua do desempenho Melhoria no controle de processos e produtos Gestão baseada quantitativamente Proficiente em métricas/análise destas Base de dados de processo Gerenciamento de riscos
Nível 4 - visibilidade
CMM Nível 5 - Otimizado Melhoria contínua de processos Identificação de pontos fracos e defeitos Ação preventiva Mudanças de tecnologia com base em análises de custo/benefício Ações visando reduzir retrabalho e desperdício Melhoria da produtividade
CMM Nível 5 - Otimizado
Nível 5 - visibilidade
CMM em relação a PESSOAS
CMM em relação a TECNOLOGIA
CMM em relação a MÉTRICAS
CMM Componentes
CMM Componentes
CMM KPA x processos KPA (áreas chave de processo) Coleção de práticas que representam o nível de maturidade Grupo de atividades correlatas que realizam um conjunto de metas Identificam objetivos a serem cumpridos Cumulativas KPA estáticos Processos dinâmicos Processos evoluem na medida que o nível de maturidade cresce
CMM KPAs Nível 2 - Repetível Gerenciamento de Requisitos Planejamento do Processo de Software Acompanhamento e Supervisão do Projeto de Software Gerenciamento da Subcontratação de Software Controle da Qualidade de Software Gerenciamento de Configuração de Software
CMMI KPAs
CMMI nível 2 KPAs
CMMI nível 2 KPAs
CMM KPAs Nível 3 Definido Focalização dos Processos da Organização Definição dos Processos da Organização Programa de Treinamento Gerenciamento Integrado de Software Engenharia de Produto de Software Coordenação Inter Grupos Revisões Detalhadas para Prevenção de Defeitos
CMM KPAs
CMMI nível 3 - KPAs
CMMI nível 3 - KPAs
CMM KPAs Nível 4 - Gerenciado Gerenciamento Quantitativo dos Processos Gerenciamento da Qualidade de Software
CMMI nível 4 - KPAs
CMM KPAs Nível 5 - Otimizado Prevenção de Falhas Gerenciamento das Mudanças nos Processos Gerenciamento das Mudanças Tecnológicas Características Comuns Compromisso para Realizar (políticas e responsabilidades) Capacidade para Realizar (recursos, estruturas e treinamento)
CMM KPAs Nível 5 - Otimizado Ações e Atividades Realizadas (planejamento, procedimentos e ações corretivas) Mensuração e Análise (medidas e avaliações) Verificação da Implantação (revisões e auditorias)
CMMI nível 5 - KPAs
CMMI SW-CMM P-CMM Recursos humanos SA-CMM Aquisição de software SE-CMM Engenharia de sistemas Estruturas, formatos e termos diferentes Confusão quando integrados/simultâneos
CMMI CMMI Capability Maturity Model Integration Guia de melhoria de processos na organização habilidade em gerenciar: Desenvolvimento Aquisição Manutenção
CMMI Terminologia: Área de processo Conjunto de práticas que coletivamente satisfazem um conjunto de objetivos Objetivos específicos Identificam características únicas que descrevem o que deve ser feito para satisfazer
CMMI Terminologia: Práticas específicas Atividades para atingir objetivo específico Objetivos genéricos Um por nível o que deve-se fazer para atingir um determinado nível (5) Práticas genéricas Processos efetivos e repetíveis
CMMI
CMMI
CMMI
CMM Componentes
CMMI Disciplinas/corpos de conhecimento Engenharia de sistemas Multidisciplinar soluções que envolvem ou não sw Avião? Avião é o sistema Engenharia de software Desenvolvimento e integração Colaboração de stakeholders para atender requisitos Fontes de aquisição Fornecedores de sw outsourcing/terceirização
CMMI Representações Estágio/estagiada Idem ao CMM Níveis de maturidade Normalmente preferida Contínua Possíveis selecionar a sequência de melhorias que convem aos objetivos de negócios ISO 15504 CMMI
CMMI
CMMI
CMMI
CMMI estagiada Níveis sugerem ordem de melhoria Nível n Áreas de Processo Área n objetivos e práticas genéricas/especificos Aspectos comuns práticas genéricas
Nível 5 Área de Processo 1.. Objetivos Específicos Objetivos Específicos Nível 4 Área de Processo N Objetivos Genéricos Nível 3 e Nível 2 Características COMUNS Compromisso com execução Habilidade para execução Direção da implementação Verificação da implementação Nível 1
CMMI estágio
CMMI contínua
CMMI Contínua 4 Categorias Gerência de processo Foco no Processo da organização Definição do Processo da organização Treinamento organizacional Desempenho do processo organizacional Inovação e melhoria organizacional
CMMI Contínua 4 Categorias Gerência de projeto Planejamento de projeto Acompanhamento e controle de projeto Gerência de acordos com fornecedores Gerência integrada de projeto Gerência de risco Gerência quantitativa de projeto
CMMI Contínua 4 Categorias Engenharia Gerência de requisitos Desenvolvimento de requisitos Solução Técnica Integração de produto Verificação Validação
CMMI Contínua 4 Categorias Suporte Gerência de configuração Garantia da qualidade de processo e de produto Medição e análise Análise de decisão e resolução Análise causal e resolução
CMMI cont.
CMMI
CMMI
CMMI e Métodos Ágeis
SCAMPI Artigo
SCAMPI Entrevista em grupo
SCAMPI Entrevista GP
SCAMPI Descoberta preliminares
CMM e pequenas empresas Pequena empresa? Métrica? Tamanho do projeto? Custo prazo envolvidos pontos de função? Alguns autores não consideram o tamanho outros consideram Relatos Muita pesquisa acadêmica
CMM e pequenas empresas Ação, a menor a ter CMMI 2 no mundo A Ação Sistemas acaba de certificar-se CMMI nível 2. Com uma equipe de 10 analistas, a conquista faz da empresa gaúcha a dona do selo com o menor número de funcionários em todo o mundo, segundo o Software Engineering Institute, instituto americano criador do modelo de qualidade de software. O processo de adoção das práticas do CMMI demandou quase dois anos da empresa, desenvolvedora do software de gestão de RH UniversalRH, hoje usado por 80 organizações no Brasil. Foram duas mil horas de trabalho interno, revela Luiz Carlos Leite, diretor de operações da Ação. O investimento total chega a R$ 1 milhão, entre as horas gastas pelos colaboradores, consultoria das empresas Crest Consulting e Herbert Consulting e a prova de certificação final. Já tivemos um retorno de 50% durante a implementação, acredita Leite. De acordo com o executivo, o principal ganho foi na previsibilidade dos projetos a margem de atraso hoje é de 5%, para cima ou para baixo -, e na estabilidade dos sistemas, cujo indicador mínimo estabelecido é 95%. Os clientes percebem o valor do CMMI. Depois de dizer que temos o selo, não é preciso mais falar sobre processos de desenvolvimento, explica Leite. A Ação atende a empresas como a Wal-Mart, que tem 100 mil funcionários no país, ou a Marcopolo, que tem plantas em 12 países diferentes. O empresário gaúcho garante que já tem na programação a conquista do nível 3 do CMMI. Vamos ir até o final, garante Leite. Fonte: Baguete
CMM e pequenas empresas PSP/TSP MPS.BR
CMM Panorama Brasil
CMMI Panorama Brasil
CMMI Panorama Brasil
CMMI Panorama Brasil
CMMI mundo 2010
CMMI mundo 2010
CMMI tempo obtenção
CMMI tamanho
http://sas.sei.cmu.edu/pars/pars.aspx