De que se trata o artigo:

Este artigo tem como objetivo apresentar os modelos de maturidade existentes, dando um foco maior no MPS.BR comparando-o com o modelo internacional CMMI. Além disso, serão apresentadas algumas questões que devem ser consideradas ao se trabalhar na implantação destes modelos, e em particular, o nível F do MPS.BR.

Em que situação o tema útil:

Em sua grande maioria, as empresas que aderem a este modelo são de pequeno e médio portes, ou até microempresas, que estão buscando um diferencial competitivo e melhora da qualidade final do seu produto de uma forma padronizada e sistêmica. Sendo assim, este artigo será útil para empresas que se encaixem nesse perfil e desejam implantar o nível F de maturidade.

Resumo DevMan

Neste artigo o tema modelos de maturidade será abordado considerando o Nível F do MPS.BR como principal ponto de discussão. Além disso, será visto também conceitos associados ao CMMI, MPS.BR, compatibilidade entre eles e, por fim, algumas questões que podem ser consideradas aos se trabalhar com iniciativas de implantação de modelos de maturidade.

Autores: Jefferson Cardoso, João Fágner Cruz, José Antonio Matos Pereira e Rodrigo Oliveira Spínola

A área de tecnologia de informação é um dos segmentos que mais vem crescendo no Brasil, de uma forma bastante acelerada e agressiva. As empresas de TI brasileiras estão buscando se tornar cada vez mais competitivas tanto no mercado nacional como no internacional de software. Porém, o custo deste diferencial competitivo ainda é bastante elevado, pois para desenvolver um software que se diferencie no mercado, ou seja, possua uma qualidade acima dos seus concorrentes, atenda as expectativas e necessidades dos clientes e seja entregue dentro do prazo planejado, é necessário um alto investimento no processo de construção do software dessas empresas.

Os modelos de maturidade de software têm como um dos objetivos instruir as empresas que desejam fazer de seu processo de construção de software um modelo a ser seguido em qualquer projeto, alinhado com as decisões estratégicas da organização. Com isso, de acordo com o nível de maturidade que a empresa se encontra, existe um aumento tanto na garantia da qualidade do software que está sendo desenvolvido, como na organização e amadurecimento do processo que está sendo seguido.

Atualmente existem alguns modelos que podem ser utilizados nas empresas, sendo o que ganhou maior notoriedade e adesão no cenário mundial foi o Capability Maturity Model Integration – CMMI. Este modelo foi desenvolvido pelo SEI (Software Engineering Institute) da Universidade Carnegie Mellone, e é conhecido como uma evolução do CMM. Possuindo duas formas ou representações de implantação, o CMMI pode ter 5 níveis de maturidade considerando a representação por estágios e 6 níveis caso se considere a representação contínua.

Como o custo de implantação deste modelo é muito alto e não se encaixa na realidade de grande parte das empresas brasileiras, a Softex (Associação para promoção da Excelência do Software brasileiro), em parceria com o governo e universidades, desenvolveu a Melhoria de Processo de Software Brasileiro – MPS.BR. Tendo como público alvo as empresas do país, este modelo está em total conformidade com as normas ISO e os níveis de maturidade do CMMI.

Modelo CMMI

O CMMI foi construído a partir da integração dos modelos CMM, SW-CMM, SE-CMM, IPD-CMM, além das boas práticas da norma ISO/IEC 15504. Esta necessidade de integração surgiu devido ao fato das dificuldades e problemas gerados quando o modelo era concebido de forma separada. Com isso, o modelo se tornou o que alguns autores chamam de framework para melhoria no processo de construção de software. No Brasil o CMMI já é bastante conhecido, porém poucas empresas possuem o seu nível máximo de maturidade. Possuindo duas formas de implantação que são chamadas de representações, por estágios ou contínua, fica a critério da empresa que tem a intenção de implantar o modelo a escolha por qual representação deseja seguir. A representação por estágios é definida por níveis de maturidade do processo e a representação contínua é definida pelos níveis de capacidade do processo.

Na representação por estágios, o método utilizado é o sequencial por estágios, ou seja, cada nível de maturidade é pré-requisito para o nível seguinte. Este método utiliza um conjunto de áreas de processos que já são previamente definidas e que servem de caminho para atingir o ultimo nível. Nesta representação os níveis de maturidade são divididos em: Inicial, Gerenciado, Definido, Quantitativamente gerenciado e Otimização respectivamente, totalizando 5 níveis a serem percorridos conforme Figura 1.

Figura 1. Níveis de Maturidade CMMI.

Nível 1 - Inicial

Conhecido como nível imaturo da organização, nele a empresa se encontra em um “caos”, em termo de padronização do processo de desenvolvimento de software, ou seja, a construção do software é feita de forma desorganizada sem adoção de nenhum padrão ou metodologia para o desenvolvimento e gerenciamento. Na sua grande maioria, os projetos das empresas que se encontram nesse nível possuem forte dependência da qualificação técnica do gerente de projeto e dos desenvolvedores. Não há planejamento na tomada de decisões com base em alguma análise específica, tudo fica a critério das experiências pessoais e da própria empresa.

Fatalmente esses projetos tendem a não atender o prazo acordado com o cliente, o seu custo fica acima do planejado devido ao grande esforço gerado, a qualidade final do produto não é a esperada e, por fim, é gerada uma frustração nas expectativas do cliente, pois o produto final que foi entregue não atende a todas as suas necessidades. Entretanto, mesmo com todo cenário favorável ao fracasso, existem algumas empresas que conseguem com muito esforço desenvolver software de qualidade, mesmo assumindo um grande risco.

Toda empresa que não uma gerência ou padroniza seu processo já se encontra no nível 1 do CMMI, por isso este nível não possui áreas de processo a serem atendidas.

Nível 2 - Gerenciado

Neste nível os processos internos da empresa já estão definidos e controlados, existe uma política que deve ser seguida para garantir que todos os projetos sejam construídos de forma organizada, padronizada e planejada. Além disso, existe uma preocupação na qualificação dos profissionais envolvidos no projeto e na disponibilização de recursos apropriados para que estes profissionais possam gerar saídas controladas. Todo o projeto passa a ser totalmente transparente para as partes envolvidas, possibilitando que o projeto possa ser controlado, monitorado e avaliado.

...
Quer ler esse conteúdo completo? Tenha acesso completo