Abstract
Model-driven software development is considered as a promising paradigm in software engineering. Models are ideal means for abstraction and can enable developers to master the increasing complexity of software systems. However, it is not easy to construct consistent models. Inconsistent models are usually the source for erroneous code which cannot be compiled or, if compiled, lead to malfunctioning applications. Developers have little help in producing consistent models, i.e. they are often not well informed by adequate error messages. Starting with a consistent initial model, we follow the idea to identify designated model development steps between consistent models only. These development steps are defined as model transformations. Recurring modeling patterns are identified and formalized as transformation rules. As essential contribution, a construction approach for consistent models in model-driven development is deduced and specified on the basis of graph transformation concepts. Using this approach, developers can be guided in the modeling process such that consistent models are developed only.
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
Eclipse Graphical Modeling Framework (2007), http://www.eclipse.org/gmf
Eclipse Modeling Framework (2007), http://www.eclipse.org/emf
Graph Transformation Environment AGG (2007), http://tfs.cs.tu-berlin.de/agg/
Java platform, enterprise edition (2007), http://java.sun.com/javaee
Spring framework (2007), http://www.springframework.org
AndroMDA (2007), http://www.andromda.org
Batory, D.S.: Program Refactoring, Program Synthesis, and Model-Driven Development. In: Krishnamurthi, S., Odersky, M. (eds.) CC 2007. LNCS, vol. 4420, pp. 156–171. Springer, Heidelberg (2007)
Bauer, C., King, G.: Java Persistence with Hibernate. In: Manning Publications (2006)
Beck, K.: Extreme Programming Explained: Embrace Change. Addison-Wesley, Reading (2000)
Bezivin, J.: In search of a basic principle for model driven engineering. In: UPGRADE, Novatica, vol. 2 (2004) (special issue on UML and Model Engineering)
Weiss, E.: Graphical Definition of In-Place Transformations in the Eclipse Modeling Framework. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 425–439. Springer, Heidelberg (2006)
Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. In: EATCS Monographs in TCS, Springer, Heidelberg (2006)
Goedicke, M., Enders, B., Meyer, T., Taentzer, G.: ViewPoint-Oriented Software Development: Tool Support for Integrating Multiple Perspectives by Distributed Graph Transformation. In: Schwartzbach, M.I., Graf, S. (eds.) ETAPS 2000 and TACAS 2000. LNCS, vol. 1785, pp. 43–47. Springer, Heidelberg (2000)
Jacobson, I., Booch, G., Rumbaugh, J.: The Unified Software Development Process. Addison-Wesley, Reading (1999)
König, A., Schürr, A.: Tool Integration with Triple Graph Grammars - A Survey. In: Heckel, R. (ed.) Proceedings of the SegraVis School on Foundations of Visual Modelling Techniques. Electronic Notes in Theoretical Computer Science, vol. 148, pp. 113–150. Elsevier Science Publ. Amsterdam (2006)
Mens, T., Taentzer, G., Müller, D.: Model-driven software refactoring. In: Rech, J., Bunse, C. (eds.) Model-Driven Software Development: Integrating Quality Assurance, Idea Group Inc. (to appear, 2008)
Mens, T., Tourwé, T.: A survey of software refactoring. IEEE Transactions on Software Engineering 30(2), 126–139 (2004), http://w3.umh.ac.be/~infofs/preprints/index.php?page=paper_info&ID=27
Porres, I.: Model Refactorings as Rule-Based Update Transformations. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 159–174. Springer, Heidelberg (2003)
Stahl, T., Völter, M.: Model-Driven Software Development. Wiley, Chichester (2006)
Stürmer, I., Dörr, H., Giese, H., Kelter, U., Schürr, A., Zündorf, A.: Das MATE Projekt - visuelle Spezifikation von MATLAB Simulink/Stateflow Analysen und Transformationen. In: Conrad, M., Giese, H., Rumpe, B., Schätz, B. (eds.) Tagungsband des Dagstuhl-Workshops: Modellbasierte Entwicklung eingebetteter Systeme, vol. 2007-01, Informatik-Bericht der TU Braunschweig (2007)
Sunye, G., Pollet, D., Le Traon, Y., Jezequel, J.M.: Refactoring UML models. The Unified Modeling Language, pp. 134–148 (2001), www.irisa.fr/triskell/publis/2001/Sunye01b.pdf
Taentzer, G., Toffetti Carughi, G.: A Graph-Based Approach to Transform XML Documents. In: Baresi, L., Heckel, R. (eds.) FASE 2006 and ETAPS 2006. LNCS, vol. 3922, pp. 48–62. Springer, Heidelberg (2006)
MOF 2.0 / XMI Mapping Specification (2007), http://www.omg.org/technology/documents/formal/xmi.htm
XSL Transformations (XSLT) Version 2.0 (2007), http://www.w3.org/TR/xslt20/
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Taentzer, G. (2008). Construction of Consistent Models in Model-Driven Software Development. In: Kutsche, RD., Milanovic, N. (eds) Model-Based Software and Data Integration. MBSDI 2008. Communications in Computer and Information Science, vol 8. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-78999-4_12
Download citation
DOI: https://doi.org/10.1007/978-3-540-78999-4_12
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-78998-7
Online ISBN: 978-3-540-78999-4
eBook Packages: Computer ScienceComputer Science (R0)