Discutimos anteriormente as 4 principais actividades da engenharia de requisitos.
A engenharia de requisitos é um processo de recolha e definição do que os serviços devem ser prestados pelo sistema.
Foca na avaliação da utilidade do sistema para o negócio (estudo de viabilidade), descoberta de requisitos (elicitação e análise), conversão desses requisitos em algum formato padrão (especificação), e verificação de que os requisitos definem o sistema que o cliente deseja (validação).
Na prática, a engenharia de requisitos não é um processo sequencial, é um processo iterativo no qual as atividades são intercaladas.
Por exemplo, itera primeiro os requisitos do usuário; elicitação, especificação e validação, e repetir as mesmas etapas para os requisitos do sistema.
>
No processo, a maior parte do esforço será gasto na compreensão dos requisitos de alto nível do negócio e do usuário. Mais tarde no processo, mais esforços serão gastos na elicitação e compreensão dos requisitos detalhados do sistema.
Algumas pessoas consideram a engenharia de requisitos como o processo de aplicação do método de análise estruturada, tal como a análise orientada a objetos. Isso envolve analisar o sistema e desenvolver um conjunto de modelos gráficos de sistema, como modelos de caso de uso, que então servem como uma especificação de sistema.
Embora os métodos estruturados tenham um papel a desempenhar no processo de engenharia de requisitos, há muito mais na engenharia de requisitos do que o que é coberto por esses métodos.
Análise e projeto orientado a objetos serão discutidos em outra série de tutoriais.
Requisitos do usuário e do sistema
Tipicamente, os requisitos são apresentados em dois níveis de detalhe; requisitos do usuário e do sistema, onde o usuário precisa de uma declaração de alto nível dos requisitos, enquanto os desenvolvedores do sistema precisam de uma especificação mais detalhada do sistema. Assim, os requisitos do usuário e do sistema são apenas referentes a diferentes níveis de detalhe.
Discrever diferentes níveis de detalhe é útil porque comunica informações sobre o sistema que está sendo desenvolvido para diferentes tipos de leitores.