MPS.BR: Promovendo a Adoção de Boas Práticas de Engenharia de Software pela Indústria Brasileira Marcos Kalinowski, Gleison Santos, Sheila Reinehr, Mariano Montoni, Ana Regina Rocha, Kival Chaves Weber, Guilherme Horta Travassos Agenda 1 – Introdução 2 – O Programa MPS.BR e o Modelo MPS 3 – Adoção e Disseminação do Modelo MPS 4 – Resultados Obtidos pela Organizações que Adotaram o modelo MPS 5 – Considerações Finais Introdução • A melhoria contínua da capacidade de desenvolvimento é fundamental para que organizações de software prosperem em mercados competitivos. • Ao longo dos anos modelos de referência têm surgido para guiar a melhoria da capacidade de processos de engenharia de software. • A melhoria baseada neste tipo de modelo costuma ser de longo prazo e requerer grandes investimentos, podendo se tornar impeditivos para que pequenas e médias empresas (PME’s) melhorem seus processos. • No Brasil, onde aproximadamente 73% da indústria de software é constituída por PMEs, poucas organizações têm adotado modelos de referência. • Constatou-se que normalmente as organizações só implementam as boas práticas da engenharia de software quando estas são exigidas em avaliações de processos. Introdução • Neste contexto foi criado o programa MPS.BR para desenvolver e disseminar um modelo de referência brasileiro visando estabelecer um caminho economicamente viável para que organizações, incluindo as PMEs, alcancem os benefícios da melhoria de processos e da utilização de boas práticas da engenharia de software em um intervalo de tempo razoável. • O modelo foi desenvolvido levando em consideração normas internacionais, modelos internacionalmente reconhecidos, boas práticas da engenharia de software e as necessidades de negócio da indústria de software brasileira. • Neste artigo são apresentados a versão atual do modelo MPS, resultados quantitativos de sua adoção e disseminação e resultados qualitativos de desempenho das organizações que adotaram o MPS Agenda 1 – Introdução 2 – O Programa MPS.BR e o Modelo MPS 3 – Adoção e Disseminação do Modelo MPS 4 – Resultados Obtidos pela Organizações que Adotaram o modelo MPS 5 – Considerações Finais O Programa MPS.BR e o Modelo MPS • O programa MPS.BR é coordenado pela SOFTEX e patrocinado pelo Ministério de Ciência e Tecnologia (MCT), pela Financiadora de Estudos e Projetos (FINEP), pelo Serviço Brasileiro de Apoio às Micro e Pequenas Organizações (SEBRAE) e pelo Banco Interamericano de Desenvolvimento (BID). • O principal objetivo do programa MPS.BR é desenvolver e disseminar um modelo de processos de software (o modelo MPS), para: – Estabelecer um caminho economicamente viável para que organizações, incluindo as PMEs, alcancem os benefícios da melhoria de processos e da utilização de boas práticas da engenharia de software em um intervalo de tempo reduzido. O Programa MPS.BR e o Modelo MPS • O modelo MPS deveria incorporar tanto práticas internacionalmente reconhecidas para implementação e avaliação de processos de engenharia de software quanto atender às necessidades de negócio da indústria de software brasileira. • As normas ISO/IEC 12207 e ISO/IEC 15504 foram usadas como base técnica para definir os componentes do modelo MPS. • Tendo em vista a importância do modelo CMMI para organizações brasileiras que atuam em mercados externos, a equipe técnica do modelo MPS considerou o CMMI como um complemento técnico para a definição dos processos do modelo MPS. • O modelo MPS possui três componentes principais: o modelo de referência MPS (MR-MPS); o método de avaliação MPS (MAMPS); e o modelo de negócios MPS (MN-MPS). O Modelo de Referência MR-MPS • O MR-MPS está em conformidade com a norma ISO/IEC 15504, satisfazendo os requisitos para modelo de referência de processos definidos na ISO/IEC 15504-2. • Os processos do MR-MPS são uma adaptação dos processos da norma ISO/IEC 12207 e são, adicionalmente, compatíveis com as áreas de processo do CMMI-DEV. • O MR-MPS define sete níveis de maturidade de processos para organizações que produzem software: A (Em Otimização), B (Gerenciado Quantitativamente), C (Definido), D (Largamente Definido), E (Parcialmente Definido), F (Gerenciado) e G (Parcialmente Gerenciado). • Os níveis de maturidade são definidos em duas dimensões: a dimensão de capacidade de processos e a dimensão de processos. Nível O Modelo de Referência MR-MPS Processos Capacidades (AP) A (sem processos adicionais) B Gerência de Projetos (evolução) C Gerência de Riscos, Desenvolvimento Reutilização, Gerência de Decisões Desenvolvimento de Requisitos, Integração do 1.1, 2.1, 2.2, 3.1, 3.2 Produto, Projeto e Construção do Produto, Validação, Verificação Avaliação e Melhoria do Processo Organizacional, 1.1, 2.1, 2.2, 3.1, 3.2 Gerência de Projetos (evolução), Gerência de Recursos Humanos, Gerência de Reutilização, Definição do Processo Organizacional D E F G 1.1, 2.1, 2.2, 3.1, 3.2, 4.1, 4.2, 5.1, 5.2 1.1, 2.1, 2.2, 3.1, 3.2, 4.1, 4.2 para 1.1, 2.1, 2.2, 3.1, 3.2 Aquisição, Garantia da Qualidade, Gerência de 1.1, 2.1, 2.2 Configuração, Gerência de Portfólio de Projetos, Medição Gerência de Projetos, Gerência de Requisitos 1.1, 2.1 O Modelo de Referência MR-MPS • No modelo MPS as boas práticas são exigidas através de resultados de processos e de atributos de processo. • Os métodos, técnicas e ferramentas que devem ser empregados para alcançar estes resultados não são impostos. • O conhecimento a respeito dos métodos, técnicas e ferramentas da engenharia de software é essencial para que organizações implementem o modelo de modo a alcançar seus objetivos de negócio e maximizar seu retorno de investimento. O Modelo de Referência MR-MPS • Pode ser feita uma correspondência entre os níveis de maturidade MR-MPS e CMMI. • Algumas áreas de processo do CMMI aparecem como atributos de processo no MR-MPS, tendo em vista sua natureza de capacitar os demais processos. • Existem ainda processos no MR-MPS que não estão presentes no CMMI, como Gerência de Portfólio de Projetos, Gerência de Recursos Humanos (com gerência do conhecimento), Gerência de Reutilização e Desenvolvimento para Reutilização. Agenda 1 – Introdução 2 – O Programa MPS.BR e o Modelo MPS 3 – Adoção e Disseminação do Modelo MPS 4 – Resultados Obtidos pela Organizações que Adotaram o modelo MPS 5 – Considerações Finais Adoção e Disseminação • Até setembro 2009, 174 organizações brasileiras foram avaliadas em diversas regiões do país (24 no Centro Oeste, 31 no Nordeste, 2 no Norte, 99 no Sudeste e 18 no Sul). Adoção e Disseminação • Até Março de 2010, 206 organizações (132 MPS-G, 59 MPS-F, 6 MPS-E, 1 MPS-D, 2 MPS-C, 0 MPS-B, and 6 MPS-A) passaram por avaliações MPS bem sucedidas no Brasil. • Surge o interesse por compreender qualitativamente variáveis de desempenho decorrentes da adoção destas práticas, como custo, produtividade e qualidade. Agenda 1 – Introdução 2 – O Programa MPS.BR e o Modelo MPS 3 – Adoção e Disseminação do Modelo MPS 4 – Resultados Obtidos pela Organizações que Adotaram o modelo MPS 5 – Considerações Finais Resultados Obtidos pelas Organizações que Adotaram o modelo MPS • Visando investigar experimentalmente a variação do desempenho das organizações em função da adoção do modelo MPS, em Outubro de 2007 o projeto iMPS foi contratado pela SOFTEX ao grupo de engenharia de software experimental da COPPE/UFRJ. • Os resultados de desempenho observados compreendem, a princípio, seis categorias: custo, prazo, produtividade, qualidade, satisfação do cliente e retorno do investimento (ROI). iMPS • O objetivo do iMPS foi planejar e executar um estudo experimental (survey) para acompanhar e evidenciar resultados de desempenho nas organizações de software que adotaram o modelo MPS. • Questionários de acompanhamento foram elaborados para que fossem aplicados nos seguintes momentos: – (i) quando as organizações estão iniciando a implementação do modelo MPS; – (ii) quando as organizações estão em procedimento de avaliação; e – (iii) periodicamente para as organizações com avaliação publicada no portal da SOFTEX e com prazo de validade vigente. iMPS • O iMPS não se propõe a comparar o desempenho de diferentes organizações, sendo o objetivo compreender apenas a variação do desempenho em função da adoção do modelo MPS. • Com a aplicação dos questionários às organizações que adotaram o MPS durante os anos de 2008 e 2009 foi possível obter os seguintes resultados: – Caracterização 2008 das organizações que adotaram o MPS; – Caracterização 2009 das organizações que adotaram o MPS; e – Análise da variação 2008/2009, permitindo observar a variação do desempenho das organizações que adotaram o MPS entre 2008 e 2009. iMPS: Caracterização 2008 • 123 questionários devidamente respondidos por diferentes organizações. • Os resultados gerais indicam que as organizações que adotaram o modelo MPS mostraram: – maior satisfação dos seus clientes (correlação positiva de +0,53), – maior produtividade (correlação positiva de +0,98), – capacidade de desenvolver projetos maiores (correlação positiva de +0,77) – 94,4% das organizações relataram estar totalmente (70,2%) ou parcialmente satisfeitas (24,2%) com o modelo. iMPS: Caracterização 2009 • Contou com 135 respostas de diferentes organizações e o comportamento geral se repetiu. – O aumento da satisfação dos clientes apresentou correlação positiva de +0,59, – o aumento da produtividade apresentou correlação positiva de +0,46, e – o aumento dos projetos apresentou correlação positiva de +0,72. – 98,5% relatou estar totalmente (71,1%) ou parcialmente satisfeita (27,4%) com o modelo . • Embora as correlações sejam positivas, o estudo não se propõe a identificar relacionamentos causais. – Trata-se de empresas diferentes. Caracterização – 2008/2009 Tamanho dos Projetos (em PF) 700 600 500 400 Tamanho 300 200 Em EA ei s Ní v el F Ní v el G Ní v Av al ia çã o Em Im pl em en t 0 aç ão 100 Caracterização – 2008/2009 Caracterização – 2008/2009 Produtividade em PF/Mês 180 160 140 PF/Mês 120 100 Produtividade 80 60 40 20 0 Nível G Nível F Níveis E-A iMPS: Análise de Variação 2008/2009 • Foram consideradas 43 organizações, representando a população de organizações que respondeu ao questionário periódico em 2008 e 2009. • Nesta análise o que chamou particularmente a atenção foram os resultados da variação de desempenho das 9 empresas que mudaram ou revalidaram seus níveis de maturidade MPS. – Adoção do MPS e continuidade do desenvolvimento seguindo as diretrizes oferecidas por ele. • Comportamento coerente com as hipóteses associadas à utilização de processos de desenvolvimento de software combinado com boas práticas da engenharia de software. Análise de Variação – 2008/2009 Variação de Desempenho das empresas MPS • Indicação de tendência observando os resultados individuais das tendências das empresas. Não é possível comparação entre uma empresa com outra, apenas o comportamento do grupo Exemplo – Número de Funcionários: Empresa 2008 2009 Tendência A 10 15 AUMENTOU B 10 10 NÃO ALTEROU C 10 8 REDUZIU Análise de Variação – 2008/2009 Variação de Desempenho de 43 Empresas com MPS – Níveis G-A Variação Desempenho - Geral 100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% Faturamento No Clientes no No Funcionários País Indicador A Respostas Válidas 27 Nível de Confiança (%) 88,3 Custo Medio Projeto B 35 92,7 Prazo Médio dos Tamanho Médio Projetos dos Projetos C 37 93,9 D 29 89,4 Produtividade Qualidade E F 40 39 95,8 95,1 Satisfacao Cliente ROI G H I 25 15 43 87,1 79,2 100 Aumentou Não Alterou Reduziu J 22 85,1 Análise dos Dados – 2008/2009 Variação de Desempenho de 9 Empresas que Revalidaram/Mudaram de Nível Variação Desempenho - Revalidaram/Mudaram de Nivel 100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% Faturamento No Clientes no País No Funcionários Custo Medio Projeto Prazo de Projeto Tamanho Médio dos Projetos Produtividade Qualidade Satisfacao Cliente ROI Aumentou Não Alterou Reduziu Indicador Respostas Válidas Nível de Confiança (%) A B 5 8 70,2 88,2 C 8 88,2 D E 6 8 76,4 88,2 F 7 82,2 G H I 7 3 9 82,2 52,3 100 J 4 62,7 Agenda 1 – Introdução 2 – O Programa MPS.BR e o Modelo MPS 3 – Adoção e Disseminação do Modelo MPS 4 – Resultados Obtidos pela Organizações que Adotaram o modelo MPS 5 – Considerações Finais Considerações Finais • Neste artigo, apresentamos a estrutura do programa MPS.BR e da versão mais recente do modelo MPS, bem como resultados quantitativos de sua adoção no Brasil e qualitativos a respeito da variação de desempenho das organizações que adotaram o MPS. • Tendo em vista os dados quantitativos da crescente disseminação do modelo e a constatação de que normalmente as organizações só implementam as boas práticas da engenharia de software quando estas são exigidas em avaliações, acreditamos que o programa MPS.BR esteja contribuindo para promover boas práticas da engenharia de software na indústria brasileira, incluindo as PMEs. Considerações Finais • Como resultado da adoção destas práticas cria-se a expectativa de melhorar o desempenho destas organizações, tornando as mais competitivas. • Os dados qualitativos obtidos através de uma estratégia experimental baseada em surveys têm servido como um passo na direção de evidenciar esta melhora de desempenho. • Assim, acreditamos que estes resultados possam servir como estímulo e argumentação para que PMEs adotem o modelo, além de fornecer subsídios para tomadas de decisão. Considerações Finais • Maiores detalhes sobre os resultados do projeto iMPS estão disponíveis em dois livros publicados pela SOFTEX (www.softex.br/mpsbr) MPS.BR: Promovendo a Adoção de Boas Práticas de Engenharia de Software pela Indústria Brasileira Marcos Kalinowski, Gleison Santos, Sheila Reinehr, Mariano Montoni, Ana Regina Rocha, Kival Chaves Weber, Guilherme Horta Travassos