Object-oriented requirements specification: a model, a tool and a technique

This dissertation describes a model, a tool, and a technique for developing functional requirements specifications. The model, called Object-oriented System Specifications (OSS), is based on and is an extension of the Object-oriented Systems Analysis (OSA) model. The extensions consist of replacing natural-language components in an OSA model instance with formal, executable, specification-language statements. The specification language, called Object-oriented System Specification Language (OSS-L), is defined and its complete syntax and semantics are presented. The tool, called Interactive, Prototyping Object-oriented Specification Tool (IPOST), is a CASE tool that reads and executes an OSA model instance and provides text editing features to assist in the formulation and insertion of OSS-L statements into a model instance. IPOST contains both algorithms to execute an OSA model instance and a parser/interpreter to execute embedded OSS-L statements. Together, the algorithms and parser/interpreter implement execution semantics of an OSA model instance with embedded OSS-L statements. The technique, which is to incrementally develop an OSS model instance through prototype execution and insertion of OSS-L statements, is explained, and its use in joint-application development by a team consisting of clients and developers is illustrated.