Os cinco níveis de maturidade da gerência de requisitos (RMM)

Maturidade significa ser capaz de visualizar o todo e fazer boas escolhas. Num contexto de negócios, isso significa basear decisões em um claro entendimento dos benefícios de se fazer uma coisa ao invés de outra.
Este artigo visa apresentar as melhores práticas que as organizações adotam para tornar a sua gerência de requisitos madura.
Aqueles familiarizados com o CMM notarão algumas similaridades com o nosso modelo paralelo, que não tem um relacionamento direto com o CMM exceto pelo fato que a obtenção do nível 5 do RMM irá, indubitavelmente, ajudar uma organização a conquistar, pelo menos, o nível 3 do CMM. Obviamente, é bom ter em mente que chegar no melhor nível de maturidade em uma área, como o gerenciamento de requisitos, é muito mais fácil do que obter uma maturidade global no processo de uma organização.

Os níveis de maturidade do RMM são:

Caos: sem requisitos
No nível zero, organizações tentam fazer coisas complexas sem o mínimo de habilidade necessária. Fazem grandes suposições sobre o que deve ser construído. Algumas vezes isso funciona, mas geralmente os produtos não possuem todas as funcionalidades, possuem funcionalidades desnecessárias e sofrem com a falta de qualidade.

Nível 1: escrito
No primeiro nível acima do caos, simplesmente escrevemos os requisitos. Uma vez que os requisitos estejam escritos, muitos benefícios se tornam óbvios. Todos no seu time de desenvolvimento tem uma base para fazer o seu trabalho. Novos membros do time terão uma fonte para descobrirem o que o sistema deve fazer. Escrever os requisitos é um passo importante no sentido de reduzir riscos. Nenhuma super ferramenta é necessária para isso, podemos usar o Word ou o Notepad para isso.

Nível 2: organizado
Neste nível a organização lida com coisas como a qualidade do requisito, seus formatos, segurança, onde são armazenados e como serão mantidos em diferentes versões. A formatação dos requisitos deve possuir um esquema consistente de numeração, cabeçalhos, fontes e uma boa tabela de conteúdo para que o documento seja de fácil leitura, entendimento e uso. A lista de requisitos deve ser centralizada, de fácil localização, mantido sobre controle de versão (cvs, svn etc). Os benefícios associados a este nível são a diminuição do retrabalho e melhor aceitação do produto por parte do cliente.

Nível 3: estruturado
O terceiro nível envolve ser mais específico sobre os tipos de requisitos que você levantou. Eles são funcionais ou não-funcionais? Features ou requisitos de software? São requisitos de usuário? Sem indicação de tipo, uma longa lista de requisitos pode causar muita confusão e perda de tempo para seu leitor. Atributos de requisitos também são importantes, pois, nos ajudam a saber quais são mais importantes, quais são lançados em cada release etc. Com isso, o time de desenvolvimento terá menos trabalho investigativo e de advinhação para identificação de suas responsabilidades e tarefas.

Nível 4: rastreado
O quarto nível visa mapear o relacionamento entre os requisitos, ou seja, torná-los rastreáveis. A regra é simples, para cada “necessidade do usuário” deve haver, pelo menos,  uma “feature”, e para cada “feature” deve haver, pelo menos, um “caso de uso”. Se você tem uma “feature” que não possui um “caso de uso” associado a ela, o software resultante pode estar esquecendo alguma funcionalidade. Já se você possui um “caso de uso” que não possui uma “feature” associada, você pode estar desenvolvendo uma funcionalidade sem valor de negócio. Isto nos dá a habilidade de compreendermos como mudanças em um requisito podem afetar outros e também nos ajuda a determinar se os requisitos são completos.

Nível 5: integrado
Chegar a este nível significa integrar o processo de gerenciamento de requisitos com o resto do ambiente de desenvolvimento de software. Ou seja, usar os requisitos diretamente no design do software, no gerenciamento de mudanças, teste, e gerência do projeto.

Os cinco níveis que descrevemos acima lhe darão um framework para avaliar a sua organização e entender o que precisa ser melhorado, lhe dará também uma maneira de entender os benefícios e custos envolvidos no crescimento de maturidade da gerência de requisitos.
Vale ressaltar que o RMM abrange o processo de gerenciamento de requisitos do RUP. Desta forma, começar com o RUP lhe dará uma valorosa melhoria na maturidade de gerenciamento de requisitos.