Rapid prototyping for large Ada software system design

Rapid prototyping is a recently proposed method for improving the productivity and reliability of software system design using an alternative life cycle. A prototype is an executable model of the intended system. Our research goal is to enable the construction of a computer aided prototyping system for the design of large real-time software systems. This thesis presents some of the critical components of such a system. PSDL (Prototype System Description Language) is a key component of the automated prototyping system. It is designed for describing executable prototypes of real-time software systems, and is most useful for requirements analysis, feasibility studies, and the design of large embedded systems. PSDL has facilities for recording and enforcing timing constraints, and for modeling the control aspects of real-time systems using nonprocedural control constraints, operator abstractions, and data abstractions. The language has been designed for use with an associated prototyping method. The main goals of the method associated with PSDL language are to construct a prototype with a high degree of module independence and to do so rapidly. The first goal is addressed by an improved modularization technique, a specially designed computational model, and a hierarchical approach. The second goal is addressed by an automated environment with facilities for retrieving reusable software components based on PSDL specifications. We illustrate the use of PSDL and the prototyping method by means of an example: the design of a hyperthermia system in a hard real-time environment with Ada as the underlying programming language. The software tools in the PSDL execution support system and their principles of operation are outlined.