R. Plösch, A Process Model and an Associated Tool for Prototyping of Distributed Process Control Systems, Proceedings of 3rd Intermational Symposium on Applied Corporate Computing (ITESM), Monterrey, Mexico, October 25 - 27, 1995, pp. 95-104.


A software prototype is an executable model that allows users and developers to gain early experience with a software system in the interest of avoiding errors with the final software product. Prototyping aims at transferring the costs from the operation and maintenance phase to earlier phases and to reduce the total software costs over the entire software life cycle. Experience has shown that prototypes are indispensable vehicles for obtaining valuable information and feedback in early phases of software development. The usefulness of prototyping has already been demonstrated in the field of business applications, where mostly user interface prototypes have been developed to specify and validate system requirements. This paper focuses on distributed process control systems. Developing prototypes is not easy in this field due to the special properties of such systems, e.g., real-time capability, distributed entities, elegant exception handling and recovery strategies, easy integration of graphically oriented process control stations, high adaptability to changing requirements, and fast and secure access to shared resources. To ease the prototyping process a set of useful activities that should be carried out throughout the analysis phase have to be defined. These activities must not be described on a metalevel but must provide concrete answers in the domain of distributed process control software. In addition, a highly interactive prototyping tool must be provided that supports the set of defined activities.