Real-Time Specification Inheritance Anomalies and Real-Time Filters

Real-time programs are, in general, difficult to design and verify. The inheritance mechanism can be useful in reusing well-defined and verified real-time programs. In applications developed by current real-time object-oriented languages, however, changing application requirements or changing real-time specifications in sub-classes may require excessive redefinitions although this seems to be intuitively unnecessary. We refer to this as the real-time specification inheritance anomaly. This paper introduces three kinds of real-time specification inheritance anomalies that one may experience while constructing object-oriented programs. As a solution to these anomalies, the concept of real-time composition filters is introduced. Filters affect the real-time characteristics of messages that are received or sent by an object. Through proper configuration of filters, one can specify real-time constraints, and reuse of these constraints without causing inheritance anomalies.

[1]  Bjarne Stroustrup,et al.  The Annotated C++ Reference Manual , 1990 .

[2]  Satish K. Tripathi,et al.  Language support for the Maruti real-time system , 1990, [1990] Proceedings 11th Real-Time Systems Symposium.

[3]  Akinori Yonezawa,et al.  Abstracting Object Interactions Using Composition Filters , 1993, ECOOP Workshop.

[4]  James F. Allen Maintaining knowledge about temporal intervals , 1983, CACM.

[5]  Anand R. Tripathi,et al.  Data abstraction mechanisms in SINA/ST , 1988, OOPSLA 1988.

[6]  Lodewijk Bergmans,et al.  An Object-Oriented Language-Database Integration Model: The Composition-Filters Approach , 1992, ECOOP.

[7]  Adele Goldberg,et al.  SmallTalk 80: The Language , 1989 .

[8]  Kwei-Jay Lin,et al.  Flex : A Language for Programming Flexible Real-Time Systems , 1991 .

[9]  Peter Wegner,et al.  Dimensions of object-based language design , 1987, OOPSLA '87.

[10]  B. Dasarathy,et al.  Timing Constraints of Real-Time Systems: Constructs for Expressing Them, Methods of Validating Them , 1989, IEEE Transactions on Software Engineering.

[11]  Jan Bosch,et al.  Issues in Object-Oriented Real-Time Language Design , 1992, NATO ASI RTC.

[12]  Gary M. Koob,et al.  Foundations of Real-Time Computing: Formal Specifications and Methods , 1991 .

[13]  Mario Tokoro,et al.  DROL: an object-oriented programming language for distributed real-time systems , 1992, OOPSLA.

[14]  Wolfgang A. Halang,et al.  Constructing Predictable Real Time Systems , 1991 .

[15]  Mario Tokoro,et al.  DROL: an object-oriented programming language for distributed real-time systems , 1992, OOPSLA '92.

[16]  Jan Gustafsson,et al.  RealTimeTalk, an Object-Oriented Language for Hard Real-Time Systems , 1992 .

[17]  Anand R. Tripathi,et al.  Atomic delegation: object-oriented transactions , 1991, IEEE Software.

[18]  Hongyi Zhou,et al.  Dynamic Scheduling of Hard Real-Time Tasks and Real-Time Threads , 1992, IEEE Trans. Software Eng..