A análise de requisitos, muitas vezes negligenciada, é talvez um dos pontos mais importantes – ou tão importante quanto os outros – do desenvolvimento de sistemas e aplicativos. Neste texto abordamos a importância da análise de requisitos neste processo.
O que são requisitos?
De maneira sucinta, os requisitos basicamente são coisas que o sistema PRECISA fazer. Também são considerados requisitos como o sistema lida com as interdependências. Requisitos são premissas que:
- Possibilitam que o usuário (ou sistema/subsistema) resolva problemas relacionados ao negócio
- Atendem às necessidades (ou restrições) da empresa, dos usuários ou módulos do sistema
Tipos (análise de requisitos)
Requisitos Diretos
Os requisitos diretos – também chamados de requisitos funcionais – são aqueles que compõem os recursos do sistema. Aquilo que possibilita que o usuário realize suas atividades. Esse tipo de requisito deve ser especificado com riqueza de detalhes, indicando o que se espera que o sistema faça, independente de como isso será implementado.
Alguns exemplos:
“A aplicação deve gerar relatórios de estoque a cada quinze dias”
“O usuário deverá poder ver a média de gasto mensal do cliente na tela de vendas”
“O sistema deve mostrar o custo total do produto para a empresa”
Requisitos Indiretos
Esses requisitos – também chamados de não-funcionais – abordam as qualidades gerais do sistema. Podemos citar como exemplo de requisitos indiretos: facilidade de utilização, facilidade de manutenção, segurança e desempenho, dentre outros.
Alguns exemplos:
“A base de dados deve ser estar na nuvem e ser replicada localmente”
“O sistema deve ser baseado em linux”
“O tempo total de desenvolvimento não deve exceder três meses”
Por que os requisitos são tão importantes?
Garantem a entrega da qualidade
Entregar um serviço de qualidade para o cliente é fundamental, mas quais são os parâmetros que determinam o que o cliente está esperando ver no momento da entrega? Levantar os requisitos de um sistema antes de desenvolvê-lo permite compreender as reais necessidades de seu cliente e diminuir o espaço que existe entre suas expectativas e a compreensão de seus desenvolvedores.
Possibilitam um planejamento mais próximo do real
Dimensionar adequadamente o projeto é fundamental para que seja possível estimar os custos e prazos do projeto muito mais próximos do real. Pode ser muito frustrante para o cliente descobrir no meio que o projeto vai custar muito mais do que o estimado ou que vai demorar o dobro do tempo.
Conclusão
O levantamento e análise de requisitos é a base para as outras etapas do desenvolvimento do sistema. É essencial para a modelagem adequada do sistema, definição do orçamento e do cronograma. A importância desse processo varia de acordo com a dimensão do sistema: quanto maior o projeto maior a importância da análise de requisitos.
Mesmo com a utilização de metodologias ágeis de desenvolvimento, analisar e compreender completamente os requisitos para um sistema é importantíssimo para maximizar a eficiência do trabalho. Usualmente, os projetos onde os requisitos são levantados e analisados corretamente possuem menor quantidade de re-desenvolvimento.
Ainda em dúvidas? Deixe sua pergunta nos comentários que responderemos o quanto antes.