Abstract
Runtime verification is one systematic strategy for analytical quality assurance of complex distributed systems. Model-based development approaches are promising in this context because they provide models of manageable size and complexity describing the systems under development, enabling systematic engineering processes for all development phases on various levels of detail. For runtime verification, executing implementations are monitored continuously for correctness against the specification. This requires the insertion of monitors into the software under test to gather information on system states and their evolution. In this paper we describe how we use aspect-oriented development techniques to enhance existing code with runtime monitors checking the interaction behavior of applications against their specifications. We use Message Sequence Charts (MSCs) to specify the interaction behavior of distributed systems and as basis for automatic runtime monitor generation. This uniquely ties interaction interface specifications with the monitoring infrastructure for their realization. We explain the monitor generation procedure and tool set using a case study from the embedded automotive systems domain, the Central Locking System (CLS).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Ahluwalia, J., Krüger, I., Meisinger, M., Phillips, W.: Model-Based Run-Time Monitoring of End-to-End Deadlines. In: EMSOFT. Proceedings of the Conference on Embedded Systems Software (2005)
Barringer, H., Finkbeiner, B., Gurevich, Y., Sipma, H. (eds.): RV’2005. Proceedings of the Fifth International Workshop on Runtime Verification ENTCS 144, Edinburgh, Scotland. Elsevier, Amsterdam, UK (2005)
Broy, M.: The Impact of Models in Software Development. In: Hutter, D., Stephan, W. (eds.) Mechanizing Mathematical Reasoning. LNCS (LNAI), vol. 2605, pp. 396–406. Springer, Heidelberg (2005)
Broy, M., Krüger, I., Meisinger, M.: A Formal Model of Services. ACM Transactions on Software Engineering and Methodology (TOSEM) 16(1) (2007)
France, R., Georg, G., Ray, I.: Supporting Multi-Dimensional Separation of Design Concerns. In: The 3rd AOSD Modeling With UML Workshop (2003)
Havelund, K., Goldberg, A.: Verify Your Runs. In: Proceedings of the Grand Verification Challenge Workshop Verified Software: Theories, Tools, Experiments, Zurich, Switzerland (2005)
ITU-TS. Recommendation Z.120: Message Sequence Chart (MSC). Geneva (1996)
Kiczales, G., Hilsdale, E., Hugunin, J., Kersten, M., Palm, J., Griswold, W.G.: An overview of AspectJ. In: Knudsen, J.L. (ed.) ECOOP 2001. LNCS, vol. 2072, pp. 327–353. Springer, Heidelberg (2001)
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J.-M., Irwin, J.: Aspect Oriented Programming. Technical report, Xerox Corp (1997)
Krüger, I.: Distributed System Design with Message Sequence Charts. PhD thesis, Technische Universität München (2000)
Krüger, I., Grosu, R., Scholz, P., Broy, M.: From MSCs to Statecharts. In: Rammig, F.J. (ed.) Distributed and Parallel Embedded Systems, pp. 61–71. Kluwer Academic Publishers, Dordrecht (1999)
Krüger, I., Lee, G., Meisinger, M.: Automating Software Architecture Exploration with M2Aspects. In: SCESM. Proceedings of the ICSE 2006 Workshop on Scenarios and State Machines (2006)
Krüger, I., Mathew, R., Meisinger, M.: Efficient Exploration of Service-Oriented Architectures using Aspects. In: ICSE. Proceedings of the 28th International Conference on Software Engineering (2006)
Krüger, I.H., Ahluwalia, J., Gupta, D., Mathew, R., Moorthy, P., Phillips, W., Rittmann, S.: Towards a Process and Tool-Chain for Service-Oriented Automotive Software Engineering. In: SEAS. Proceedings of the ICSE 2004 Workshop on Software Engineering for Automotive Systems (2004)
Leue, S.: Methods and Semantics for Telecommunications Systems Engineering. PhD thesis, University of Berne, Switzerland (1994)
OMG (Object Management Group). Model Driven Architecture (MDA). MDA Guide 1.0.1, omg/03-06-01 (2003), http://www.omg.org/mda
OMG (Object Management Group). UML, Version 2.0. OMG Specification formal/05-07-04 (superstructure) and formal/05-07-05 (infrastructure) (2005)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Krüger, I.H., Meisinger, M., Menarini, M. (2007). Runtime Verification of Interactions: From MSCs to Aspects. In: Sokolsky, O., Taşıran, S. (eds) Runtime Verification. RV 2007. Lecture Notes in Computer Science, vol 4839. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-77395-5_6
Download citation
DOI: https://doi.org/10.1007/978-3-540-77395-5_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-77394-8
Online ISBN: 978-3-540-77395-5
eBook Packages: Computer ScienceComputer Science (R0)