Guia de Maturidade: CMM, CMMI e Processos ISO 12207

Classificado em Computação

Escrito em em português com um tamanho de 5,51 KB

1. Cinco Níveis de Maturidade do CMM

Nível 1: Inicial - Processo ad hoc (para isto, o projeto manda no processo e não o contrário; imediatismo) e caóticos (imprevisíveis em custo, prazo e escopo). O sucesso do projeto depende do heroísmo (sacrifício e não profissionalismo) e da competência das pessoas (e não competências da empresa; se perdeu os colaboradores, perdeu a competência) e não de processos estruturados. Há heróis e gurus: dependência de pessoas.

Nível 2: Repetível - A empresa possui um processo de desenvolvimento de software que é repetido a cada projeto. Sucessos e erros praticados em projetos anteriores podem ser repetidos e evitados, respectivamente, em novos projetos. Grande foco na gestão de projetos quanto ao controle do escopo, prazos e custos. As áreas-chave do processo (KPAs) são:

  • Gerenciamento de requisitos;
  • Planejamento de projetos;
  • Acompanhamento e supervisão de projetos;
  • Gerenciamento de subcontratação;
  • Garantia de qualidade de software (auditoria, monitoramento do projeto);
  • Gerenciamento de configuração (controle de versões).

Nível 3: Definido - Há uma forma de gestão de projetos para toda a empresa. Os processos da empresa são bem caracterizados, descritos e entendidos mediante o uso de padrões, procedimentos, ferramentas e métodos. Os processos de desenvolvimento de cada projeto seguem os processos padrões da organização, apesar da necessidade de eventuais customizações. As KPAs são:

  • Revisões;
  • Coordenação de intergrupos;
  • Engenharia de produto de software;
  • Gerenciamento de software integrado;
  • Programa de treinamento;
  • Definição e foco no processo da organização.

Nível 4: Gerenciado - A empresa usa métricas (produtividade e qualidade), métodos estatísticos e quantitativos para controlar os esforços de desenvolvimento de software. As KPAs são:

  • Gerenciamento da qualidade de software (definição das métricas);
  • Gerenciamento quantitativo do processo (indicadores dos processos).

Nível 5: Otimizado - Foco no contínuo progresso do desempenho dos processos mediante o emprego de melhorias de inovação tecnológica e incremental. A adoção destas melhorias é medida e acompanhada de modo a garantir um incremento real na melhoria dos processos. As KPAs são:

  • Gerenciamento da mudança no processo (critério para selecionar um projeto e monitorar a adoção de uma nova ferramenta);
  • Gerenciamento da mudança tecnológica;
  • Prevenção de defeitos (monitorar através de ferramentas os processos existentes).

2. Modelos CMMI e Aplicabilidade

  • CMMI-DEV: Aplicável ao processo de desenvolvimento de produtos e serviços.
  • CMMI-ACQ: Aplicável aos processos de aquisição e terceirização de produtos e serviços.
  • CMMI-SVC: Aplicável aos processos e empresas prestadoras de serviços.

KPAs por Nível:

  • Nível 1: Sem KPAs;
  • Nível 2: Acompanhamento e controle do projeto;
  • Nível 3: Desenvolvimento de requisitos e modelagem;
  • Nível 4: Gerenciamento quantitativo de projeto (gestão por métricas e indicadores para monitorar o progresso por projeto);
  • Nível 5: Análise causal e resolução (quem sugeriu adotar a ferramenta tem que justificar sua adoção, seja ela boa ou ruim, para evitar a implementação excessiva de ferramentas sem critério).

3. ISO 12207: Categorias de Processos

Processos Primários:

  • Aquisição: Análise da necessidade da aquisição, análise da proposta, seleção de fornecedor, gerenciamento da aquisição e validação do software;
  • Fornecimento: Elaboração de proposta, assinatura de contrato, determinação dos recursos, planejamento do projeto e entrega do software;
  • Desenvolvimento: Análise de requisitos, projeto, codificação, integração, testes, instalação e aceitação do software;
  • Operação: Operação do software e suporte ao usuário;
  • Manutenção: Modificações no software (corretivas, evolutivas, adaptativas e preventivas).

Processos de Apoio: Estão entre a construção do software e a administração geral.

  • Documentação: Da análise e modelagem ao usuário final e manuais de operação;
  • Gerência de Configuração: Controle de todos os releases e branches do sistema;
  • Garantia da Qualidade: Auditoria interna para garantir aderência aos processos;
  • Verificação: Testes unitários e de integração;
  • Validação: Testes formais com o cliente frente às funcionalidades contratadas;
  • Revisão Conjunta: Revisão pelos pares em todas as etapas do processo;
  • Auditoria: Auditoria externa para check e validação dos processos adotados;
  • Resolução de Problemas: Frente apta a tomar decisões que envolvam altos custos de investimento e problemas de natureza estratégica e mercadológica.

Entradas relacionadas: