Documente Academic
Documente Profesional
Documente Cultură
Capability Maturity Model: Um Modelo para Melhoria do Processo (de Produo) de Software
Odisnei Galarraga odisnei@atlas.unisinos.br
8/3/2002 Pr-Reitoria de Administrao - Diretoria de Servios de Informao 1
Objetivos
z Explorar os conceitos bsicos de qualidade de software z Ter uma viso geral do Capability Maturity Model (CMM) quanto a filosofia, estrutura e componentes do modelo z Rpido comparativo com normas ISO equivalentes/complementares
8/3/2002 2
Tpicos
z Origem do CMM z Conceitos bsicos de Qualidade de Software z CMM - Estrutura e seus componentes z Modelo IDEAL z Team Software Process (TSP) & Personal Software Process (PSP)
8/3/2002 3
Tpicos
z ltimas mudanas (CMMs) z CMM x ISO z Futuro z Para mais informaes...
8/3/2002
Origem
Software Engineering Institute (SEI) Carnegie Mellon University Pittsburgh - PA
8/3/2002
Juntando as partes
B A C D Procedimentos e mtodos definindo o relacionamento das tarefas
Processo
Ferramentas e equipamentos
6
Previsibilidade
Melhorando a previsibilidade
Probabilidade Probabilidade Alvo
Medida de tempo/custo/qualidade/...
Alvo
Medida de tempo/custo/qualidade/...
8/3/2002
Controle
Melhorando o controle
Probabilidade Probabilidade Alvo
Medida de tempo/custo/qualidade/...
Medida de tempo/custo/qualidade/...
8/3/2002
Alvo
Efetividade
Melhorando a efetividade
Probabilidade Probabilidade
Alvo
Medida de tempo/custo/qualidade/...
Medida de tempo/custo/qualidade/...
8/3/2002
Alvo
Nveis de maturidade
Melhoria contnua Processo padronizado, consistente Processo disciplinado Processo previsvel
5 4
Otimizao
Gerenciado
Definido
2
Inicial
Repetvel
1
8/3/2002
10
Visibilidade
4 In Out
3 In
Out
2 In
Out
1 In
8/3/2002
Out
11
Visibilidade
5 In
Out
8/3/2002
12
Os planos baseados na performance do passado so mais realistas em organizaes Nvel 2 Tempo/$/... Alvo N
Probabilidade
8/3/2002
13
Com processos bem definidos, a performance aumenta em organizaes Nvel 3 Tempo/$/... Alvo N+a
Probabilidade
8/3/2002
14
Com base na anlise quantitativa do processo e do produto, a performance continua a evoluir em organizaes Nvel 4 Tempo/$/... Alvo N-x
Probabilidade
8/3/2002
15
Com base na anlise quantitativa do processo e do produto, a performance continua a evoluir em organizaes Nvel 4 Tempo/$/...
8/3/2002
16
Estrutura
Nveis de maturidade Indicam Capacidade do processo Key process areas Atingem Common features Contm So organizadas por Contm
Atividades ou infra-estrutura
8/3/2002 17
5 4
Otimizao
Gerenciado
Definido
2
Inicial
Repetvel
1
8/3/2002
18
Estrutura
Nveis de maturidade Indicam Capacidade do processo Key process areas Atingem Common features Contm So organizadas por Contm
Atividades ou infra-estrutura
8/3/2002 19
1 Inicial
8/3/2002
20
2 Repetitivo
8/3/2002
21
3 Definido
8/3/2002
22
4 Gerenciado
8/3/2002
23
Estrutura
Nveis de maturidade Indicam Capacidade do processo Key process areas Atingem Common features Contm So organizadas por Contm
Atividades ou infra-estrutura
8/3/2002 24
Metas: exemplo
z Nvel 2
Key process area: Planejamento de projeto de software
z Meta 1: Estimativas esto documentadas para uso no planejamento e acompanhamento do projeto de software z Meta 2: Atividades e compromissos do projeto de software esto planejados e documentados z Meta 3: Grupos e indivduos envolvidos concordam com seus compromissos relativos ao projeto de software
8/3/2002 25
Estrutura
Nveis de maturidade Indicam Capacidade do processo Key process areas Atingem Common features Contm So organizadas por Contm
Atividades ou infra-estrutura
8/3/2002 26
Common features
z Compromisso de Executar (Commitment to Perform) z Capacidade para Executar (Ability to Perform) z Atividades Executadas (Activities Performed) z Medio e Anlise (Measurement and Analysis) z Verificao da Implementao (Verifying Implementation)
8/3/2002 27
Common features
z 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.
8/3/2002
28
Common features
z Capacidade para Executar to Perform) (Ability
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.
8/3/2002
29
Common features
z Atividades Executadas Performed) (Activities
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.
8/3/2002 30
Common features
z Medio e Anlise and Analysis) (Measurement
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.
8/3/2002 31
Common features
z Verificao da Implementao Implementation) (Verifying
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.
8/3/2002
32
Estrutura
Nveis de maturidade Indicam Capacidade do processo Key process areas Atingem Common features Contm So organizadas por Contm
Atividades ou infra-estrutura
8/3/2002 33
8/3/2002
34
1
0
2
6 KPA KPA KPA KPA KPA KPA
3
7
4
2
5
3
Meta = 18 KPAs = 52 metas 2-4 metas por KPA
3
1-n
3
1-n
3
1-n
3
1-n
Atividades que implementam os requisitos = 316 key processuais e de practices infra-estrutura para institucionalizar o processo 35
Abordagem IDEAL
Leveraging Acting
Initiating
Establishing Diagnosing
8/3/2002 36
Motivos...
z Initiate (Iniciar) Uma jornada de 10.000 milhas comea com nada mais do que um simples passo.
z Diagnose (Diagnosticar) Se voc no sabe onde est, um mapa no vai ajud-lo. z Establish (Estabelecer) z Act (Agir) z Leverage (Influenciar) Se voc no sabe para onde est indo, qualquer caminho serve. Se voc no confere a rota, no saber quando estiver fora do curso. Se os pioneiros no relatam que o caminho seguro, os colonizadores no vo segui-los.
37
8/3/2002
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
8/3/2002
Establishing
38
TSP
PSP
8/3/2002 39
ltimas mudanas
AT AGORA: CMM (verso 1.1) EM ELABORAO: SW-CMM (verso 2.0) P-CMM SA-CMM SE-CMM IPD-CMM CMMI
8/3/2002 40
Os CMMs
z CMMI: CMM Integration z SW-CMM: Capability Maturity Model for Software z P-CMM: People Capability Maturity Model z SA-CMM: Software Acquisition Capability Maturity Model
8/3/2002
41
Os CMMs
z SE-CMM: Systems Engineering Capability Maturity Model z IPD-CMM: Integrated Product Development Capability Maturity Model
8/3/2002
42
CMMI
P-CMM CMMI
SE-CMM
SW-CMM
SA-CMM
IPD-CMM
8/3/2002
43
TQM e os CMMs
Organizao Projeto A Projeto B Projeto X Sistema Hardware Software Pessoas Projeto C Software Aquisio Fornecedor
SA-CMM SE-CMM
TQM
SW-CMM
P-CMM
8/3/2002 44
5 4
KPA18 KPA17 KPA16 KPA14
KPA15
1
8/3/2002
KPA13 KPA12 KPA11 KPA10 2 KPA9 KPA8 KPA7 KPA6 KPA5 KPA4 KPA3 KPA2 KPA1
45
C D E F Processos
P
46
8/3/2002
8/3/2002
Futuro
z SW-CMM (CMM v 2.0) compatvel com a ISO 15504 z ISO 15504 harmonizada com a ISO 12207 z ISO 9000 verso 2000 harmonizada com a ISO 12207
8/3/2002
48
8/3/2002
49
Bibliografia
GOLDESON Dennis R. HERBSLEB James D. After the appraisal: a systematic survey of process improvement its benefits, and factors that influence success. Pittsburgh: SEI/Carnegie Mellon University, 1995. HAYES, Will. ZUBROW, Dave. Moving ou up: data and experience doing CMM-based process improvement. Pittsburgh: SEI/Carnegie Mellon University, 1995.
8/3/2002 50
Bibliografia
HERBSLEB, James et al. Benefits of CMM-based Software process improvement: initial results. Pittsburgh: SEI/Carnegie Mellon University, 1994. NBR ISO/IEC 12207 Tecnologia de informao Processos de cliclo de vida de software. Rio de Janeiro: ABNT, 1998.
8/3/2002
51
Bibliografia
McFEELEY, Bob. IDEAL: a users guide for software process improvement. Pittsburgh: SEI/Carnegie Mellon University, 1996. PAULK, Mark C. et al. The capability maturity model: guidelines for improving the software process. Pittsburgh: Addison Wesley, 1997.
8/3/2002
52
Bibliografia
PAULK, Mark C. et al. Capability maturity model for software, version 1.1. Pittsburgh: SEI/Carnegie Mellon University, 1993. Introduction to the capability maturity model. Pittsburgh: SEI/Carnegie Mellon University.
8/3/2002
53
Bibliografia
WINTERS, George R. Executive overview of CMM based software process improvement. SEI/Carnegie Mellon University, Pittsburgh, 1997. WINTERS, George R. Software process improvement overview. SEI/Carnegie Mellon University, Pittsburgh, 1997.
8/3/2002
54