1– A disciplina de Engenharia de Software
É recomendável que o desenvolvimento de um software complexo ocorra de forma disciplinada uma vez que envolve o trabalho de muitas pessoas, restrições de tempo e de recursos.
A chance de atraso, descaminhos e erros é sempre muito grande em função de mudanças que podem ocorrer ao longo do caminho.
Com o amadurecimento da área de desenvolvimento de software nas empresas, notou-se que uma série de práticas poderiam melhorar o produto final, tanto em termos de metodologias de desenvolvimento, quanto na qualidade do próprio produto.
Várias metodologias foram se consagrando, algumas com mais valor acadêmico, enquanto outras foram sendo desenvolvidas e praticadas diretamente pelas empresas. Muitas vezes a experiência empírica revela quais as melhores práticas.
Chamamos de Engenharia de Software a disciplina da computação que reúne metodologias, recursos e ferramentas a serem utilizadas desde a percepção de um problema até o momento em o sistema desenvolvido torna-se operacional. Visa resolver problemas inerentes ao processo de desenvolvimento e ao produto de software buscando-se sempre:
2 – Requisitos de desenvolvimento
Requisitos correspondem ao conjunto de necessidades do usuário em relação ao sistema. Requisitos podem ser funcionais (o que o sistema deveria fazer) e não funcionais (restrições, isto é, o que o sistema não deveria fazer).
Exemplo: em um sistema bancário, informar o extrato de uma conta, realizar transferências, pagar contas são requisitos funcionais). No mesmo sistema, questões de desempenho, nível de segurança, portabilidade…são requisitos não funcionais.
A extração de requisitos é uma das tarefas mais desafiadoras na área de desenvolvimento de sistemas, envolvendo várias técnicas tais como entrevistas, formulários, workshops, documentação, análise de cenários, etc.
A extração de requisitos pode resultar em um documento de requisitos definido pelo padrão IEEE 830.
Documento de requisitos no padrão IEEE830

Fonte: autoral, 2022
Um documento de requisitos protege tanto o desenvolvedor quanto o cliente. O cliente tem em um documento o que espera encontrar e o desenvolvedor sabe o que deve entregar.
“Entrevista” como técnicas de levantamento de requisitos
Entrevista é uma das técnicas mais utilizadas por ser relativamente simples e de baixo custo.