Escolar Documentos
Profissional Documentos
Cultura Documentos
Instrutor
Odisnei Galarraga
Coordenador de Suporte Tecnolgico (DSI/UNISINOS) Tecnlogo em Processamento de Dados (UFRGS - 1985) Especialista em Gesto da Qualidade (UNISINOS - 1997/98) Mestrando em Administrao de Empresas (PPGA-UFRGS) Curso: Introduction to the Capability Maturity Model (CISE/CMU- 1998) Membro da Comisso de Estudos de Processos de Ciclo de Vida de Software da ABNT Integrante da Coordenao Temtica da Misso Empresarial aos Estados Unidos em Qualidade de Software (UNISINOS junho/2000)
17/04/2001 2
Objetivos
Explorar os conceitos bsicos de qualidade de software Ter uma viso geral do Capability Maturity Model (CMM) quanto a filosofia, estrutura e componentes do modelo Rpido comparativo com normas ISO equivalentes/complementares
17/04/2001 3
Modalidade de ensino
Basicamente expositivo porm... Com interao: perguntar, questionar, agregar experincias, estabelecer a discusso a qualquer momento!
17/04/2001
Apresentao
Nome Empresa O que j sabe sobre CMM (ou o que j ouviu falar, leu, etc.) Expectativas
17/04/2001
Agenda
Origem e uso do CMM Conceitos bsicos de Qualidade de Software Os modelos CMM CMM - Estrutura e seus componentes O Nvel 2 Modelo IDEAL
17/04/2001
Team Software Process (TSP) & Personal Software Process (PSP) CMM x ISO Futuro Resumo (principais conceitos) Fechamento
6
Origem
Software Engineering Institute (SEI) *Patrocinado pelo Departamento de Defesa (DoD) Carnegie Mellon University Pittsburgh, PA
17/04/2001
Capability...
Capacidade? Capacitao? Capabilidade?
Qualidade que uma pessoa ou coisa tem de possuir para um determinado fim; habilidade, aptido. (Aurlio) Ato ou efeito de capacitar(-se). (Aurlio)
17/04/2001
Capability...
Software process capability - descreve o intervalo de resultados esperados que podem ser alcanados seguindo-se um processo de software. Um indicador que permite prever os resultados de futuros projetos de software. (SEI)
17/04/2001
Origem
O CMM definido pelo prprio SEI como sendo uma sistematizao das melhores prticas em engenharia de software Quem construiu o CMM foi a comunidade de engenheiros de software; o SEI reuniu as melhores prticas e formalizou o modelo No h nada de novo no CMM...
17/04/2001 10
Origem
O SEI estruturou o CMM por encomenda do DoD para contratao de grandes projetos de software Hoje, porm, o CMM utilizado por empresas/organizaes de vrios tamanhos
17/04/2001
11
CISE
12
CISE
13
CISE
14
O foco
B A C D Procedimentos e mtodos definindo o relacionamento entre as tarefas e a sua seqncia
Processo
Ferramentas e equipamentos
15
Insumos
Processo
Produtos
17/04/2001
17
S Btw=rA
17/04/2001
18
S Btw=rA
17/04/2001
19
Software
17/04/2001
20
10
TQM e o CMM
Organizao Projeto A Projeto B Projeto C Projeto X Sistema Hardware Software
TQM
CMM
17/04/2001
21
Previsibilidade
Melhorando a previsibilidade
Probabilidade Probabilidade Alvo
Medida de tempo/custo/qualidade/...
Alvo
Medida de tempo/custo/qualidade/...
17/04/2001
22
11
Controle
Melhorando o controle
Probabilidade Probabilidade Alvo
Medida de tempo/custo/qualidade/...
Medida de tempo/custo/qualidade/...
17/04/2001
Alvo
23
Efetividade
Melhorando a efetividade
Probabilidade Probabilidade
Alvo
Medida de tempo/custo/qualidade/...
Medida de tempo/custo/qualidade/...
17/04/2001
Alvo
24
12
Os CMMs
CMM (verso 1.1) CMMI
17/04/2001
25
Os CMMs
CMMI: CMM Integration SW-CMM: Capability Maturity Model for Software SE-CMM: Systems Engineering Capability Maturity Model IPD-CMM: Integrated Product Development Capability Maturity Model
17/04/2001 26
13
Os CMMs
P-CMM: People Capability Maturity Model SA-CMM: Software Acquisition Capability Maturity Model
17/04/2001
27
TQM e os CMMs
Organizao Projeto A Projeto B Projeto X Sistema Hardware Software Pessoas Projeto C Software Aquisio Fornecedor
TQM
17/04/2001
28
14
CMMI
SW-CMM SE-CMM CMMI IPD-CMM
P-CMM
SA-CMM
17/04/2001
29
CMMI
CMMI SW-CMM IPD-CMM
SE-CMM
P-CMM
SA-CMM
17/04/2001
30
15
CMMI
SW-CMM SE-CMM IPD-CMM CMMI
P-CMM
SA-CMM
17/04/2001
31
Estrutura
Nveis de maturidade Indicam Capacidade do processo Key process areas (KPAs) Atingem Common features Contm So organizadas por Contm
Descrevem
Key practices
Atividades ou infra-estrutura
17/04/2001 32
16
Nveis de maturidade
Estgios de evoluo bem-definidos que formam o caminho para uma organizao de software madura (mature software organization).
Cada nvel um estgio na melhoria contnua do processo Existem 5 nveis de maturidade no CMM O atingimento de cada nvel estabelece um componente diferente do processo de software Os nveis de maturidade so descritos em termos de 18 key process areas (KPAs)
17/04/2001 33
Nveis de maturidade
5
4
3 2 1
Indica
Capacidade do processo
Exemplo:
Probabilidade
Alvo N+a
Indica
Os processos bsicos de gerncia de projetos esto estabelecidos para acompanhar custos, cronograma e funcionalidades.
17/04/2001
Tempo/$/...
34
17
Nveis de maturidade
Melhoria contnua Processo previsvel Processo padronizado, consistente Processo disciplinado
5 4
De Otimizao
Gerenciado
Definido
2
Inicial
Repetvel
1
17/04/2001
35
Visibilidade
4 In Out
3 In
Out
2 In
Out Out
36
1 In
17/04/2001
18
Visibilidade
5 In
Out
17/04/2001
37
2
a Tempo/$/... Alvo N
Probabilidade
17/04/2001
38
19
Com processos bem definidos, a performance aumenta em organizaes Nvel 3 Tempo/$/... Alvo N+a
Probabilidade
17/04/2001
39
Com base na anlise quantitativa do processo e do produto, a performance continua a evoluir em organizaes N vel 4 Tempo/$/... Alvo N-x
Probabilidade
17/04/2001
40
20
Com base na anlise quantitativa do processo e do produto, a performance continua a evoluir em organizaes N vel 4 Tempo/$/...
17/04/2001
41
Estrutura
Nveis de maturidade Indicam Capacidade do processo Key process areas (KPAs) Atingem Common features Contm So organizadas por Contm
Descrevem
Key practices
Atividades ou infra-estrutura
17/04/2001 42
21
KPA
Identifica um grupo de atividades correlatas que, quando executadas corretamente, atingem um conjunto de metas consideradas importantes para a melhoria da capacidade do processo.
Definidas para residir em um um nico nvel de maturidade Identificam as questes que devem ser tratadas para alcanar um nvel de maturidade O CMM define 18 KPAs
17/04/2001 43
KPAs
5
4
3 2 1
Indica
Capacidade do processo
Contm
KPA
Metas
Atinge
17/04/2001
44
22
KPAs (exemplo)
Alvo N+a Probabilidade
Indica
Tempo/$/...
Contm
KPA
Metas
Atinge
17/04/2001
45
KPAs (exemplo)
O Planejamento de Processo de Software envolve o desenvolvimento de estimativas para o trabalho a ser realizado, o estabelecimento dos compromissos necessrios e a definio do plano de realizao do trabalho.
17/04/2001
46
23
24
1 Inicial
17/04/2001
49
2 Repetitivo
17/04/2001
50
25
3 Definido
17/04/2001
51
4 Gerenciado
17/04/2001
52
26
Organizacionais Engenharia
Processos interprojetos, treinamento, infraestrutura, etc. Requisitos, anlise, projeto, codificao, testes, etc.
software, gerenciamento,etc.
Gerenciamento de mudanas tecnolgicas Gerenciamento de mudanas nos processos Gerenciamento quantitativo dos processos
2 6
3 Processos ad hoc
1 1 2
53
Organizacionais Engenharia
Processos interprojetos, treinamento, infraestrutura, etc. Requisitos, anlise, projeto, codificao, testes, etc.
17/04/2001
54
27
Organizacionais Engenharia
Processos interprojetos, treinamento, infraestrutura, etc. Requisitos, anlise, projeto, codificao, testes, etc.
17/04/2001
55
Organizacionais Engenharia
Processos interprojetos, treinamento, infraestrutura, etc. Foco nos processos da organizao Definio dos processos da organizao Programa de treinamento Requisitos, anlise, projeto, codificao, testes, etc. Engenharia de produto de software Revis o por pares
17/04/2001
56
28
Organizacionais Engenharia
Processos interprojetos, treinamento, infraestrutura, etc. Requisitos, anlise, projeto, codificao, testes, etc. Gerenciamento da qualidade do software
17/04/2001
57
Organizacionais Engenharia
Processos interprojetos, treinamento, infraestrutura, etc. Requisitos, anlise, projeto, codificao, testes, etc.
17/04/2001
58
29
Estrutura
Nveis de maturidade Indicam Capacidade do processo Key process areas (KPAs) Atingem Common features Contm So organizadas por Contm
Descrevem
Key practices
Atividades ou infra-estrutura
17/04/2001 59
Metas
Metas
30
Metas
5
4
3 2 1
Indica
Capacidade do processo
KPA
Metas
Atinge
17/04/2001
Metas (exemplo)
Alvo N+a Probabilidade
Indica
Tempo/$/...
Contm
KPA
Atinge
17/04/2001
As estimativas de software esto documentadas Metas para uso no planejamento e acompanhamento do projeto de software.
62
31
Estrutura
Nveis de maturidade Indicam Capacidade do processo Key process areas (KPAs) Atingem Common features Contm So organizadas por Contm
Descrevem
Key practices
Atividades ou infra-estrutura
17/04/2001 64
32
Common features
Common features
5
4
3 2 1
Indica
Capacidade do processo
Contm
KPA
Metas
Atinge Organizada por Leva a Implementao/ institucionalizao Indica se a KPA efetiva, repetvel e vai perdurar
66
!
17/04/2001
33
Nvel 5 K K K P P P A A A > > > > > > > > > > > > > > >
67
CF CF CF CF CF
17/04/2001
Common features
Compromisso de Executar (Commitment to Perform)
Descreve as aes que a organizao deve adotar para garantir que o processo est estabelecido e vai perdurar. Normalmente envolve polticas organizacionais e liderana.
17/04/2001
68
34
Common features
Capacidade para Executar (Ability to Perform)
Descreve as pr-condies que devem existir no projeto ou organizao para implementar o processo de software de forma competente. Normalmente envolve recursos, estruturas organizacionais e treinamento.
17/04/2001
69
Common features
Atividades Executadas (Activities Performed)
Descreve as atividades, papis e procedimentos necessrios para implementar a key process area. Normalmente envolve estabelecer planos e procedimentos, executar o trabalho, acompanh-lo, e tomar aes corretivas quando necessrio.
17/04/2001 70
35
Common features
Medio e Anlise (Measurement and Analysis)
Descreve as prticas bsicas de medio que so necessrias para determinar um status relativo ao processo. Essas medies so usadas para controlar e melhorar o processo. Normalmente inclui exemplos de medidas que poderiam ser obtidas.
17/04/2001 71
Common features
Verificao da Implementao (Verifying Implementation)
Descreve as etapas para assegurar que as atividades so executadas de acordo com o processo que foi estabelecido. Normalmente abrange revises e auditorias pela gerncia e garantia da qualidade de software.
17/04/2001
72
36
Estrutura
Nveis de maturidade Indicam Capacidade do processo Key process areas (KPAs) Atingem Common features Contm So organizadas por Contm
Descrevem
Key practices
Atividades ou infra-estrutura
17/04/2001 73
Key practices
Estabelecem as polticas, procedimentos e atividades fundamentais para uma KPA
Descrevem o que deve ser feito, mas no prescrevem como deve ser feito So organizadas por common feature Existem 316 key practices no CMM
17/04/2001
74
37
Key practices
1 2 3
Indica Contm
Capacidade do processo
Metas
KPA
Contm Descreve
17/04/2001
Key practices
Infra-estrutura e atividades que contribuem decisivamente para a institucionalizao da KPA.
17/04/2001
76
38
Indica
Contm KPA Planejamento de Projeto de Software (SPP) Organizada por Atividades Leva a ! executadas Contm
17/04/2001
Probabilidade Tempo/$/... As estimativas de Metas software esto Atinge documentadas para uso no planejamento e acompanhamento do projeto Implemende software
tao
Atividade 15
Descreve
77
17/04/2001
78
39
2
6 KPA KPA KPA KPA KPA KPA
3
7
4
2
5
3
Meta = 18 KPAs = 52 metas 2-4 metas por KPA
0 0-7 KPAs por nvel de maturidade 5 common features por KPA ! ! com 1-n prticas cada 1-n 1-n
17/04/2001
!
1-n
!
1-n
!
1-n
Atividades que implementam os requisitos = 316 key processuais e de practices infra-estrutura para institucionalizar o processo 79
40
Nvel 2
Importante:
No nvel 2 o foco est nos projetos e no na organizao!
17/04/2001
81
KPAs do nvel 2
Gerenciamento de Requisitos
controla os requisitos do sistema alocados ao software mantm os planos, produtos e atividades de software consistentes com os requisitos do sistema alocados ao software
17/04/2001
82
41
KPAs do nvel 2
Planejamento de projeto de software
documenta estimativas desenvolve e documenta os planos estabelece compromissos
17/04/2001
83
KPAs do nvel 2
Acompanhamento e Superviso de Projeto de Software
gerencia de acordo com um plano toma aes corretivas negocia compromissos e ajusta o plano
17/04/2001
84
42
KPAs do nvel 2
Gerenciamento de Subcontratao de Software
define o trabalho a ser subcontratado estabelece compromissos entre contratado primrio e subcontratado seleciona e monitora o subcontratado mantm comunicao permanente
17/04/2001 85
KPAs do nvel 2
Garantia de Qualidade de Software
planeja as atividades da SQA revisa e/ou audita produtos e processos de software reporta resultados e encaminha aos nveis superiores os assuntos relativos a noconformidades que no podem ser resolvidos encaminha soluo de no-conformidades
17/04/2001 86
43
KPAs do nvel 2
Gerenciamento de Configurao de Software
planeja as atividades de SCM identifica e mantm os itens de configurao controla mudanas de forma sistemtica mantm a integridade e a rastreabilidade da linha bsica atravs do ciclo de vida do software
17/04/2001 87
Modelo IDEAL
Learning
Analyze and Validate Implement Solution
Refine Solution Stimulus for Change Set Context Build Sponsorship Charter Infrastructure Pilot/Test Solution Characterize Current & Desired States Create Solution
Acting
Initiating
Diagnosing
Set Priorities
17/04/2001
Establishing
88
44
Modelo IDEAL
Initiating
Estabelecer o contexto Conseguir patrocnio Alocar infra-estrutura
17/04/2001
89
Modelo IDEAL
Diagnosing
Caracterizar os estados atual e desejado Desenvolver recomendaes
17/04/2001
90
45
Modelo IDEAL
Establishing
Estabelecer prioridades Desenvolver abordagem Planejar aes
17/04/2001
91
Modelo IDEAL
Acting
Criar soluo Desenvolver piloto/testar soluo Refinar soluo Implementar soluo
17/04/2001
92
46
Modelo IDEAL
Learning
Analisar e validar Propor aes futuras
17/04/2001
93
PSP
17/04/2001 94
47
5 4
KPA18 KPA17 KPA16 KPA14
3 2
KPA15
KPA13 KPA12 KPA11 KPA10 KPA9 KPA8 KPA7 KPA6 KPA5 KPA4 KPA3 KPA2 KPA1
17/04/2001
95
5 Nveis de Capacitao 4 3 2 1 0 A B
4 2 1 1
C D E F Processos
P
96
17/04/2001
48
4 2 1 1
17/04/2001
Futuro
SW-CMM (CMM v 2.0) compatvel com a ISO 15504 ISO 15504 harmonizada com a ISO 12207 ISO 9000 verso 2000 harmonizada com a ISO 12207
17/04/2001
98
49
17/04/2001
100
50
Mais informaes
Site do SEI/CMU: http://www.sei.cmu.edu
17/04/2001
101
Bibliografia bsica
The Capability Maturity Model: Guidelines for Improving the Software Process
Carnegie Mellon University / Software Engineering Institute (Mark C. Paulk, Charles V. Weber, Bill Curtis, Mary Beth Chrissis) Editora: Addison-Wesley
www.sei.cmu.edu
17/04/2001 102
51