CMM - Capability Maturity Model



Documentos relacionados
MODELO SPICE Software Improvement and Capacibilty Determination Avalia o software com foco na melhoria de seus processos (identifica pontos fracos e

MODELO CMM MATURIDADE DE SOFTWARE

Qualidade de Software. Anderson Belgamo

QUALIDADE DE SOFTWARE AULA N.7

Padrões de Qualidade de Software

Delfraro Rodrigues Douglas M Gandini José Luiz CMM. Capability Maturity Model

O que é CMMI? Base do CMMI. Melhorando o processo é possível melhorar-mos o software. Gerais. Processo. Produto

Padrões de Qualidade de Software e Métricas de Software

PEDRO HENRIQUE DE OLIVEIRA E SILVA MESTRE EM MODELAGEM MATEMÁTICA E COMPUTACIONAL PEDROHOLI@GMAIL.COM CMM E CMMI

CMM Capability Maturity Model. Silvia Regina Vergilio

Melhorias de Processos de Engenharia de Software

CAPABILITY MATURITY MODEL INTEGRATION. Prof. Késsia R. C. Marchi

CMMI: Capability Maturity Model Integration

Unidade VI GOVERNANÇA DE TI. Profa. Gislaine Stachissini

Qualidade de Software Aula 6 / luis@garcia.pro.br

CAPABILITY MATURITY MODEL FOR SOFTWARE. Eduardo Mayer Fagundes

Implantação de um Processo de Medições de Software

C.M.M. Capability Maturity Model Modelo de Maturidade da Capacidade

Gerência de Projetos de Software Modelos de gerência. CMM: Capability Maturity Model ITIL: Information Technology Infrastructure Library MPS BR

Políticas de Qualidade em TI

Políticas de Qualidade em TI

Introdução ao MPS.BR Guia Geral. Prof. Elias Batista Ferreira

Qualidade de. Software. Definições. Qualidade do Produto ISO Processo de. Software. Modelo de Processo de. Software CMM SPICE ISO 12207

Gerência de Projetos de Software CMM & PMBOK

ALESSANDRO PEREIRA DOS REIS PAULO CESAR CASTRO DE ALMEIDA ENGENHARIA DE SOFTWARE - CAPABILITY MATURITY MODEL INTEGRATION (CMMI)

FACULDADE SENAC GOIÂNIA

Fatores humanos de qualidade CMM E CMMI

Introdução a CMMI. Paulo Ricardo Motta Gomes Renato Miceli Costa Ribeiro

Engenharia de Software

Modelos de Maturidade. Porque estudar um Modelo de Maturidade? Descrevem as características de processos efetivos;

AS CARACTERÍSTICAS DO CMM E O DESENVOLVIMENTO DE SOFTWARE COM QUALIDADE

Qualidade na gestão de projeto de desenvolvimento de software

APOSTILAS: NORMAS; ABNT NBR ISO; MPS BR

CMMI. B) descrições das atividades consideradas importantes para o atendimento de suas respectivas metas específicas. Governo do ES (CESPE 2009)

F U N D A Ç Ã O E D U C A C I O N A L S Ã O J O S É. MODELOS DE MATURIDADE CMMI Capability Maturity Model Integration (CMMI)

Qualidade de Software: Visão Geral

PLANEJAMENTO E PROJETOS. Lílian Simão Oliveira

GARANTIA DA QUALIDADE DE SOFTWARE

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Planejamento e Gerenciamento de Software. Tema 3. Gerência de Projetos Profa. Susana M. Iglesias

21. Qualidade de Produto ou Qualidade de Processo de Software?

Gerência de Projetos Prof. Dr. Sandro Ronaldo Bezerra Oliveira

Gerenciamento de Problemas

CHECK - LIST - ISO 9001:2000

Objetivos. Histórico. Out/11 2. Out/11 3


Introdução ao CMM (CapabilityMaturityModel) e CMMI (Capability Maturity Model Integration)

Planejamento e Gerenciamento de Projeto de Software

OS 14 PONTOS DA FILOSOFIA DE DEMING

Gerência de Projetos

Gerenciamento de Níveis de Serviço

Gerência de Projetos CMMI & PMBOK

Lista de verificação (Check list) para planejamento e execução de Projetos

MASTER IN PROJECT MANAGEMENT

SISTEMA. Tecnologia. Software. Hardware. Prazos. Pessoas. Qualidade. Custo GERENCIAMENTO DE RISCO: COMO GARANTIR O SUCESSO DOS PROJETOS DE TI?

Introdução CMMI. Qualidade e Teste de Software CMMI 1

Atividade da gerência da qualidade

Tecnologia em Gestão Pública Desenvolvimento de Projetos - Aula 9 Prof. Rafael Roesler

Gerenciamento de Incidentes

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

ISO/IEC 12207: Gerência de Configuração

A visão do modelo MPS.BR para Gerência de Projeto - Nível G. por Adriana Silveira de Souza

SEQUÊNCIA: TIPOS DE SISTEMAS DE INFORMAÇÃO. PROF. MARTIUS V R Y RODRIGUEZ, DSc TECNOLOGIA DE INFORMAÇÃO

Capítulo 5: CMM, o Capability Maturity Model

Modelo de Referência para melhoria do processo de software (MR mps)

17/02/2009. Curso Superior de Tecnologia: Redes de Computadores. Disciplina: Gestão de Projetos de TI Prof.: Fernando Hadad Zaidan. Unidade 2.

Qualidade, Processos e Gestão de Software Professores: Alexandre Vasconcelos e Hermano Moura. O Modelo. Wesley Torres Galindo. wesleygalindo@gmail.

CMMI Conceitos básicos. CMMI Representações contínua e por estágios. Professor Gledson Pompeu (gledson.pompeu@gmail.com)

ENGENHARIA DE SOFTWARE I

Qualidade de software

Pesquisa realizada com os participantes do 12º Seminário Nacional de Gestão de Projetos. Apresentação

ISO Aécio Costa

Indicadores de Rendimento do Voluntariado Corporativo

Trilhas Técnicas SBSI

CMMI (Capability Maturity Model Integration) Thiago Gimenez Cantos. Bacharel em Sistemas de Informação

Gerenciamento de projetos.

GESTÃO DE PROJETOS PARA A INOVAÇÃO

MBA em Gestão de Empreendimentos Turísticos

Professor: Disciplina:

Porque estudar Gestão de Projetos?

Década de 80, o Instituto de Engenharia de Software (SEI) foi criado.

ERP Enterprise Resource Planning

Universidade de Brasília Faculdade de Ciência da Informação Curso de Arquivologia Profa. Lillian Alvares

ESCRITÓRIO RIO DE PROJETOS

Unidade I GERENCIAMENTO DE. Profa. Celia Corigliano

Introdução ao Modelo de Referência para melhoria do processo de software (MR mps) Projeto: mps Br melhoria de processo do software Brasileiro

Engenharia de Software II

Engenharia de Software. Apostila I >>> Introdução à ES - HEngholmJr

Gerência e Planejamento de Projeto. SCE Engenharia de Software Profs. José Carlos Maldonado e Elisa Yumi Nakagawa 2 o semestre de 2002

Gerenciamento de Serviços de TI ITIL v2 Módulo 1 Conceitos básicos

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Engenharia de Software II: Desenvolvendo o Orçamento do Projeto. Prof. Msc Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

Modelo de Qualidade CMMI

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES

Análise de Pontos por Função

Gerenciamento de Qualidade. Paulo C. Masiero Cap SMVL

Transcrição:

Tema da Aula Normas e Padrões de Qualidade em II CMM Prof. Cristiano R R Portella portella@widesoft.com.br CMM - Capability Maturity Model Desenvolvido pelo SEI (Instituto de Engenharia de ) Carnegie Mellon University, Pittsburgh, PA. A partir de 1984 financiado pelo DoD. SEI Engineering Institute Missão da SEI: Exercer liderança nos estágios avançados da prática de engenharia de software para melhorar a qualidade de sistemas que dependam de software. 1

CMM - Capability Maturity Model 9 Capability Maturity Model: (Modelo de Maturidade da Competência). 9 Maturidade da Competência : Competência em controlar o Processo de (desenvolvimento, gerenciamento e manutenção). 9 A qualidade do processo de software pode ser analisada através do nível de maturidade do processo. 9 A maturidade dos processos de software de uma organização influencia na sua capacidade de atingir metas de custo, qualidade e cronograma. O que é o CMM Uma estrutura que descreve os elementos chaves de um processo de software eficaz. Um caminho de melhoramento evolucionário (cinco níveis de maturidade) para organizações de software mudarem de um processo de software imaturo (ad hoc), para um processo maduro, disciplinado. 2

A Evolução do CMM 9 1986 - Início do desenvolvimento de um modelo de maturidade de processo, para ajudar as organizações a melhorar seus processos de software (por solicitação do governo federal). 9 Junho/1987 - liberação de breve descrição do modelo de maturidade de processo de software. 9 Setembro/1987 - versão preliminar do questionário de maturidade. 9 1991-1 a versão do CMM (Versão 1.0). A Evolução do CMM 9 1993 - Após 5 anos de experiência, o modelo de maturidade evoluiu para um modelo completamente definido, usando conhecimento adquirido das avaliações de processo de software e de extensivo retorno das indústrias e do governo. 9 Fevereiro/1993 - Versão 1.1 do CMM- Capability Maturity Model for. 9 1997: Versão 2.0 do SW-CMM (draft). Disponibiliza dois modelos: CMMI Contínuo: pode avaliar qualquer área de processo (como SPICE). CMMI Escalonado: abordagem tradicional do CMM (5 níveis e KPA s associadas). 3

Premissa Básica Premissa básica que está por baixo do trabalho da SEI sobre maturidade de processo: A qualidade de um produto de software é profundamente determinada pela qualidade do processo de desenvolvimento e de manutenção usados. Visão Geral do Modelo CMM 9 Modelo de 5 níveis que orienta uma organização em como amadurecer seus processos de software. 9 O modelo descreve um caminho evolucionário que vai de um processo indisciplinado para um processo disciplinado. 9 Sem a disciplina descrita no modelo, programas de melhoria podem mostrar-se ineficientes porque os fundamentos necessários para apoiar os melhoramentos sucessivos não foram estabelecidos. 4

Visão Geral do Modelo CMM 9 Os 5 níveis de maturidade descrevem fundamentos sucessivos para melhoria contínua do processo e definem uma escala ordinal para medir a maturidade de processo de uma organização. 9 As vantagens dos níveis de maturidade é que eles fornecem prioridades claras, as quais orientam na seleção de algumas atividades de melhoramento que serão muito úteis se implementadas imediatamente 9 Isso é importante porque a maioria das organizações podem focalizar somente algumas poucas atividades de melhoramento de cada vez. Os 5 Níveis de Maturidade Processo em melhoria contínua Em otimização (5) Processo previsível Gerenciado (4) Processo padronizado Definido (3) Processo disciplinado Repetível (2) Caos Inicial (1) 5

Nível 1 - Inicial 9 O processo de software é caracterizado como ad hoc, e ocasionalmente até mesmo caótico. 9 Poucos processos são definidos e o sucesso depende de esforços individuais e heróicos. Nível 1 Inicial O Processo 9 Um produto de software é (normalmente) produzido através de algum processo disforme (caixa preta). Requisitos fluem para dentro da caixa preta (processo de software). O produto flui para fora da caixa preta e espera-se que funcione. E? S 6

Nível 1 Organizações Caóticas A organização não provê um ambiente estável para o desenvolvimento e manutenção de software. Cronogramas e orçamentos são freqüentemente abandonados por não serem baseados em estimativas realistas. Numa crise para cumprir cronograma, etapas planejadas do ciclo de vida não são realizadas prejudicando a qualidade do software. Nível 1 Organizações Caóticas 9 Desempenho basicamente em função da competência e heroísmo das pessoas que fazem o trabalho. 9 O processo de software é imprevisível, já que é constantemente alterado no decorrer do projeto. 9 Os maiores problemas com os quais se defrontam as organizações de software são gerenciais e não técnicos. 7

Nível 2 - Repetível 9 Enfoque gerencial: estabelece processos para Gerenciamento de Projetos. 9 Processos são diferentes entre projetos. 9 Organização define Políticas para os projetos. 9 Planos baseados em dados históricos (mais realistas). 9 Processos administrativos básicos são estabelecidos para acompanhar custo, cronograma e funcionalidade. 9 A disciplina de processo está em repetir sucessos anteriores em projetos com aplicações similares. Nível 2 Repetível O processo 9 Está em vigor um Sistema de Gerenciamento de Projeto 9 O Processo de construção de software é uma série de caixas pretas com pontos de verificação definidos E E 8

Nível 2 Organizações Disciplinadas 9 Caracterizado pela existência de um processo efetivo de planejamento e gerenciamento do projeto de software onde os controles sobre os procedimentos, compromissos e atividades são bem fundamentados 9 Os processos de planejamento e gerenciamento do projeto de software devem ser praticados na organização, documentados, treinados e controlados 9 Neste nível ainda não há preocupação com o processo de engenharia de software Nível 2 Organizações Disciplinadas O planejamento e gerenciamento de novos projetos são baseados na experiência obtida com projetos similares, que tenham obtido sucesso no passado. Um fator relevante para a organização nesse nível é a dependência das experiências anteriores. O desenvolvimento de novos tipos de produtos pode causar um desequilíbrio no projeto, nas estimativas de custos e nos cronogramas. 9

Nível 3 - Definido 9 Processo bem definido. 9 Enfoque no processo de desenvolvimento: Processos da engenharia de produto Processos da gerência de software. 9 Programa de treinamento para toda a Organização. 9 Processo de Padrão da Organização. Nível 3 - Definido 9 Os processos de software, tanto para atividades administrativas quanto para de engenharia estão documentados, padronizados e integrados em um processo de software padrão para a organização. 9 Todos os projetos usam uma versão aprovada do processo de software padrão da organização para desenvolvimento e manutenção de software. 10

Nível 3 Definido O Processo 9 Desenvolvimento de software de acordo com um processo bem definido. Funções e responsabilidades no processo são bem entendidas. A produção do produto de software é visível através do processo de software. E S Nível 3 Definido Organizações Padronizadas Caracterizado principalmente pela existência de um processo de engenharia de software bem definido, documentado e padrão para a empresa. As saídas de uma atividade fluem naturalmente para as entradas da próxima atividade. Cada projeto de software utiliza o processo padrão da organização como base para implementar seu próprio processo. 11

Nível 3 Definido Organizações Padronizadas Existe um grupo para processos de software (SEPG) responsável por facilitar atividades de definição e melhoria de processos. Existe um programa de treinamento que assegura que todos tenham o conhecimento e a capacidade requerida para desenvolver suas tarefas, utilizando as ferramentas e os métodos disponíveis. Existem políticas que dêem poderes às pessoas para realizarem o trabalho. Nível 4 - Gerenciado 9 Estabelecimento de práticas quantitativas 9 Melhoria contínua 9 São coletadas medidas detalhadas da qualidade do processo e do produto. 9 Tanto o processo de software quanto os produtos são quantitativamente compreendidos e controlados. 12

Nível 4 Gerenciado O Processo 9 Produto e processo são gerenciados quantitativamente. A gerência tem bases objetivas para tomada de decisão. A gerência é capaz de prever o desempenho dentro de limites quantificados. E S Nível 4 Gerenciado Organizações Previsíveis Caracterizado pela existência de processos de software passíveis de medida. A produtividade e a qualidade são medidas em todas as etapas do processo de software e para todos os projetos da organização. O controle sobre produtos e processos de todos os projetos são adquiridos através da diminuição da variação do seu desempenho para dentro de limites quantitativos aceitáveis. 13

Nível 4 Gerenciado Organizações Previsíveis A organização começa a aplicar métricas de controle de qualidade para aumentar a qualidade e a produtividade do software entregue aos clientes. À medida que a organização adquire mais conhecimento sobre o produto, tem a oportunidade de remover várias fontes de comprometimento da qualidade final. Isto proporciona a oportunidade de colocar o produto sob um controle estatístico de qualidade. Nível 5 - Em Otimização 9 Melhoria contínua visando a otimização do processo. 9 Contínua melhoria de processo é possível por retornos quantitativos dos processos e das idéias e tecnologias inovativadoras. 14

Nível 5 - Em Otimização O Processo 9 Foco na melhoria contínua do processo. Mudança disciplinada é um meio de vida. E S Nível 5 - Em Otimização Melhoria Contínua Caracterizado pela existência de processos de software com contínua melhoria. Os processos de software são avaliados para prevenir tipos de defeitos conhecidos devido à recorrência, e as lições aprendidas são disseminadas para outros projetos. Tecnologias que proporcionem mais retorno para processos específicos, utilizados pela organização, são selecionadas para serem introduzidas de maneira gerenciável na organização. 15

Nível 5 - Em Otimização Melhoria Contínua Apesar de o processo ser maduro, ele é alvo de contínuas melhorias. Os grupos de projetistas analisam o rendimento do projeto para determinar as causas dos defeitos. Nesse nível foi atingido um ambiente de excelência em engenharia de software. Estrutura do CMM Cada nível de maturidade (5) indica uma capacidade do processo e é composto por várias Áreas- Chaves de processo ou KPA s (Key Process Area). 16

Nível 5 - OTIMIZADO Nível 4 - GERENCIADO Nível 3 - DEFINIDO Nível 2 - REPETÍVEL Nível 1 - INICIAL Estrutura do CMM AS 18 KPA s Prevenção de defeitos Gerenciamento de mudança de tecnologia Gerenciamento de mudança de processo Gerenciamento quantitativo do processo 2 Gerenciamento da qualidade do software Foco no processo da organização 7 Definição do processo da organização Programa de treinamento Gerenciamento de software integrado Engenharia do produto de software Coordenação intergrupo Revisões (peer reviews) Gerenciamento de requisitos 6 Planejamento de projeto de software Acompanhamento de projeto de software Gerenciamento de subcontrato de software Garantia da qualidade de software Gerenciamento da configuração de software Sem KPA s - caos 3 Estrutura do CMM Cada KPA permite alcançar um conjunto de Metas ou Objetivos, cuja finalidade é determinar se a organização atingiu um determinado nível de maturidade. 17

Estrutura do CMM Cada KPA é organizada em um conjunto de Práticas Base (ou Práticas-Chave). As práticas chave descrevem as atividades e a infraestrutura que mais contribuem para a efetiva implementação e institucionalização das áreas chave de processo. As práticas chave descrevem o que é para ser feito e não como o processo deve ser implementado. Existem 316 práticas chave no CMM. Estrutura do CMM As Práticas Bases (ou Práticas-Chave) Prevenção de defeitos Gerenciamento de mudança de tecnologia Gerenciamento de mudança de processo Gerenciamento quantitativo do processo Gerenciamento da qualidade do software Foco no processo da organização Definição do processo da organização Programa de treinamento Gerenciamento de software integrado Engenharia do produto de software Coordenação intergrupo Revisões (peer reviews) Gerenciamento de requisitos Planejamento de projeto de software Acompanhamento de projeto de software Gerenciamento de subcontrato de software Garantia da qualidade de software Gerenciamento da configuração de software Sem KPA s - caos 8 Práticas Chave 8 Práticas Chave 10 Práticas Chave 7 Práticas Chave 5 Práticas Chave 7 Práticas Chave 6 Práticas Chave 6 Práticas Chave 11 Práticas Chave 10 Práticas Chave 7 Práticas Chave 3 Práticas Chave 3 Práticas Chave 15 Práticas Chave 13 Práticas Chave 13 Práticas Chave 8 Práticas Chave 10 Práticas Chave TOTAL = 316 Práticas Chave 18

Estrutura do CMM As Práticas Bases são organizadas, por conveniência, em 5 tipos de Características Comuns: Comprometimento para a Realização; Condições para Realizar; Atividades Realizadas; Medições e Análises; e Verificação da Implementação. Estrutura do CMM Estrutura completa do CMM. 19

Estrutura do CMM CMM Inicial Repetível Definido Gerenciado Otimizado 0 6 7 2 3 De 2 a 4 metas por KPA, num total de 52 metas Cada KPA tem de 3 a 15 Práticas Bases Resumo 5 Níveis de Maturidade 18 KPA s 52 Metas 316 Práticas Bases As KPA s são organizadas por Práticas Comuns (5) KPA s Comp. Habil. Ativid. Medid. Verific. Estrutura do CMM 20

Evolução do CMM - Brasil Amostra: 445 empresas em 1995, 589 em 1997 NEC, Xerox, Credicard, Citibank, Siemmens, Morotola etc. 25% 20% 15% 10% 24% 1995 1997 5% 0% 3% 5% Conhece e usa 11% Conhece, mas não usa Evolução do CMM - Mundo Caracterização da amostra: 9 901 organizações 9 276 empresas 9 4174 projetos 9 Pesquisa realizada pela CMU (Carnegie Mellon University), no período de 1996-2000, Brasil e mundo 21

Evolução do CMM - Mundo 40% 35% 30% 25% 20% 15% 10% 5% 0% Nível 1 Nível 2 Nível 3 Nível 4 Nível 5 34.9% 38.2% 18.5% 5.5% 2.9% Cuidados Não omitir nenhum nível Processos dos níveis mais altos de maturidade podem ser realizados até mesmo por organizações do nível 1 (provavelmente de maneira ineficaz). Competência em processos é construída em estágios, uma vez que alguns processos não são eficazes enquanto outros não estão estáveis. Cada nível oferece um fundamento necessário para melhorias a serem implementadas no nível seguinte. Sem a disciplina de gerenciamento o processo de engenharia é sacrificado. Medidas detalhadas são inconsistentes sem um processo definido. 22

Cuidados Analisar o Contexto Organizacional 9 O CMM é aplicável a diferentes tipos de organizações. 9 Cada organização tem uma resposta diferente às mudanças. 9 Cada organização deve interpretar níveis de excelência no contexto do ambiente de negócios da organização. O CMM funciona de forma ideal quando as práticas são interpretadas de uma maneira que faça sentido para a organização. 9 Lembre-se: Qualidade é COMPORTAMENTAL! Afinal, qual modelo usar? Usar o modelo mais adequado à sua instituição. Analisar: 9 Os modelos em relação: Adequação (tipo de negócio, tipos de aplicações) Estabilidade e estado da prática (qtos. usam) Suporte (treinamento, consultoria, livros) Custo (tamanho da infra-estrutura) 9 O produto e a equipe de software: Tamanho e complexidade dos produtos Tamanho e nível da equipe 23

Afinal, qual modelo usar? 9 Todos os modelos guardam grande semelhança entre si e têm áreas de intersecção entre eles. 9 Todos eles têm um custo para a organização. Sua viabilização depende de um estudo em relação ao Custo da Não-Qualidade (horas de manutenção, horas paradas, custo das falhas em si, imagem da empresa perante o cliente e o mercado etc). http://softeng.cs.mcgill.ca/ www.sei.cmu.edu/sema/pub_ml.html www.sei.cmu.edu/cmm/docs/biblio.html 24