Advertisement

Design Languages: A Necessary New Generation of Computer Languages

  • Bran SelićEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11244)

Abstract

With the increased demand for so-called “smart” systems, which are required to interact with the physical world in ever more complex ways, we are witnessing a corresponding growth in the complexity of the software that is at the core of such systems. Keeping pace with this rise in complexity is proving to be a challenge for current mainstream programming technologies, whose origins are typically rooted in increasingly outdated computing paradigms that can be traced to some of the earliest applications of computers (e.g., solving numerical problems). This paper first examines some of the salient shortcomings of current mainstream programming technologies; shortcomings that render them unsuitable for addressing modern software applications. This is followed by a discussion of emerging and necessary trends in computer language development, which point to a brand new generation of languages, called design languages. The primary technical requirements for these new languages are identified, and certain pragmatic and socio-economic issues associated with their introduction into industrial practice are reviewed. The paper concludes with a high-level summary of crucial research topics required to realize the full potential of these languages.

Keywords

Domain-specific languages Programming languages Modeling languages 

Notes

Acknowledgement

The author would like to thank Dr. Manfred Broy for helpful suggestions on how the text could be improved.

References

  1. 1.
    Dijkstra, E.: My recollections of operating system design, E.W. Dijkstra Archive at the University of Texas (2001). https://www.cs.utexas.edu/users/EWD/ewd13xx/EWD1303.PDF
  2. 2.
    Dijkstra, E., Why American Computing Science seems incurable, E.W. Dijkstra Archive at the University of Texas (1995). https://www.cs.utexas.edu/users/EWD/ewd12xx/EWD1209.PDF
  3. 3.
    Lee, E.A.: Embedded software. In: Zelkowitz, M. (ed.) Advances in Computers, vol. 56. Elsevier Science (2002)Google Scholar
  4. 4.
    Brooks, F.: No silver bullet – essence and accident in software engineering. IEEE Comput. 20(4), 91–94 (1987)Google Scholar
  5. 5.
    Lee, L.: The Day the Phones Stopped, Plume (1992)Google Scholar
  6. 6.
    McConnell, S.: Code Complete: A Practical Handbook of Software Construction, 2nd edn. Microsoft Press (2004)Google Scholar
  7. 7.
    Harel, D.: Statecharts: a visual formalism for complex systems. Sci. Comput. Program. 8(3), 231–274 (1987)MathSciNetCrossRefGoogle Scholar
  8. 8.
    Weigert, T., Weil, F.: Practical experience in using model-driven engineering to develop trustworthy systems. In: Proceedings of IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing (SUTC 2006), pp. 208–217. IEEE Computer Society (2006)Google Scholar
  9. 9.
    Corcoran, D.: The good, the bad and the ugly: experiences with model driven development in large scale projects at Ericsson. In: Kühne, T., Selic, B., Gervais, M.-P., Terrier, F. (eds.) ECMFA 2010. LNCS, vol. 6138, p. 2. Springer, Heidelberg (2010).  https://doi.org/10.1007/978-3-642-13595-8_2CrossRefGoogle Scholar
  10. 10.
    Hutchinson, J., Rouncefield, M., Whittle, J.: Model-driven engineering practices in industry. In: Taylor, R., et al. (eds.) Proceedings of the 33rd International Conference on Software Engineering (ICSE 2011), pp. 633–642. Association for Computing Machinery (ACM) (2011)Google Scholar
  11. 11.
    Moody, D., van Hillegersberg, J.: Evaluating the visual syntax of uml: an analysis of the cognitive effectiveness of the uml family of diagrams. In: Gašević, D., Lämmel, R., Van Wyk, E. (eds.) SLE 2008. LNCS, vol. 5452, pp. 16–34. Springer, Heidelberg (2009).  https://doi.org/10.1007/978-3-642-00434-6_3CrossRefGoogle Scholar
  12. 12.
    Object Management Group (OMG): Semantics of an Executable Subset for Executable UML Models, OMG document formal/17-07-02, OMG (2017)Google Scholar
  13. 13.
    International Telecommunications Union (ITU): Z.101: Specification and Description Language – Basic SDL-2010, ITU Recommendation Z.101, ITU (2010)Google Scholar
  14. 14.
    SAE International, Architecture Analysis and Design Language (AADL): Specification AS5506B (2012). https://www.sae.org/standards/content/as5506b/
  15. 15.
    Mathworks, Inc., Simulink (2018). https://www.mathworks.com/products/simulink.html
  16. 16.
    Object Management Group (OMG), UML Profile for MARTE, OMG document formal/11-06-02 (2011). https://www.omg.org/spec/MARTE/1.1/PDF
  17. 17.
    Selic, B.: What will it take? a view on adoption of model-based methods in practice. J. Syst. Model. 11(4), 513–526 (2012)CrossRefGoogle Scholar
  18. 18.
    LNCS Homepage. http://www.springer.com/lncs. Accessed 21 Nov 2016

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  1. 1.Malina Software Corp.NepeanCanada

Personalised recommendations