×

zbMATH — the first resource for mathematics

A formal approach to the specification and transformation of constraints in MDE. (English) Zbl 1246.68098
Summary: This paper introduces a formal approach to constraint-aware model transformation which supports specifying constraints in the definition of transformation rules. These constraints are used to control which structure to create in the target model and which constraints to add to the created structure.
The proposed approach is classified under heterogeneous, graph-based and out-place model transformations; and illustrated by applying it to a language translation. It is based on the diagram predicate framework which provides a formalisation of (meta)modelling based on category theory and graph transformation. In particular, the proposed approach uses non-deleting transformation rules that are specified by a joined modelling language which is defined by relating the source and target languages.
The relation between source and target languages is formalised by morphisms from their corresponding modelling formalisms into a joined modelling formalism. Furthermore, the application of transformation rules is formalised as a pushout construction and the final target model is obtained by a pullback construction.

MSC:
68N30 Mathematical aspects of software engineering (specification, verification, metrics, requirements, etc.)
68N99 Theory of software
PDF BibTeX XML Cite
Full Text: DOI
References:
[1] Ask.com, Dictionary.com. Available from: <http://dictionary.reference.com>.
[2] T. Baar, J. Whittle, On the usage of concrete syntax in model transformation rules, in: I. Virbitskaite, A. Voronkov (Eds.), Proceedings of PSI 2006: 6th International Andrei Ershov Memorial Conference on Perspectives of Systems Informatics, Vol. 4378 of Lecture Notes in Computer Science, Springer, 2007, pp. 84-97. http://dx.doi.org/10.1007/978-3-540-70881-0_10.
[3] Barr, M.; Wells, C., Category theory for computing science, (1995), Prentice Hall International Ltd. Hertfordshire, UK
[4] Bézivin, J., On the unification power of models, Softw. syst. model., 4, 2, 171-188, (2005), http://dx.doi.org/10.1007/s10270-005-0079-0
[5] J. Bézivin, O. Gerbé, Towards a precise definition of the OMG/MDA framework, in: Proceedings of ASE 2001: 16th IEEE International Conference on Automated Software Engineering, 2001, pp. 273-280. http://dx.doi.org/10.1109/ASE.2001.989813.
[6] Biermann, E.; Ehrig, K.; Köhler, C.; Kuhns, G.; Taentzer, G.; Weiss, E., EMF model refactoring based on graph transformation concepts, Electron. commun. EASST, 3, (2006)
[7] Boronat, A.; Meseguer, J., An algebraic semantics for MOF, Formal aspects comput., 22, 3-4, 269-296, (2010), http://dx.doi.org/10.1007/s00165-009-0140-9 · Zbl 1213.68358
[8] Bottoni, P.; Koch, M.; Parisi-Presicce, F.; Taentzer, G., A visualization of OCL using collaborations, (), 257-271 · Zbl 1024.68642
[9] J. Cabot, R. Clarisó, E. Guerra, J. de Lara, Analysing graph transformation rules through OCL, in: A. Vallecillo, J. Gray, A. Pierantonio (Eds.), Proceedings of ICMT 2008: 1st International Conference on Model Transformation, Vol. 5063 of Lecture Notes in Computer Science, Springer, 2008, pp. 229-244. http://dx.doi.org/10.1007/978-3-540-69927-9_16.
[10] Cambridge, Dictionaries Online. Available from: <http://dictionary.cambridge.org>.
[11] K. Czarnecki, S. Helsen, Classification of model transformation approaches, in: 2nd OOPSLA Workshop on Generative Techniques in the Context of MDA, 2003.
[12] J. de Lara, E. Guerra, Pattern-based model-to-model transformation, in: Proceedings of ICGT 2008: 4th International Conference on Graph Transformations, Vol. 5214 of Lecture Notes in Computer Science, Springer, 2008, pp. 426-441. http://dx.doi.org/10.1007/978-3-540-87405-8_29. · Zbl 1175.68114
[13] Diskin, Z., Practical foundations of business system specifications, (2003), Kluwer Academic Publishers, pp. 145-178 (Ch. Mathematics of UML: Making the Odysseys of UML Less Dramatic)
[14] Z. Diskin, U. Wolter, A diagrammatic logic for object-oriented visual modeling, in: Proceedings of ACCAT 2007: 2nd Workshop on Applied and Computational Category Theory, Vol. 203/6 of Electronic Notes in Theoretical Computer Science, Elsevier Science Publishers B.V., Amsterdam, The Netherlands, 2008, pp. 19-41. http://dx.doi.org/10.1016/j.entcs.2008.10.041. · Zbl 1277.68055
[15] Ehrig, H.; Ehrig, K.; Prange, U.; Taentzer, G., Fundamentals of algebraic graph transformation, (2006), Springer · Zbl 1095.68047
[16] H. Ehrig, K. Ehrig, C. Ermel, F. Hermann, G. Taentzer, Information preserving bidirectional model transformations, in: M.B. Dwyer, A. Lopes (Eds.), Proceedings of FASE 2007: 10th International Conference on Fundamental Approaches to Software Engineering, Vol. 4422 of Lecture Notes in Computer Science, Springer, 2007, pp. 72-86. http://dx.doi.org/10.1007/978-3-540-71289-3_7.
[17] Fiadeiro, J.L., Categories for software engineering, (2004), Springer
[18] F. Fondement, T. Baar, Making metamodels aware of concrete syntax, in: A. Hartman, D. Kreische (Eds.), Proceedings of ECMDA-FA 2005: 1st European Conference on Model-Driven Architecture Foundations and Applications, Vol. 3748 of Lecture Notes in Computer Science, Springer, 2005, pp. 190-204. http://dx.doi.org/10.1007/11581741_15.
[19] R. Grønmo, Using Concrete Syntax in Graph-based Model Transformations, Ph.D. thesis, Department of Informatics, University of Oslo, Norway, February, 2010.
[20] R. Grønmo, B. Møller-Pedersen, G.K. Olsen, Comparison of three model transformation languages, in: R.F. Paige, A. Hartman, A. Rensink (Eds.), Proceedings of ECMDA-FA 2009: 5th European Conference on Model-Driven Architecture Foundations and Applications, Vol. 5562 of Lecture Notes in Computer Science, Springer, 2009, pp. 2-17. http://dx.doi.org/10.1007/978-3-642-02674-4_2.
[21] E. Guerra, J. de Lara, F. Orejas, Pattern-based model-to-model transformation: handling attribute conditions, in: R.F. Paige (Ed.), Proceedings of ICMT 2009: 2nd International Conference on Model Transformation, Vol. 5563 of Lecture Notes in Computer Science, Springer, 2009, pp. 83-99. http://dx.doi.org/10.1007/978-3-642-02408-5_7.
[22] A. Habel, K.-H. Pennemann, Nested constraints and application conditions for high-level structures, in: H.-J. Kreowski, U. Montanari, F. Orejas, G. Rozenberg, G. Taentzer (Eds.), Formal Methods in Software and Systems Modeling (essays dedicated to Hartmut Ehrig, on the occasion of his 60th birthday), Vol. 3393 of Lecture Notes in Computer Science, Springer, 2005, pp. 293-308. http://dx.doi.org/10.1007/978-3-540-31847-7_17.
[23] Hesse, W., More matters on (meta-)modelling: remarks on Thomas Kühne’s “matters”, Softw. syst. model., 5, 4, 387-394, (2006), http://dx.doi.org/10.1007/s10270-006-0033-9
[24] Kleppe, A.G.; Warmer, J.; Bast, W., MDA explained: the model driven architecture: practice and promise, (2003), Addison-Wesley Longman Publishing Co. Inc. Boston, MA, USA
[25] Königs, A.; Schürr, A., Tool integration with triple graph grammars – a survey, Electron. notes theoret. comput. sci., 148, 1, 113-150, (2006), http://dx.doi.org/10.1016/j.entcs.2005.12.015
[26] Kühne, T., Matters of (meta-)modeling, Softw. syst. model., 5, 4, 369-385, (2006), http://dx.doi.org/10.1007/s10270-006-0017-9
[27] Kühne, T., Clarifying matters of (meta-) modeling: an author’s reply, Softw. syst. model., 5, 4, 395-401, (2006), http://dx.doi.org/10.1007/s10270-006-0034-8
[28] Lengyel, L.; Levendovszky, T.; Charaf, H., Constraint validation support in visual model transformation systems, Acta cybernet., 17, 2, 339-357, (2005) · Zbl 1101.68471
[29] Makkai, M., Generalized sketches as a framework for completeness theorems, J. pure appl. algebra, 115, 49-79, (1997), 179-212, 214-274. http://dx.doi.org/10.1016/S0022-4049(96)00007-2 · Zbl 0871.03045
[30] F. Mantz, Syntactic Quality Assurance Techniques for Software Models, Diploma thesis, Department of Mathematics and Informatics, Philipps University in Marburg, Germany, August, 2009.
[31] Marković, S.; Baar, T., Refactoring OCL annotated UML class diagrams, Softw. syst. model., 7, 1, 25-47, (2008), http://dx.doi.org/10.1007/s10270-007-0056-x
[32] Mens, T.; Gorp, P.V., A taxonomy of model transformation, Electron. notes theoret. comput. sci., 152, 125-142, (2006), http://dx.doi.org/10.1016/j.entcs.2005.10.021
[33] Object Management Group, MDA Guide, June, 2003. Available from: <http://www.omg.org/cgi-bin/doc?omg/03-06-01>.
[34] Object Management Group, Object Constraint Language Specification, May, 2006. Available from: <http://www.omg.org/cgi-bin/doc?formal/2006-05-01>.
[35] Object Management Group, Unified Modeling Language Specification, February, 2009. Available from: <http://www.omg.org/cgi-bin/doc?formal/2009-02-04>.
[36] Object Management Group. Available from: <http://www.omg.org>.
[37] Object Management Group, Meta-Object Facility Specification, January, 2006. Available from: <http://www.omg.org/cgi-bin/doc?formal/2006-01-01>.
[38] F. Orejas, E. Guerra, J. de Lara, H. Ehrig, Correctness, completeness and termination of pattern-based model-to-model transformation, in: A. Kurz, M. Lenisa, A. Tarlecki (Eds.), Proceedings of CALCO 2009: 3rd International Conference on Algebra and Coalgebra in Computer Science, Vol. 5728 of Lecture Notes in Computer Science, Springer, 2009, pp. 383-397. http://dx.doi.org/10.1007/978-3-642-03741-2_26. · Zbl 1239.68026
[39] Orejas, F.; Ehrig, H.; Prange, U., Reasoning with graph constraints, Formal aspects comput., 22, 3-4, 385-422, (2010), http://dx.doi.org/10.1007/s00165-009-0116-9 · Zbl 1209.68381
[40] A. Petter, A. Behring, M. Mühlhäuser, Solving constraints in model transformations, in: R. Paige (Ed.), Proceedings of ICMT 2009: 2nd International Conference on Model Transformation, Vol. 5563 of Lecture Notes in Computer Science, Springer, 2009, pp. 132-147. http://dx.doi.org/10.1007/978-3-642-02408-5_10.
[41] I. Poernomo, A type theoretic framework for formal metamodelling, in: International Seminar on Architecting Systems with Trustworthy Components, Vol. 3938 of Lecture Notes in Computer Science, Springer, 2006, pp. 262-298. http://dx.doi.org/10.1007/11786160_15.
[42] A. Rensink, Representing first-order logic using graphs, in: H. Ehrig, G. Engels, F. Parisi-Presicce, G. Rozenberg (Eds.), Proceedings of ICGT 2004: 2nd International Conference on Graph Transformations, Vol. 3256 of Lecture Notes in Computer Science, Springer, 2004, pp. 319-335. http://dx.doi.org/10.1007/978-3-540-30203-2_23. · Zbl 1116.03303
[43] Rossini, A.; Rutle, A.; Lamo, Y.; Wolter, U., A formalisation of the copy-modify-merge approach to version control in MDE, J. logic algebr. program., 79, 7, 636-658, (2010), http://dx.doi.org/10.1016/j.jlap.2009.10.003 · Zbl 1204.68075
[44] Rothenberg, J., The nature of modeling, (1989), The Rand Corporation Santa Monica
[45] A. Rutle, Diagram Predicate Framework: A Formal Approach to MDE, Ph.D. thesis, Department of Informatics, University of Bergen, Norway, 2010.
[46] A. Rutle, U. Wolter, Y. Lamo, A diagrammatic approach to model transformations, in: Proceedings of EATIS 2008: Euro American Conference on Telematics and Information Systems, ACM, 2008, pp. 1-8. http://dx.doi.org/10.1145/1621087.1621105.
[47] A. Rutle, A. Rossini, Y. Lamo, U. Wolter, A diagrammatic formalisation of MOF-dased modelling languages, in: M. Oriol, B. Meyer (Eds.), Proceedings of TOOLS 2009: 47th International Conference on Objects, Components, Models and Patterns, Vol. 33 of Lecture Notes in Business Information Processing, Springer, 2009, pp. 37-56. http://dx.doi.org/10.1007/978-3-642-02571-6_4.
[48] A. Rutle, A. Rossini, Y. Lamo, U. Wolter, A category-theoretical approach to the formalisation of version control in MDE, in: M. Chechik, M. Wirsing (Eds.), Proceedings of FASE 2009: 12th International Conference on Fundamental Approaches to Software Engineering, Vol. 5503 of Lecture Notes in Computer Science, Springer, 2009, pp. 64-78. doi:http://dx.doi.org/10.1007/978-3-642-00593-0_5. · Zbl 1204.68075
[49] A. Rutle, A. Rossini, Y. Lamo, U. Wolter, A formalisation of constraint-aware model transformations, in: D. Rosenblum, G. Taentzer (Eds.), Proceedings of FASE 2010: 13th International Conference on Fundamental Approaches to Software Engineering, Vol. 6013 of Lecture Notes in Computer Science, Springer, 2010, pp. 13-28. http://dx.doi.org/10.1007/978-3-642-12029-9_2. · Zbl 1204.68075
[50] Seidewitz, E., What models Mean, IEEE softw., 20, 5, 26-32, (2003), http://dx.doi.org/10.1109/MS.2003.1231147
[51] Sendall, S.; Kozaczynski, W., Model transformation: the heart and soul of model-driven software development, IEEE softw., 20, 5, 42-45, (2003)
[52] Taentzer, G.; Rensink, A., Ensuring structural constraints in graph-based models with typeinheritance, (), 64-79 · Zbl 1119.68365
[53] U. Wolter, Z. Diskin, From Indexed to Fibred Semantics - The Generalized Sketch File, Technical Report 361, Department of Informatics, University of Bergen, Norway, October, 2007.
[54] Z. Diskin, Databases as Diagram Algebras: Specifying Queries and Views Via the Graph-Based Logic of Sketches, Technical Report 9602, Frame Inform Systems/LDBD, Riga, Latvia, 1996.
[55] Z. Diskin, Encyclopedia of Database Technologies and Applications, Information Science Reference, 2005, pp. 351-366 (Ch. Mathematics of Generic Specifications for Model Management I and II).
[56] Diskin, Z., Visualization vs. specification in diagrammatic notations: A case study with the UML, (), 112-115 · Zbl 1049.68680
[57] Z. Diskin, B. Kadish, Encyclopedia of Database Technologies and Applications, Information Science Reference, 2005, pp. 258-265 (Ch. Generic Model Management).
[58] Diskin, Z.; Kadish, B., Variable set semantics for keyed generalized sketches: formal semantics for object identity and abstract syntax for conceptual modeling, Data & knowledge engineering., 47, 1, 1-59, (2003)
[59] Z. Diskin, B. Kadish, F. Piessens, M. Johnson, Universal Arrow Foundations for Visual Modeling, in: M. Anderson, P. Cheng, V. Haarslev (Eds.), Proceedings of Diagrams 2000: 1st International Conference on Diagrammatic Representation and Inference, Vol. 1889 of Lecture Notes in Computer Science, Springer, 2000, pp. 345-360. http://dx.doi.org/10.1007/3-540-44590-0_30. · Zbl 0973.68576
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. It attempts to reflect the references listed in the original paper as accurately as possible without claiming the completeness or perfect precision of the matching.