Adelson, B., & Soloway, E. (1985). The role of domain expenence in software design. IEEE Transactions on Software Engineering, 11, 1351–1360.
Adelson, B., & Soloway, E. (1986). A model of software design. International Journal of Intelligent Systems, 1(3), 195–213.
Azevedo, R., Cromley, J. G., Moos, D. C., Greene, J. A., & Winters, F. I. (2011). Adaptive content and process scaffolding: A key to facilitating students’ self-regulated learning with hypermedia. Psychological Test and Assessment Modeling, 53(1), 106.
Baker, A., Navarro, E. O., & Van Der Hoek, A. (2005). An experimental card game for teaching software engineering processes. Journal of Systems and Software, 75(1–2), 3–16.
Baxter, L. A. (1991). Content analysis. Studying Interpersonal Interaction, 239, 254.
Begel, A., & Simon, B. (2008). Novice software developers, all over again. In Proceedings of the fourth international workshop on computing education research (pp. 3–14). ACM.
Begel, A., & Simon, B. (2008). Struggles of new college graduates in their first software development job. In ACM SIGCSE Bulletin (Vol. 40, pp. 226–230). ACM.
Braun, V., & Clarke, V. (2006). Using thematic analysis in psychology. Qualitative Research in Psychology, 3(2), 77–101. https://doi.org/10.1191/1478088706qp063oa.
Brechner, E. (2003). Things they would not teach me of in college: What microsoft developers learn later. In Companion of the 18th annual ACM SIGPLAN conference on object-oriented programming, systems, languages, and applications (pp. 134–136). ACM.
Buckley, B. C., Gobert, J. D., Horwitz, P., & O’Dwyer, L. M. (2010). Looking inside the black box: Assessing model-based learning and inquiry in biologica™. International Journal of Learning Technology, 5(2), 166–190.
Burgueño, L., Vallecillo, A., & Gogolla, M. (2018). Teaching UML and OCL models and their validation to software engineering students: An experience report. Computer Science Education, 28(1), 23–41.
Chase, J. D., Uppuluri, P., Lewis, T., Barland, I., & Pittges, J. (2015). Integrating live projects into computing curriculum. In Proceedings of the 46th ACM technical symposium on computer science education (pp. 82–83). ACM.
Ciccozzi, F., Famelis, M., Kappel, G., Lambers, L., Mosser, S., Paige, R. F., Pierantonio, A., Rensink, A., Salay, R., Taentzer, G., et al. (2018). How do we teach modelling and model-driven engineering? A survey. In Proceedings of the 21st ACM/IEEE international conference on model driven engineering languages and systems: Companion proceedings (pp. 122–129).
Clement, J. (2000). Model based learning as a key research area for science education. International Journal of Science Education, 22(9), 1041–1053.
Dagenais, B., Ossher, H., Bellamy, R. K., Robillard, M. P., & De Vries, J. P. (2010). Moving into a new software project landscape. In Proceedings of the 32nd ACM/IEEE international conference on software engineering (Vol. 1, pp. 275–284). ACM.
Dym, C. L., Agogino, A. M., Eris, O., Frey, D. D., & Leifer, L. J. (2005). Engineering design thinking, teaching, and learning. Journal of Engineering Education, 94(1), 103–120.
Fitzgerald, S., Simon, B., & Thomas, L. (2005). Strategies that students use to trace code: An analysis based in grounded theory. In Proceedings of the first international workshop on computing education research (pp. 69–80). ACM.
Fretz, E. B., Wu, H.-K., Zhang, B., Davis, E. A., Krajcik, J. S., & Soloway, E. (2002). An investigation of software scaffolds supporting modeling practices. Research in Science Education, 32(4), 567–589.
Ge, X., & Land, S. (2004). A conceptual framework for scaffolding ill-structured problem-solving processes using question prompts and peer interactions. Educational Research Technology and Development, 52(2), 1042–1629.
Guindon, R. (1990). Knowledge exploited by experts during software system design. International Journal of Man–Machine Studies, 33(3), 279–304.
Hestenes, D. (2010). Modeling theory for math and science education. In Modeling students’ mathematical modeling competencies (pp. 13–41). Springer.
Hestenes, D. (1987). Toward a modeling theory of physics instruction. American Journal of Physics, 55(5), 440–454.
Hestenes, D. (1992). Modeling games in the Newtonian world. American Journal of Physics, 60(8), 732–748.
Hohmann, L., Guzdial, M., & Soloway, E. (1992). SODA: A computer-aided design environment for the doing and learning of software design. In International conference on computer assisted learning (pp. 307–319). Springer.
Hu, C. (2013). The nature of software design and its teaching: An exposition. ACM Inroads, 4(2), 62–72.
Hungerford, B. C., Hevner, A. R., & Collins, R. W. (2004). Reviewing software diagrams: A cognitive study. IEEE Transactions on Software Engineering, 30(2), 82–96.
Jaramillo, C. M. Z. (2014). Teaching software development by means of a classroom game: The software development game. Developments in Business Simulation and Experiential Learning, 36.
Kim, J., Hahn, J., & Hahn, H. (2000). How do we understand a system with (so) many diagrams? Cognitive integration processes in diagrammatic reasoning. Information Systems Research, 11(3), 284–303.
Kopainsky, B., & Alessi, S. M. (2015). Effects of structural transparency in system dynamics simulators on performance and understanding. Systems, 3(4), 152–176.
Kopainsky, B., Alessi, S. M., Pedercini, M., & Davidsen, P. I. (2015). Effect of prior exploration as an instructional strategy for system dynamics. Simulation & Gaming, 46(3–4), 293–321.
Lindland, O. I., Sindre, G., & Solvberg, A. (1994). Understanding quality in conceptual modeling. IEEE Software, 11(2), 42–49.
Mc Neill, T., Gero, J. S., & Warren, J. (1998). Understanding conceptual electronic design using protocol analysis. Research in Engineering Design, 10(3), 129–140.
Montazemi, A. R., & Conrath, D. W. (1986). The use of cognitive mapping for information requirements analysis. MIS Quarterly, 10, 45–46.
Mulder, Y. G., Bollen, L., de Jong, T., & Lazonder, A. W. (2016). Scaffolding learning by modelling: The effects of partially worked-out models. Journal of Research in Science Teaching, 53(3), 502–523.
Mulder, Y. G., Lazonder, A. W., & de Jong, T. (2011). Comparing two types of model progression in an inquiry learning environment with modelling facilities. Learning and Instruction, 21(5), 614–624.
Nelson, M., & Piattini, M. (2012). A systematic literature review on the quality of UML models. In Innovations in database design, web applications, and information systems management (pp. 310–334).
Papaevripidou, M., & Zacharia, Z. C. (2015). Examining how students’ knowledge of the subject domain affects their process of modeling in a computer programming environment. Journal of Computers in Education, 2(3), 251–282.
Prasad, P., & Iyer, S. (2020a). How do graduating students evaluate software design diagrams? In Proceedings of the 2020 ACM conference on international computing education research (pp. 282–290).
Prasad, P., & Iyer, S. (2020b). Verisim: A learning environment for comprehending class and sequence diagrams using design tracing. In 2020 IEEE/ACM 42nd International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET) (pp. 23–33). IEEE.
Quintana, H., & Grados, B. (2020). Applying pair programming practice in the improvement of software design skills, in an undergraduate course. In Proceedings of the 2020 ACM conference on innovation and technology in computer science education (pp. 543–544).
Reddy, D., Alse, K., TG, L., Prasad, P., & Iyer, S. (2021). Learning environments for fostering disciplinary practices in CS undergraduates. In Proceedings of the 52nd ACM technical symposium on computer science education (pp. 1287–1287).
Rumbaugh, J., Jacobson, I., & Booch, G. (2004). Unified modeling language reference manual. The Pearson Higher Education.
Schumacher, R. M., & Czerwinski, M. P. (1992). Mental models and the acquisition of expert knowledge. In The psychology of expertise (pp. 61–79). Springer.
Sien, V. Y. (2011). An investigation of difficulties experienced by students developing unified modelling language (UML) class and sequence diagrams. Computer Science Education, 21(4), 317–342.
Sorva, J. (2013). Notional machines and introductory programming education. ACM Transactions on Computing Education (TOCE), 13(2), 8.
Stikkolorum, D. R., & Chaudron, M. R. (2016). A workshop for integrating UML modelling and agile development in the classroom. In Proceedings of the computer science education research conference (pp. 4–11). ACM.
Tang, A., Aleti, A., Burge, J., & van Vliet, H. (2010). What makes software design effective? Design Studies, 31(6), 614–640.
Travassos, G., Shull, F., Fredericks, M., & Basili, V. R. (1999). Detecting defects in object-oriented designs: Using reading techniques to increase software quality. In ACM sigplan notices (Vol. 34, pp. 47–56). ACM.
Westphal, B. (2019). Teaching software modelling in an undergraduate introduction to software engineering. In ACM/IEEE 22nd International conference on model driven engineering languages and systems companion (MODELS-C) (pp. 690–69). IEEE.
White, B. Y., & Frederiksen, J. R. (1990). Causal model progressions as a foundation for intelligent learning environments. Artificial Intelligence, 42(1), 99–157.
Whittle, J., Bull, C., Lee, J., & Kotonya, G. (2014). Teaching in a software design studio: Implications for modeling education.
Wijnen, F. M., Mulder, Y. G., Alessi, S. M., & Bollen, L. (2015). The potential of learning from erroneous models: Comparing three types of model instruction. System Dynamics Review, 31(4), 250–270.
Winn, W. (1994). Contributions of perceptual and cognitive processes to the comprehension of graphics. In Advances in Psychology (Vol. 108, pp. 3–27). Elsevier.
Zannier, C., Chiasson, M., & Maurer, F. (2007). A model of design decision making based on empirical results of interviews with software designers. Information and Software Technology, 49(6), 637–653.