Abstract
Tools for formally specifying software for real-time systems have strongly improved their capabilities in recent years. At present, tools have the potential for improving software quality as well as engineers' productivity. Many tools have grown out of languages and methodologies proposed in the early 1970s. In this paper, the evolution and the state of the art of tools for real-time software specification is reported, by analyzing their development over the last 20 years. Specification techniques are classified as operational, descriptive or dual if they have both operational and descriptive capabilities. For each technique reviewed three different aspects are analyzed, that is, power of formalism, tool completeness, and low-level characteristics. The analysis is carried out in a comparative manner; a synthetic comparison is presented in the final discussion where the trend of technology improvement is also analyzed.
Similar content being viewed by others
References
Jean-Raymond Abrial. The Specification Language Z: Basic Library. Technical report, Programming Research Group, Oxford University, UK, 1982.
G. A. Agha.ACTORS: A Model of Concurrent Computation in Distributed Systems. The MIT Press, Cambridge, Massachusetts, London, 1986.
A. J. Alencar and J. A. Goguen. OOZE: An Object Oriented Z Environment. InProc. of European Conference on Object Oriented Programming, ECOOP'91, pages 180–199. Springer Verlag, Lecture Notes in Computer Sciences, LNCS n.512, 1991.
M. Alford. A Requirements Engineering Methodology for Real-Time Processing Requirements.IEEE Transactions on Software Engineering, 3(1), Jan. 1977.
M. Alford. SREM at the Age of Eight; The Distributed Computing Design System.Computer, April 1985.
R. Alur, C. Coucorbertis, and D. Dill. Model-Checking for Real-Time Systems. InProc. of 5th IEEE LICS 90, pages 414–425. IEEE, 1990.
R. Alur and T. A. Henzinger. Real Time Logics: complexity and Expressiveness. InProc. of 5th IEEE LICS 90. IEEE, 1990.
D. Andrews. VDM Specification Language, Proto-Standard. Technical report, BSI IST/5/50, Leicester University, 1992.
ARTIFEX. ARTIFEX User's Manual, ver.3.0. Technical report, ARTIS, Turin, Italy, 1993.
B. Auernheimer and R. A. Kemmerer. RT-ASLAN: A Specification Language for Real-Time Systems.IEEE Transactions on Software Engineering, 12(9):879–889, Sept. 1986.
M. Baldassari and G. Bruno. PROTOB: an Object Oriented Methodology for Developing Discrete Event Dynamic Systems.Computer Languages, 16(1):39–63, 1991.
H. Barringer.A Survey of Verification Techniques for Parallel Programs. Lecture Notes in Computer Science 191, Springer Verlag, New York, 1985.
Z. Bavel.Introduction to the Theory of Automata. Reston Publishing Company, Prentice-Hall, Reston, Virginia, 1983.
G. Berry and L. Cosserat.The ESTEREL Synchronous Programming Language and Its Mathematical Semantics. Springer Verlag, Lecture Notes in Computer Science, LNCS n.197, 1985.
B. Berthomieu and M. Diaz. Modeling and Verification of Time Dependent Systems Using Time Petri Nets.IEEE Transactions on Software Engineering, 17(3):259–273, March 1991.
T. E. Bihari and P. Gopinath. Object-Oriented Real-Time Systems: Concepts and Examples.Computer, pages 25–32, Dec. 1992.
N. D. Birrel and M. A. Ould.A practical handbook for software development. Cambridge University Press, Cambridge U.K., 1985.
G. V. Bochmann, E. Cerny, M. Cagne, C. Jard, A. Leveille, C. Lacaille, M. Maksud, K. S. Raghunathan, and B. Sarikaya. Experience with Formal Specification Using an Extended State Transition Model.IEEE Transactions on Communications, 30(12):2505–2513, Dec. 1982.
T. Bolognesi and E. Brinksma. Introduction to the ISO Specification Language LOTOS. In P. H. J. van Eijk and C. A. Vissers, editors,The Formal Description Technique LOTOS, pages 23–71. Elsevier Science Publisher, North-Holland, 1989.
T. Bolognesi and E. Brinksma. Introduction to the ISO specification language LOTOS.Computer Networks and ISDN Systems, 14(1):25–29, 1987.
T. Bolognesi, E. Najm, and P. A. J. Tilanus. G-LOTOS: a Graphical Language for Concurrent Systems. Technical report, CNR Istituto CNUCE, PISA, Italy, March 15 1993.
G. Booch. Object-Oriented Development.IEEE Transactions on Software Engineering, 12(2):211–221, Feb. 1986.
G. Booch.Object-Oriented Design with Application. The Benjamin/Cummings Publishing Company, California, USA, 1991.
T. L. Booth.Sequential Machines and Automata Theory. John Wiley and Sons, New York, USA, 1967.
R. Braek and O. Haugen.Engineering Real Time Systems: An object-oriented methodology using SDL. Prentice hall, New York, London, 1993.
P. Brinch-Hansen. The programming language concurrent Pascal.IEEE Transactions on Software Engineering, 1(2):199–207, June 1975.
S. D. Brookes. On The Relationship of CCS and CSP. In J. Diaz, editor,Automata, Language and Programming, Proc. of 10th Colloquium, pages 83–96, Barcelona, Spain, July 1983. Springer Verlag, Lecture Notes in Computer Science, LNCS 154.
G. Bruno and G. Marchetto. Process-translatable Petri nets for the rapid Prototyping of process control systems.IEEE Transactions on Software Engineering, 12(2):346–357, Feb. 1986.
G. Bucci, M. Campanai, P. Nesi, and M. Traversi. An Object-Oriented CASE Tool for Reactive System Specification. InProc. of 6th International Conference on Software Engineering and Its Applications (sponsored by: EC2, CXP, CIGREF, and SEE), Le CNIT, Paris la Defense, France, 15–19 Nov. 1993.
G. Bucci, M. Campanai, P. Nesi, and M. Traversi. An Object-Oriented Dual Language for Specifying Reactive Systems. InProc. of IEEE International Conference on Requirements Engineering, ICRE'94, Colorado Spring, Colorado, USA, 18–22 April 1994.
G. Bucci, R. Mattolini, and E. Vicario. A Framework for the Development of Distributed Object-Oriented Systems. InProc. of the International Symposium on Automated and Decentralized Systems, ISADS'93, pages 44–51. IEEE Press, Kawasaky, Japan, March 1993.
S. Budkowski and P. Dembinski. An Introduction to Estelle: A Specification Language for Distributed Systems.Computer Networks and ISDN Systems, 14(1):3–23, 1987.
J.R. Cameron. An Overview of JSD.IEEE Transactions on Software Engineering, 12(2):222–240, Feb. 1986.
M. Campanai and P. Nesi. Supporting Object-Oriented Design with Metrics. InProc. of the International Conference on Technology of Object-Oriented languages and Systems, TOOLS Europe '94, Versailles, France, 7–11 March 1994.
D. Carrington, D. Duke, R. Duke, P. King, G. Rose, and G. Smith. Object-Z: An Object-Oriented Extension to Z. In S. T. Voung, editor,Formal Description Techniques. Elsevier Science, 1990.
P. P. Chen. The Entity Relationship Model — Toward a Unified View of Data.ACM Transactions on Database Systems, 1(1):9, March 1976.
Y. Cheon and G. T. Leveson. A Quick Overview of Larch/C++. Technical report, Dept. of Computer Science, Atanasoff Hall Iowa State University, Ames, Iowa 50011-1040, USA, March 1993.
P. Coad and E. Yourdon.Object-Oriented Analysis. Yourdon Press, New Jersey, USA, 1991.
D. Coleman, F. Hayes, and S. Bear. Introducing Objectcharts or How to Use Statecharts in Object-Oriented Design.IEEE Transactions on Software Engineering, 18(1):9–18, Jan. 1992.
B. Cox. Message/Object Programming: an Evolutionary Change in Programming Technology.IEEE Software, 1(1):50–61, 1984.
B. Dasarathy. Timing Constraints of Real-Time Systems: Constructs for Expressing Them, Methods of Validating Them.IEEE Transactions on Software Engineering, 11(1):80–86, Jan. 1985.
T. DeMarco.Structured Analysis and System Specification. Yourdon Press, Prentice Hall, 1979.
J. Dick and J. Loubersac. Integrating Structured and Formal Methods: A Visual Approach to VDM. In A. vanLamsweerde and A. Fuggetta, editors,Proc. of 3rd European Software Engineering Conference, ESEC91, pages 37–59, Milan, Italy, Oct. 1991. Springer Verlag, Lecture Notes in Computer Sciences, LNCS 550.
J. Diederich and J. Milton. Object, Message, and Rules in Database Design. In W. Kim and F. H. Lochovsky, editors,Object-Oriented Concepts Databases and Applications, pages 177–198. Addison-Wesley Publishing Company, ACM Press, New York, USA, 1989.
E. W. Dijkstra. Co-operating sequential processes. In F. Genuys, editor,Programming Languages, pages 43–112. Academic Press, NY, USA, 1968.
M. Dorfman. System and Software Requirements Engineering. In H. Thayer and M. Dorfman, editors,System and Software Requirements Engineering, pages 4–16. IEEE Compute Society Press, Los Alamitos CA, 1990.
E. H. H. Dürr and J. vanKatwijk. VDM++: A Formal Specification Language for Object-Oriented Designs. In G. Heeg, B. Mugnusson, and B. Meyer, editors,Proc. of the International Conference on Technology of Object-Oriented Languages and Systems, TOOLS 7, pages 63–78. Prentice-Hall, 1992.
H. Ehrig and B. Mahr.Fundamentals of Algebraic Specification - 1. Springer Verlag, Berlin, 1985.
C. A. Ellis and S. J. Gibbs. Active Objects: Realities and Possibilities. In W. Kim and F. H. Lochovsky, editors,Object-Oriented Concepts Databases and Applications, pages 561–572. Addison-Wesley Publishing Company, ACM Press, New York, USA, 1989.
E. A. Emerson and J. Y. Halpern. Sometimes and not never revisited: on branching versus linear time temporal logic.Journal of the ACM, 33(1), Jan. 1986.
V. Encontre, E. Delboulbe, P. Gabaud, P. Leblanc, and A. Baussalem. Combining Services, Message Sequence Charts and SDL: Formalism Methods and Tools. Technical report, Verilog, 1990.
Excelerator. User Manual, Ver.1.2. Technical report, Index Technology Corporation, Cambridge Massachusetts, USA, 1986.
M. Felder, D. Mandrioli, and A. Morzenti. Proving Properties of Real-Time Systems Through Logical Specifications and Petri Net Models. Technical report, Politecnico di Milano, Dipartimento di Elettronica e Informazione, 91-072, Piazza Leonardo da Vinci 32, Milano, Italy, 1991.
B. Fields and M. Elvang-Goransson. A VDM Case Study in mural.IEEE Transactions on Software Engineering, 18(4):279–295, April 1992.
A. Forin. Real-Time, UNIX and Mach. Technical report, School of Computer Science, Carnegie Mellon University, Pittsburg, Pa 15213, USA, 1992.
A. Gabrielian and M. K. Franklin. Multilevel Specification of Real-Time Systems.Communications of the ACM, 34(5):50–60, May 1991.
S. J. Garland, J. V. Guttag, and J. J. Horning. Debugging Larch Shared Language Specifications.IEEE Transactions on Software Engineering, 16(9):1044–1057, Sept. 1990.
GEODE. AGE/GEODE Editor, User's Manual, ver.1.4. Technical report, Verilog, avenue Artistide Briand, 52, 92220 Bagneaux, France, 1992.
R. Gerber and I. Lee. Communicating Shared Resources: A Model for Distributed Real-Time Systems. InProc. of the IEEE Real-Time Systems Symposium, pages 68–78. IEEE Computer Society Press, Dec. 1989.
C. Ghezzi, D. Mandrioli, S. Morasca, and M. Pezze. A Unified High-Level Petri Net Formalism for Time-Critical Systems.IEEE Transactions on Software Engineering, 17(2):160–172, Feb. 1991.
C. Ghezzi, D. Mandrioli, and A. Morzenti. TRIO, a logic language for executable specifications of real-time systems.Journal of Systems and Software, 12(2):107–123, May 1990.
H. Gomaa. A Software Design Method for Real-Time Systems.Communications of the ACM, 27(9):938–949, Sept. 1984.
H. Gomaa. Software Development of Real-Time System.Communications of the ACM, 29(7):657–668, July 1986.
H. Gomaa. A Behavioral Analysis and Modeling Method for Real-Time Systems. InInternational Workshop on Real-Time Programming WRTP'92, pages 43–48, Bruges, Belgium, 23–26 June 1992. International Federation of Automatic Control, IFAC International Federation for Information Processing, IFIP Belgian Federation of Automatic Control, IBRA-BIRA.
R. Gotzhein. Temporal logic and applications — a tutorial.Computer Networks and ISDN Systems, North-Holland, 24:203–218, 1992.
D. Guaspari, C. Marceau, and W. Polak. Formal Verification of ADA Programs.IEEE Transactions on Software Engineering, 16(9):1058–1075, Sept. 1990.
J. Guttag. Abstract Data Types and Development of Data Structures.Communications of the ACM, 20(6):396–404, June 1977.
J. V. Guttag and J. J. Horning. The Algebraic Specification of Abstract Data Types.ACTA Informatica, 10, 1978.
J. V. Guttag, J. J. Horning, and J. M. Wing. The Larch Family of Specification Languages.IEEE Software, pages 24–36, Sept. 1985.
A. Hall. Seven Myths of Formal Methods.IEEE Software, 7(5):11–19, Sept. 1990.
D. Harel. On Visual Formalism.Communications of the ACM, 31(5):514–530, May 1988.
D. Harel, H. Lachover, A. Naamad, A. Pnueli, M. Politi, R. Sherman, A. S. -Trauring, and M. Trakhtenbrot. STATEMATE: A Working Environment for the Development of Complex Reactive Systems.IEEE Transactions on Software Engineering, 16(4):403–414, April 1990.
D. Harel, A. Pnueli, J. P. Schmidt, and R. Sherman. On the Formal Semantics of Statecharts. InProc. 2nd IEEE Symposium on Logic in Computer Science, Ithaca, NY, USA, pages 54–64, 22–24 June 1987.
D. J. Hatley and I. A. Pirbhai.Strategies for Real Time System Specification. Dorset House Publishing, New York, 1987.
C. A. R. Hoare. Towards a Theory of Parallel Programming,. InOperating Systems Techniques, pages 61–71. Academic Press, NY, USA, 1972.
C. A. R. Hoare. Communicating Sequential Processes.Communications of the ACM, 21(8):666–677, Aug. 1978.
C. A. R. Hoare. A Calculus of Total Correctness for Communicating Processes.Sci. Comput. Program., 1:49–72, 1981.
C. A. R. Hoare.Communicating Sequential Processes. Prentice Hall International, NY, USA, 1985.
HOOD. An Overview of the HOOD Toolset. Technical report, Software Sciences, 1988.
Y. Ishikawa, H. Tokuda, and C. W. Mercer. An Object-Oriented Real-Time Programming Language.Computer, pages 66–73, Oct. 1992.
M. A. Jackson.Principle of Program Design. Academic Press, Inc., New York, USA, 1975.
M. A. Jackson.System Development. Prentice Hall International, C. A. R. Hoare Series, New York, USA, 1983.
R. J. K. Jacob. A State Transition Diagram Language for Visual Programming.Computer, pages 51–59, Aug. 1985.
M. S. Jaffe, N. G. Leveson, M. P. E. Heimdhal, and B. E. Melhart. Software Requirements Analysis for Real-Time Process-Control Systems.IEEE Transactions on Software Engineering, 17(3):241–258, March 1991.
F. Jahanian and A. K.-L. Mok. Safety Analysis of Timing Properties in Real-Time Systems.IEEE Transactions on Software Engineering, 12(9):890–904, Sept. 1986.
S. Jahanian and D. A. Stuart. A Method for Verifying Properties of Modechart Specifications. InProc. of 9th IEEE Real-Time Systems Symposium, pages 12–21, Huntsville, Ala., USA, 1988. IEEE Press.
K. Jensen. Coloured Petri nets and the Invariant-Method.Theoret. Comput. Sci., 14:317–336, 1981.
K. Jensen. Coulored Petri nets. In W. Brauer, W. Resig, and G. Rozenberg, editors,Advanced in Petri Nets 1986. Springer Verlag, New York, USA, 1987.
C. B. Jones.Systematic Software Development Using VDM. Prentice Hall, 1986.
R. Koymans, R. K. Shyamasundar, W. P. deRoever, R. Gerth, and A. Arun-Kumar. Compositional Semantics for Real-Time Distributed Computing. InProc. of Logics of Programs Lecture Notes in Computer Sciences, LNCS 193, New York, 1985. Springer Verlag.
L. Lamport. A Simple Approach to Specifying Concurrent Systems.Communications of the ACM, 32(1):32–45, Jan. 1989.
L. Lamport. Specifying concurrent program modules.ACM Transactions on Programming Languages and Systems, 5(2):190–222, April 1993.
K. Lano. Z++, An Object-Oriented Extension to Z. In J. E. Nicholls, editor,Proc. of the 4th Annual Z User Meeting, pages 151–172, Oxford, UK, 1991. Workshop in Computing, Springer Verlag.
G. T. Leavens and Y. Cheon. Preliminary Design of Larch/C++. In U. Martin and J. Wing, editors,Proc. of First International Workshop on Larch. Springer Verlag, Workshop in Computer Science Series, 1992.
N. Leveson and J. L. Stolzy. Safety Analysis Using Petri Nets.IEEE Transactions on Software Engineering, 13(3):386–397, March 1987.
S.-T. Levi and A. K. Agrawala.Real-Time System Design. McGraw-Hill Publishing Company, New York, USA, 1990.
B. Liskov and J. Guttag.Abstraction Specification in Program Development. The MIT Press, Cambridge, MS, USA, 1986.
B. Liskov, A. Snyder, R. Atkinson, and G. Schaffert. Abstraction Mechanisms in CLU.Communications of the ACM, 20(8):564–576, Aug. 1977.
C. L. Liu and J. W. Layland. Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment.Journal of the ACM, 20(1):46–61, 1973.
LOTOSPHERE. User Manual, ESPRIT Project n.2304. Technical report, consortium LOTOSPHERE, 1992.
D. Maier and D. S. Warren.Computing with Logic. The Benjamin/Cummings, Inc., Menlo Park, CA, USA, 1988.
D. Mandrioli. The Specification of Real-Time Systems: a Logical Object-Oriented Approach. InProc. of the International Conference on Technology of Object-Oriented Languages and Systems, TOOLS'92, 1992.
D. Mandrioli. The Object-Oriented Specification of Real-Time Systems. InTutorial Note of the International Conference on Technology of Object-Oriented Languages and Systems, TOOLS Europe '93, Versailles, France, 8–11 March 1993.
D. Mandrioli, S. Morasca, and A. Morzenti. Functional test case generation for real-time systems. Technical report, Politecnico di Milano, Dipartimento di Elettronica e Informazione, 91-072, Piazza Leonardo da Vinci 32, Milano, Italy, 1992.
M. A. Marsan, G. Balbo, and G. Conte. A class of generalized stochastic Petri nets. InProc. of Performance 83, ACM Sigmetrics, Oct. 1983.
J. Martin and J. Odell.Object Oriented Analysis and Design. Prentice-Hall, Englewood Cliffs, New Jersey, USA, 1991.
G. H. Mealy. A Method for Sinthesizing Sequential Circuits.BST Journal, 34:1045–1079, 1955.
S. R. L. Meira and A. L. C. Cavalcanti. Modular Object Oriented Z Specifications. In J. E. Nicholls, editor,Proc. of the 4th Annual Z User Meeting, pages 173–192, Oxford, UK, 1991. Workshop in Computing, Springer Verlag.
P. M. Merlin and D. J. Faber. Recoverability of Communication Protocols Applications of a Theoretical Study.IEEE Transactions on Communications, 24, Sept. 1976.
B. Meyer. On Formalism in Specifications.IEEE Software, pages 6–26, Jan. 1985.
B. Meyer,Object-Oriented Software Construction. Prentice Hall, C. A. R. Hoare Series, New York, USA, 1988.
R. Milner.A Calculus of Communicating Systems. Lecture Notes in Computer Science 92, Springer Verlag, New York, 1980.
J. Misra and K. M. Chandy. Proofs of Networks of Processes.IEEE Transactions on Software Engineering, 7:417–426, 1981.
M. K. Molloy. Discrete Time Stochastic Petri Nets.IEEE Transactions on Software Engineering, 11(4):417–423, April 1985.
D. E. Monarchi and G. I. Puhr. A Research Typology for Object Oriented Analysis and Design.Communications of the ACM, 35(9):35–47, Sept. 1992.
A. P. Moore. The Specification and Verified Decomposition of System Requirements Using CSP.IEEE Transactions on Software Engineering, 16(9):932–948, Sept. 1990.
E. F. Moore. Gedanken-Experiments on Sequential Machines. InAutomata Studies, Annals of Mathematical Studies, pages 129–153, Preston NJ, USA, 1956. Princeton University Press.
T. Murata. Petri Nets: Properties, Analysis and Applications.Proceedings of the IEEE, 77(4):541–580, April 1989.
D. R. Musser. Abstract data type specification in the AFFIRM system.IEEE Transactions on Software Engineering, 6(1):24–32, Jan 1980.
O. Nierstrasz. A Survey of Object-Oriented Concepts. In W. Kim and F. H. Lochovsky, editors,Object-Oriented Concepts Databases and Applications, pages 3–22. Addison-Wesley Publishing Company, ACM Press, New York, USA, 1989.
NorthernTelecom. ObjecTime: Object-Oriented CASE for Real-Time Systems. Technical report, Bell-Northern Telecom, 1993.
E.-R. Olderog and C. A. R. Hoare. Specification-Oriented Semantics for Communicating Processes. In J. Diaz, editor,Automata, Language and Programming, Proc. of 10th Colloquium, pages 561–572, Barcelona, Spain, July 1983. Springer Verlag, Lecture Notes in Computer Science, LNCS 154.
E. R. Olderog and C. A. R. Hoare. Specification Oriented Semantics for Communicating Sequential Process.ACTA Informatica, 23:9–66, 1986.
J. S. Ostroff.Temporal Logic for Real-Time Systems. Research Studies Press LTD., Advanced Software Development Series, 1, Taunton, Somerset, England, 1989.
J. S. Ostroff and W. Wonham. Modeling and Verifying Real-Time Embedded Computer Systems. InProc. IEEE Real-Time Systems Symp., pages 124–132. IEEE Computer Society Press, Dec. 1987.
J. L. Peterson.Petri Net Theory and the Modeling of Systems. Engelwood Cliffs, Prentice-Hall, NJ, 1981.
C. Petri. Kommunikation mit atomation. Technical report, Ph.D. Thesis, Schriften des Reinsh-Westfalischen Inst. Fur Instrumentelle Mathematik an der Universitat Bonn, Bonn, West Germany, 1962.
P. Pulli, R. Elmstrom, G. Leon, and J. A. delaPuente. IPTES — Incremental Prototyping Technology for Embedded real-time Systems. InProc. of 1991 ESPRIT Conference, 1991.
C. Ramachandani. Analysis of asynchronous concurrent systems by timed Petri nets. Technical report, Massachusetts Inst. Technol. Project MAC, TR. 120, USA, Feb. 1974.
C. V. Ramamoorthy and G. S. Ho. Performance evaluation of asynchronous concurrent systems using Petri nets.IEEE Transactions on Software Engineering, 6(5), Sept. 1980.
R. R. Razouk and M. M. Gorlick. A Real-Time Interval Logic for Reasoning About Execution of Real-Time Programs. InProc. of ACM/SIGSOFT'89 (TAV3). ACM Press, Dec. 1989.
G. Reed and A. Roscoe. A Timed Model for Communicating Sequential Processes. InProc. ICALP'86, pages 314–323. Springer Verlag, Lecture Notes in Computer Sciences, LNCS 226, 1986.
W. Reisig.Petri Nets. An introduction. EATCS Monographs on Theoretical Computer Science, Springer Verlag, New York, 1985.
D. Richardson, S. L. Aha, and T. O. O'Malley. Specification-based Test Oracles for Reactive Systems. InProc. of 14th International Conference on Software Engineering, pages 105–118, Melbourne, Australia, 11–15 May 1992. IEEE press, ACM.
A. Rockstrom and R. Saracco. SDL — CCITT Specification and Description language.IEEE Transactions on Communications, 30(6):1310–1318, June 1982.
D. T. Ross and K. E. Schoman. Structured Analysis for Requirements Definition.IEEE Transactions on Software Engineering, 3(1):6–15, Jan. 1977.
J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, and W. Lorensen.Object-Oriented Modeling and Design. Prentice Hall International, Englewood Cliffs, New Jersey, 1991.
B. Sanden. The Case for Eclectic Design of Real-Time Software.IEEE Transaction on Software Engineering, 35(3):360–363, March 1989a.
B. Sanden. Entity-Life Modeling and Structured Analysis in Real-Time Software Design — A Comparison.Communications of the ACM, 32(12):1458–1466, Dec. 1989b.
B. Sanden. An Entity-Life Modeling Approach to the Design of Concurrent Software.Communications of the ACM, 32(3):330–343, March 1989c.
R. Sarraco and P. A. J. Tilanus. CCITT SDL: Overview of the Language and its Applications.Computer Networks and ISDN Systems, 13(2):65–74, 1987.
P. A. Scheffer, A. H. StoneIII, and W. E. Rzepka. A Case Study of SREM.Computer, pages 47–54, April 1985.
R. L. Schwartz and P. M. Melliar-Smith. From State Machines to Temporal Logic: Specification Methods for Protocol Standards.IEEE Transactions on Communications, 30(12):2486–2496, Dec. 1982.
B. Selic. An Efficient Object-Oriented Variation of Statecharts Formalism for Distributed Real-Time Systems. InSubmitted to CHDL'93: IFIP Conference on Hardware Description language and Their Applications, Ottawa, Canada, 26–28 April 1993.
B. Selic, G. Gullekson J. McGee, and I. Engelberg. ROOM: An Object-Oriented Methodology for Developing Real-Time Systems. InProc. of 5th International Workshop on Computer-Aided Software Engineering, CASE'92, Montreal, Quebec, Canada, 6–10 July 1992.
L. Sha and J. B. Goodenough. Real time Scheduling Theory and Ada.Computer, pages 53–62, April 1990.
A. C. Shaw. Communicating Real-Time State Machines.IEEE Transactions on Software Engineering, 18(9):805–816, Sept. 1992.
S. Shlaer and S. J. Mellor.Object Oriented Analysis: Modeling the World in Data. Prentice Hall, Englewood Cliffs, New Jersey, USA, 1988.
S. Shlaer and S. J. Mellor.Object Life Cycles: Modeling the World in States. Prentice Hall, Englewood Cliffs, New Jersey, USA, 1991.
J. Sifakis.Automatic Verification Methods for Finite State Systems, Proc. of the International Workshop Grenoble, France, June 12–14. Springer Verlag, Lecture Notes in Computer Science, LNCS n.407, 1989.
J. M. Spivey.The Z Notation — a Reference manual. Prentice-Hall, New York, 1988.
J. A. Stankovic. Misconceptions About Real-Time Computing: A Serious Problem for Next-Generation Systems.IEEE Computer, pages 10–19, Oct. 1988.
J. A. Stankovic and K. Ramamritham.Advances in Real-Time Systems. IEEE Computer Society Press, Washington, 1992.
Statemate. Statemate: The Languages of Statemate. Technical report, i-Logic, Inc., 22 Third Avenue, Burlington, Mass. 01803, USA, 1987.
A. D. Stoyenko. The Evolution and State-of-the-Art of Real-Time Languages.Journal of Systems and Software, pages 61–84, April 1992.
StP. Software through Pictures: Products and Services Overview. Technical report, Interactive Development Environment, 1991.
Bernard A. Sufrin. Formal Methods and the Design of Effective User Interfaces. In M.D. Harrison and A.F. Monk, editors,People and Computers: Designing for Usability. Cambridge University Press, UK, 1986.
C. A. Sunshine, D. H. Thompson, R. W. Erickson, S. L. Gerhart, and D. Schwabe. Specification and Verification of Communication Protocols in AFFIRM Using State Transition Models.IEEE Transactions on Software Engineering, 8(5):460–489, Sept. 1982.
C. P. Svoboda. Structured Analysis. In H. Thayer and M. Dorfman, editors,System and Software Requirements Engineering, pages 218–237. IEEE Compute Society Press, Los Alamitos CA, 1990.
B. Taylor. A Method for Expressing the Functional Requirements of Real-Time Systems. InProc. of 9th IFAC/IFIP Conference of Real-Time Programming, pages 111–120. New York: Pergamon, 1980.
Teamwork, User Manuals, Ver. 4.0. Technical report, Teamwork Division of CADRE, Providence, R.I., USA, 1992.
H. Thayer and M. Dorfman.System and Software Requirements Engineering. IEEE Compute Society Press, Los Alamitos CA, 1990.
H. Tokuda, T. Nakajima, and P. Rao. Real-Time Mach: Towards a Predictable Real-Time System. InProc. Usenix Mach Workshop, pages 1–10, Oct. 1990.
I. J. Walker. Requirements of an Object-Oriented Design Method.Software Engineering Journal, pages 102–113, March 1992.
P. T. Ward. The Transformation Schema: An Extension of the Data Flow Diagram to Represent Control and Timing.IEEE Transactions on Software Engineering, 12(2):198–210, Feb. 1986.
P. T. Ward and S. J. Mellor.Structured Development for Real-time Systems. Prentice Hall, Englewood Cliffs, NJ, USA, 1985.
R. R. Willson and B. H. Krogh. Petri Net Tool for the Specification and Analysis of Discrete Controllers.IEEE Transactions on Software Engineering, 16(1):39–50, Jan. 1990.
J. M. Wing. Writing Larch Interface language Specifications.ACM Transactions on Programming Languages and Systems, 9(1):1–24, Jan. 1987.
J. M. Wing. A Specifier's Introduction for Formal Methods.Computer, pages 8–24, Sept. 1990a.
J. M. Wing. Using Larch to Specify Avalon/C++ Objects.IEEE Transactions on Software Engineering, 16(9):1076–1088, Sept. 1990b.
R. J. Wirfs-Brock, B. Wilkerson, and L. Winer.Designing Object Oriented Software. Prentice Hall, Englewood Cliffs, N.J., USA, 1990.
R. Wirsf-Brock and B. Wilkerson. Object-Oriented Design: a responsibility-driven approach. InProc. OOPSLA'89, pages 71–75, New Orleans, Louisiana., Oct. 1989. SIGPLAN NOT, ACM Press.
E. Yourdon and L. L. Constantine.Structured Design: Fundamentals of a Discipline of Computer Program and Systems Design. Prentice-Hall, Englewood Cliffs, New Jersey, USA, 1979.
P. Zave. An Operational Approach to Requirements Specification for Embedded Systems.IEEE Transactions on Software Engineering, 8(3):250–269, May 1982.
P. Zave. The Operational Versus the Conventional Approach to Software Development.Communications of the ACM, 27(2):104–118, Feb. 1984.
P. Zave. A Comparison of the Mayor Approaches to Software Specification and Design. In H. Thayer and M. Dorfman, editors,System and Software Requirements Engineering, pages 197–199. IEEE Compute Society Press, Los Alamitos CA, 1990.
P. Zave and W. Schell. Salient Features of an Executable Specification Language and Its Environment.IEEE Transactions on Software Engineering, 12(2):312–325, Feb. 1986.
Author information
Authors and Affiliations
Additional information
This work was partially supported by the Italian Research Council, CNR (Consiglio Nazionale delle Ricerche), n. 93.01865.CT12.
Rights and permissions
About this article
Cite this article
Bucci, G., Campanai, M. & Nesi, P. Tools for specifying real-time systems. Real-Time Syst 8, 117–172 (1995). https://doi.org/10.1007/BF01094341
Issue Date:
DOI: https://doi.org/10.1007/BF01094341