Você está na página 1de 7

Modelo CMM - Introduo Introduo ao Modelo CMM

Engenharia de Software II, DSC/UFCG, 2003.2 Patrcia D. L. Machado


1

Descreve Tcnicas de Engenharia de Software e Prticas de Gerenciamento que caracterizam organizaes com relao a maturidade de seus processos. Desenvolvido pelo Software Engineering Institute (Carnegie Mellon University) aps 6 anos de experincia em melhoria de processos de software (1986). Prov diretivas para o controle dos processos em empresas e como evoluir de uma cultura de Engenharia de Software para excelncia em Gerenciamento de Processos, bem como selecionar estratgias para melhoria de processos atravs da identificao do nvel corrente de maturidade. A fim de estabelecer metas para melhoria de processos necessrio um bom conhecimento da organizao.
2

Aplicao do CMM
Melhoria de processos de software Avaliao qualitativa de processos de software Avaliao quantitativa de capacidade de software

Organizaes Imaturas x Maduras

Organizaes Imaturas
Processo de software improvisado No seguido rigorosamente Reacionria Gerentes concentram em crises imediatas Escalonamentos e oramentos esto sempre em atraso/excedentes Previses no so baseadas em estimativas realsticas Funcionalidade e qualidade de produtos ficam comprometidas No existe uma base objetiva para julgar a qualidade de um produto ou para solucionar problemas Atividades para melhorar a qualidade como revises e teste so eliminadas
5

Organizaes Maduras
Capacidade para gerenciamento e manuteno de processos Processo comunicado precisamente Atividades so desenvolvidas de acordo com o planejado Processos so teis e consistentes Processos so modificados e melhorados quando necessrio Papis e responsabilidades so claros durante todos os processos e na organizao como um todo Base objetiva e quantitativa para avaliar qualidade de produtos e analisar problemas Escalonamentos e oramentos so realsticos baseados em performances anteriores. Os resultados esperados so normalmente atingidos Processo seguido consistentemente e os participantes entendem o valor disto.
6

CMM - Conceitos
Processo de Software - conjunto de atividades, mtodos, prticas e transformaes que so usados para desenvolver e manter software e produtos associados. Capacidade do processo de software - descreve a faixa de resultados esperados que podem ser obtidos quando um processo de software for seguido. Performance do processo de software - representa os resultados obtidos quando um processo de software for seguido.

Nveis de Maturidade
Melhoria Contnua de Processos Processo Previsvel

Otimizado Organizao Madura

Gerenciado

Processo Padronizado e Consistente

Definido Repetvel Imatura


8

Maturidade do processo de software - indica o quanto um processo de software definido, gerenciado, medido, controlado e efetivo. Maturidade indica potencial para crescimento em capacidade.
7

Processo Disciplinado

Inicial

Nvel 1 - Inicial
Organizao no possui um ambiente estvel para desenvolvimento e manuteno de software Dificuldade em manter compromissos Crises diversas - Gerenciamento abandonado Sucesso depende da habilidade das pessoas envolvidas Quando pessoas-chave deixam a organizao, as crises se proliferam Capacidade uma caracterstica de indivduos e no da organizao
9

Nvel 2 - Repetvel
Procedimentos para gerenciar e implementar processos de software so estabelecidos Processos baseados em experincias anteriores com projetos semelhantes Compromissos mais realistas so estabelecidos com base em resultados anteriores

10

Nvel 2 Repetvel
Custos, estimativas e funcionalidade so rastreados Padres de projeto so definidos e a organizao garante que eles so seguidos Existem polticas para guiar o estabelecimento de processos de gerenciamento adequados Organizao disciplinada, rastreamento estvel de projetos e sucessos anteriores podem ser repetidos

Nvel 3 - Definido
Processo padro para desenvolvimento e manuteno na organizao documentado e consistente Processos estabelecidos contribuem para aumentar a performance e so modificados se necessrio Existe um grupo responsvel pelas atividades de processo de software da organizao Programas de treinamento so aplicados para garantir que papis possam ser cumpridos

11

12

Nvel 3 - Definido
Processo padro ajustado de forma coerente com caractersticas particulares de um projeto Gerenciamento tem uma boa viso do progresso tcnico em todos os projetos Atividades de gerenciamento e desenvolvimento so estveis e repetveis Qualidade de software analisada Entendimento comum das atividades, papis e responsabilidades em processo de software bem definido
13

Nvel 4 - Gerenciado
Organizao estabelece mtricas para produtos e processos Base de dados coletam e analisam dados de processos definidos para cada projeto Mtricas consistentes e bem definidas Fundamentao quantitativa para avaliar processos e produtos Projetos adquirem controle sobre processos e produtos considerando uma margem quantitativa aceitvel.
14

Nvel 4 - Gerenciado
Riscos so conhecidos e cuidadosamente gerenciados Organizaes so avaliveis quantitativamente e previsveis Processos so medidos e operam dentro de limites Processos so estveis Circunstncias excepcionais podem ser identificadas e corrigidas Produtos de software so de alta qualidade

Nvel 5 - Otimizado
Organizao est concentrada em desenvolvimento contnuo (melhoria contnua de processos) possvel identificar fraquezas nos processos e prevenir a ocorrncia de defeitos possvel analisar a relao custo-benefcio na adoo de novas tecnologias Tecnologias e melhoria de processos so planejadas e gerenciadas Capacidade uma caracterstica da organizao e no de indivduos
16

15

Capacidade e Predio de Performance


O nvel de maturidade de uma organizao indica a capacidade de prever se um dado projeto atingir suas metas A medida que a maturidade de uma organizao aumenta:
a diferena entre o planejado e o atingido diminui a variao da mdia obtida para projetos similares diminui aprimoram-se os resultados obtidos os custos e tempo de desenvolvimento diminuem qualidade e produtividade aumentam
17

Capacidade e Predio de Performance


Melhoria de processos principalmente motivada pela diminuio da necessidade de retornos contnuos de fases terminais para fases anteriores a fim de corrigir erros Em organizaes maduras, prticas de gerenciamento e engenharia ajudam a identificar e tratar problemas identificados o quanto antes no processo de desenvolvimento de software

18

Pulando Nveis de Maturidade


Melhoria contnua de processos baseada em mltiplos passos evolucionrios ao invs de transies abruptas Cada nvel de maturidade forma uma base necessria para se atingir o prximo nvel A prtica de melhoria de processos em nveis anteriores aos quais elas so recomendadas de alto risco. A fim de atingir um nvel superior, prticas so recomendadas.
19

Estrutura Interna do Nveis de Maturidade


Metas Nvel de Maturidade reas-Chave Prticas-Chave

Caractersticas Comuns

20

Estrutura Interna dos Nveis de Maturidade


Nveis de maturidade indicam capacidade Com exceo do nvel 1, cada nvel de maturidade composto de reas-chave que indicam onde uma organizao deve se concentrar a fim de melhorar seus processos de software Caractersticas comuns especificam a satisfao das prticas-chave Prticas-chave quando aplicadas em conjunto, levam a concretizao das metas a serem atingidas em cada rea-chave
21

reas-chave
Identificam um grupo de atividades relacionadas que, quando executadas coletivamente, atingem um conjunto de metas consideradas importantes para enriquecer a capacidade de processos. Identificam as questes que precisam ser consideradas a fim de atingir um nvel de maturidade requisitos para atingir um nvel

22

reas-chave
O caminho para atingir as metas de uma rea-chave podem diferir para projetos distintos com base nas diferenas de domnios de aplicao e ambientes. Porm, todas as metas devem ser atingidas As reas indicadas no CMM so reas-chave para determinar a capacidade de processos. Satisfao de uma rea-chave determinada quando metas so atingidas.
23

reas-chave
Repetvel (2) Gerenciamento de Configurao Garantia de Qualidade Gerenciamento de Contratos Rastreamento de Projetos Planejamento de Projetos Gerenciamento de Requisitos Definido (3) Revises Coordenao inter-grupo Engenharia de Produtos Gerenciamento Integrado Programas de Treinamento Definio do Processo da Organizao Enfoque em Processos da Organizao

Otimizado (5) Gerenciado (4) Gerenciamento de Qualidade de Gerenciamento de Mudana de Processo Software Gerenciamento Quantitativo de Gerenciamento de Mudana de Tecnologia Processos Preveno de Defeitos
24

reas-chave: Nvel 2
Visam estabelecer controle de gerenciamento de processo bsicos. Gerenciamento de Requisitos - Estabelecer um entendimento comum entre clientes e projeto que a base para o planejamento e gerenciamento do projeto. Planejamento de Projetos - Estabelecer planos para a execuo e gerenciamento de um projeto de software. Rastreamento de Projetos - Tornar visvel o progresso real de projetos a fim de que o gerenciamento possa tomar aes efetivas.

reas-chave: Nvel 2
Gerenciamento de Contratos - Selecionar fornecedores qualificados e gerenci-los efetivamente Garantia de Qualidade - Prover visibilidade adequada do processo sendo utilizado pelo projeto e dos produtos sendo construdos Gerenciamento de Configurao - Estabelecer e manter a integridade de produtos do projeto em todo o ciclo de vida.
25 26

reas-chave: Nvel 3
Visam estabelecer infra-estrutura para institucionalizar a prtica efetiva de engenharia de software e o gerenciamento de processos Enfoque em Processos da Organizao Estabelecer responsabilidade organizacional para aumentar a capacidade de processos de software. Definio do Processo da Organizao Desenvolver e manter um conjunto guias para melhorar a performance de processos e prover uma base para dados significativos para o gerenciamento quantitativo de processos.
27

reas-chave: Nvel 3
Programas de Treinamento - Desenvolver habilidades e conhecimento dos indivduos a fim de que possam desempenhar seus papis de forma efetiva e eficiente. Gerenciamento de Software Integrado Integrar atividades de gerenciamento e desenvolvimento de projetos em um processo de software definido e coerente a partir do processo padro da organizao.

28

reas-chave: Nvel 3
Engenharia de Produtos - Execuo de processos bem definidos que integram todas as atividades de engenharia de software para produzir produtos corretos e consistentes de forma eficiente e efetiva Coordenao entre Grupos - Estabelecer meios para que grupos de desenvolvimento se comuniquem efetivamente com outros grupos a fim de satisfazer os requisitos do cliente de forma eficiente e efetiva
29

reas-chave: Nvel 3
Revises - Remover defeitos na execuo dos projetos o mais cedo possvel. Desenvolver um melhor entendimento dos produtos e dos defeitos que pode ser prevenidos.

30

reas-chave: Nvel 4
Entendimento quantitativo de processos e produtos Gerenciamento Quantitativo de Processos Controlar a performance de processos de forma quantitativa. Identificar causas de variaes em um processo estvel e mensurvel e corrigir de forma adequada as circunstncias que levaram a variao. Gerenciamento de Qualidade de Software Desenvolver um entendimento quantitativo da qualidade dos produtos de um projeto de software e atingir metas
especficas de qualidade.

reas-chave: Nvel 5
Melhoria contnua e mensurvel de processos de software Preveno de Defeitos - Identificar e analisar causas de defeitos e evitar que eles voltem a ocorrer. Gerenciamento de Mudana de Tecnologia - Identificar novas tecnologias e difundi-las na organizao de uma forma adequada. Gerenciamento de Mudana de Processos - Melhorar continuamente os processos de software em uma organizao com o intuito de aumentar a qualidade de produtos, a produtividade e diminuir os custos de desenvolvimento.

31

32

Caractersticas Comuns
Atributos que indicam se a implementao e institucionalizao de uma rea-chave efetiva, repetvel e duradoura. Existem 5 caractersticas comuns:
Compromisso para Execuo Habilidade para Execuo Atividades Executadas Mtricas e Anlise Verificao de Implementao
33

Caractersticas Comuns
Compromisso para Execuo - Aes que a organizao deve tomar a fim de assegurar que o processo est estabelecido e ter continuidade. Habilidade para Execuo - Pr-condies que devem existir a fim de implementar o processo de forma competente (recursos, estrutura e treinamento)

34

Caractersticas Comuns
Atividades Executadas - Papis e procedimentos necessrios a implementao de uma rea-chave de processo Mtricas e Anlise - Necessidade de medir e analisar o processo Verificao de Implementao - Passos para assegurar que as atividades so executadas em acordo com o processo que est sendo estabelecido.
35

Comentrios Finais
Atingir nveis de maturidade um processo incremental e requer um compromisso a longo prazo para melhoria contnua de processos. CMM no enfoca todas as questes importantes para o sucesso de projetos: domnios de aplicao especficos, tecnologias de software, seleo de pessoal no so considerados.
36

Comentrios Finais
International Standards Organization (ISO)
Abordagem comum para melhoria de processos amplamente aceita. Representa um consenso na comunidade de software e uma ferramenta til para guiar a melhoria de processos de uma forma disciplinada e consistente.
37 38

Comentrios Finais
CMM identifica as caractersticas de um processo de software efetivo, porm organizaes maduras tambm precisam se preocupar com outras questes essenciais relacionadas ao sucesso de projetos, incluindo pessoal e tecnologia.

39

Você também pode gostar