Skip to main content

On the Difficulty of Drawing the Line

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 11244))

Abstract

The paper considers domain-specific tool support as a means to turn descriptive into prescriptive models, and to blur the difference between models and programs, and even between developers and users. Conceptual underlying key is to view the system development as a decision process which increasingly constraints the range of possible system implementations and Domain-Specific Languages (DSLs) as a means to freeze taken decisions on the way towards a concrete realization. This way naturally comprises both programming and modeling aspects. In fact, considering all interactions that influence the behaviour of the system as development turns GUIs into DSLs and makes it even hardly possible to draw the line between developers and users. We will illustrate this viewpoint in the light of the development of the Equinocs system, Springer’s new editorial service.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    In the hardware domain, synthesizing circuits from logical descriptions is actually standard since many decades! [11].

  2. 2.

    here to be understood as descriptive models, as any form of description can be interpreted that way.

  3. 3.

    For a car configurator, (descriptive) images of a car, are often used to support the adequate selection (prescription).

  4. 4.

    Please understand ‘operational’ as ‘lives up to its purpose in a corresponding realization’.

  5. 5.

    Traditional correctness-by-construction methods fit in here as well. In fact, there is no clear conceptual difference between this DSL-‘enactment’ and a compiler. Only the level of application is different.

  6. 6.

    The next version of Springers Online Conference Service.

  7. 7.

    In [19] we introduced the term mindset-specific IDE, and the acronym mIDE to indicate that DSLs are more than just means for purpose-specific simplification. New mindsets are powerful means to reach ‘out of the (traditional) box’.

  8. 8.

    DIME comprises currently four graphical DSLs.

  9. 9.

    This requirement may remind of the situation of frameworks that have to explicitly deal with round-trip engineering, a problem that is overcome by frameworks following a full (code) generation policy.

  10. 10.

    As Equinocs is a Web application, here we assume that a suitable Web editor for the GUI DSL exists to be easily integrated.

References

  1. Boßelmann, S., et al.: DIME: a programming-less modeling environment for web applications. In: Margaria, T., Steffen, B. (eds.) ISoLA 2016. LNCS, vol. 9953, pp. 809–832. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-47169-3_60

    Chapter  Google Scholar 

  2. Boßelmann, S., Neubauer, J., Naujokat, S., Steffen, B.: Model-driven design of secure high assurance systems: an introduction to the open platform from the user perspective. In: Margaria, T., Solo, M.G.A. (eds.) The 2016 International Conference on Security and Management (SAM 2016). Special Track “End-to-end Security and Cybersecurity: From the Hardware to Application”, pp. 145–151. CREA Press (2016)

    Google Scholar 

  3. Broy, M., Havelund, K., Kumar, R.: Towards a unified view of modeling and programming. In: Margaria, T., Steffen, B. (eds.) ISoLA 2016. LNCS, vol. 9953, pp. 238–257. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-47169-3_17

    Chapter  Google Scholar 

  4. Chatley, R., Donaldson, A., Mycroft, A.: The next 7000 programming languages. In: Steffen, B., Woeginger, G. (eds.) Computing and Software Science: State of the Art and Perspectives, LNCS, vol. 10000. Springer (2018, to appear)

    Google Scholar 

  5. Dmitriev, S.: Language Oriented Programming: The Next Programming Paradigm. JetBrains onBoard Online Magazine 1 (2004). http://www.onboard.jetbrains.com/is1/articles/04/10/lop/

  6. Felleisen, M. et al.: A programmable programming language. Commun. ACM 61(3), 62–71 (2018)

    Google Scholar 

  7. Fowler, M.: Language Workbenches: The Killer-App for Domain Specific Languages?, June 2005. http://martinfowler.com/articles/languageWorkbench.html. Accessed 10 Apr 2018

  8. Fowler, M., Parsons, R.: Domain-Specific Languages. Addison-Wesley/ACM Press, New York (2011)

    Google Scholar 

  9. Gossen, F., Margaria, T., Murtovi, A., Naujokat, S., Steffen, B.: DSLs for decision services: a tutorial introduction to language-driven engineering. In: Margaria, T., Steffen, B. (eds.) ISoLA 2018, LNCS 11244, pp. 546–564. Springer, Cham (2018)

    Google Scholar 

  10. Gronback, R.C.: Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit. Addison-Wesley, Boston (2008)

    Google Scholar 

  11. Hachtel, G.D., Somenzi, F.: Logic Synthesis and Verification Algorithms, 1st edn. Springer, Boston (1996). https://doi.org/10.1007/0-387-31005-3

    Book  MATH  Google Scholar 

  12. JetBrains: Meta Programming System. https://www.jetbrains.com/mps/. Accessed 10 Apr 2018

  13. Kiczales, G., et al.: Aspect-oriented programming. In: Akşit, M., Matsuoka, S. (eds.) ECOOP 1997. LNCS, vol. 1241, pp. 220–242. Springer, Heidelberg (1997). https://doi.org/10.1007/BFb0053381

    Chapter  Google Scholar 

  14. Lybecait, M., Kopetzki, D., Zweihoff, P., Fuhge, A., Naujokat, S., Steffen, B.: A tutorial introduction to graphical modeling and metamodeling with cinco. In: Margaria, T., Steffen, B. (eds.) ISoLA 2018, LNCS 11244, pp. 519–538. Springer, Cham (2018)

    Google Scholar 

  15. Margaria, T.: From computational thinking to constructive design with simple models. In: Margaria, T., Steffen, B. (eds.) ISoLA 2018, LNCS 11244, pp. 261–278. Springer, Cham (2018)

    Google Scholar 

  16. Mernik, M., Heering, J., Sloane, A.M.: When and how to develop domain-specific languages. ACM Comput. Surv. 37(4), 316–344 (2005)

    Article  Google Scholar 

  17. Naujokat, S., Lybecait, M., Kopetzki, D., Steffen, B.: CINCO: a simplicity-driven approach to full generation of domain-specific graphical modeling tools. Softw. Tools Technol. Transf. 20(3), 327–354 (2017)

    Article  Google Scholar 

  18. Naujokat, S., Neubauer, J., Margaria, T., Steffen, B.: Meta-level reuse for mastering domain specialization. In: Margaria, T., Steffen, B. (eds.) ISoLA 2016. LNCS, vol. 9953, pp. 218–237. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-47169-3_16

    Chapter  Google Scholar 

  19. Steffen, B., Gossen, F., Naujokat, S., Margaria, T.: Language-driven engineering: from general-purpose to purpose-specific languages. In: Steffen, B., Woeginger, G. (eds.) Computing and Software Science: State of the Art and Perspectives, LNCS, vol. 10000. Springer (2018, to appear)

    Google Scholar 

  20. Steffen, B., Margaria, T.: METAFrame in practice: design of intelligent network services. In: Olderog, E.-R., Steffen, B. (eds.) Correct System Design. LNCS, vol. 1710, pp. 390–415. Springer, Heidelberg (1999). https://doi.org/10.1007/3-540-48092-7_17

    Chapter  Google Scholar 

  21. Steffen, B., Naujokat, S.: Archimedean points: the essence for mastering change. LNCS Trans. Found. Mastering Chang. (FoMaC) 1(1), 22–46 (2016)

    Article  Google Scholar 

  22. Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework, 2nd edn. Addison-Wesley, Boston (2008)

    Google Scholar 

  23. Voelter, M.: Fusing modeling and programming into language-oriented programming. In: Margaria, T., Steffen, B. (eds.) ISoLA 2018, LNCS 11244, pp. 309–339. Springer, Cham (2018)

    Google Scholar 

  24. Ward, M.P.: Language oriented programming. Softw. Concepts Tools 15(4), 147–161 (1994)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Stefan Naujokat .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2018 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Boßelmann, S., Naujokat, S., Steffen, B. (2018). On the Difficulty of Drawing the Line. In: Margaria, T., Steffen, B. (eds) Leveraging Applications of Formal Methods, Verification and Validation. Modeling. ISoLA 2018. Lecture Notes in Computer Science(), vol 11244. Springer, Cham. https://doi.org/10.1007/978-3-030-03418-4_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-03418-4_20

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-03417-7

  • Online ISBN: 978-3-030-03418-4

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics