Abstract
The model-driven development (MDD) approach for constructing software systems advocates a stepwise refinement and transformation process starting from high-level models to concrete program code. In contrast to numerous research efforts that try to generate executable function code from models, we propose a novel approach termed model-driven monitoring. Here, models are used to specify minimal requirements and are transformed into assertions on the code level for monitoring hand-coded programs during execution.
We show how well-understood results from the graph transformation community can be deployed to support this model-driven monitoring approach. In particular, models in the form of visual contracts are defined by graph transitions with loose semantics, while the automatic transformation from models to JML assertions on the code level is defined by strict graph transformation rules. Both aspects are supported and realized by a dedicated Eclipse plug-in.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Meservy, T., Fenstermacher, K.D.: Transforming software development: An MDA road map. Computer 38(9), 52–58 (2005)
OMG (Object Management Group): Request for proposal: Mof 2.0 query / views / transformations rfp (2002)
Meyer, B.: Applying “Design by Contract”. IEEE Computer 25(10), 40–51 (1992)
Meyer, B.: Eiffel: The Language, 2nd edn. Prentice-Hall, Englewood Cliffs (1992)
Leavens, G.T., Baker, A.L., Ruby, C.: Preliminary design of JML: A behavioral interface specification language for Java. Technical Report 98-06-rev27, Department of Computer Science, Iowa State University (2005)
Heckel, R., Ehrig, H., Wolter, U., Corradini, A.: Double-pullback transitions and coalgebraic loose semantics for graph transformation systems. APCS (Applied Categorical Structures) 9(1), 83–110 (2001)
Ehrig, H., Pfender, M., Schneider, H.: Graph grammars: an algebraic approach. In: 14th Annual IEEE Symposium on Switching and Automata Theory, pp. 167–180. IEEE, Los Alamitos (1973)
Engels, G., Güldali, B., Juwig, O., Lohmann, M., Richter, J.P.: Industrielle Fallstudie: Einsatz visueller Kontrakte in serviceorientierten Architekturen. In: Biel, B., Book, M., Gruhn, V. (eds.) Software Enginneering 2006, Fachtagung des GI Fachbereichs Softwaretechnik. Lecture Notes in Informatics, vol. 79, pp. 111–122. Köllen Druck, Verlag GmbH (2006)
Lohmann, M., Richter, J.P., Engels, G., Güldali, B., Juwig, O., Sauer, S.: Abschlussbericht: Semantische Beschreibung von Enterprise Services - Eine industrielle Fallstudie. Technical Report 1, Software Quality Lab, Unversity of Paderborn (2006)
Jacobson, I., Booch, G., Rumbaugh, J.: The Unified Software Development Process. Addison-Wesley, Reading (1999)
Habel, A., Heckel, R., Taentzer, G.: Graph grammars with negative application conditions. Fundamenta Informaticae 26(3,4), 287–313 (1996)
Lohmann, M., Sauer, S., Engels, G.: Executable visual contracts. In: Erwig, M., Schürr, A. (eds.) 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC 2005), pp. 63–70 (2005)
Heckel, R., Lohmann, M.: Model-driven development of reactive informations systems: From graph transformation rules to JML contracts. International Journal on Software Tools for Technology Transfer (STTT) (accepted for publication, 2006)
Zündorf, A.: Graph pattern matching in progres. In: Cuny, J., Engels, G., Ehrig, H., Rozenberg, G. (eds.) Graph Grammars 1994. LNCS, vol. 1073. Springer, Heidelberg (1996)
Heckel, R., Küster, J.M., Taentzer, G.: Towards automatic translation of UML models into semantic domains. In: Kreowski, H.J., Knirsch, P. (eds.) Proceedings of the Appligraph Workshop on Applied Graph Transformation (2002)
Eclipse Consortium: Eclipse graphical editing framework (GEF) - version 3.1.1 (2006), http://www.eclipse.org/gef/
Eclipse Consortium: Eclipse modeling framework (EMF) - version 2.1.2 (2006), http://www.eclipse.org/emf/
Eclipse Consortium: Java emitter templates (JET). Eclipse Modeling Framework (EMF) - Version 2.1.1 (2006), http://www.eclipse.org/emf/
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Engels, G., Lohmann, M., Sauer, S., Heckel, R. (2006). Model-Driven Monitoring: An Application of Graph Transformation for Design by Contract. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds) Graph Transformations. ICGT 2006. Lecture Notes in Computer Science, vol 4178. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11841883_24
Download citation
DOI: https://doi.org/10.1007/11841883_24
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-38870-8
Online ISBN: 978-3-540-38872-2
eBook Packages: Computer ScienceComputer Science (R0)