Skip to main content
Log in

Typing artifacts in megamodeling

  • Special Section Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. AM3 Project. Internet: http://www.eclipse.org/gmt/am3/ (2009)

  2. ATL Transformations Zoo. http://www.eclipse.org/m2m/atl/atlTransformations/, (2009)

  3. 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)

  4. 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)

  5. 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)

  6. 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)

  7. Cardelli L: Type Systems. In: Tucker, A.B. (eds) The Computer Science and Engineering Handbook, pp. 2208–2236. CRC Press, Boca Raton (1997)

    Google Scholar 

  8. Czarnecki K., Helsen S.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3), 621–646 (2006)

    Article  Google Scholar 

  9. Favre, J.-M.: Towards a basic theory to model model driven engineering. In: 3rd Workshop in Software Model Engineering, Lisbon, Portugal (2004)

  10. Jouault F., Allilaire F., Bézivin J., Kurtev I.: ATL: a model transformation tool. Sci. Comput. Program. 72(1-2), 31–39 (2008)

    Article  MATH  Google Scholar 

  11. 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)

  12. 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)

    Google Scholar 

  13. Luo, Z.: An extended calculus of constructions. Ph.D. Thesis, University of Edinburgh (1990)

  14. 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

  15. MODELPLEX IST-FP6 European Project: https://www.modelplex-ist.org/ (2009)

  16. 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

  17. MoDisco: http://www.eclipse.org/MoDisco/ (2010)

  18. Paulin-Mohring, C.: Le Système Coq. Thèse d’habilitation. ENS Lyon (1997)

  19. Plotkin G.D.: Call-by-name, call-by-value and the λ-calculus. Theor. Comput. Sci. 1(2), 125–159 (1975)

    Article  MathSciNet  MATH  Google Scholar 

  20. 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)

  21. 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

  22. Steel J., Jézéquel J.-M.: On model typing. Softw. Syst. Model. 6(4), 401–413 (2007)

    Article  Google Scholar 

  23. The Coq Proof Assistant Reference Manual: Version 8.2. http://coq.inria.fr/doc-eng.html (2009)

  24. 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)

  25. 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)

  26. 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

  27. 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)

  28. Werner, B.: Une Théorie des constructions inductives. Thèse de doctorat, Université Paris 7 (1994)

  29. 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)

    Google Scholar 

  30. Wright A.K., Felleisen M.: A syntactic approach to type soundness. Inf. Comput. 115(1), 38–94 (1994)

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Andrés Vignaga.

Additional information

Communicated by Jeff Gray and Richard Paige.

Rights and permissions

Reprints 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

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-011-0191-2

Keywords

Navigation