Advertisement

From Modeling to Model-Based Programming

  • Gabor KarsaiEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11244)

Abstract

Modeling is a fundamental, analytical tool for engineering design. Programming is the synthesis (i.e. construction) of ‘machines’ that do something useful. Advances made during the past three decades showed how these activities are intertwined in systems development and cannot be separated. Arguably, the future of engineered systems shall encompass both, especially considering the design of cyber-physical systems where the computational is in continuous interaction with the physical. State-of-the-art industrial practice appears to focus on ‘model-based programming’ – programming with higher-level abstractions. In this paper we outline a broader picture for integrating modeling and programming, and what it means for engineering processes and engineering education.

Keywords

Model-driven development Systems engineering Software-intensive systems 

References

  1. 1.
    Völter, M., Stahl, T., Bettin, J., Haase, A., Helsen, S.: Model-Driven Software Development: Technology, Engineering, Management. Wiley, New York (2013)Google Scholar
  2. 2.
    Booch, G.: Object-Oriented Analysis and Design. Addison-Wesley, Reading (1980)Google Scholar
  3. 3.
    Chapman, W.: Engineering Modeling and Design. Routledge (2018)Google Scholar
  4. 4.
    Mathworks homepage. https://www.mathworks.com/. Accessed 20 July 2018
  5. 5.
    Rumbaugh, J., Booch, G., Jacobson, I.: The Unified Modeling Language Reference Manual. Addison Wesley, Boston (2017)Google Scholar
  6. 6.
    Evans, A., France, R., Lano, K., Rumpe, B.: Meta-modelling semantics of UML. In: Kilov, H., Rumpe, B., Simmonds, I. (eds.) Behavioral Specifications of Businesses and Systems, pp. 45–60. Springer, Boston (1999).  https://doi.org/10.1007/978-1-4615-5229-1_4CrossRefGoogle Scholar
  7. 7.
    Vidal, J., De Lamotte, F., Gogniat, G., Soulard, P., Diguet, J.-P.: A co-design approach for embedded system modeling and code generation with UML and MARTE. In: Proceedings of the Conference on Design, Automation and Test in Europe, pp. 226–231. European Design and Automation Association (2009)Google Scholar
  8. 8.
    Carloni, L.P., Passerone, R., Pinto, A., Sangiovanni-Vincentelli, A.L.: Languages and tools for hybrid systems design. Found. Trends® Electron. Des. Autom. 1(1–2), 1–193 (2006)CrossRefGoogle Scholar
  9. 9.
    Fritzson, P.: Principles of Object-Oriented Modeling and Simulation with Modelica 2.1. Wiley (2010)CrossRefGoogle Scholar
  10. 10.
    Selic, B.: A systematic approach to domain-specific language design using UML. In: 10th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing, ISORC 2007, pp. 2–9. IEEE (2007)Google Scholar
  11. 11.
    Gray, J., Fisher, K., Consel, C., Karsai, G., Mernik, M., Tolvanen, J.-P.: DSLs: the good, the bad, and the ugly. In: Companion to the 23rd ACM SIGPLAN Conference on Object-Oriented Programming Systems Languages and Applications, pp. 791–794. ACM (2008)Google Scholar
  12. 12.
    Eisele, S., Madari, I., Dubey, A., Karsai, G.: RIAPS: resilient information architecture platform for decentralized smart systems. In: 2017 IEEE 20th International Symposium on Real-Time Distributed Computing (ISORC), pp. 125–132. IEEE (2017)Google Scholar
  13. 13.
    Farhangi, H.: The path of the smart grid. IEEE Power Energy Mag. 8(1) (2010)MathSciNetCrossRefGoogle Scholar
  14. 14.
    Cython home page. http://cython.org/. Accessed 20 July 2018
  15. 15.
    Capnproto homepage. https://capnproto.org/. Accessed 20 July 2018
  16. 16.
    Protocol buffers homepage. https://developers.google.com/protocol-buffers/. Accessed 20 July 2018
  17. 17.
    Nedic, A., Olshevsky, A., Ozdaglar, A., Tsitsiklis, J.N.: On distributed averaging algorithms and quantization effects. IEEE Trans. Autom. Control 54(11), 2506–2517 (2009)MathSciNetCrossRefGoogle Scholar
  18. 18.
    Voelter, M., Benz, S., Dietrich, C., Engelmann, B., Helander, M., Kats, L.C.L., Visser, E., Wachsmuth, G.: DSL engineering: designing, implementing and using domain-specific languages (2013). http://dslbook.org
  19. 19.
    The GEMOC homepage. http://gemoc.org/. Accessed 20 July 2018
  20. 20.
    The WebGME homepage. https://webgme.org/. Accessed 20 July 2018

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  1. 1.Institute for Software-Integrated SystemsVanderbilt UniversityNashvilleUSA

Personalised recommendations