Qualidade de Software
Aula 6 / 2014/1
Prof. Dr. Luís Fernando Garcia
[email protected]
www.garcia.pro.br
Qualidade de Software
Aula 6 / 2012
Prof. Dr. Luís Fernando Garcia
[email protected]
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


Objetivos genéricos


Atividades para atingir objetivo específico
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




Engenharia de software
Desenvolvimento e integração


Multidisciplinar – soluções que envolvem ou não sw
Avião? Avião é o “sistema”
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


Área de Processo 1
Nível 5
Objetivos
Específicos
Objetivos
Específicos
…..
Nível 4
Área de Processo N
Objetivos
Genéricos
Nível 3
Nível 2
Nível 1
e
Características COMUNS
Compromisso com execução – Habilidade para execução
Direção da implementação – Verificação da implementação
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 2012
CMMI –mundo 2012
CMMI –mundo 2012
CMMI –mundo 2012
CMMI – tempo obtenção
CMMI – tamanho
http://sas.sei.cmu.edu/pars/pars.aspx
CONTRAPONTOS ao CMMI
Download

Maturidade em Qualidade de Software – CMMI