Requirements Engineering

Requirements Engineering is the process of determining user expectations for a new or modified product.

This process involves identifying stakeholders and their needs, documenting these in a form that is amenable to analysis, communication, and subsequent implementation. These features, called requirements, must be quantifiable, relevant and detailed.

Our Perspective

Often requirements are incomplete and inconsistent and new requirements may emerge during the process as a better understanding of the system is developed. Different viewpoints, which also have to be considered as the project evolves, have different requirements and these are sometimes in conflict with those that were stated at the beginning of the project.

Why Cask

Cask employs a Best Practice process approach to Requirements Engineering.    The four specific steps in requirements engineering are:

  • requirements elicitation
  • requirements analysis
  • requirements specification
  • requirements validation

Although they seem to be separate tasks, these four processes cannot be strictly separated and performed sequentially. Some of the requirements are implicit in the working practices, while others may only arise when design solutions are proposed. All four are performed repeatedly because the needs are often impossible to realize until after a system is built. Even when requirements are stated initially, it is likely they will change at least once during development.