Seamless Model-Driven Development Put into Practice

  • Wolfgang Haberl
  • Markus Herrmannsdoerfer
  • Stefan Kugele
  • Michael Tautschnig
  • Martin Wechs
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6415)

Abstract

Model-driven development (MDD) today is the most promising approach to handle the complexity of software development for distributed embedded systems. Still, no single tool-chain exists that meets all needs of companies employing MDD. Moving back and forth between the tools in today’s iterative development processes thus requires manual integration steps, which are error-prone and hamper reuse and refinement of models. A possible workaround is developing adapters for each pair of tools. Despite its large overhead, industry started pursuing this approach because of a lack of better alternatives. A proper solution is a tool-chain building on an integrated modeling language. We have realized this in cooperation with BMW Research and Technology. To increase the degree of automation during development, the modeling language builds upon a core featuring a rigorous semantics. This enables automatic analysis, facilitating an automatic transition from model-based designs to a distributed system running on the target platform.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Schulz, S., Rozenblit, J.W., Buchenrieder, K.: Multilevel testing for design verification of embedded systems. IEEE Design & Test of Computers 19(2), 60–69 (2002)CrossRefGoogle Scholar
  2. 2.
    Broy, M.: Automotive software and systems engineering (panel). In: MEMOCODE, pp. 143–149 (2005)Google Scholar
  3. 3.
    Arthur, S., Breed, H.N., Schmitt-Luehmann, C.: Shifting car makeup shakes up OEM status quo: Software strength is critical. IBM White Paper (2003), http://www.ibm.com/services/in/igs/pdf/g510-1692-00-shifting-car-makeup-shakes-up-oem-status-quo.pdf (last access: 2009-07-13)
  4. 4.
    Broy, M., Feilkas, M., Herrmannsdoerfer, M., Merenda, S., Ratiu, D.: Seamless model-based development: From isolated tools to integrated model engineering environments. Proceedings of the IEEE 98(4), 526–545 (2010)CrossRefGoogle Scholar
  5. 5.
    Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented domain analysis (FODA) feasibility study. Technical report, Software Engineering Institute, Carnegie Mellon University (1990)Google Scholar
  6. 6.
    Halbwachs, N., Caspi, P., Raymond, P., Pilaud, D.: The synchronous data-flow programming language LUSTRE. Proceedings of the IEEE 79(9), 1305–1320 (1991)CrossRefGoogle Scholar
  7. 7.
    Pretschner, A., Broy, M., Krüger, I.H., Stauner, T.: Software engineering for automotive systems: A roadmap. In: FOSE, pp. 55–71 (2007)Google Scholar
  8. 8.
    Broy, M., Feilkas, M., Grünbauer, J., Gruler, A., Harhurin, A., Hartmann, J., Penzenstadler, B., Schätz, B., Wild, D.: Umfassendes Architekturmodell für das Engineering eingebetteter Software-intensiver Systeme. Technical Report TUM-I0816, Technische Universität München (2008)Google Scholar
  9. 9.
    Kugele, S., Tautschnig, M., Bauer, A., Schallhart, C., Merenda, S., Haberl, W., Kühnel, C., Müller, F., Wang, Z., Wild, D., Rittmann, S., Wechs, M.: COLA – The component language. Technical Report TUM-I0714, Technische Universität München (2007)Google Scholar
  10. 10.
    Rittmann, S.: A methodology for modeling usage behavior of multi-functional systems. PhD thesis, Technische Universität München (2008)Google Scholar
  11. 11.
    Kühnel, C., Bauer, A., Tautschnig, M.: Compatibility and reuse in component-based systems via type and unit inference. In: SEAA, pp. 101–108 (2007)Google Scholar
  12. 12.
    Bauer, A., Leucker, M., Streit, J.: SALT—structured assertion language for temporal logic. In: Liu, Z., He, J. (eds.) ICFEM 2006. Bauer, A., Leucker, M., Streit, J, vol. 4260, pp. 757–775. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  13. 13.
    Herrmannsdoerfer, M., Haberl, W., Baumgarten, U.: Model-level simulation for COLA. In: MISE, pp. 38–43 (2009)Google Scholar
  14. 14.
    Haberl, W., Tautschnig, M., Baumgarten, U.: From COLA Models to Distributed Embedded Systems Code. IAENG International Journal of Computer Science 35(3), 427–437 (2008)Google Scholar
  15. 15.
    Tretmans, J., Brinksma, E.: TorX: Automated model-based testing. In: First European Conference on Model-Driven Software Engineering (2003)Google Scholar
  16. 16.
    Haberl, W., Birke, J., Baumgarten, U.: A Middleware for Model-Based Embedded Systems. In: Halperin, D., Mehlhorn, K. (eds.) ESA 2008. LNCS, vol. 5193, pp. 253–259. Springer, Heidelberg (2008)Google Scholar
  17. 17.
    Wang, Z., Sanchez, A., Herkersdorf, A.: Scisim: a software performance estimation framework using source code instrumentation. In: WOSP, pp. 33–42 (2008)Google Scholar
  18. 18.
    Kugele, S., Haberl, W., Tautschnig, M., Wechs, M.: Optimizing automatic deployment using non-functional requirement annotations. In: ISoLA, pp. 400–414 (2008)Google Scholar
  19. 19.
    Kugele, S., Haberl, W.: Mapping Data-Flow Dependencies onto Distributed Embedded Systems. In: SERP, pp. 272–278 (2008)Google Scholar
  20. 20.
    Haberl, W., Kugele, S., Baumgarten, U.: Reliable operating modes for distributed embedded systems. In: MOMPES, pp. 11–21 (2009)Google Scholar
  21. 21.
    Herzner, W., Schlick, R., Schlager, M., Leiner, B., Huber, B., Balogh, A., Csertan, G., LeGuennec, A., LeSergent, T., Suri, N., Islam, S.: Model-based development of distributed embedded real-time systems with the decos tool-chain. In: SAE Aerotech (2007)Google Scholar
  22. 22.
    do Nascimento, F.A.M., Oliveira, M.F.S., Wagner, F.R.: Modes: Embedded systems design methodology and tools based on mde. In: MOMPES, pp. 67–76 (2007)Google Scholar
  23. 23.
    Object Management Group: Systems Modeling Language (SysML). OMG document: v1.1-08-11-01.pdf (2008)Google Scholar
  24. 24.
    Object Management Group: UML profile for modeling and analysis of real-time and embedded systems (marte), beta 2. OMG document: ptc/08-06-07 (2008)Google Scholar
  25. 25.
    Caspi, P., Curic, A., Maignan, A., Sofronis, C., Tripakis, S., Niebert, P.: From simulink to SCADE/lustre to TTA: a layered approach for distributed embedded applications. In: LCTES, pp. 153–162 (2003)Google Scholar
  26. 26.
    Kopetz, H.: Real-Time Systems: Design Principles for Distributed Embedded Applications. Kluwer, Dordrecht (1997)MATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Wolfgang Haberl
    • 1
  • Markus Herrmannsdoerfer
    • 1
  • Stefan Kugele
    • 1
  • Michael Tautschnig
    • 2
  • Martin Wechs
    • 3
  1. 1.Institut für InformatikTechnische Universität MünchenGarching b. MünchenGermany
  2. 2.Formal Methods in Systems Engineering, Faculty of InformaticsVienna University of TechnologyWienAustria
  3. 3.BMW Forschung und Technik GmbHMünchenGermany

Personalised recommendations