Skip to main content

An engineering approach to hard real-time system design

  • Conference paper
  • First Online:
ESEC '91 (ESEC 1991)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 550))

Included in the following conference series:

Abstract

This paper presents a systematic methodology for the design of distributed fault tolerant real-time systems. The methodology covers the stepwise refinement of the given requirements, expressed in the form of real-time transactions, to task and protocol executions. It also includes a timing analysis and dependability evaluation of the still incomplete design. The testability of the evolving system is considered to be of essential concern. A set of coherent tools for the support of the methodology is described in some detail. The methodology assumes that the run-time architecture is based on static scheduling and a globally synchronised time-base is available to co-ordinate the system actions in the domain of real-time.

This work was supported in part by the ESPRIT Basic Research Project 3092 “Predictably Dependable Computing Systems”

A related version of this paper has been accepted for publication in the “IEE Software Engineering Journal”

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. W. R. Adrion, M. A. Branstad, and J. C. Cherniavsky. Validation, Verification, and Testing of Computer Software. ACM Computing Surveys, 14(2):159–192, June 1982.

    Google Scholar 

  2. M. Alford. SREM at the Age of Eight; The Distributed Computing Design System. IEEE Computer, 18(4):36–46, Apr. 1985.

    Google Scholar 

  3. F. Belina and D. Hogrefe. The CCITT-Specification and Description Language SDL. In Computer Networks and ISDN Systems 16, pages 311–341. Elsevier Science Publishers B.V. (North Holland), 1988/89.

    Google Scholar 

  4. M. Dowson. ISTAR and the Contractual Approach. Communications of the ACM, 30(3):287–288, Mar. 1987.

    Google Scholar 

  5. G. Fohler and C. Koza. Heuristic Scheduling for Distributed Real-Time Systems. Research Report 6/89, Institut für Technische Informatik, Technische Universität Wien, Vienna, Austria, April 1989.

    Google Scholar 

  6. R. Geist and K. Trivedi. Reliability Estimation of Fault Tolerant Systems: Tools and Techniques. IEEE Computer, 23(7):52–61, July 1990.

    Google Scholar 

  7. D. Gelperin and B. Hetzel. The Growth of Software Testing. Communications of the ACM, 31(6):687–695, June 1988.

    Google Scholar 

  8. H. Gomaa. Software Development of Real-Time Systems. Communications of the ACM, 29(7):657–668, July 1986.

    Google Scholar 

  9. W. E. Howden. Functional Program Testing and Analysis. Software Engineering and Technology. McGraw-Hill, New York, 1987.

    Google Scholar 

  10. A. M. Johnson and M. Malek. Survey of Software Tools for Evaluating Reliability, Availability and Serviceability. ACM Computing Surveys, 20(4):227–269, Dec. 1988.

    Google Scholar 

  11. H. Kantz and M. Mulazzani. Modeling of PMS — Structures in SHARPE. In IFAC Proceedings SAFECOMP 89, pages 97–102, Vienna, Austria, Dec. 1989.

    Google Scholar 

  12. H. Kantz. Integrating Dependability Analysis into the Design of Distributed Computer Systems. In IEEE CompEuro 91, pages 762–766, Bologna, Italy, May 1991.

    Google Scholar 

  13. H. Kopetz, A. Damm, Ch. Koza, M. Mulazzani, W. Schwabl, Ch. Senft, and R. Zainlinger. Distributed Fault-Tolerant Real-Time Systems: The MARS Approach. IEEE Micro, 9(1):25–40, Feb. 1989.

    Google Scholar 

  14. H. Kopetz, H. Kantz, G. Grünsteidl, P. Puschner, and J. Reisinger. Tolerating Transient Faults in MARS. In Proc. 20th Int. Symposium on Fault-Tolerant Computing, pages 466–473, Newcastle upon Tyne, UK, June 1990.

    Google Scholar 

  15. H. Kopetz. Real-Time Systems. In J.A. McDermid, Editor, Software Engineer's Reference Book, pages 56/1–56/9. Butterworth-Heinemann Ltd., Oxford, U.K., 1991.

    Google Scholar 

  16. R. Korf. Depth-First Iterative-Deepening: An Optimal Admissable Tree Search. Artificial Intelligence, 27(3):97–109, 1985.

    Google Scholar 

  17. J. Laski. Testing in the Program Development Cycle. IEE Software Engineering Journal, 4(2):95–106, Mar. 1989.

    Google Scholar 

  18. R. Lauber. Forecasting Real-Time Behavior During Software Design using a CASE environment. In Proc. 22nd Annual Hawaii International Conference on System Sciences, Vol. II, pages 645–653, Kailua-Kona, HI, USA, Jan. 1989.

    Google Scholar 

  19. 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, Jan. 1973.

    Google Scholar 

  20. A. K. Mok. Fundamental Design Problems of Distributed Systems for the Hard Real-Time Environment. PhD Thesis, Massachusetts Institute of Technology, 1983. Report MIT/LCS/TR-297.

    Google Scholar 

  21. M. Mulazzani and K. S. Trivedi. Dependability Prediction: Comparison of Tools and Techniques. In IFAC Proceedings SAFECOMP 86, pages 171–178, Sarlat, France, Oct. 1986.

    Google Scholar 

  22. M. Mulazzani. Generation of Dependability Models from Design Specifications of Distributed Real-Time Systems. PhD Thesis, Technisch Naturwissenschaftliche Fakultät, Technische Universität Wien, Vienna, Austria, Apr. 1988.

    Google Scholar 

  23. D. Parnas, P. Clements, and D. Weiss. The Modular Structure of Complex Systems. In Proc. 7th IEEE Intern. Conference on Software Engineering, pages 408–417, Orlando, Florida, Mar. 1984.

    Google Scholar 

  24. P. Puschner and Ch. Koza. Calculating the Maximum Execution Time of Real-Time Programs. Real-Time Systems, 1(2):159–176, Sep. 1989.

    Google Scholar 

  25. P. Puschner and R. Zainlinger. Developing Software with Predictable Timing Behavior. In Proc. 7th IEEE Workshop on Real-Time Operating Systems and Software, pages 70–76, Charlottesville, VA, May 1990.

    Google Scholar 

  26. R. Sahner and K. S. Trivedi. Reliability Modeling using SHARPE. IEEE Transactions on Reliability, 36(2):186–193, June 1987.

    Google Scholar 

  27. W. Schütz. Real-Time Simulation in the Distributed Real-Time System MARS. In Proc. 1990 European Simulation Multiconference, pages 51–57, Nürnberg, FRG, June 1990. The Society for Computer Simulation International.

    Google Scholar 

  28. W. Schütz. A Test Strategy for the Distributed Real-Time System MARS. In IEEE CompEuro 90, Computer Systems and Software Engineering, pages 20–27, Tel Aviv, Israel, May 1990.

    Google Scholar 

  29. Ch. Senft. A Computer-Aided Design Environment for Distributed Realtime Systems. In IEEE CompEuro 88, System Design: Concepts, Methods and Tools, pages 288–297, Brussels, Belgium, Apr. 1988.

    Google Scholar 

  30. Ch. Senft and R. Zainlinger. A Graphical Design Environment for Distributed Real-Time Systems. In Proc. 22nd Annual Hawaii International Conference on System Sciences, Vol. II, pages 871–880, Kailua-Kona, HI, USA, Jan. 1989.

    Google Scholar 

  31. A. C. Shaw. Reasoning About Time in Higher-Level Language Software. IEEE Transactions on Software Engineering, SE-15(7):875–889, July 1989.

    Google Scholar 

  32. H. Simpson. The MASCOT Method. IEE Software Engineering Journal, 1(3):103–120, May 1986.

    Google Scholar 

  33. P. Ward. The Transformation Scheme: an Extension of the Data Flow Diagram to Represent Control and Timing. IEEE Transactions on Software Engineering, 12(2):198–210, Feb. 1986.

    Google Scholar 

  34. R. Zainlinger. Data Objects in the MARS Design System. Research Report 17/89, Institut für Technische Informatik, Technische Universität Wien, Vienna, Austria, Sep. 1989.

    Google Scholar 

  35. R. Zainlinger. Building Interfaces for CASE Environments: An Object Oriented Interaction Model and its Application. In Proc. of the IFIP International Conference on Human Factors in Information Systems Analysis and Design, pages 65–80, Schärding, Austria, June 1990.

    Google Scholar 

  36. R. Zainlinger and G. Pospischil. DIAMOND — An Object Oriented Graphics Library for Software Development Environments. In Proc. of the Autumn 1990 EUUG Conference, pages 157–166, Nice, France, Oct. 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Axel van Lamsweerde Alfonso Fugetta

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kopetz, H., Zainlinger, R., Fohler, G., Kantz, H., Puschner, P., Schütz, W. (1991). An engineering approach to hard real-time system design. In: van Lamsweerde, A., Fugetta, A. (eds) ESEC '91. ESEC 1991. Lecture Notes in Computer Science, vol 550. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3540547428_48

Download citation

  • DOI: https://doi.org/10.1007/3540547428_48

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-54742-6

  • Online ISBN: 978-3-540-46446-4

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics