Esse artigo faz parte da revista Engenharia de Software 7 edição especial. Clique aqui para ler todos os artigos desta edição

Processo

Apoiando a Implementação do Modelo de Maturidade MPS Nível G

 

De que se trata o artigo:

O objetivo deste artigo é apresentar os resultados obtidos com uma pesquisa de campo (survey) para apontar as práticas mais adotadas pelos implementadores do modelo MPS ao evidenciar as exigências do nível G deste modelo.

 

Para que serve:

As informações geradas por este trabalho, juntamente com os guias disponibilizados pela SOFTEX, representam para as empresas, uma oportunidade a mais de conhecer boas práticas relacionadas à coleta de evidências diretas e indiretas para evidenciar as exigências do nível G, quando em busca de uma certificação. Por conseqüência, as informações resultantes deste trabalho, podem auxiliar na redução de custos de implementação e tempo gasto na preparação para o processo de certificação.

 

Em que situação o tema é útil:

Empresas que tenham interesse em adotar práticas de melhoria de processo.

 

No inicio da produção de software (1960) não havia se pensado em estruturas formais de desenvolvimento de software. Existia no mercado a necessidade de softwares cada vez maiores e com essas necessidades aumentadas, começaram a se tornar mais constantes os problemas e prejuízos com os atrasos e cancelamentos nos projetos de software. A solução foi a criação da Engenharia de Software que tinha como principais objetivos definir processos, métodos e ferramentas para a produção de software com a qualidade esperada pela indústria. Com o aumento da qualidade foi introduzido um aperfeiçoamento contínuo de métodos, técnicas e artefatos (PRESSMAN, 2006).

Nos dias atuais, com a necessidade de se alcançar maior competitividade e qualidade na construção de software as empresas nacionais sentem-se na obrigação de modificar suas estruturas organizacionais e processos produtivos para que se adaptem ao tamanho e características dos projetos sem perder os padrões de qualidade exigidos tanto nacional, como internacionalmente. Com todas essas necessidades foi criado o MPS.BR , um modelo de maturidade nacional com padrões de qualidade internacionais no qual as empresas se certificam em diferentes níveis de acordo com seu grau de maturidade.

Hoje no Brasil, mais de 100 empresas possuem certificação MPS e estas certificações, mesmo para os níveis menos complexos, são extremamente difíceis.

Dentro deste contexto, percebeu-se a oportunidade de realizar um trabalho que identificasse as práticas mais utilizadas por implementadores MPS para evidenciar as exigências do modelo de maturidade brasileiro, visando auxiliar, orientar e minimizar as dificuldades enfrentadas na sua implementação. Desta forma torna-se possível promover um melhor entendimento por parte das empresas e dos implementadores sobre como evidenciar os resultados exigidos para a certificação do nível G do modelo MPS.

Desta forma, o objetivo deste artigo é apresentar os resultados obtidos com uma pesquisa de campo (survey) para apontar as práticas mais adotadas pelos implementadores do modelo MPS ao evidenciar as exigências do nível G deste modelo.

Além disso, o trabalho envolve uma pesquisa envolvendo o Guia Geral e o Guia de Implementação do MPS, com o intuito de abordar as características e diretrizes do modelo de Maturidade MPS no tratamento e na evidência dos resultados exigidos pelo modelo, quando da obtenção da certificação do nível G.

Como resultado, pretende-se que as informações geradas por este trabalho, juntamente com os guias disponibilizados pela SOFTEX, representem para as empresas, uma oportunidade a mais de conhecer boas práticas relacionadas à coleta de evidências diretas e indiretas para evidenciar as exigências do nível G, quando em busca de uma certificação. Por conseqüência, as informações resultantes deste trabalho, podem auxiliar na redução de custos de implementação e tempo gasto na preparação para o processo de certificação.

Métodos Orientados a Plano

Antes de falar do MPS é importante explicar qual a metodologia utilizada por este modelo. O MPS é um modelo orientado a plano. Mas o que significa dizer que um processo é orientado a plano? Métodos orientados a planos são muitas vezes referenciados como “a forma tradicional” de se desenvolver software. Eles se caracterizam por possuir processos bem definidos que são constantemente aperfeiçoados nas organizações.

A origem dos métodos orientados a planos deu-se devido à necessidade de algumas organizações adotarem processos que garantissem a qualidade de seus produtos. Para atingir este objetivo era preciso delinear muito bem o escopo do trabalho e as diretivas a serem seguidas. Vários motivos contribuíram para a adoção desta nova forma de tratamento do produto de software. Dentre eles, podemos citar:

·         Risco em caso de falhas;

·         Necessidade de controle de alterações;

·         Controle de prazos e custos, entre outros.

 

Entre os ramos da indústria que se anteciparam em desenvolver estes processos temos o Aeroespacial, Mísseis Balísticos, Satélites (BOEHM e TURNER, 2004).

A adoção de processos voltados à construção de software apresentou algumas deficiências em suas primeiras experiências de implementação por que, sem métricas, os processos ficavam sujeitos a falhas nos orçamentos, gerenciamento, etc. Porém, ao longo do tempo, estes processos sofreram significativo amadurecimento e atualmente são recomendados à atividade de desenvolvimento de software.

Principais Características dos Métodos Orientados a Planos

Como principais características dos métodos orientados a planos, podemos citar a documentação bem estruturada e concisa, a rastreabilidade entre requisitos, projetos e códigos. Outras características importantes são a definição e gerenciamento de processos que são aperfeiçoados e normalizados. Todos os processos devem possuir atividades detalhadas, fluxo de trabalho, responsabilidades definidas. Além disso, é comum o emprego de Gerentes de Projetos que monitoram, verificam e disseminam a informação.

De acordo com (BOEHM e TURNER, 2004) os principais conceitos dos métodos orientados a planos são:

·         Aperfeiçoamento de processos;

·         Processo de capacitação;

·         Maturidade organizacional;

·         Gerenciamento de risco;

·         Verificação;

·         Validação;

·         Arquitetura dos sistemas de software.

Exemplos de Métodos Orientados a Planos

Ao longo dos anos, diversos métodos orientados a planos foram desenvolvidos e modelos de maturidade para tais métodos foram criados. De acordo com (BOEHM e TURNER, 2004) entre estes métodos destacam-se:

·         CMMI – SEI (Modelo de Maturidade) (SEI, 2007);

·         Military Standards – Departamento de Defesa dos USA;

·         General Process Standards – ISO ,  EIA , IEEE;

·         Software Favorities – Hitachi, General Electric;

·         Cleanroom – IBM;

·         Capability Maturity Model Software (SW – CMM) – SEI;

·         Personal Software Process (PSP) – SEI;

·         Team Software Process (TSP) – SEI.

 

A partir de agora, conheceremos o MPS BR. Os conceitos apresentados visam fornecer um detalhamento sobre este modelo como forma de prover uma melhor compreensão da pesquisa desenvolvida pelos autores deste artigo.

Introdução ao MPS

As mudanças que estão ocorrendo nos ambientes de negócios têm motivado as empresas a modificar suas estruturas organizacionais e processos produtivos, saindo da visão tradicional baseada em áreas funcionais em direção a redes de processos centrados no cliente. A competitividade depende, cada vez mais, do estabelecimento de conexões entre estes processos, criando elos essenciais nas cadeias produtivas. Alcançar competitividade pela qualidade, para as empresas de software, implica tanto na melhoria da qualidade dos produtos de software e serviços correlatos, como dos processos de produção e distribuição de software. 

Desta forma, assim como para outros setores, qualidade é fator crítico de sucesso para a indústria de software. Para que o Brasil possua um setor de software competitivo, nacional e internacionalmente, é essencial que os empreendedores do setor coloquem a eficiência e a eficácia de seus processos em foco nas suas empresas, visando à oferta de produtos de software e dos serviços oferecidos por estes, de acordo com padrões internacionais de qualidade.

O foco principal, embora não exclusivo, do MPS, está no grupo de empresas formado, em geral, pela grande massa de micro, pequenas e médias empresas de software brasileiras, com poucos recursos e que necessitam melhorar radicalmente seus processos de software em 1 ou 2 anos (SOFTEX, 2007a).  O intuito é que o modelo seja adequado ao perfil de empresas com diferentes tamanhos e características, sejam elas públicas ou privadas, de portes variados e que seja compatível com os padrões de qualidade aceitos internacionalmente.

Além disso, tem como pressuposto o aproveitamento de toda a competência existente nos padrões e modelos de melhoria de processo já disponíveis. Dessa forma, ele tem como base os requisitos definidos nos modelos de melhoria de processo.

O MPS visa atender a necessidade de implantar os princípios de Engenharia de Software de forma adequada ao contexto das empresas brasileiras, sendo compatível com as principais abordagens internacionais para definição, avaliação e melhoria de processos de software, melhoria da qualidade e construção de produtos de software e serviços correlatos, baseando-se nos conceitos de maturidade e capacidade destes processos.

Dentro desse contexto, o MPS possui três componentes (SOFTEX, 2007a):

·         Modelo de Referência (MR-MPS);

·         Método de Avaliação (MA-MPS);

·         Modelo de Negócio (MN-MPS).

Descrição Geral do Modelo MPS

O MPS tem como objetivo definir um modelo de melhoria e avaliação de processo de software, preferencialmente para as micro, pequenas e médias empresas, de forma a atender às necessidades de negócio e, além disso, ser reconhecido nacional e internacionalmente como um modelo aplicável à indústria de software. Este é o motivo pelo qual ele está aderente a modelos e normas internacionais. O MPS também define regras para sua implementação e avaliação, dando sustentação e garantia de que está sendo empregado de forma coerente com as suas definições (SOFTEX, 2007a).

Conforme descrito em (SOFTEX, 2007a), a base técnica utilizada para a construção do MPS é composta pelas normas (ABNT, 1998) – Processo de Ciclo de Vida de Software e suas emendas 1 e 2 (ISO/IEC 15504-1,2004) e (ISO/IEC 15504-2,2003) – Avaliação de Processo (também conhecida por SPICE: Software Process Improvement and Capability Etermination e seu Modelo de Avaliação de Processo de Software (ISO/IEC 15504-5,2006). O modelo está totalmente aderente a essas normas. O MPS também cobre o conteúdo do CMMI-SE/SWSM, através da inclusão de processos e seus resultados de acordo com as Normas (ABNT, 1998), conforme Figura 1.

 

Figura 1. MPS.BR (SOFTEX,2007a)

 

Cada componente do modelo é descrito através de guias e dos documentos do projeto. Um destes documentos é o Modelo de Referência de Melhoria de Processo de Software (MR-MPS), que contém os requisitos que as organizações deverão atender para estar em conformidade com o modelo de maturidade em referência. Ele contém as definições dos níveis de maturidade e aborda também a capacidade de realização dos processos dentro de cada um dos níveis do modelo. Ele foi baseado nas normas (ABNT,1998) e suas emendas 1 e 2, ISO/IEC 15504 e adequado ao CMMI-SE/SWSM (SOFTEX,2007a).

Descrição do MR-MPS

O Modelo de Referência MR-MPS define níveis de maturidade que são uma combinação entre processos e capacidade de implementação de cada processo.

A capacidade de processo é sua habilidade para alcançar os objetivos de negócio, atuais e futuros. Ela está relacionada com o atendimento dos atributos de cada processo dentro de cada nível de maturidade.

Níveis de maturidade - Descrição Geral

Os níveis de maturidade estabelecem patamares de evolução de processos, caracterizando estágios de melhoria de implementação de processos na organização. O nível de maturidade em que se encontra uma organização permite prever seu desempenho futuro em uma ou mais disciplinas. O MR-MPS define sete níveis de maturidade:

·         A (Em Otimização)

·         B (Gerenciado Quantitativamente)

·         C (Definido)

·         D (Largamente Definido)

·         E (Parcialmente Definido)

·         F (Gerenciado) 

·         G (Parcialmente Gerenciado). ...

Quer ler esse conteúdo completo? Tenha acesso completo