Abstract
Most structured design methods claim to address the needs of hard real-time systems. However, few contain abstractions which directly relate to common hard real-time activities, such as periodic or sporadic processes. Furthermore, the methods do not constrain the designer to produce systems which can be analyzed for their timing properties. In this article we present a structured design method called HRT-HOOD (Hard Real-Time Hierarchical Object Oriented Design). HRT-HOOD is an extension of HOOD, and includes object types which enable common hard real-time abstractions to be represented. The method is presented in the context of a hard real-time system life cycle, which enables issues of timeliness and dependability to be addressed much earlier on in the development process. We argue that this will enable dependable real-time systems to be engineered in a more cost effective manner than the current practice, which in effect treats these topics as performance issues. To illustrate our approach we present a simple case study of a Mine Drainage Control System, and show how it can be designed using the abstractions presented in the article.
Similar content being viewed by others
References
Agency, European Space. 1989 HOOD Reference Manual Issue 3.0. WME/89-173/JB.
Agency, European Space. 1989 HOOD User Manual Issue 3.0. WME/89-353/JB.
Audsley, N.C., Tindell, K., Burns, A., Richardson, M.F. and Wellings, A.J. 1991. The DrTee architecture for distributed hard real-time systems.Proceedings 10th IFAC Workshop on Distributed Control Systems. Semmering, Austria.
Audsley, N.C., Burns, A., Richardson, M.F. and Wellings, A.J. 1991. STRESS: A Simulator for Hard Real-Time Systems. RTRG 106, Department of Computer Science, University of York.
Audsley, N.C., Burns, A. and Wellings, A.J. 1993. Deadline monotonic scheduling theory and application.Control Engineering Practice 1:71–78.
Bannister, J.A. and Trivedi, K.S. 1983. Task allocation in fault-tolerant distributed systems.Acta Informatica 20:261–281.
Barrett, P.A., Hilborne, A.M. Verissimo, P., Rodrigues, L., Bond, P.G., Seaton, D.T. and Speirs, N.A. 1990. The delta-4 extra performance architecture (XPA).Digest of Papers, The Twentieth Annual International Symposium on Fault-Tolerant Computing, Newcaslte, pp. 481–488.
Brinch-Hansen, P. 1973.Operating System Principles. New Jersey: Prentice-Hall.
Buhr, R.J.A. 1984.System Design with Ada. New Jersey: Prentice-Hall International.
Burns, A. and Lister, A.M. 1990. An Architectural Framework for Timely and Reliable Distributed Information Systems (TARDIS): Description and Case Study. YCS.140, Department of Computer Science, University of York.
Burns, A. and Wellings, A.J. 1990.Real-Time Systems and Their Programming Languages, Reading, MA: Addison Wesley.
Burns, A. 1991. Scheduling hard real-time systems: a review.Software Engineering Journal 6:116–128.
Burns, A. and Wellings, A.J. 1991. Development of a Design Methodology. Task 3 Deliverable on ESTEC Contract 9198/90/NL/SF, Department of Computer Science, University of York.
Burns, A. and Lister, A.M. 1991. A framework for building dependable systems.Computer Journal 34:173–181.
Burns, A. and Wellings, A.J. 1992. Hard Real-time HOOD: A design method for hard real-time Ada 9X systems. Towards Ada 9X,Proceedings of 1991 Ada UK International Conference, IOS Press.
Burns, A., Wellings, A.J., Bailey, C.M. and Fyfe, E. 1993. The Olympus attitude and orbital control system: a case study in hard real-time system design and implementation.Ada sans frontieres Proceedings of the 12th Ada-Europe Conference. Lecture Notes in Computer Science. Berlin/Heidelberg: Springer-Verlag.
Burns, A., Wellings, A.J., Bailey, C.M. and Fyfe, E. 1993. The Olympus Attitude and Orbital Control System: A Case Study in Hard Real-time System Design and Implementation. YCS 190, Department of Computer Science, University of York.
Burns, A., Wellings, A.J. and Hutcheon, A.D. 1993. The Impact of an Ada Run-time System's Performance Characteristics on Scheduling Models.Ada sans frontieres Proceedings of the 12th Ada-Europe Conference, Lecture Notes in Computer Science, Berlin/Heidelberg: Springer-Verlag.
Calvez, J.P. 1993.Embedded Real-time Systems: A Specification and Design Methodology, NY, NY: Wiley.
Chen, G. and Yur, J. 1990. A Branch-and-Bound-with-Underestimates Algorithm for the Task Assignment Problem with Precedence Constraint.10th International Conference on Distributed Computing Systems, pp. 494–501.
Cherry, G.W. 1986.Pamela Designers Handbook, Thought Tools Incorporated.
Cooling, J.E. 1991.Software Design for Real-Time Systems. Chapman and Hall.
Damm, A., Reisinger, J., Schwabl, W. and Kopetz, H. 1989. The real-time operating system of MARS.ACM Operating Systems Review 23:141–157.
Davari, S. and Dhall, S.K. 1986. An on-line algorithm for real-time task allocation. pp. 194–200.Proceedings 7th IEEE Real-Time Systems Symposium.
Dhall, S.K. and Liu, C.L. 1978. On a real-time scheduling problem.Operations Research 26:127–140.
Dobson, J.E. and McDermid, J.A. 1990. An Investigation into Modelling and Categorisation of Non-Functional Requirements. YCS.141, Department of Computer Science, University of York.
Fohler, G. and Koza, C. 1989. Heuristic Scheduling for Distributed Real-time Systems. Nr 6/89, Institute für Technische Informatik, Technische Universität Wien, Austria.
Hoare, C.A.R. 1974. Monitors—an operating system structuring concept.CACM 17:549–557.
Hull, M.E.C., O'Donoghue, P.G. and Hagan, B.J. 1991. Development methods for real-time systems.Computer Journal 34:164–72. Comput. J. (UK).
Intermetrics. 1991. Draft Ada 9X Mapping Document, Volume II, Mapping Specification. Ada 9X Project Report.
Kligerman, E. and Stoyenko, A.D. 1986. Real-time Euclid: a language for reliable real-time systems.IEEE Transactions on Software Engineering SE-12:941–949.
Kopetz, H., Zainlinger, R., Fohler, G., Kantz, H., Puschner, P. and Schutz, W. 1991. The design of real-time systems: from specification to implementation and verification.Software Engineering Journal 6:72–82. Softw. Eng. J. (UK).
Kramer, J., Magee, J., Sloman, M.S. and Lister, A.M. 1983. CONIC: an integrated approach to distributed computer control systems.IEE Proceedings (Part E) 180:1–10.
Kramer, J. and Magee, J. 1988. A model for change management.Proceedings of the IEEE distributed Computing Systems in the '90s Conference.
Laprie, J.C. 1989. Dependability: A Unified Concept for Reliable Computing and Fault Tolerance. pp. 1–28 inResilient Computer Systems., ed. Anderson, T., Collins and NY, NY: Wiley.
Lauber (Ed), R.J. 1990. EPOS Overview: Short Account of the Main Features. GPP Gesellschaft für Proze-Brechnerprogrammierung mbH, Kolpingring 18a, D-8024 Oberhaching bei Müchen.
Lauber, R.J. 1989. Forecasting real-time behavior during software design using a CASE environment.The Journal of Real-Time Systems 1:61–76.
Leung, J.Y.T. and Whitehead, J. 1982. On the complexity of fixed-priority scheduling of periodic, real-time tasks.Performance Evaluation (Netherlands) 2:237–250.
Liu, C.L. and Layland, J.W. 1973. Scheduling algorithms for multiprogramming in a hard real-time environment.JACM 20:46–61.
Rajkumar, R., Sha, L. and Lehoczky, J.P. 1989. An experimental investigation of synchronization protocols.Proceedings 6th IEEE Workshop on Real-Time Operating Systems and Software. pp. 11–17.
Ramamritham, K. 1990. Allocation and Scheduling of Complex Periodic Tasks. 10th International Conference on Distributed Computing Systems, pp. 108–115.
Robinson, P. 1992.Hierarchical Object-Oriented Design. Englewood Cliffs, NJ: Prentice Hall.
Sha, L., Rajkumar, R. and Lehoczky, J.P. 1990. Priority inheritance protocols: an approach to real-time synchronization.IEEE Transactions on Computers 39:1175–1185.
Shrivastava, S.K., Mancini, L. and Randell, B. 1987. On The Duality of Fault Tolerant Structures. pp. 19–37 inLecture Notes in Computer Science. Berlin/Heidelberg: Springer-Verlag.
Simpson, H.R. 1986. The mascot method.Software Engineering Journal 1:103–120.
Sloman, M. and Kramer, J.Distributed Systems and Computer Networks. Englewood Cliffs, NJ: Prentice-Hall (1987).
Technologies, Cadre,Teamwork, 222 Richmond Street, Providence, RI 02903, USA (1990).
Tindell, K., Burns, A. and Wellings, A.J. 1992. Allocating real-time tasks (an NP-hard problem made easy).Real-Time Systems 4:145–165.
Wilf, H.S. 1986.Algorithms and Complexity. Englewood Cliffs, NJ: Prentice-Hall International.
Xu, J. and Parnas, D.L. 1990. Scheduling processes with release times, deadlines, precedence, and exclusion relations.IEEE Transactions on Software Engineering SE-16:360–369.
Zhao, W., Ramamritham, K. and Stankovic, J.A. 1987. Preemptive scheduling under time and resource constraints.IEEE Transactions on Computers 36:949–960.
Author information
Authors and Affiliations
Additional information
HOOD is a trademark of the HOOD User Group.
The work has been supported, in part, by the European Space Agency (ESTEC Contract 9198/90/NL/SF) and by the UK Defence Research Agency (Contract Number 2191/023).
Rights and permissions
About this article
Cite this article
Burns, A., Wellings, A.J. HRT-HOOD: A structured design method for hard real-time systems. Real-Time Syst 6, 73–114 (1994). https://doi.org/10.1007/BF01245300
Issue Date:
DOI: https://doi.org/10.1007/BF01245300