There are two main aims that one tries to achieve in a design activity. One aim is to understand as much as one can about the users, their work and the context of their work so the designer can design a system that meets all there needs. The second goal is to produce a set of stable requirements that move forward into the design process.

Having a good understanding about what a product should do is a critical approach in any product development. If this is not taken in consideration than the product will be ignored and and may be despised by the user. It will also cause enormous unproductivity.

Requirement Analysis is used in describing the activity of investigating and analyzing requirements which have been set up by gathering, elicited, or captured.

A requirement is essentially a statement about an intended product that specifies what it should do or how the product should perform.

There are two major types of requirements that have been identified as functional requirements, which say what the system should and should not do, and non-functional requirements which state the constraints that are on the system. There are some other sub-requirements:

FR-title.gif this sets to capture what the product should do

DR-title.gif set out to capture, the type, size and value of the amounts of the required data.

ER-title.gif Circumstances in which the product under development will be accepted to operate.

UR-title.gif The characteristic of the intended user group.

USR-title.gif capture usability goals for a certain product.