An Industrial Case Study on the Choice Between Language Customization Mechanisms

  • Miroslaw Staron
  • Claes Wohlin
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4034)


Effective usage of a general purpose modeling language in software engineering poses a need for languagecustomization – adaptation of the language for a specific purpose. In the context of the Unified Modeling Language (UML) the customization could be done using two mechanisms: developing profiles and extending the metamodel of UML. This paper presents an industrial case study on the choice between metamodel extensions and profiles as well as the influence of the choice on the quality of products based on the extensions. The results consist of a set of nine prioritized industrial criteria which complement six theoretical criteria previously identified in the literature. The theoretical criteria are focused on the differences between the extension mechanisms of UML while the industrial criteria are focused on development of products based on these extensions. The case study reveals that there are considerable differences in effort required to develop comparable products using each mechanism and that the quality (measured as correctness of a product) is different for these comparable products by an order of magnitude.


Modeling Language Unify Modeling Language Object Management Group Language Extension Industrial Case Study 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Object Management Group: Unified Modeling Language Specification: Infrastructure version 2.0, Object Management Group (2003)Google Scholar
  2. 2.
    Miller, J., Mukerji, J.: MDA Guide, Object Management Group (2003)Google Scholar
  3. 3.
    Staron, M., Kuzniarz, L., Wallin, L.: A Case Study on Industrial MDA Realization - Determinants of Effectiveness. Nordic Journal of Computing 11, 254–278 (2004)Google Scholar
  4. 4.
    Evans, A., Maskeri, G., Sammut, P., Willians, J.S.: Building Families of Languages for Model-Driven System Dev. In: Workshop in Sw. Model Eng., San Francisco, CA (2003)Google Scholar
  5. 5.
    Centre for Reliable Software Technology: Coral Modeling Framework, CREST (2004)Google Scholar
  6. 6.
    Kleppe, A.G., Warmer, J.B., Bast, W.: MDA explained: the model driven architecture: practice and promise. Addison-Wesley, Boston (2003)Google Scholar
  7. 7.
    Mellor, S.J.: Make models be assets. Communications of the ACM 45, 76–78 (2002)CrossRefGoogle Scholar
  8. 8.
    De Miguel, M., Jourdan, J., Salicki, S.: Practical Experiences in the Application of MDA. In: Stevens, P., Whittle, J., Booch, G. (eds.) The 6th Int. Conf. on UML, vol. 2460, pp. 128–139. Springer, Heidelberg (2002)Google Scholar
  9. 9.
    Greenfield, J., Short, K.: Software factories: assembling applications with patterns, models, frameworks, and tools. Wiley, Indianapolis (2004)Google Scholar
  10. 10.
    Clark, T., Evans, A., Sammut, P., Willans, J.: Applied Metamodeling - A Foundation for Language Driven Development, Xactium (2004)Google Scholar
  11. 11.
    Schleicher, A., Westfechtel, B.: Beyond stereotyping: metamodeling approaches for the UML. In: Hawaii Int. Conf. on System Sc., pp. 10–17. IEEE Comp. Soc., Maui (2001)Google Scholar
  12. 12.
    Berner, S., Glinz, M., Joos, S.: A classification of stereotypes for object-oriented modeling languages. In: France, R.B., Rumpe, B. (eds.) UML 1999. LNCS, vol. 1723, pp. 249–264. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  13. 13.
    Atkinson, C., Kühne, T.: Profiles in a strict metamodeling framework. Science of Comp. Programming 44, 5–22 (2002)MATHCrossRefGoogle Scholar
  14. 14.
    Martella, R.C., Nelson, R., Marchand-Martella, N.E.: Research methods: learning to become a critical research consumer. Allyn & Bacon, Boston (1999)Google Scholar
  15. 15.
    Fenton, N.E., Pfleeger, S.L.: Software metrics: a rigorous and practical approach. International Thomson Computer Press, London (1996)Google Scholar
  16. 16.
    Leffingwell, D., Widrig, D.: Managing software requirements: a unified approach. Addison-Wesley, Reading (2000)Google Scholar
  17. 17.
    Alanen, M., Porres, I.: The Coral Modeling Framework. In: Koskimies, K., Kuzniarz, L., Lilius, J., Porres, I. (eds.) 2nd Nordic Workshop on UML, Turku, pp. 93–98 (2004)Google Scholar
  18. 18.
    Staron, M., Kuzniarz, L., Wallin, L.: Factors Determining Effective Realization of MDA in Industry. In: Koskimies, K., Kuzniarz, L., Lilius, J., Porres, I. (eds.) 2nd Nordic Workshop on UML, Turku, Finland, pp. 79–91 (2004)Google Scholar
  19. 19.
    IEEE: Standard glossary of sw. eng. terminology, Std 610.12-1990, New York, 84 (1990) Google Scholar
  20. 20.
    Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., Wesslèn, A.: Experimentation in Sw. Eng.: An Introduction. Kluwer, Boston (2000)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Miroslaw Staron
    • 1
    • 2
  • Claes Wohlin
    • 1
  1. 1.Department of Systems and Software Engineering, School of EngineeringBlekinge Institute of Technology 
  2. 2.Department of Applied ITIT University in Gothenburg 

Personalised recommendations