Abstract
Model management is essential for coping with the complexity introduced by the increasing number and varied nature of artifacts involved in model-driven engineering-based projects. Global model management (GMM) addresses this issue by enabling the representation of artifacts, particularly transformation composition and execution, within a model called a megamodel. Type information about artifacts can be used for preventing type errors during execution. Built on our previous work, in this paper we present the core elements of a type system for GMM that improves its original typing approach and enables both typechecking and type inference on artifacts within a megamodel. This type system is able to deal with non-trivial situations such as the use of higher order transformations. We also present a prototypical implementation of such a type system.
Similar content being viewed by others
References
AM3 Project. Internet: http://www.eclipse.org/gmt/am3/ (2009)
ATL Transformations Zoo. http://www.eclipse.org/m2m/atl/atlTransformations/, (2009)
Barbero, M., Jouault, F., Bézivin, J.: Model driven management of complex systems: implementing the macroscopes vision. In: 15th Annual IEEE International Conference and Workshop on Engineering of Computer Based Systems (ECBS 2008), 31 March–4 April 2008, Belfast, Northern Ireland, pp. 277–286. IEEE Computer Society (2008)
Bézivin, J., Büttner, F., Gogolla, M., Jouault, F., Kurtev, I., Lindow, A.: Model transformations? Transformation models! In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) Model Driven Engineering Languages and Systems, 9th International Conference, MoDELS 2006, Genova, Italy, October 1–6, 2006, Proceedings. Lecture Notes in Computer Science, vol. 4199, pp. 440–453. Springer, New York (2006)
Bézivin, J., Jouault, F., Rosenthal, P., Valduriez, P.: Modeling in the large and modeling in the small. In: Aßmann, U., Aksit, M., Rensink, A. (eds.) Model Driven Architecture, European MDA Workshops: Foundations and Applications, MDAFA 2003 and MDAFA 2004, Twente, The Netherlands, June 26–27, 2003 and Linköping, Sweden, June 10–11, 2004, Revised Selected Papers. Lecture Notes in Computer Science, vol. 3599, pp. 33–46. Springer, New York (2004)
Cardelli, L.: Typechecking dependent types and subtypes. In: Boscarol, M., Aiello, L.C., Levi, G. (eds.) Foundations of Logic and Functional Programming, Workshop, Trento, Italy, December 15–19, 1986, Proceedings. Lecture Notes in Computer Science, vol. 306, pp. 45–57. Springer, New York (1986)
Cardelli L: Type Systems. In: Tucker, A.B. (eds) The Computer Science and Engineering Handbook, pp. 2208–2236. CRC Press, Boca Raton (1997)
Czarnecki K., Helsen S.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3), 621–646 (2006)
Favre, J.-M.: Towards a basic theory to model model driven engineering. In: 3rd Workshop in Software Model Engineering, Lisbon, Portugal (2004)
Jouault F., Allilaire F., Bézivin J., Kurtev I.: ATL: a model transformation tool. Sci. Comput. Program. 72(1-2), 31–39 (2008)
Jouault, F., Bézivin, J.: KM3: a DSL for metamodel specification. In: Gorrieri, R., Wehrheim, H. (eds.) Formal Methods for Open Object-Based Distributed Systems, 8th IFIP WG 6.1 International Conference, FMOODS 2006, Bologna, Italy, June 14–16, 2006, Proceedings. Lecture Notes in Computer Science, vol. 4037, pp. 171–185. Springer, New York (2006)
Jouault F., Kurtev I.: Transforming models with ATL. In: Bruel, J.-M. (eds) MoDELS Satellite Events. Lecture Notes in Computer Science, vol. 3844, pp. 128–138. Springer, New York (2005)
Luo, Z.: An extended calculus of constructions. Ph.D. Thesis, University of Edinburgh (1990)
MacQueen, D.B.: Using dependent types to express modular structure. In: Thirteenth Annual ACM Symposium on Principles of Programming Languages, pp. 277–286. St. Petersburg Beach, Florida, January 1986
MODELPLEX IST-FP6 European Project: https://www.modelplex-ist.org/ (2009)
ModelPlex Project: Deliverable D2.13.b: Model Management Supporting Tool. https://www.modelplex.org//index.php?option=com_remository&Itemid=%0&func=startdown&id=183. March 2009
MoDisco: http://www.eclipse.org/MoDisco/ (2010)
Paulin-Mohring, C.: Le Système Coq. Thèse d’habilitation. ENS Lyon (1997)
Plotkin G.D.: Call-by-name, call-by-value and the λ-calculus. Theor. Comput. Sci. 1(2), 125–159 (1975)
Poernomo, I.: A type theoretic framework for formal metamodelling. In: Reussner R.H., Stafford J.A., Szyperski C.A. (eds.) Architecting Systems with Trustworthy Components, International Seminar, Dagstuhl Castle, Germany, December 12–17, 2004. Revised Selected Papers,. Lecture Notes in Computer Science, vol. 3938, pp. 262–298. Springer, New York (2006)
Rivera, J.E., Ruiz-González, D., López-Romero, F., Vallecillo, A.: Orchestrating ATL model transformations. In: Jouault, F. (ed.) 1st International Workshop on Model Transformation with ATL, MtATL 2009, pp. 34–46, Nantes, France, Proceedings, July 8–9, 2009
Steel J., Jézéquel J.-M.: On model typing. Softw. Syst. Model. 6(4), 401–413 (2007)
The Coq Proof Assistant Reference Manual: Version 8.2. http://coq.inria.fr/doc-eng.html (2009)
Vanhooff, B., Ayed, D., Baelen, S.V., Joosen W., Berbers, Y.: UniTI: a unified transformation infrastructure. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F.(eds.) Model Driven Engineering Languages and Systems, 10th International Conference, MoDELS 2007, Nashville, USA, September 30–October 5, 2007, Proceedings. Lecture Notes in Computer Science, vol. 4735, pp. 31–45. Springer, New York (2007)
Vignaga, A.: Typing textual entities and M2T/T2M transformations in a model management environment. In: Arenas, M., Bustos, B. (eds.) 2009 International Conference of the Chilean Computer Science Society, pp. 115–122. IEEE Computer Society (2009)
Vignaga, A., Bastarrica, M.C.: Verification of megamodel manipulations involving weaving models. Technical Report TR/DCC-2009-9. Universidad de Chile, Computer Science Department, October 2009
Vignaga, A., Jouault, F., Bastarrica, M.C., Brunelière, H.: Typing in model management. In: Paige, R.F. (ed.) Theory and Practice of Model Transformations. Proceedings of Second International Conference, ICMT 2009, Zurich, Switzerland, June 29–30, 2009. Lecture Notes in Computer Science, vol. 5563, pp. 197–212. Springer, New York (2009)
Werner, B.: Une Théorie des constructions inductives. Thèse de doctorat, Université Paris 7 (1994)
Willink E.D.: OMELET: exploiting meta-models as type systems. In: Akehurst, D.H. (eds) 2nd European Workshop on MDA, pp. 160–164. University of Kent, Canterbury (2004)
Wright A.K., Felleisen M.: A syntactic approach to type soundness. Inf. Comput. 115(1), 38–94 (1994)
Author information
Authors and Affiliations
Corresponding author
Additional information
Communicated by Jeff Gray and Richard Paige.
Rights and permissions
About this article
Cite this article
Vignaga, A., Jouault, F., Bastarrica, M.C. et al. Typing artifacts in megamodeling. Softw Syst Model 12, 105–119 (2013). https://doi.org/10.1007/s10270-011-0191-2
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10270-011-0191-2