Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've been looking around for some articles regarding to requirements analysis, but I'm a bit confused with the term, because based on Wikipedia requirements analysis is a stage of requirements engineering.

But once you search more, many of the websites use them interchangeably as in they mean the same, can you please help me clarify this?

share|improve this question

closed as too broad by gnat, MichaelT, Dynamic, World Engineer Mar 23 '14 at 23:06

There are either too many possible answers, or good answers would be too long for this format. Please add details to narrow the answer set or to isolate an issue that can be answered in a few paragraphs.If this question can be reworded to fit the rules in the help center, please edit the question.

up vote 4 down vote accepted

Requirements engineering is a term that includes all activities related to requirements - elicitation, analysis, documentation and specification, validation, and management. It might also involve some levels of modeling, ranging from the creation of use case models to more detailed collaboration with system architects and designers.

Requirements analysis is one aspect of requirements engineering that involves reviewing the requirements to ensure that all requirements are useful to building the product. For each requirement, the person or people performing the analysis will ensure they have the characteristics of a good requirement. Some source also consider early prototypes to be part of requirements analysis, since it helps to further understand and clarify requirements given by stakeholders or identify problems with the requirements.

To think of requirements engineering as a staged activity, however, it probably not a good idea. The various activities are ongoing throughout a requirements definition phase of the project. With some regards, requirements engineering also happens throughout the entire project. It just becomes useful to give names to activities to make it easier to discuss with others.

share|improve this answer

Essemtially speaking, Requirements Analysis is a subset of Requirements Engineering. Very often you come across a client or a scenario where the requirements are not clear or pre-determined and this is where you have to engineer (determine, analyse and design) the requirements and suggest the client according to their budget.

In order to conduct Requirements Engineering, it is almost essential to know UML and other modeling tools that assist in comprehending, understanding and designing the system.

share|improve this answer

Requirements engineering sounds like a more formal process with a number of stages.

Requirements analysis, to me is the specific task of getting/figuring out requirements.

As such, I wouldn't consider them interchangeable.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.