Software & Systems Modeling

, Volume 12, Issue 3, pp 619–639 | Cite as

Where does model-driven engineering help? Experiences from three industrial cases

  • Parastoo Mohagheghi
  • Wasif Gilani
  • Alin Stefanescu
  • Miguel A. Fernandez
  • Bjørn Nordmoen
  • Mathias Fritzsche
Regular Paper

Abstract

There have been few experience reports from industry on how Model-Driven Engineering (MDE) is applied and what the benefits are. This paper summarizes the experiences of three large industrial participants in a European research project with the objective of developing techniques and tools for applying MDE on the development of large and complex software systems. The participants had varying degrees of previous experience with MDE. They found MDE to be particularly useful for providing abstractions of complex systems at multiple levels or from different viewpoints, for the development of domain-specific models that facilitate communication with non-technical experts, for the purposes of simulation and testing, and for the consumption of models for analysis, such as performance-related decision support and system design improvements. From the industrial perspective, a methodology is considered to be useful and cost-efficient if it is possible to reuse solutions in multiple projects or products. However, developing reusable solutions required extra effort and sometimes had a negative impact on the performance of tools. While the companies identified several benefits of MDE, merging different tools with one another in a seamless development environment required several transformations, which increased the required implementation effort and complexity. Additionally, user-friendliness of tools and the provision of features for managing models of complex systems were identified as crucial for a wider industrial adoption of MDE.

Keywords

Model-driven engineering Domain-specific language Simulation Experience report Eclipse Complex systems 

Abbreviations

API

Application Programming Interface

BPM

Business Process Modelling

DSL

Domain-Specific Language

DSML

Domain-Specific Modelling Language

GUI

Graphical User Interface

MBT

Model-Based Testing

MDE

Model-Driven Engineering

MDPE

Model-Driven Performance Engineering

OMG

Object Management Group

SOA

Service-Oriented Architecture

UML

Unified Modeling Language

References

  1. 1.
    Brown, A.: An Introduction to Model Driven Architecture—Part I: MDA and today’s systems. The Rational Edge (2004)Google Scholar
  2. 2.
    Davis F.: Perceived usefulness, perceived ease of use, and user acceptance of information technology. MIS Q 13(3), 318–339 (1989)CrossRefGoogle Scholar
  3. 3.
    Evans, A., Fernández, M.A., Mohagheghi, P.: Experiences of developing a network modeling tool using the Eclipse environment. In: Proc. of ECMDA-FA’09. LNCS, vol. 5562, pp. 301–312. Springer, Berlin (2009)Google Scholar
  4. 4.
    Ferrari, A., Fantechi, A., Papini, M., Grasso, D.: An industrial application of formal model-based development: the Metro Rio ATP case. In: Proc. of 2nd Int. Workshop on Software Engineering for Resilient Systems (SERENE 2010). http://www.dsi.unifi.it/~fantechi/Collaborazionegets/pubblicazioni.html
  5. 5.
    France R.B., Ghosh S., Dinh-Trong T., Solberg A.: Model- driven development using UML 2.0: promises and pitfalls. IEEE Comput. 39(2), 59–66 (2006)CrossRefGoogle Scholar
  6. 6.
    Fritzsche, M., Gilani, W., Fritzsche, C., Spence, I.T.A., Kilpatrick, P., Brown, T.J.: Towards utilizing model-driven engineering of composite applications for business performance analysis. In: Proc. of ECMDA-FA’08. LNCS, vol. 5095, pp. 369–380. Springer, Berlin (2008)Google Scholar
  7. 7.
    Fritzsche, M., Picht, M., Gilani, W., Spence, I., Brown, J., Kilpatrick, P.: Extending BPM environments of your choice with performance related decision support. In: Proc. of Business Process Management (BPM’09). LNCS, vol. 5701, pp. 97–112. Springer, Berlin (2009)Google Scholar
  8. 8.
    Fritzsche, M., Gilani W., Lämmel R., Jouault, F.: Model transformation chains in model-driven performance engineering: experiences and future research needs. In: Proc. of Modellierung 2010. LNI, vol. 161, pp. 213–220. Springer, Berlin (2010)Google Scholar
  9. 9.
    Hästbacka, D., Vepsäläinen, T., Kuikka, S.: Model-driven development of industrial process control applications. J. Syst. Softw. (2011, accepted) doi:10.1016/j.jss.2011.01.63
  10. 10.
    Johannes, J., Fernández, M.A.: Adding abstraction and reuse to a network modelling tool using the Reuseware composition framework. In: Proc. of ECMFA’10. LNCS, vol. 6138, pp. 132–143. Springer, Berlin (2010)Google Scholar
  11. 11.
    Kirstan, S., Zimmermann, J.: Evaluating costs and benefits of model-based development of embedded software systems in the car industry—results of a qualitative case study. In: Proc. of 5th C2M:EEMDD Workshop at ECMFA’10, pp. 18–29 (2010)Google Scholar
  12. 12.
    Kelly S., Pohjonen R.: Worst practices for domain-specific modelling. IEEE Softw. 26(4), 22–29 (2009)CrossRefGoogle Scholar
  13. 13.
    Kätker, S., Patig, S.: Model-driven development of service-oriented business application systems. In: Business Services: Konzepte, Technologien, Anwendungen. Wirtschaftsinformatik, Band 1, pp. 171–180. Österreichische Computer Gesellschaft (2009)Google Scholar
  14. 14.
    Mohagheghi, P., Dehlen, V.: Where is the proof? A review of experiences from applying MDE in industry. In: Proc. of ECMDA-FA’08, LNCS, vol. 5095, pp. 432–443. Springer, Berlin (2008)Google Scholar
  15. 15.
    Mohagheghi, P.: An approach for empirical evaluation of model-driven engineering in multiple dimensions. In: Proc. of 5th C2M:EEMDD Workshop at ECMFA’10, pp. 6–17 (2010). http://www.esi.es/modelplex/c2m/papers.php
  16. 16.
    Schmidt, M., Polowinski, J., Johannes, J., Fernández, M.A.: An integrated facet-based library for arbitrary software components. In: Proc. of ECMFA’10, LNCS, vol. 6138, pp. 261–276. Springer, Berlin (2010)Google Scholar
  17. 17.
    Stefanescu, A., Wieczorek, S., Kirshin, A.: MBT4Chor: a model-based testing approach for service choreographies. In: Proc. of ECMDA-FA’09. LNCS, vol. 5562, pp. 313–324. Springer, Berlin (2009)Google Scholar
  18. 18.
    van Amstel, M., Lange, C., van den Brand M.: Metrics for analysing the quality of model transformations. In Proceedings of the 12th ECOOP Workshop on Quantitative Approaches on Object Oriented Software Engineering, pp. 41–51 (2008)Google Scholar
  19. 19.
    Wadler, P.: Deforestation: transforming programs to eliminate trees. In: Proc. of the 2nd European Symposium on Programming, pp. 231–248. North-Holland, Amsterdam (1988)Google Scholar

Copyright information

© Springer-Verlag 2011

Authors and Affiliations

  • Parastoo Mohagheghi
    • 1
  • Wasif Gilani
    • 2
  • Alin Stefanescu
    • 3
  • Miguel A. Fernandez
    • 4
  • Bjørn Nordmoen
    • 5
  • Mathias Fritzsche
    • 2
  1. 1.SINTEF, and Norwegian University of Science and TechnologyOsloNorway
  2. 2.SAP Research CenterBelfastUK
  3. 3.University of PitestiPitestiRomania
  4. 4.EricssonValladolidSpain
  5. 5.WesternGecoAskerNorway

Personalised recommendations