Como realizar o Levantamento de Requisitos no desenvolvimento de software
Por Rogério Marques
31 outubro 2018 - 14:00 | Atualizado em 29 maio 2023 - 10:19
Independentemente da metodologia de desenvolvimento utilizada, o levantamento de requisitos é o ponto de partida de qualquer projeto de software. Afinal, é a partir dos resultados obtidos durante essa etapa inicial que os próximos passos a serem executados são definidos. Neste artigo, vamos te apresentar uma visão geral do processo de levantamento de requisitos. Confira!
O que é um Levantamento de Requisitos de Software?
De forma simples, o levantamento de requisitos trata-se do processo de compreensão e identificação das necessidades que o cliente espera ser solucionado pelo sistema que será desenvolvido, definindo a função que o software vai desempenhar.
É a primeira etapa no ciclo de desenvolvimento de software, onde são definidas as funcionalidades e o escopo do projeto. O profissional que executa esta função é o Analista de Requisitos.
Durante o levantamento de requisitos, uma das maiores dificuldades é a comunicação entre o cliente e o analista. Isso porque, muitas vezes, o cliente pode não ser o usuário final do sistema, como, por exemplo, um gerente ou diretor da empresa, que não utiliza o sistema diretamente.
Ao passar os requisitos para o Analista, faz isso do seu próprio ponto de vista, baseado apenas em observações que, às vezes, não traduzem fielmente a forma que os usuários enxergam o mesmo cenário.
Por isso, o Analista de Requisitos deve enxergar todos os cenários possíveis, evitando omissões ou má compreensão do cenário, o que pode causar erros durante a criação das funcionalidades.
Quais são os tipos de requisitos de software?
Existem dois tipos de requisitos que compõem um sistema, sendo eles os Requisitos Funcionais (RF) e os Requisitos não-funcionais (RNF):
- Requisitos Funcionais: tratam das funcionalidades que o sistema deve ter.
Exemplos: cadastrar clientes, consultar saldo em conta corrente, imprimir cupom fiscal, etc.
- Requisitos não funcionais: estes são recursos que não são funcionalidades, mas características do sistema, como restrições, segurança, confiabilidade, velocidade, validações, entre outros.
Exemplos: velocidade (o sistema deve executar a transação em até 5 segundos), segurança (o sistema só pode ser acessado através de leitura biométrica de usuários cadastrados pelo administrador).
- Regras de Negócio: estas podem ser consideradas uma categoria de requisitos não funcionais, pois tratam de políticas e normas que o sistema deve obedecer.
Caso um mesmo sistema seja desenvolvido para diferentes empresas, cada uma dessas pode ter suas próprias regras de negócio, e o sistema deve ser adaptado de forma que siga estas regras.
Exemplo: o sistema só permitirá prosseguir o cadastro caso o CPF informado esteja com a situação cadastral “REGULAR” na Receita Federal.
>> Veja também nosso conteúdo sobre “A importância dos testes de software no controle de qualidade”.
Quais são as principais técnicas para o Levantamento de Requisitos?
Para o levantamento de requisitos, o Analista dispõe de alguns métodos que são utilizados de acordo com o perfil do cliente. Existem diferentes técnicas, cada uma adequada para um cenário específico, e, dentre as comumente utilizadas, podemos citar as seguintes abaixo:
-
Entrevista:
A forma mais utilizada, na qual o Analista se reúne com o cliente e coleta os requisitos do sistema por meio de perguntas e observações do cenário apresentado.
-
Questionário:
O Analista desenvolve um questionário e envia para o cliente responder. Através das respostas fornecidas, são elaborados os requisitos.
Esta técnica é útil quando não é possível realizar uma entrevista pessoalmente com o cliente (embora atualmente isto seja resolvido facilmente utilizando Skype, Hangouts, Zoom, Meet, etc), ou quando existem diferentes usuários em locais distantes, pois o questionário pode ser enviado via e-mail.
É também uma boa opção para sistemas simples. Já para sistemas mais complexos, pode se tornar inviável devido a recursos e regras de negócio.
-
JAD (Joint Application Design):
Técnica que tem como ponto principal a cooperação de toda a equipe envolvida com a solução a ser criada. São feitas reuniões com os clientes, nas quais são definidos os requisitos tendo o ponto de vista de todos os envolvidos, desde o usuário final ou seu representante, quanto analistas, arquitetos, diretores, etc.
O ponto principal e ideal é que todos os níveis envolvidos com o projeto interajam com a definição dos requisitos.
-
Prototipação:
Essa é mais utilizada como uma técnica de validação de requisitos do que como um método de levantamento de requisitos. É muito usada em cenários onde os requisitos obtidos são muito vagos ou não tão claros.
Neste caso, o Analista desenvolve um protótipo da solução que ele conseguiu compreender e apresenta ao cliente. Este, por sua vez, valida se o protótipo está de acordo com a solução que ele deseja.
A grande vantagem de utilizar protótipos é que o cliente já tem uma visão prévia da solução final e pode rapidamente validar ou solicitar alguma mudança. Permite-se, então, a correção imediata, e não apenas durante o desenvolvimento do software.
É importante mencionar que, na maioria das vezes, o próprio cliente não tem claro o que o software desejado deve realizar, por isso é importante o analista ter a habilidade de fazer com que seja compreendido com clareza o cenário que está sendo descrito.
>> Leia também “Entenda como deve ser feito um teste de software ideal”
Afinal: devo aplicar alguma técnica ou não?
O processo de levantamento de requisitos é a etapa mais importante no desenvolvimento de um sistema, pois é o alicerce sob o qual toda a solução vai ser construída.
Cabe ao Analista de Requisitos fazer um bom e cuidadoso trabalho para que todo o projeto seja desenvolvido com tranquilidade e confiança.
Se você gostou desse artigo sobre como realizar o levantamento de requisitos para um software, não deixe de conferir em nosso blog outros conteúdos sobre tecnologia. Temos certeza que irá gostar!
Deixe um comentário