Specifying subtypes in Safety Critical Java programs

SUMMARYReal‐time and safety‐critical code could benefit from the use of design patterns and frameworks that rely on subtyping and dynamic dispatch. However, modular reasoning about programs that use subtypes requires that each overriding method obeys the specifications of all methods that it overrid...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:Concurrency and computation Jg. 25; H. 16; S. 2290 - 2306
Hauptverfasser: Haddad, Ghaith, Leavens, Gary T.
Format: Journal Article
Sprache:Englisch
Veröffentlicht: Blackwell Publishing Ltd 01.11.2013
Schlagworte:
ISSN:1532-0626, 1532-0634
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:SUMMARYReal‐time and safety‐critical code could benefit from the use of design patterns and frameworks that rely on subtyping and dynamic dispatch. However, modular reasoning about programs that use subtypes requires that each overriding method obeys the specifications of all methods that it overrides. For example, if method scale is specified in a supertype Vector2d to take at most 42 ns to execute, then an override of scale cannot take more than 42 ns to execute in any subtype, such as Vector3d. The problem is that subtype objects typically contain more information, such as the z coordinate in Vector3d, and thus their methods often require more time to execute than the methods they override. In this paper, we show how to specify timing constraints for subtypes in a way that both allows overriding subtype methods to have more time to execute and yet permits precise modular verification and checking of timing constraints. Our techniques allow object‐oriented coding and design patterns based on subtype polymorphism to be used in real‐time and safety‐critical software. Copyright © 2012 John Wiley & Sons, Ltd.
Bibliographie:istex:3E6EEC91D19AD674517C86DE4DB66BEC9358818A
ark:/67375/WNG-JZXC0XGZ-6
ArticleID:CPE2930
ObjectType-Article-2
SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 23
ISSN:1532-0626
1532-0634
DOI:10.1002/cpe.2930