Abstract
In introductory programming learning, flowcharts are often used to help students comprehend patterns of behavior of control flow statements like alternatives, loops, and switches. The use of flowcharts in assignments along with lectures can increase their learning effect. In some areas, the potential of flowcharts remains largely underestimated. Flowcharts are rare in intelligent learning systems for learning programming, although class, object, and sequence diagrams are quite popular. This poster describes the implementation of a non-editable flowchart widget in our intelligent programming tutor on control flow structures (hereinafter referred to as the exerciser). In normal use, the student chooses the next correct action in the program text (algorithm), i.e., makes one transition through the flowchart. Our exerciser allows making a wrong choice and gives a text hint explaining the reason for incorrectness. The wrong or inexistent transition is also displayed on the flowchart to help localize the error.
The reported study was funded by RFBR, project number 20-07-00764.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
code2flow - interactive code to flowchart converter. http://www.code2flow.com/
Flowgorithm - flowchart programming language. http://www.flowgorithm.org/
Learning + technology research group (2021). https://github.com/Aalto-LeTech
Earwood, B., Yang, J., Lee, Y.: Impact of static and dynamic visualization in improving object-oriented programming concepts. In: 2016 IEEE Frontiers in Education Conference (FIE), vol. 2016, pp. 1–5 (2016). https://doi.org/10.1109/FIE.2016.7757639
Hooshyar, D., Ahmad, R., Yousefi, M., Yusop, F., Horng, S.J.: A flowchart-based intelligent tutoring system for improving problem-solving skills of novice programmers. J. Comput. Assist. Learn. 31(4), 345–361 (2015). https://doi.org/10.1111/jcal.12099
Miller, A., Reges, S., Obourn, A.: jGRASP: a simple, visual, intuitive programming environment for CS1 and CS2. ACM Inroads 8(4), 53–58 (2017). https://doi.org/10.1145/3148562
Prasad, B.: On mapping tasks during product development. Concurrent Eng. Res. Appl. 24(2), 105–112 (2016). https://doi.org/10.1177/1063293X15625098
Sedlacek, P., Kvet, M., Václavková, M.: Development of FRIMAN - supporting tool for object oriented programming teaching. Open Comput. Sci. 11(1), 90–98 (2021). https://doi.org/10.1515/comp-2020-0117
Sirkiä, T.: Jsvee & kelmu: creating and tailoring program animations for computing education. J. Softw. Evol. Process 30(2), e1924 (2017). https://doi.org/10.1002/smr.1924
Sychev, O., Denisov, M., Anikin, A.: Verifying algorithm traces and fault reason determining using ontology reasoning. In: ISWC 2020 Posters, Demos, and Industry Tracks, vol. 2721, pp. 49–53. CEUR-WS (2020). http://ceur-ws.org/Vol-2721/paper495.pdf
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Denisov, M., Anikin, A., Sychev, O. (2021). Dynamic Flowcharts for Enhancing Learners’ Understanding of the Control Flow During Programming Learning. In: Basu, A., Stapleton, G., Linker, S., Legg, C., Manalo, E., Viana, P. (eds) Diagrammatic Representation and Inference. Diagrams 2021. Lecture Notes in Computer Science(), vol 12909. Springer, Cham. https://doi.org/10.1007/978-3-030-86062-2_42
Download citation
DOI: https://doi.org/10.1007/978-3-030-86062-2_42
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-86061-5
Online ISBN: 978-3-030-86062-2
eBook Packages: Computer ScienceComputer Science (R0)