Níveis de Maturidade CMMI

A proposta do presente texto não é ser extensivo quanto aos níveis do modelo de maturidade CMMI (Capability Maturity Model Integration) mas apenas um resumo dos níveis e o que isso significa para empresas que aderem ao programa de certificação.

Maturidade no Desenvolvimento

O CMMI é conjunto de orientações (guideline) para o desenvolvimento de produtos e software. Criado pelo SEI (Software Engineering Institute) da Carnegie Mellon University, contém orientações sobre diferentes fases do desenvolvimento de softwares, desde a concepção, análise de requisitos, design, desenvolvimento, integração, instalação, operação e manutenção. O CCMI descreve o que ocorre em cada fase do desenvolvimento de forma a orientar como deve ocorrer todo o processo. Aperfeiçoar a maturidade no desenvolvimento de aplicações torna mais factível o desenvolvimento de aplicações e sistemas seguros. Também é possível o uso do framework para apoiar à avaliação de produtos comerciais.

Por meio do CMMI as empresas podem continuamente aprimorar seus produtos de forma organizada. Através das orientações contidas no framework as empresas detém maior controle sobre o processo de desenvolvimento, tornando o ambiente disciplinado através de métodos repetíveis, resultando em melhor qualidade de software, redução do tempo de desenvolvimento e gerando indicadores suficientes para aprimorar o planejamento. Através do desenvolvimento organizado é possível a melhor coordenação entre diferentes equipes e obter assim melhores e mais rápidos resultados.

O CCMI possui cinco níveis de maturidade de acordo com a aderência das empresas ao modelo. Cada nível apresenta maior maturidade que os níveis anteriores, sendo cada um a evolução do nível antecessor. Ou seja, para uma empresa se certificar para o nível 4, é necessário atender a todos os requisitos dos níveis 1, 2 e 3, além dos requisitos do nível 4.

Fonte: CISSP All-in-One Exam Guide 8ª Edition

Level 1 – Initial

Nesse nível estão a maioria das empresas que não possuem uma forma organizada de desenvolvimento de software. Efetivamente não há procedimentos e planos normatizados. Não há garantia de consistência e a qualidade é imprevisível. Nesse nível existem os “heróis” dos times de desenvolvimento. Não há indicadores e muito menos governança assertiva sobre os projetos.

Level 2 – Repeatable

Nesse nível existem alguns processos e procedimento adequadamente normatizados pela organização, como controle de mudanças e garantia de qualidade. A todos os projetos são submetidos critérios mínimos para a realização de mudanças e aferir a qualidade dos produtos desenvolvidos.

Level 3 – Defined

Existem processos formais aplicáveis a cada projeto. A organização consegue identificar indicadores quantitativos que podem ser utilizados para melhor governança dos times de desenvolvimento.

Level 4 – Managed

A organização possui processos formais para todas as etapas do ciclo de desenvolvimento do produto. Faz coleta e análise dos dados de forma quantitativa que retornam ao processo de desenvolvimento através de um programa de melhoria de produto.

Level 5 – Optimizing

Todos os processos e planos no desenvolvimento de software ocorrem de forma integrada e fluida. O processo de melhoria faz parte do processo de desenvolvimento de todo produto e ocorre de forma natural.

CMMI não é o único caminho

Existem diversas diferentes formas de como organizar as equipes e perspectivas de como deve ser sua organização dentro da empresa. Uma empresa pode possuir excelentes processos de desenvolvimento de produtos sem sequer atender aos requisitos mínimos exigidos no nível 2 do CMMI. Uma empresa que adote o uso de metodologia de desenvolvimento baseado em Prototipagem possivelmente atenderia apenas aos requisitos dos níveis 1 e 2. Porém uma empresa que adote metodologias ágeis com SDLC (Systems Development Life Cycle) terá uma chance de obter uma creditação em maior nível do CMMI. Ou seja, existem formas e métodos diferentes de como realizar o desenvolvimento de softwares. CMMI não é o único caminho. Cito a seguir outros frameworks de boas práticas para maturidade no desenvolvimento de software:

  • DevOps Maturity Model
  • Open Source Maturity Model (OSMM)
  • Software Product Management Maturity Model

Segurança e CMMI

Softwares adequadamente geridos e processos seguidos de forma integrada são essenciais para a organização e estruturação de um ambiente mais seguro. Tanto que o CMMI foi desenvolvido pela Carnegie Mellon University para o Departamento de Defesa norte-americano. Da mesma forma que em um programa de segurança, os níveis evolutivos são uma forma de auxiliar as empresas a projetarem como obter maior nível de maturidade no desenvolvimento e na segurança das organizações.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *