Espreso — A system for process control software specification
This paper outlines ESPRESO, a specification system for process control software, which was developed at Nuclear Research Center, Karlsruhe, Federal Republic of Germany. ESPRESO is based on some new ideas, which are combined with elements taken from other systems. ESPRESO consists of a set of concepts, a specification language, a tool for the management, evaluation and validation of specifications, and the method how to use the system. Language, tool, and method are carefully adapted to the concepts. The aim was to demonstrate some ideas not found in the specification systems currently available, rather than to provide another product for the software market.
The concepts of ESPRESO where abstracted from the most common tasks in real time programming, focusing on process communication. All operations are precisely defined. The concept of modules allows for the definition of static units which hide their internal structure from the outside.
An attribute grammar was used, which describes not only the context sensitive syntax of the language, but also the effect of operations on the stored specification.
The tool-component was partially coded in PASCAL, and installated on IBM-OS and VAX-VMS. While ESPRESSO is already being used for the specification of a nuclear reactor safety system, more components are being implemented in order to provide means for validation and documentation.
Unable to display preview. Download preview PDF.
- Ludewig, J., Streng, W.: Methods and Tools for Software Specification and Design — A Survey, European Workshop on Industrial Computers, TC on Safety and Security, 1978Google Scholar
- Ludewig, J.: Process Control Software Specification in PCSL, in V. Haase /ed./, IFAC/IFIP Workshop on Real-Time Programming, Graz, April 1980, Pergamon Press, pp. 103–108, 1980Google Scholar
- Knuth, E., Rado, P.: Principles of Computer Aided System Description, Report No. 117/1981 of the Hungarian Academy of Sciences, H-1502, P.O.B. 63, Budapest, Hungary, 1980Google Scholar
- Chen, P.P.-S.: The Entity Relationship Model — Toward a Unified View of Data, ACM Trans. on Data Base Systems, 1, pp. 9–36, 1976Google Scholar
- Naur, P. /ed./: Revised Report on the Algorithmic Language ALGOL 60, Numerische Mathematik, 4, pp. 420–453, 1963Google Scholar
- Watt, D.A.: An Extended Attribute Grammar for PASCAL, SIGPLAN-Notices 14, No. 2, pp. 60–74, 1979Google Scholar
- Lalive d'Epinay, Th. /ed./: TC 8 Up to Date Report, European Workshop on Industrial Computer Systems /EWICS/, Technical Committee on Real-Time Operating Systems, Paper no. I-1-8, 1979Google Scholar
- Ludewig, J.: Zur Erstellung der Spezifikation von Prozessrechner-Software, Doctoral dissertation, Technical University Munich; Reprinted as KfK-Report No. 3060, Kernforschungszentrum Karlsruhe, FRG. /in German/, 1981Google Scholar
- Eckert, K., Ludewig, J.: ESPRESO-W, ein Werkzeug für die Spezifikation von Prozessrechner-Software, in Goos, G. /ed./: Werkzeuge der Programmiertechnik, Springer-Verlag, Berlin, Heidelberg, New York, pp. 101–112, /in German/, 1981Google Scholar
- Ludewig, J.: Specification of a Specification Language, to be published in Hasegawa /ed./, 11th IFAC/IFIP Workshop on Real-Time Programming, Kyoto 1981, Pergamon Press, 1982Google Scholar
- Teichroew, D., Hershey III., E.A.: PSL/PSA: A Computer Aided Technique for Structured Documentation and Analysis of Information Processing Systems, IEEE Trans. Software Eng., SE-3, pp. 41–48, 1977Google Scholar
- Alford, M.: A Requirements Engineering Methodology for Real Time Processing Requirements, IEEE Trans. Software Eng., SE-3, pp. 60–69, 1977Google Scholar
- Jackson, K., Harte, H.F.: The Achievement of Well Structured Software in Real-Time Applications, Proc. of the IFAC/IFIP Workshop on Real-Time Programming, Rocquencourt, June 1976, Pergamon Press, pp. 229–239, 1976Google Scholar