An Automated Process for Implementing Multilevel Domain Models

  • Frédéric Mallet
  • François Lagarde
  • Charles André
  • Sébastien Gérard
  • François Terrier
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5969)


Building a UML profile is tedious and error-prone. There is no precise methodology to guide the process. Best practices recommend gathering concepts in a technology-independent domain view before implementation. Still, the adequacy of the implementation should be verified. This paper proposes to transform automatically a domain model into a profile-based implementation. To reduce accidental complexity in the domain model and fully benefit from advanced profiling features in the generated profile, our process relies on the multilevel paradigm. The value of this paradigm for the definition of uml profiles is assessed and applied to a subset of the marte time model.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    OMG: Unified Modeling Language, superstructure. OMG document formal/2007- 02-03, Object Management Group (February 2007)Google Scholar
  2. 2.
    Weilkiens, T.: Systems Engineering with SysML/UML: Modeling, Analysis, Design. The MK/OMG Press, Burlington (2008)Google Scholar
  3. 3.
    INCOSE: Systems Modeling Language (SysML) Specification 1.1. Object Management Group. OMG document number: ptc/08-05-17 (May 2008)Google Scholar
  4. 4.
    Atkinson, C., Kühne, T.: The Essence of Multilevel Metamodeling. In: Gogolla, M., Kobryn, C. (eds.) UML 2001. LNCS, vol. 2185, pp. 19–33. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  5. 5.
    Atkinson, C., Kühne, T.: Reducing accidental complexity in domain models. Software and System Modeling 7(3), 345–359 (2008)CrossRefGoogle Scholar
  6. 6.
    Borning, A.: Classes versus prototypes in object-oriented languages. In: Proc. Of the Fall Joint Computer Conference, pp. 36–40. IEEE Computer Society, Los Alamitos (1986)Google Scholar
  7. 7.
    Lieberman, H.: Using prototypical objects to implement shared behavior in objectoriented systems. In: OOPLSA 1986: Conference proceedings on Object-oriented programming systems, languages and applications, pp. 214–223. ACM, New York (1986)CrossRefGoogle Scholar
  8. 8.
    LaLonde, W.R., Thomas, D.A., Pugh, J.R.: An exemplar based smalltalk. In: OOPSLA, pp. 322–330 (1986)Google Scholar
  9. 9.
    Kühne, T., Schreiber, D.: Can programming be liberated from the two-level style? _ Multi-level programming with DeepJava. In: OOPSLA 2007: Proc. of the 22nd annual ACM SIGPLAN conf. on Object oriented programming systems and applications, pp. 229–244. ACM, New York (2007)CrossRefGoogle Scholar
  10. 10.
    Asikainen, T., Männistö, T.: Nivel: a metamodelling language with a formal semantics. Software and System Modeling 8(4), 521–549 (2009)CrossRefGoogle Scholar
  11. 11.
    OMG: UML Profile for MARTE, v1.0. Object Management Group. Document number: formal/2009-11-02 (November 2009) Google Scholar
  12. 12.
    Henderson-Sellers, B., Gonzalez-Perez, C.: Connecting powertypes and stereotypes. Journal of Object Technology 4(7), 83–96 (2005)Google Scholar
  13. 13.
    André, C., Mallet, F., de Simone, R.: Modeling time(s). In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 559–573. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  14. 14.
    Thomas, F., Delatour, J., Terrier, F., Gérard, S.: Towards a framework for explicit platform-based transformations. In: 11th IEEE Int. Symp. on Object-Oriented Real-Time Distributed Computing (ISORC 2008), pp. 211–218. IEEE Computer Society, Los Alamitos (2008)CrossRefGoogle Scholar
  15. 15.
    Johnson, R., Woolf, B.: Type Object, vol. 3, pp. 47–65. Addison-Wesley, Reading (1997)Google Scholar
  16. 16.
    Coad, P.: Object-oriented patterns. Communications of the ACM 35(9), 152–159 (1992)CrossRefGoogle Scholar
  17. 17.
    Odell, J.: Power Types. SIGS Reference Library, ch. 3, vol. 12. Cambridge University Press, Cambridge (1998)Google Scholar
  18. 18.
    Brooks, F.P.: No silver bullet essence and accidents of software engineering. Computer 20(4), 10–19 (1987)CrossRefMathSciNetGoogle Scholar
  19. 19.
    Lagarde, F., Mallet, F., André, C., Gérard, S., Terrier, F.: Multilevel modeling paradigm in profile definition. Research Report RR-6525, INRIA (April 2008)Google Scholar
  20. 20.
    Fuentes-Fernández, L., Vallecillo-Moreno, A.: An Introduction to UML Profiles. UML and Model Engineering V(2) (April 2004)Google Scholar
  21. 21.
    Selic, B.: A systematic approach to domain-specific language design using UML. In: 10th IEEE Int. Symp. on Object-Oriented Real-Time Distributed Computing (ISORC 2007), pp. 2–9. IEEE Computer Society, Los Alamitos (2007)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Frédéric Mallet
    • 1
  • François Lagarde
    • 2
  • Charles André
    • 1
  • Sébastien Gérard
    • 3
  • François Terrier
    • 3
  1. 1.Université de Nice Sophia Antipolis, INRIA Sophia Antipolis MéditerranéeSophia AntipolisFrance
  2. 2.SAGEM R&DMASSY cedexFrance
  3. 3.CEA LIST, Laboratoire d’Ingénierie dirigée par les modèles pour les Systèmes EmbarquèsGif-sur-YvetteFrance

Personalised recommendations