Abstract
Currently, computing education, especially programming education has become more important. Meanwhile, programming education has many difficulties such as should learn many concepts and skills. Researches of Intelligent Tutoring System (ITSs) have been attempted to reduce these difficulties. ITSs are educational systems that able to adaptively pedagogical behavior and feedback and aim to supply adaptive tutoring to learner’s profiles by alternate to human tutors. Despite there are much supports to programming education by ITSs, there no attempts for organizing knowledge in programming. Organizing knowledge is acquiring the systematized knowledge and its scalability which enabling to existing knowledge reuse to the same or similar problems that solved once by scaling knowledge. We considered that organizing knowledge is fosters problem-solving skills, and it gains Computational Thinking eventually. Therefore, we have been focused on supporting the process of solving problems by combining a bit of program. Then we selected the knowledge of “function” and “source program that achieves the function” as knowledge to be organized. And, we defined a pair of knowledge as a component. In this paper, we proposed and developed Compogram: an ITS for organizing knowledge by visualizing behavior in programming. Furthermore, for identifying learning gains, we conducted an evaluation compared to our conventional systems. Results were suggested that Compogram was fostering knowledge organizing skills that can apply to out of learning ranges.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsReferences
Adelson, B.: Problem solving and the development of abstract categories in programming languages. Mem. Cogn. 9(4), 422–433 (1981). https://doi.org/10.3758/BF03197568
Chase, W.G., Simon, H.A.: Perception in chess. Cogn. Psychol. 4(1), 55–81 (1973)
Crow, T., Luxton-Reilly, A., Wuensche, B.: Intelligent tutoring systems for programming education: a systematic review. In: ACM International Conference Proceeding Series, pp. 53–62. ACM (2018). https://doi.org/10.1145/3160489.3160492
De Kleer, J., Brown, J.S.: A qualitative physics based on confluences. Artif. Intell. 24(1–3), 7–83 (1984). https://doi.org/10.1016/0004-3702(84)90037-7
Gero, J.S., Kannengiesser, U.: A function-behavior-structure ontology of processes. Artif. Intell. Eng. Des. Anal. Manuf. 21(4), 379–391 (2007). https://doi.org/10.1017/S0890060407000340
Goel, A.K., Rugaber, S., Vattam, S.: Structure, behavior, and function of complex systems: the structure, behavior, and function modeling language. Artif. Intell. Eng. Des. Anal. Manuf. 23(1), 23–35 (2009). https://doi.org/10.1017/S0890060409000080
Gomes, A., Mendes, A.J.N.: Learning to program-difficulties and solutions. In: International Conference on Engineering Education, pp. 1–5 (2007), http://ineer.org/Events/ICEE2007/papers/411.pdf
Hu, M., Winikoff, M., Cranefield, S.: A process for novice programming using goals and plans. In: Proceedings of the Fifteenth Australasian Computing Education Conference, pp. 3–12 (2013)
Kitamura, Y., Mizoguchi, R.: Ontology-based systematization of functional knowledge. J. Eng. Des. 15(4), 327–351 (2004). https://doi.org/10.1080/09544820410001697163
Koike, K., Tomoto, T., Hirashima, T.: Proposal of a stepwise support for structural understanding in programming. In: ICCE 2017–25th International Conference on Computers in Education, Workshop Proceedings, pp. 471–481, December 2017
Koike, K., Tomoto, T., Horiguchi, T., Hirashima, T.: Proposal of the expandable modular statements method for structural understanding of programming, and development and evaluation of a learning support system. Trans. Japn. Soc. Inf. Syst. Educ. 36(3), 190–202 (2019). https://doi.org/10.14926/jsise.36.190. in Japanese
Koike, K., Tomoto, T., Horiguchi, T., Hirashima, T.: Supporting knowledge organization for reuse in programming: proposal of a system based on function-behavior-structure models. In: ICCE 2019–27th International Conference on Computers in Education, Workshop Proceedings, vol. 2, pp. 388–398, December 2019
Kruchten, P.: Casting software design in the function-behavior-structure framework. IEEE Softw. 22(2), 52–58 (2005). https://doi.org/10.1109/MS.2005.33
Lahtinen, E., Ala-Mutka, K., Järvinen, H.M.: A study of the difficulties of novice programmers. In: Proceedings of the 10th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education, ITiCSE 2005, pp. 14–18. Association for Computing Machinery, New York (2005). https://doi.org/10.1145/1067445.1067453
Lopez, M., Whalley, J., Robbins, P., Lister, R.: Relationships between reading, tracing and writing skills in introductory programming. In: Proceedings of the Fourth International Workshop on Computing Education Research, pp. 101–112 (2008)
Luxton-Reilly, A., et al.: Introductory programming: a systematic literature review. In: Proceedings Companion of the 23rd Annual ACM Conference on Innovation and Technology in Computer Science Education, ITiCSE 2018 Companion, pp. 55–106. Association for Computing Machinery, New York (2018). https://doi.org/10.1145/3293881.3295779
Milne, I., Rowe, G.: Difficulties in learning and teaching programming - views of students and tutors. Educ. Inf. Technol. 7(1), 55–66 (2002). https://doi.org/10.1023/A:1015362608943
Nwana, H.S.: Intelligent tutoring systems: an overview. Artif. Intell. Rev. 4(4), 251–277 (1990)
Robins, A., Rountree, J., Rountree, N.: Learning and teaching programming: a review and discussion. Int. J. Phytorem. 21(1), 137–172 (2003). https://doi.org/10.1076/csed.13.2.137.14200
Selby, C.C.: Relationships: computational thinking, pedagogy of programming, and Bloom’s Taxonomy. In: Proceedings of the Workshop in Primary and Secondary Computing Education, pp. 80–87 (2015)
Shneiderman, B.: Software psychology. Winthrop, Cambridge, Mass 48, 161–172 (1980)
Wenger, E.: Artificial intelligence and tutoring systems: computational and cognitive approaches to the communication of knowledge (1987)
Wing, J.M.: Computational thinking. Commun. ACM 49(3), 33–35 (2006)
Acknowledgement
This work was supported by JSPS KAKENHI Grant Numbers JP18K11586, JP19H04227, and JP17H01839.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Koike, K., Mogi, T., Tomoto, T., Horiguchi, T., Hirashima, T. (2020). Compogram: Development and Evaluation of ITS for Organizing Programming-Knowledge by Visualizing Behavior. In: Stephanidis, C., et al. HCI International 2020 – Late Breaking Papers: Interaction, Knowledge and Social Media. HCII 2020. Lecture Notes in Computer Science(), vol 12427. Springer, Cham. https://doi.org/10.1007/978-3-030-60152-2_12
Download citation
DOI: https://doi.org/10.1007/978-3-030-60152-2_12
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-60151-5
Online ISBN: 978-3-030-60152-2
eBook Packages: Computer ScienceComputer Science (R0)