ABSTRACT

An understanding of the requirements of the potential user is the foundation of all successful software development. Few it seems would want to question such an obvious statement. Yet industrial history testifies to the fact that defining what a system is supposed to do has been, down the years, not just the most important step but extraordinarily the most neglected. The functional requirements specification, on the other hand, represents the developer’s interpretation of the user’s requirements in the developer’s own language, suitable for use by a system designer on which the design specification can be based. Without a formal system design document, it is impossible to develop software that meets the requirements of users in a controlled and predictable manner. Yet vendors may still be encountered who claim to be able to develop quality software in a cost-effective manner without any formal design discipline whatsoever.