{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,6,5]],"date-time":"2025-06-05T04:07:09Z","timestamp":1749096429285,"version":"3.41.0"},"reference-count":22,"publisher":"Springer Science and Business Media LLC","issue":"3","license":[{"start":{"date-parts":[[2025,2,25]],"date-time":"2025-02-25T00:00:00Z","timestamp":1740441600000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"},{"start":{"date-parts":[[2025,2,25]],"date-time":"2025-02-25T00:00:00Z","timestamp":1740441600000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0"}],"funder":[{"DOI":"10.13039\/501100007837","name":"Universit\u00e4t Bremen","doi-asserted-by":"crossref","id":[{"id":"10.13039\/501100007837","id-type":"DOI","asserted-by":"crossref"}]}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":["Softw Syst Model"],"published-print":{"date-parts":[[2025,6]]},"abstract":"<jats:title>Abstract<\/jats:title>\n          <jats:p>Logical puzzles can be important factors for the development of rational analysis and application capabilities for pupils and students. Therefore, logical puzzles can also take a prominent supporting role in computer science education. This contribution proposes a UML class model with accompanying OCL constraints for developing logical puzzles. The class model acts as a metamodel for the description of the basic puzzle organization and the logical clues presented to the learners. The constraints express, for example, statements about uniqueness of solutions, and the degree of puzzle complexity may be tuned by appropriate model elements. Given a puzzle specification which simply comprises the domain elements of the puzzle plus constraints, our implementation uses a UML and OCL solver to construct a puzzle instance (i.e., a set of clues and solutions) automatically. The puzzle is made playable by a graphical user interface. We have validated this approach for developing puzzles by building several puzzles from the literature of increasing complexity and performed a student survey.<\/jats:p>","DOI":"10.1007\/s10270-025-01272-7","type":"journal-article","created":{"date-parts":[[2025,2,25]],"date-time":"2025-02-25T06:32:19Z","timestamp":1740465139000},"page":"865-889","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":0,"title":["Developing configurations and solutions for logical puzzles with UML and OCL"],"prefix":"10.1007","volume":"24","author":[{"given":"Martin","family":"Gogolla","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jes\u00fas","family":"S\u00e1nchez\u00a0Cuadrado","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2025,2,25]]},"reference":[{"issue":"5","key":"1272_CR1","doi-asserted-by":"publisher","first-page":"36","DOI":"10.1109\/MS.2003.1231149","volume":"20","author":"C Atkinson","year":"2003","unstructured":"Atkinson, C., Kuhne, T.: Model-driven development: a metamodeling foundation. IEEE Softw. 20(5), 36\u201341 (2003)","journal-title":"IEEE Softw."},{"key":"1272_CR2","doi-asserted-by":"crossref","unstructured":"Bell, T., Rosamond, F., Casey, N.: Computer science unplugged and related projects in math and computer science popularization. The multivariate algorithmic revolution and beyond: Essays dedicated to Michael R. Fellows on the occasion of his 60th Birthday pp. 398\u2013456 (2012)","DOI":"10.1007\/978-3-642-30891-8_18"},{"key":"1272_CR3","doi-asserted-by":"crossref","unstructured":"Butler, E., Torlak, E., Popovi\u0107, Z.: Synthesizing interpretable strategies for solving puzzle games. In: Proceedings of the 12th International Conference on the Foundations of Digital Games, pp. 1\u201310 (2017)","DOI":"10.1145\/3102071.3102084"},{"key":"1272_CR4","doi-asserted-by":"crossref","unstructured":"Cabot, J., Gogolla, M.: Object Constraint Language (OCL): A definitive guide. In: M.\u00a0Bernardo, V.\u00a0Cortellessa, A.\u00a0Pierantonio (eds.) Proc. 12th Int. School Formal Methods for the Design of Computer, Communication and Software Systems: Model-Driven Engineering, pp. 58\u201390. Springer, Berlin, LNCS\u00a07320 (2012)","DOI":"10.1007\/978-3-642-30982-3_3"},{"issue":"2","key":"1272_CR5","doi-asserted-by":"publisher","first-page":"10","DOI":"10.5381\/jot.2020.19.2.a10","volume":"19","author":"JS Cuadrado","year":"2020","unstructured":"Cuadrado, J.S., Gogolla, M.: Model finding in the EMF ecosystem. J. Object Technol. 19(2), 10\u20131 (2020)","journal-title":"J. Object Technol."},{"key":"1272_CR6","doi-asserted-by":"publisher","unstructured":"Deitrick, E.: Graphical parsons puzzle creator: Sharing the full power of 2d parsons problems through a graphical, open-source online tool. In: \u00a0Sherriff M., Merkle L.D., Cutter P.A., Monge A.E.,\u00a0Sheard J.(eds.) SIGCSE \u201921: The 52nd ACM Technical Symposium on Computer Science Education, Virtual Event, USA, March 13-20, 2021, p. 1379. ACM (2021). https:\/\/doi.org\/10.1145\/3408877.3439548","DOI":"10.1145\/3408877.3439548"},{"issue":"1","key":"1272_CR7","doi-asserted-by":"publisher","first-page":"183","DOI":"10.5485\/TMCS.2012.0303","volume":"10","author":"N Falkner","year":"2012","unstructured":"Falkner, N., Sooriamurthi, R., Michalewicz, Z.: Teaching puzzle-based learning: development of basic concepts. Teach. Math. Comput. Sci. 10(1), 183\u2013204 (2012)","journal-title":"Teach. Math. Comput. Sci."},{"key":"1272_CR8","doi-asserted-by":"publisher","first-page":"27","DOI":"10.1016\/j.scico.2007.01.013","volume":"69","author":"M Gogolla","year":"2007","unstructured":"Gogolla, M., B\u00fcttner, F., Richters, M.: USE: a UML-based specification environment for validating UML and OCL. J. Sci. Comput. Program. 69, 27\u201334 (2007)","journal-title":"J. Sci. Comput. Program."},{"key":"1272_CR9","doi-asserted-by":"publisher","first-page":"474","DOI":"10.1016\/J.CL.2017.10.001","volume":"54","author":"M Gogolla","year":"2018","unstructured":"Gogolla, M., Hilken, F., Doan, K.: Achieving model quality through model validation, verification and exploration. Comput. Lang. Syst. Struct. 54, 474\u2013511 (2018). https:\/\/doi.org\/10.1016\/J.CL.2017.10.001","journal-title":"Comput. Lang. Syst. Struct."},{"key":"1272_CR10","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-030-62547-4","volume-title":"Modelling Puzzles in First Order Logic","author":"A Groza","year":"2021","unstructured":"Groza, A.: Modelling Puzzles in First Order Logic. Springer Nature, Cham, Switzerland (2021)"},{"key":"1272_CR11","doi-asserted-by":"crossref","unstructured":"Groza, A., Baltatescu, M.M., Pomarlan, M.: Minefol: A game for learning first order logic. In: 2020 IEEE 16th International Conference on Intelligent Computer Communication and Processing (ICCP), pp. 153\u2013160. IEEE (2020)","DOI":"10.1109\/ICCP51029.2020.9266174"},{"key":"1272_CR12","unstructured":"Groza, A., Nitu, C.: Natural language understanding for logical games. arXiv preprint arXiv:2110.00558 (2021)"},{"key":"1272_CR13","doi-asserted-by":"crossref","unstructured":"K\u00e4stner, A., Gogolla, M., Doan, K.H., Desai, N.: Sketching a Model-Based Technique for Integrated Design and Run Time Description. In: Proc. STAF 2018 Workshops, Workshop Model-Driven Engineering for Design-Runtime Interaction in Complex Systems\u00a0(DeRun 2018), p. 529\u2013535 (2018)","DOI":"10.1007\/978-3-030-04771-9_39"},{"key":"1272_CR14","doi-asserted-by":"publisher","unstructured":"Kumar, A.N.: Epplets: A tool for solving parsons puzzles. In: \u00a0Barnes T., Garcia D.D., Hawthorne E.K., P\u00e9rez-Qui\u00f1ones M.A. (eds.) Proceedings of the 49th ACM Technical Symposium on Computer Science Education, SIGCSE 2018, Baltimore, MD, USA, February 21-24, 2018, pp. 527\u2013532. ACM (2018). https:\/\/doi.org\/10.1145\/3159450.3159576","DOI":"10.1145\/3159450.3159576"},{"issue":"2","key":"1272_CR15","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/2685615","volume":"24","author":"JD Lara","year":"2014","unstructured":"Lara, J.D., Guerra, E., Cuadrado, J.S.: When and how to use multilevel modelling. ACM Transact. Softw. Eng. Methodol. (TOSEM) 24(2), 1\u201346 (2014)","journal-title":"ACM Transact. Softw. Eng. Methodol. (TOSEM)"},{"key":"1272_CR16","doi-asserted-by":"publisher","unstructured":"Liu, T., Gonzalez-Maldonado, D., Harlow, D.B., Edwards, E.E., Franklin, D.: Qupcakery: A puzzle game that introduces quantum gates to young learners. In:\u00a0Doyle M.,\u00a0Stephenson B.,\u00a0Dorn B.,\u00a0Soh L.,\u00a0Battestilli L. (eds.) Proceedings of the 54th ACM Technical Symposium on Computer Science Education, Volume 1, SIGCSE 2023, Toronto, ON, Canada, March 15-18, 2023, pp. 1143\u20131149. ACM (2023). https:\/\/doi.org\/10.1145\/3545945.3569837","DOI":"10.1145\/3545945.3569837"},{"key":"1272_CR17","unstructured":"Meyer, E.F., Falkner, N., Sooriamurthi, R., Michalewicz, Z.: Guide to teaching puzzle-based learning. Springer (2014)"},{"issue":"5","key":"1272_CR18","doi-asserted-by":"publisher","first-page":"750","DOI":"10.1016\/j.cag.2007.08.006","volume":"31","author":"EG Ort\u00edz-Garc\u00eda","year":"2007","unstructured":"Ort\u00edz-Garc\u00eda, E.G., Salcedo-Sanz, S., Leiva-Murillo, J.M., P\u00e9rez-Bellido, \u00c1.M., Portilla-Figueras, J.A.: Automated generation and visualization of picture-logic puzzles. Comput. Gra. 31(5), 750\u2013760 (2007)","journal-title":"Comput. Gra."},{"issue":"3.4","key":"1272_CR19","doi-asserted-by":"publisher","first-page":"782","DOI":"10.1147\/sj.393.0782","volume":"39","author":"J Orwant","year":"2000","unstructured":"Orwant, J.: EGGG: automated programming for game generation. IBM Syst. J. 39(3.4), 782\u2013794 (2000)","journal-title":"IBM Syst. J."},{"key":"1272_CR20","volume-title":"Games for your mind: the history and future of logic puzzles","author":"J Rosenhouse","year":"2022","unstructured":"Rosenhouse, J.: Games for your mind: the history and future of logic puzzles. Princeton University Press, New Jersey (2022)"},{"key":"1272_CR21","unstructured":"Rumbaugh, J., Jacobson, I., Booch, G.: The Unified Modeling Language Reference Manual. Addison-Wesley, 2nd Edition (2004)"},{"key":"1272_CR22","unstructured":"Warmer, J., Kleppe, A.: The Object Constraint Language: Getting Your Models Ready for MDA. Addison-Wesley, 2nd Edition (2004)"}],"container-title":["Software and Systems Modeling"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10270-025-01272-7.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1007\/s10270-025-01272-7\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/s10270-025-01272-7.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,4]],"date-time":"2025-06-04T06:27:55Z","timestamp":1749018475000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/s10270-025-01272-7"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,2,25]]},"references-count":22,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2025,6]]}},"alternative-id":["1272"],"URL":"https:\/\/doi.org\/10.1007\/s10270-025-01272-7","relation":{},"ISSN":["1619-1366","1619-1374"],"issn-type":[{"type":"print","value":"1619-1366"},{"type":"electronic","value":"1619-1374"}],"subject":[],"published":{"date-parts":[[2025,2,25]]},"assertion":[{"value":"20 March 2024","order":1,"name":"received","label":"Received","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"20 January 2025","order":2,"name":"revised","label":"Revised","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"23 January 2025","order":3,"name":"accepted","label":"Accepted","group":{"name":"ArticleHistory","label":"Article History"}},{"value":"25 February 2025","order":4,"name":"first_online","label":"First Online","group":{"name":"ArticleHistory","label":"Article History"}}]}}