Maturidade no desenvolvimento de software: CMMI e MPS-BR

Veja neste artigo o que são os modelos CMMI e MPS-BR, bem como de que forma organizações podem se beneficiar das diversas práticas sugeridas pelos mesmos.

O dia-a-dia dentro da área de desenvolvimento de software é caracterizado por uma grande pressão no que se refere a prazos de entrega, custos e qualidade daquilo que se está produzindo. Independente do tamanho das equipes voltadas a tarefas deste tipo, muitas organizações possuem dificuldades em gerenciar tais atividades, sendo comum a ocorrência de atrasos, estouros orçamentários e sistemas que ficam aquém do esperado.

Levando em consideração esses fatos, alguns modelos foram desenvolvidos de forma a auxiliar a condução de atividades que envolvam projetos de software. O objetivo deste artigo é fornecer uma visão geral sobre dois destes modelos (CMMI e MPS-BR), baseando-se para isto em um conceito conhecido como “maturidade”.

O termo “maturidade” deve ser compreendido como a capacidade de se repetir uma série de resultados de uma maneira previsível. Importante ressaltar ainda que os modelos CMMI e MPS-BR contemplam diferentes níveis de maturidade, disponibilizando-se assim uma forma de mensurar o grau de progresso atingido por uma organização na implementação de projetos de software.

CMMI

O CMMI (Capability Maturity Model Integration) foi criado pelo SEI (Software Engineering Institute), o qual é um órgão integrante da universidade norte-americana Carnegie Mellon. Trata-se de um modelo que está atualmente na versão 1.3 (Janeiro/2013), com um enfoque voltado para a capacidade de maturidade de processos de software.

Um processo representa, dentro da área de software, um conjunto de atividades cujo objetivo é atingir uma meta previamente estipulada. Já por capacidade e maturidade de um processo, deve-se ter a noção do grau de qualidade com o qual um processo atinge um resultado esperado.

O CMMI está dividido em 5 níveis de maturidade (Figura 1) que atestam, por sua vez, o grau de evolução em que uma organização se encontra num determinado momento. Além disso, tem por objetivo principal funcionar como um guia para a melhoria dos processos da organização, considerando para isto atividades como o gerenciamento do desenvolvimento de software, prazos e custos previamente estabelecidos. O objetivo maior, considerando o CMMI e seus diferentes conceitos, está justamente na produção de software com maior qualidade e menos propenso a erros.

Figura 1. Os diferentes níveis de maturidade do CMMI

Dentre os principais benefícios da implantação do CMMI, vale a pena destacar:

Para se conseguir o que este modelo propõe, a organização interessada na implantação do CMMI deverá evoluir progressivamente, considerando para isto uma sucessão de diferentes de níveis. Cada nível indica, por sua vez, o grau de maturidade dos processos num determinado instante:

A implantação do CMMI é recomendável para grandes fábricas de software. Implementar os diversos estágios é uma tarefa árdua, não só numa fase inicial, mas também quando se leva em conta a migração de um nível para outro. Isto exigirá, invariavelmente, a realização de vultosos investimentos financeiros, assim como uma mudança de postura da organização (principalmente quando a mesma não contava uma experiência anterior bem-sucedida no gerenciamento de processos).

Em inúmeras ocasiões, empresas desenvolvedoras de sistemas recorrem a consultorias especializadas, visando apoio na obtenção da certificação CMMI (fato este que inviabiliza a adoção deste mesmo modelo por pequenas companhias).

MPS-BR

O MPS-BR (Melhoria do Processo de Software Brasileiro) é uma metodologia voltada à área de desenvolvimento de sistemas e que foi criada por um conjunto de organizações ligadas ao desenvolvimento de software. Dentre as instituições envolvidas pode-se citar: a Softex (SP), a RioSoft (RJ), o COPPE/UFRJ (RJ) e o CESAR (PE). Na verdade, estas são organizações normalmente não-governamentais e muitas vezes de origem acadêmica, possuindo uma atuação de destaque junto à comunidade de software brasileira.

Enfatiza-se, dentro do MPS-BR, o uso das principais abordagens internacionais voltadas para a definição, a avaliação e a melhoria dos processos de software. Tal fato torna o MPS-BR compatível inclusive com as práticas do CMMI. Há ainda no MPS-BR uma estrutura de níveis de maturidade, de forma similar àquela existente dentro do CMMI.

Os diferentes níveis de maturidade do MPS-BR constituem um meio para indicar qual o nível da empresa que se está considerando. Cada classificação possível atesta, assim, diferentes graus no controle de processos e qual a qualidade que se pode esperar da organização que a detém.

Figura 2. Os diferentes níveis de maturidade do MPS-BR (Fonte: FUMSOFT - http://www.fumsoft.org.br/qualidade/modelo_mpsbr)

A seguir estão listados os 7 níveis de maturidade previstos pelo MPS-BR:

A certificação MPS-BR também tem sido solicitada em licitações governamentais. Logo, empresas interessadas em participar de projetos conduzidos por órgãos do governo podem se utilizar desta metodologia para ampliar seu ramo de atuação.

Pode-se considerar ainda o MPS-BR como uma importante alternativa ao CMMI em organizações de médio e pequeno porte. Isto se justifica em virtude do alto investimento financeiro que o CMMI representa, o que torna o mesmo mais indicado às grandes empresas de desenvolvimento.

Outras informações sobre o MPS-BR encontram-se nesse link.

Conclusão

Este artigo procurou fornecer uma visão geral a respeito dos modelos CMMI e MPS-BR, discutindo as características de cada um e de que forma os mesmos podem ser adotados na otimização de processos de desenvolvimento de software. Espero que o conteúdo aqui apresentado possa lhe ser útil em algum momento. Até uma próxima oportunidade!

Artigos relacionados