Abstract
This paper discusses a model-based design flow for requirements in distributed embedded software development. Such requirements are specified using a language similar to Linear Temporal Logic which allows one to reason about time and sequencing. They consist of assertions which must hold for a design, given some assumptions on its environment. They can be checked both during simulation and, at least for a subset, even on the target. Of course the guarantee of correctness is ensured only as long as the assertion express the complete design intent, and the simulation stimuli cover all possible cases. While this is generally not true, the simulation-based approach is a practical manner to ensure correctness with a good degree of confidence, while avoiding the intricacies of software formal verification. Assertions related to deadline satisfaction can also be checked statically by a schedulability analysis tool. The key contribution of the paper is the extension to the embedded software domain of assertion-based verification, and the automated generation of property-checking code in multiple target languages, from simulation, to prototyping, to final production.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
ETAS, Ascet-SD: (2004), http://www.etas.de
Simulink, T.M.: StateFlow (2004), http://www.mathworks.com
dSPACE TargetLink: (2004), http://www.dspace.de/
Language, A.P.S.: http://www.accellera.org/ (2004)
Alexander, P., Kong, C., Barton, D.: Rosetta usage guide (2003), http://www.sldl.org
OMG, Object Mangement Group’s UML Profile for Schedulability, Performance, and Time. OMG document ptc/02-03-02 (2002)
Medina, J., Harbour, M.G., Drake, J.: Mast real-time view: A graphic uml tool for modeling object-oriented real-time systems. In: Proceedings of IEEE Real-Time Systems Symposium (2001)
Saksena, M., Freedman, P., Rodziewic, P.: Automated implementation of executable object oriented models for real-time embedded control systems. In: Proceedings of IEEE Real-Time Systems Symposium (1997)
Burns, A., Welling, A.J.: HRT-HOOD: A design method for hard real-time. Journal of Real-Time Systems 6, 73–114 (1994)
Cornwell, P.D.: Reusable Component Engineering For Hard Real-Time Systems. PhD thesis, University of York (1998), YCST-98-04
Jahanian, F., Mok, A.: Modechart: a specification language for real-time systems. IEEE Transactions on Software Engineering 20, 933–947 (1994)
Mok, A., Liu, G.: Early detection of timing violation at runtime. In: Proceedings of IEEE Real-Time Systems Symposium (1997)
Puchol, C., Mok, A.: Integrated design tools for hard real-time systems. In: Proceedings of IEEE Real-Time Systems Symposium (1998)
Chen, X., Hsieh, H., Balarin, F., Watanabe, Y.: Automatic generation of simulation monitors from quantitative constraint formula. In: Proceedings of Design Automation and Test in Europe (2003)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lavagno, L., Di Natale, M., Ferrari, A., Giusto, P. (2005). SoftContract: Model-Based Design of Error-Checking Code and Property Monitors. In: Jardim Nunes, N., Selic, B., Rodrigues da Silva, A., Toval Alvarez, A. (eds) UML Modeling Languages and Applications. UML 2004. Lecture Notes in Computer Science, vol 3297. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-31797-5_16
Download citation
DOI: https://doi.org/10.1007/978-3-540-31797-5_16
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-25081-4
Online ISBN: 978-3-540-31797-5
eBook Packages: Computer ScienceComputer Science (R0)