sábado, 21 de fevereiro de 2009

Desmistificando o MPS.BR – Adendo à Introdução

No meu último artigo sobre MPS.BR, fiz uma breve introdução ao assunto na forma de perguntas e respostas. Tentei esclarecer alguns conceitos desse modelo de melhoria e enfatizar alguns objetivos chaves. Se você ainda não leu a introdução, recomendo que a leia antes de considerar este adendo (clique aqui). Se você achar a introdução muito longa, leia pelo menos a primeira parte e se concentre nas perguntas que achar mais relevante.
Na introdução, para deixar o texto simples, apresentei apenas uma versão simplificada do MPS.BR. Algumas coisas foram deixadas de lado a favor daquilo que, de acordo com a minha experiência, é mais importante: enfatizar que esse modelo é sobre tornar o processo de desenvolvimento de software mais transparente e gerenciável. Em outras palavras, o MPS.BR não diz “como” se deve melhorar o processo. Mas as implementações propostas por esse modelo, se observadas, permitem aos gestores avaliar a necessidade de melhoria e saber onde o processo deve ser melhorado.
Entretanto, mal acabei de publicar o primeiro artigo, já recebi mais algumas perguntas sobre o assunto. E percebi que algumas coisas precisam ser mais bem esclarecidas antes de partir para uma desmistificação de cada processo (como havia prometido, meu próximo artigo iria falar especificamente sobre o Nível G do MPS.BR). Sendo assim, vamos lá! Vou responder mais estas quatro importantes perguntas.
Se o MPS.BR serve apenas para mostrar SE o processo deve ou não ser melhorado com base nas medições, por que não ir direto ao ponto e corrigir logo o processo?
Pergunta interessante. Ela questiona a real necessidade do MPS.BR. Em outras palavras, ela quer saber se, já que eu disse que o MPS.BR apenas indica SE o processo deve ou não ser melhorado, por que não esquecer esse papo de maturidade e implementar de uma vez por todas um processo mais eficaz e eficiente?
Em primeiro lugar, menti quando disse que o MPS.BR apenas indica se o processo deve ou não ser melhorado. Na verdade, em um primeiro momento, omiti essa informação por razões didáticas. A transparência e a gerenciabilidade, no fundo, JÁ são uma melhoria de processo. Portanto, por simplesmente implementar o MPS.BR, a empresa já está conseguindo alguma melhoria, mesmo que pequena. Ocorre que, como disse no primeiro artigo, um processo REALMENTE maduro é aquele que obtém os melhores resultados ao menor custo possível. E isso vai muito além da transparência e gerenciabilidade. Só que menti quando disse que era só isso. Esses são os pontos chaves. Só que o MPS.BR vai mais além. A maturidade proposta por esse modelo contribui para a redução de riscos e, portanto, para diminuir a incerteza e a possibilidade de prejuízos dos processos. Logo, o MPS.BR por si só, no fim, também contribui para reduzir os custos dos processos.
Segundo. Se a sua empresa resolver ignorar o MPS.BR e ir direto ao ponto, pode ser que cometa alguns erros. E digo isso por diversas razões. Pode ser que o seu processo já esteja bom e nem precise ser melhorado, mas você não sabe disso por que ele não é transparente. Pode ser que você implemente ações de melhoria no ponto errado do processo. Por último, mesmo que o seu processo precise ser melhorado e você consiga isso, como garantir que ele vai continuar assim se não for transparente e gerenciável? Como você vai controlá-lo? Sem controle, pode ser que um processo bom hoje fique ruim no futuro. Se isso ocorrer, o investimento se perderá. O MPS.BR evita esses problemas, pois mostra se o processo precisa ser melhorado, em que ponto e garante que ele continue assim por meio de processos de controle e melhoria constante.
Terceiro. Você precisa ter números para justificar um investimento em melhoria para a direção de sua empresa. Eles vão querer saber qual o retorno sobre o investimento, dados da situação atual e da situação desejada. Sem a medição preconizada pelo MPS.BR, fica muito difícil conseguir esses números.
Em suma, ir direto ao ponto é arriscado e o barato pode sair caro.
Já que o MPS.BR não fala “como”, o que fazer para melhorar o processo?
Como você mesmo disse, essa pergunta foge do escopo do MPS.BR, que é um modelo de melhoria do processo. Mesmo assim, vou te dar uma dica. Para melhorar o processo DE FATO, utilize um modelo DE processo. Em outras palavras, para ir além da transparência e da gerenciabilidade, aplique um modelo de processo.
Existem vários à disposição: RUP, XP, Scrum, o método preconizado pela 37signals (que vou chamar carinhosamente de M37), etc. Qual é melhor? É difícil responder. Gosto muito do foco na arquitetura e nos casos de uso proposto pelo RUP, porém ele é muito burocrático. Acho legal a programação em pares do XP, mas ele deixa a arquitetura um pouco de lado. Já o M37, da 37signals, é interessante por focar na prototipação e no marketing – mas fica muito longe do MPS.BR. Assim, o melhor talvez seja aproveitar o melhor de cada um. Muito vai depender do que os números revelaram após a implementação do MPS.BR. Vou exemplificar.
Suponha que os números revelem que os produtos não estão satisfazendo os desejos dos demandantes e isso estiver provocando constantes alterações de escopo. Se esse for o caso, talvez seja o caso de adotar a prototipação do M37 que tem se mostrado útil para reduzir o risco de o produto final não ser o que o cliente queria.
Vale ressaltar que esses processos não são certificados pelo MPS.BR nem pelo CMMI-DEV. Ou seja, implantar esses processos não é garantia de atender 100% ao MPS.BR, mesmo em se tratando do burocrático RUP.
Bom. Já fugi demais do assunto. Vamos voltar ao MPS.BR.
Por que o MPS.BR?
Por falta de opção, talvez. Como mostrei no primeiro artigo, o MPS.BR é baseado no CMMI-DEV, que é um padrão internacionalmente aceito como uma boa prática. Mas existem diversas críticas a esses modelos de melhoria. Aconselho analisar bem essas críticas para saber se é isso que você realmente quer para a sua empresa. Como já disse, ninguém é obrigado a implementar um modelo de melhoria. Lembre-se que não existe nenhum estudo indicando que o valor de uma empresa aumenta com o MPS.BR. A não ser que sua empresa seja uma softwarehouse e o mercado esteja exigindo algum nível de maturidade para contratá-la, talvez seja o caso de ajustar o MPS.BR à sua realidade. Ou, quem sabe, inventar um modelo melhor.
O MPS.BR fala sobre o desenvolvimento de coisas novas – e a manutenção, como fica?
Antes de responder a essa pergunta, preciso deixar bem claro o conceito de manutenção que uso aqui. Manutenção é tudo aquilo que NÃO é REALMENTE novo. Ou seja, qualquer alteração de requisitos, funcionais ou não funcionais, não é manutenção. Manutenção tem a ver com manter o que já existe funcionando de acordo com os requisitos que foram considerados na sua criação. Em outras palavras, manutenção é basicamente correção de bugs de codificação ou erros relacionados com falhas de hardware. Para executar um trabalho de manutenção, teoricamente, não é necessário receber nenhuma solicitação. Afinal de contas, você está apenas cumprindo com o prometido: entregar algo que funcione de acordo com o que foi requisitado. Ficou claro? Espero que sim.
Apesar de não se meter muito na manutenção, o MPS.BR tem forte influência sobre ela. Como assim? Explico. Com a melhoria do processo, você vai ter melhores condições de entregar um produto com qualidade, que atenda realmente a todos os requisitos. E isso, conseqüentemente, vai diminuir a necessidade de intervenções, de manutenção. Em outras palavras, MPS.BR é igual a menos manutenção. Pelo menos em teoria.
Qualquer outra solicitação que envolver alteração em requisitos deve ser tratada como algo novo e, portanto, deve ser tratada na esfera do MPS.BR.
Quanto a garantir que esse produto continue funcionando, isso é assunto para outros padrões, como o ITIL. Fico devendo falar mais sobre isso em futuros artigos.
Conclusão
Em uma primeira análise, o MPS.BR pode parecer algo desnecessário. Contudo, quando analisamos o assunto com mais cuidado, percebemos que considerar a maturidade dos processos é melhor do que se imaginava.
Esse modelo de melhoria não é perfeito. Mas é o melhor que temos até agora.
Esclarecer esses pontos nos convence da importância do MPS.BR e isso é a base para prosseguirmos com a análise dos níveis de maturidade. Até o próximo artigo.

Nenhum comentário: