Informal, Semi-Formal, and Formal Approaches to the Specification of Software Requirements.

ID
TR-94-23
Authors
Marie Helene LinLee Wong Cheng In
Publishing date
September 1994
Length
376 pages
Abstract
The derivation of a specification document that is understandable, precise and un­ambiguous is indispensable to successful software development. This work investigates the advantages and disadvantages of four different specification approaches which vary in their degree of formality. The thesis outlines qualities of a good specification. An example requirements specification of a case study system is produced using each technique. The four specification approaches are ad hoc natural language approach (informal), threads­based technique (structured informal), Computer-Aided Software Engineering (CASE) methodology Structured Analysis (semi-formal), and the mathematical notation Z (for­mal). The specification techniques are compared based on their likelihood to produce a specification document which is useful to customers, design engineers, test engineers, and maintenance personnel. The main conclusion is that using techniques that provide both a high degree of guidance and process description for deriving the specification is critical to achieve high quality specifications. Hence, a good specification technique must inherently have guide­lines that facilitate the specification of requirements in an understandable, precise and unambiguous manner.