Abstract
Computational Thinking has advocated for a decade the importance of a kind of education that elicits and fosters the understanding of computational concepts that are deemed “natural”, thus widely learnable and adoptable, but not supported or at least not explicitly featured nor named in traditional education.
In this paper we argue that the most important aspect of this educational revolution is actually the “doing” part, in terms of creating a habit of designing the logic of any project or endeavour in terms of simple models. Simple models, especially if formally underpinned, analyzable, executable, and amenable to code generation for the orchestration of services, are the missing link between computational thoughts and the programming level.
Our approach is based on years of experience with middle and high school students, beginner students in Computer Science aged from 17 to over 50, and with students of other disciplines. They have been introduced successfully to CS or programming via constructing simple, yet executable models in the form of short courses, bootcamps, and semester-long courses in various locations and settings.
We are convinced that, unlike the widespread push towards coding, this approach is scalable. We also advocate its adequacy to provide the general public of professionals with the kind of familiarity with computational concepts and the level of confidence in practical making of applications and designs that can be a game changer for the societal diffusion of basic computing-related comprehension and design skills.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
These are 1 year courses that provide a title equivalent to the BSc. CSIS is running an HDip in Software Development and a HDip in Software Development and Data Analytics. They are approved on a yearly basis by the Irish Higher Education Authority according to the needs expressed by industry.
- 2.
Worldwide CDIO Initiative, http://www.cdio.org.
References
Chain reaction game website. https://brilliant.org/wiki/chain-reaction-game/
Chain reaction resources on the jabc website. https://hope.scce.info/chainreaction/
Bakera, M., Jörges, S., Margaria, T.: Test your strategy: graphical construction of strategies for connect-four. In: Proceedings of the 2009 14th IEEE International Conference on Engineering of Complex Computer Systems, pp. 172–181. ICECCS 2009. IEEE Computer Society, Washington, DC (2009). https://doi.org/10.1109/ICECCS.2009.51
Bakera, M., Margaria, T., Renner, C., Steffen, B.: Tool-supported enhancement of diagnosis in model-driven verification. Innov. Syst. Softw. Eng. 5, 211–228 (2009). https://doi.org/10.1007/s11334-009-0091-6
Bordihn, H., Lamprecht, A., Margaria, T.: Foundations of semantics and model checking in a software engineering course. In: Bollin, A., Margaria, T., Perseil, I. (eds.) Proceedings of the First Workshop on Formal Methods in Software Engineering Education and Training, FMSEE&T 2015, co-located with 20th International Symposium on Formal Methods (FM 2015), Oslo, Norway, 23 June 2015. CEUR Workshop Proceedings, vol. 1385, pp. 19–26. CEUR-WS.org (2015). http://ceur-ws.org/Vol-1385/paper4.pdf
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
Brullo, V.: Modellizzazione di processi per l’individuazione e il trattamento di disturbi specifici dell’apprendimento in bambini in età scolare e prescolare. Master thesis, Politecnico di Torino, Torino (Italy), July 2016
Cabot, J., Tisi, M.: The MDE Diploma: first international postgraduate specialization in model-driven engineering. Comput. Sci. Educ. 21(4), 389–402 (2011). https://doi.org/10.1080/08993408.2011.630131
Cioè, C.: Software Requirements for a Diabetic Retinopathy Centre. Master’s thesis, Politecnico di Torino, Torino, Italy (2016)
Gossen, F., Kühn, D., Margaria, T., Lamprecht, A.L.: Computational thinking: learning by doing with the cinco adventure game tool. In: 2018 IEEE 42nd Annual Computer Software and Applications Conference (COMPSAC), vol. 01, pp. 990–999. IEEE Computer Society (2018). ISSN 0730–3157
Graf, S.: Building correct Cyber-Physical Systems - can we improve current practice? In: Proceedings of 23rd International Conference on Formal Methods in Industrial Critical Systems (FMICS 2018). LNCS, vol. 11119 (2018)
International Telecommunication Union: CCITT Recommendation I.312 / Q.1201 - Principles of Intelligent Network Architecture, October 1992. https://www.itu.int/rec/T-REC-I.312-199210-I/en
International Telecommunication Union: ITU-T Recommendation Q.1211 - Introduction to Intelligent Network Capability Set 1, March 1993. https://www.itu.int/rec/T-REC-Q.1211-199303-I/en
Jonsson, B., Margaria, T., Naeser, G., Nyström, J., Steffen, B.: Incremental requirement specification for evolving systems. In: Calder, M., Magill, E.H. (eds.) Feature Interactions in Telecommunications and Software Systems VI (FIW 2000), pp. 145–162. IOS Press, May 2000
Jonsson, B., Margaria, T., Naeser, G., Nyström, J., Steffen, B.: Incremental requirement specification for evolving systems. Nord. J. Comput. 8, 65–87 (2001). http://dl.acm.org/citation.cfm?id=774194.774199
Jörges, S., Lamprecht, A.-L., Margaria, T., Naujokat, S., Steffen, B.: Synthesis from a practical perspective. In: Margaria, T., Steffen, B. (eds.) ISoLA 2016. LNCS, vol. 9952, pp. 282–302. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-47166-2_20
Karsai, G.: From modeling to model-based programming. In: Margaria, T., Steffen, B. (eds.) Proceedings of 8th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation. LNCS, vol. 11244, pp. 295–308 . Springer, Cham (2018)
Karusseit, M., Margaria, T.: Feature-based modelling of a complex, online-reconfigurable decision support service. Electron. Notes Theor. Comput. Sci. 157(2), 101–118 (2006). http://www.sciencedirect.com/science/article/pii/S1571066106002489
Kölling, M.: The greenfoot programming environment. Trans. Comput. Educ. 10(4), 14:1–14:21 (2010). http://doi.acm.org/10.1145/1868358.1868361
Koulouri, T., Lauria, S., Macredie, R.D.: Teaching introductory programming: a quantitative evaluation of different approaches. Trans. Comput. Educ. 14(4), 26:1–26:28 (2014). http://doi.acm.org/10.1145/2662412
Kühn, D., Neubauer, J.: Guided domain-specific tailoring of jABC4. In: Lamprecht, A.-L. (ed.) ISoLA 2012/2014. CCIS, vol. 683, pp. 113–127. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-51641-7_7
Lamprecht, A.-L., Margaria, T. (eds.): Process Design for Natural Scientists - An Agile Model-Driven Approach. CCIS, vol. 500. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-45006-2
Lamprecht, A.L., Margaria, T.: Scientific workflows with XMDD: a way to use process modeling in computational science education. Procedia Comput. Sci. 51(0), 1927–1936 (2015). http://www.sciencedirect.com/science/article/pii/S187705091501265X. 15th International Conference On Computational Science (ICCS 2015): Computational Science at the Gates of Nature
Lamprecht, A., Margaria, T., McInerney, C.: A summer computing camp using chainreaction and jABC. In: 40th IEEE Annual Computer Software and Applications Conference, COMPSAC Workshops 2016, Atlanta, GA, USA, 10–14 June 2016, pp. 275–280. IEEE Computer Society (2016). https://doi.org/10.1109/COMPSAC.2016.41
Lamprecht, A.L., Margaria, T., Neubauer, J.: On the use of XMDD in software development education. In: 39th Annual IEEE Computer Software and Applications Conference (COMPSAC 2015), vol. 2, pp. 835–844, July 2015
Lamprecht, A.-L., Margaria, T., Steffen, B.: Seven variations of an alignment workflow - an illustration of agile process design and management in Bio-jETI. In: Măndoiu, I., Sunderraman, R., Zelikovsky, A. (eds.) ISBRA 2008. LNCS, vol. 4983, pp. 445–456. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-79450-9_42
Lamprecht, A.L., Naujokat, S., Margaria, T., Steffen, B.: Synthesis-based loose programming. In: Proceedings of the 7th International Conference on the Quality of Information and Communications Technology (QUATIC 2010), Porto, Portugal, pp. 262–267. IEEE, September 2010
Lamprecht, A.L., Steffen, B., Margaria, T.: Scientific workflows with the jABC framework. Int. J. Softw. Tools Technol. Transf. 18(6), 629–651 (2016). https://doi.org/10.1007/s10009-016-0427-0
Lybecait, M., Kopetzki, D., Zweihoff, P., Naujokat, S., Steffen, B.: A tutorial introduction to graphical modeling and metamodeling with CINCO. In: Margaria, T., Steffen, B. (eds.) Proceedings of 8th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation. LNCS, vol. 11244, pp. 519–538. Springer, Cham (2018)
Maloney, J., Resnick, M., Rusk, N., Silverman, B., Eastmond, E.: The scratch programming language and environment. Trans. Comput. Educ. 10(4), 16:1–16:15 (2010). http://doi.acm.org/10.1145/1868358.1868363
Margaria, T.: Generative model driven design for agile system design and evolution: a tale of two worlds. In: Howar, F., Barnat, J. (eds.) FMICS 2018. LNCS, vol. 11119, pp. 3–18. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-00244-2_1
Margaria, T., Floyd, B.D., Gonzalez Camargo, R., Lamprecht, A.-L., Neubauer, J., Seelaender, M.: Simple management of high assurance data in long-lived interdisciplinary healthcare research: a proposal. In: Margaria, T., Steffen, B. (eds.) ISoLA 2014. LNCS, vol. 8803, pp. 526–544. Springer, Heidelberg (2014). https://doi.org/10.1007/978-3-662-45231-8_44
Margaria, T., Meyer, D., Kubczak, C., Isberner, M., Steffen, B.: Synthesizing semantic web service compositions with jMosel and Golog. In: Bernstein, A., Karger, D.R., Heath, T., Feigenbaum, L., Maynard, D., Motta, E., Thirunarayan, K. (eds.) ISWC 2009. LNCS, vol. 5823, pp. 392–407. Springer, Heidelberg (2009). https://doi.org/10.1007/978-3-642-04930-9_25
Margaria, T., Steffen, B.: Business process modelling in the jABC: the one-thing-approach. In: Cardoso, J., van der Aalst, W. (eds.) Handbook of Research on Business Process Modeling. IGI Global (2009)
Margaria, T., Steffen, B.: Continuous model-driven engineering. IEEE Comput. 42(10), 106–109 (2009)
Margaria, T., Steffen, B.: Service-orientation: conquering complexity with XMDD. In: Hinchey, M., Coyle, L. (eds.) Conquering Complexity, pp. 217–236. Springer, London (2012). https://doi.org/10.1007/978-1-4471-2297-5_10
Margaria, T., Steffen, B., Reitenspieß, M.: Service-oriented design: the roots. In: Benatallah, B., Casati, F., Traverso, P. (eds.) ICSOC 2005. LNCS, vol. 3826, pp. 450–464. Springer, Heidelberg (2005). https://doi.org/10.1007/11596141_34
McInerney, C., Lamprecht, A.-L., Margaria, T.: Computing camps for girls – a first-time experience at the University of Limerick. In: Tatnall, A., Webb, M. (eds.) WCCE 2017. IAICT, vol. 515, pp. 494–505. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-74310-3_50
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, 327–354 (2017)
Neubauer, J., Steffen, B., Margaria, T.: Higher-order process modeling: product-lining, variability modeling and beyond. Electron. Proc. Theor. Comput. Sci. 129, 259–283 (2013)
Paravati, G., Lamberti, F., Gatteschi, V.: Joint traditional and company-based organization of information systems and product development courses. In: 39th IEEE Annual Computer Software and Applications Conference, COMPSAC 2015, Taichung, Taiwan, 1–5 July 2015, vol. 2, pp. 858–867 (2015). https://doi.org/10.1109/COMPSAC.2015.83
Resnick, M., et al.: Scratch: programming for all. Commun. ACM 52(11), 60–67 (2009). http://doi.acm.org/10.1145/1592761.1592779
Starrett, C.: Teaching UML modeling before programming at the high school level. In: Seventh IEEE International Conference on Advanced Learning Technologies (ICALT 2007), pp. 713–714, July 2007
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)
Steffen, B., Margaria, T., Braun, V., Kalt, N.: Hierarchical service definition. Annu. Rev. Commun. ACM 51, 847–856 (1997)
Steffen, B., Margaria, T., Claßen, A.: Heterogeneous analysis and verification for distributed systems. Softw. Concepts Tools 17(1), 13–25 (1996)
Steffen, B., Margaria, T., Claßen, A., Braun, V.: Incremental formalization: a key to industrial success. Softw. Concepts Tools 17(2), 78–95 (1996)
Steffen, B., Margaria, T., Claßen, A., Braun, V., Reitenspieß, M.: An environment for the creation of intelligent network services. In: Intelligent Networks: IN/AIN Technologies, Operations, Services and Applications - A Comprehensive Report, pp. 287–300. IEC: International Engineering Consortium (1996)
Steffen, B., Margaria, T., Freitag, B.: Module Configuration by Minimal Model Construction. Technical report, Fakultät für Mathematik und Informatik, Universität Passau (1993)
Steve Boßelmann, S.N., Steffen, B.: On the difficulty of drawing the line. In: Margaria, T., Steffen, B. (eds.) Proceedings of 8th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation. LNCS, vol. 11244, pp. 340–356. Springer, Cham (2018)
Tekinerdogan, B.: Experiences in teaching a graduate course on model-driven software development. Comput. Sci. Educ. 21(4), 363–387 (2011). https://doi.org/10.1080/08993408.2011.630129
Utting, I., Cooper, S., Kölling, M., Maloney, J., Resnick, M.: Alice, greenfoot, and scratch - a discussion. Trans. Comput. Educ. 10(4), 17:1–17:11 (2010). http://doi.acm.org/10.1145/1868358.1868364
Voelter, M.: Fusing modeling and programming into language-oriented programming - our experiences with MPS. In: Margaria, T., Steffen, B. (eds.) Proceedings of 8th International Symposium on Leveraging Applications of Formal Methods, Verification and Validation. LNCS, vol. 11244, pp. 309–339. Springer, Cham (2018)
Wickert, A., Lamprecht, A., Margaria, T.: Domain-specific design of patient classification in cancer-related cachexia research. In: Gnesi, S., Plat, N., Spoletini, P., Pelliccione, P. (eds.) Proceedings of the 6th Conference on Formal Methods in Software Engineering, FormaliSE 2018, collocated with ICSE 2018, Gothenburg, Sweden, 2 June 2018, pp. 60–63. ACM (2018). http://doi.acm.org/10.1145/3193992.3194002
Wing, J.M.: Computational thinking. Commun. ACM 49(3), 33–35 (2006). http://doi.acm.org/10.1145/1118178.1118215
Wolber, D., Abelson, H., Spertus, E., Looney, L.: App Inventor 2: Create Your Own Android Apps. O’Reilly Media (2014). https://books.google.nl/books?id=YjcCBQAAQBAJ
Wolber, D.: App inventor and real-world motivation. In: Proceedings of the 42nd ACM Technical Symposium on Computer Science Education, pp. 601–606. SIGCSE 2011. ACM, New York (2011). http://doi.acm.org/10.1145/1953163.1953329
Zendler, A., Spannagel, C., Klaudt, D.: Process as content in computer science education: empirical determination of central processes. Comput. Sci. Educ. 18(4), 231–245 (2008). http://www.tandfonline.com/doi/abs/10.1080/08993400802390553
Acknowledgment
This work was supported, in part, by Science Foundation Ireland grants 13/RC/2094 and 16/RC/3918 and co-funded under the European Regional Development Fund through the Southern & Eastern Regional Operational Programme to Lero - the Irish Software Research Centre (www.lero.ie) and Confirm, the Centre for Smart Manufacturing (www.confirm.ie)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer Nature Switzerland AG
About this paper
Cite this paper
Margaria, T. (2018). From Computational Thinking to Constructive Design with Simple Models. 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_16
Download citation
DOI: https://doi.org/10.1007/978-3-030-03418-4_16
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)