When Telepathy Won't Do.
Requirements analysis is critical to the success of a development project. System requirements need to be actionable, measurable, testable, related to identified business needs and defined to a level of detail sufficient for system design.
New systems change the environment and relationships between people, so it is important to identify all the stakeholders, take into account all their needs and ensure they understand the implications of the new systems.
Analysts can employ several techniques to elicit the requirements from the customer. Historically, this has included such things as holding interviews, or conducting focus groups and creating requirements lists. Further up to date techniques include (paper) prototyping and use cases.