Requirements Engineering, Second Edition

If you can't describe what you are doing as a process, you don't know what you're doing.
William Edwards Deming, management consultant, 1900 93
This chapter introduces the concept of a process for the development of systems. It starts by examining the way in which systems are developed. This leads to the identification of a development pattern that can be used in many different contexts. This development pattern is expressed as a generic process and is explained in some detail. Subsequent chapters indicate how the generic process can be instantiated for specific purposes. The relationship between process models and information models is also explored and an information model for the generic process is developed.
Before any system can be developed it is essential to establish the need for the system. If the purpose of a system is not known, it is unclear what sort of system will be developed, and it is impossible to determine whether the system, when developed, will satisfy the needs of its users. Forest Gump summed it up nicely when he said:
If you don't know where you are going, you are unlikely to end up there.
The rigour with which the need is expressed will depend on the nature of the individual responsible for stating the need and their role within the organization in which they work. The need may be expressed in fairly vague terms initially, for example, "I would like a system that improves the efficiency of my department".