Gathering requirements

The first step in developing any application is to understand the functionality it must have. This is the goal of the requirements stage. The application is defined in terms of its functionality, with no reference to details of its realization. Requirements are defined from the point of view of the customer, using use cases and scenarios.