skip to main content
10.1145/3434780.3436614acmotherconferencesArticle/Chapter ViewAbstractPublication PagesteemConference Proceedingsconference-collections
research-article

Intelligent Tutoring Systems approach to Introductory Programming Courses

Published:22 January 2021Publication History

ABSTRACT

Programming is difficult and requires a lot of work and dedication from the students and teachers. Programming is part of the curriculum of many courses, but especially in computer science, and most teaching and learning is problematic. Despite all the efforts of the researchers, it seems to be difficult to find an effective method of teaching that is suitable for all students. This paper describes a set of possible instructional strategies for teaching and learning and its application to an introductory programming course. The goal of utilizing a smart learning system was to increase student scores, pass rate, and increase efficiency for both students and teachers. The set of instructional strategies based on technology was implemented in an introductory programming course over several academic years. Data were collected and the results are analyzed. The results show that there are significant improvements in the grade distributions, the pass/fail rate, in the interest and participation of the students in the different activities developed throughout the course, greater motivation and passion in solving problems, and the more efficient use of teacher time and effort.

References

  1. Ahmadzadeh, M. 2005. An Analysis of Patterns of Debugging Among Novice. ITiCSE ’05 (2005).Google ScholarGoogle Scholar
  2. Akkila, A.N. 2019. Survey of Intelligent Tutoring Systems up to the end of 2017. IJARW.Google ScholarGoogle Scholar
  3. Álvarez Herrero, J.F. 2020. Computational Thinking in Early Childhood Education, beyond Floor Robots. Education in the Knowledge Society (EKS). 21, (Jul. 2020), 11. DOI:https://doi.org/10.14201/eks.22366.Google ScholarGoogle Scholar
  4. Crow, T. 2018. Intelligent Tutoring Systems for Programming Education: A Systematic Review. ACM International Conference Proceeding Series (New York, New York, USA, Jan. 2018), 53–62.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Dekhane, S. 2013. Mobile app development to increase student engagement and problem solving skills. Journal of Information Systems Education. 24, 4 (2013), 299–308.Google ScholarGoogle Scholar
  6. Deterding, S. 2011. From game design elements to gamefulness: Defining “gamification.” Proceedings of the 15th International Academic MindTrek Conference: Envisioning Future Media Environments, MindTrek 2011. (2011), 9–15. DOI:https://doi.org/10.1145/2181037.2181040.Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Deterding, S. 2012. Gamification: designing for motivation. Interactions. 19, 4 (2012), 14. DOI:https://doi.org/10.1145/2212877.2212883.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Deterding, S. 2011. Gamification: Using game design elements in non-gaming contexts. Conference on Human Factors in Computing Systems - Proceedings. (2011), 2425–2428. DOI:https://doi.org/10.1145/1979742.1979575.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Elshiekh, R. and Butgerit, L. 2017. Using Gamification to Teach Students Programming Concepts. OALib. 04, 08 (2017), 1–7. DOI:https://doi.org/10.4236/oalib.1103803.Google ScholarGoogle ScholarCross RefCross Ref
  10. Figueiredo, J. 2016. Ne-course for learning programming. Proceedings of the Fourth International Conference on Technological Ecosystems for Enhancing Multiculturality - TEEM ’16 (New York, New York, USA, 2016), 549–553.Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Figueiredo, J. 2019. Predicting Student Failure in an Introductory Programming Course with Multiple Back-Propagation. Proceedings of the Seventh International Conference on Technological Ecosystems for Enhancing Multiculturality - TEEM’19 (New York, New York, USA, 2019), 44–49.Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Figueiredo, J. and García-peñalvo, F.J. 2020. Increasing student motivation in computer programming with gamification. 2020 IEEE Global Engineering Education Conference (EDUCON) (Porto, 2020), 997–1000.Google ScholarGoogle ScholarCross RefCross Ref
  13. Figueiredo, J. and García-Peñalvo, F.J. 2018. Building Skills in Introductory Programming. Proceedings of the Sixth International Conference on Technological Ecosystems for Enhancing Multiculturality - TEEM’18 (New York, New York, USA, 2018), 46–50.Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Figueiredo, J. and García-Peñalvo, F.J. 2017. Improving Computational Thinking Using Follow and Give Instructions. Proceedings of the 5th International Conference on Technological Ecosystems for Enhancing Multiculturality - TEEM 2017 (New York, New York, USA, 2017), 1–7.Google ScholarGoogle Scholar
  15. Figueiredo, J. and García-Peñalvo, F.J. 2019. Teaching and learning strategies of programming for university courses. Proceedings of the Seventh International Conference on Technological Ecosystems for Enhancing Multiculturality - TEEM’19 (New York, New York, USA, 2019), 1020–1027.Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Fincher, S. 2005. Computer Science at Kent programming courses. 1 (2005).Google ScholarGoogle Scholar
  17. Garcia-Peñalvo, F.J. 2016. What Computational Thinking Is. Journal of Information Technology Research. 9(3), v–vi, October (2016).Google ScholarGoogle Scholar
  18. García-Peñalvo, F.J. 2016. TACCLE 3, O5: An overview of the most relevant literature on coding and computational thinking with emphasis on the relevant issues for teachers KA2 project " TACCLE 3 – Coding " (2015-1-BE02-KA201-012307). TACCLE3 Consortium (Belgium, 2016), 72.Google ScholarGoogle Scholar
  19. García-Peñalvo, F.J. and Cruz-Benito, J. 2016. Computational thinking in pre-university education. Proceedings of the Fourth International Conference on Technological Ecosystems for Enhancing Multiculturality - TEEM ’16 (New York, New York, USA, 2016), 13–17.Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. García-Peñalvo, F.J. and Mendes, A.J. 2017. Exploring the computational thinking effects in pre-university education. Computers in Human Behavior. (Dec. 2017). DOI:https://doi.org/10.1016/j.chb.2017.12.005.Google ScholarGoogle Scholar
  21. Garcia, D.D. 2016. Rediscovering the passion, beauty, joy, and awe: {Making} computing fun again, part 7. Proceedings of the 47th ACM Technical Symposium on Computer Science Education (SIGCSE ’16). (2016), 273–274. DOI:https://doi.org/10.1145/2538862.2538874.Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Gomes, A. and Mendes, A. 2014. A teacher's view about introductory programming teaching and learning: Difficulties, strategies and motivations. 2014 IEEE Frontiers in Education Conference (FIE) Proceedings (Oct. 2014), 1–8.Google ScholarGoogle ScholarCross RefCross Ref
  23. González-González, C.S. 2019. State of the Art in the Teaching of Computational Thinking and Programming in Childhood Education. Education in the Knowledge Society. 20, (2019), 1–15. DOI:https://doi.org/http://dx.doi.org/10.14201/eks2019_20_a17.Google ScholarGoogle Scholar
  24. GONZÁLEZ MARTÍNEZ, J. 2018. ¿Robots o programación? El concepto de Pensamiento Computacional y los futuros maestros. Education in the Knowledge Society (EKS). 19, 2 (Jul. 2018), 29. DOI:https://doi.org/10.14201/eks20181922945.Google ScholarGoogle Scholar
  25. Ibanez, M.B. 2014. Gamification for engaging computer science students in learning activities: A case study. IEEE Transactions on Learning Technologies. 7, 3 (2014), 291–301. DOI:https://doi.org/10.1109/TLT.2014.2329293.Google ScholarGoogle ScholarCross RefCross Ref
  26. Jaime R., C. 1970. AI in CAI: An Artificial-Intelligence Approach to Computer-Assisted Instruction. lEEE TRANSACTIONS ON MAN-MACHINE SYSTEMS. Vol. MMS-1, No. 4 (1970).Google ScholarGoogle Scholar
  27. Jenkins, T. 2002. On the Difficulty of Learning to Program. Language. 4, (2002), 53–58. DOI:https://doi.org/10.1109/ISIT.2013.6620675.Google ScholarGoogle Scholar
  28. Lahtinen, E. 2005. A study of the difficulties of novice programmers. ACM SIGCSE Bulletin. 37, 3 (Sep. 2005), 14. DOI:https://doi.org/10.1145/1151954.1067453.Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Llorens Largo FaraónGarcía-Peñalvo, F.J.P.X.V.E. 2017. La enseñanza de la informática, la programación y el pensamiento computacional en los estudios preuniversitario. Education in the Knowledge Society. (2017).Google ScholarGoogle Scholar
  30. López, A. and García-Peñalvo, F. 2020. Evaluación de habilidades del pensamiento computacional para predecir el aprendizaje y retención de estudiantes en la asignatura de programación de computadoras en educación superior. Revista de Educación a Distancia (RED). 20, (2020). DOI:https://doi.org/10.6018/red.409991.Google ScholarGoogle Scholar
  31. McCracken, M. 2001. A multi-national, multi-institutional study of assessment of programming skills of first-year CS students. ACM SIGCSE Bulletin. 33, 4 (Dec. 2001), 125. DOI:https://doi.org/10.1145/572139.572181.Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Nacke, L.E. 2013. Gamification 2013: Proceedings of the First International Conference on Gameful Design, Research, and Applications: October 2-4, 2013, Stratford, Ontario, Canada. ACM International Conference Proceeding Series. (2013).Google ScholarGoogle Scholar
  33. Nwana, H.S. 1990. Intelligent tutoring systems: an overview. Artificial Intelligence Review. 4, 4 (Dec. 1990), 251–277. DOI:https://doi.org/10.1007/BF00168958.Google ScholarGoogle ScholarCross RefCross Ref
  34. Piteira, M. 2018. Computer Programming Learning: How to Apply Gamification on Online Courses? Journal of Information Systems Engineering & Management. 3, 2 (2018). DOI:https://doi.org/10.20897/jisem.201811.Google ScholarGoogle ScholarCross RefCross Ref
  35. Queirós, R. 2019. PROud-A gamification framework based on programming exercises usage data. Information (Switzerland). 10, 2 (2019), 1–14. DOI:https://doi.org/10.3390/info10020054.Google ScholarGoogle Scholar
  36. Quille, K. and Bergin, S. 2019. CS1: how will they do? How can we help? A decade of research and practice. Computer Science Education. 29, 2–3 (2019), 254–282. DOI:https://doi.org/10.1080/08993408.2019.1612679.Google ScholarGoogle ScholarCross RefCross Ref
  37. Ramírez Montoya, M.S. 2019. Engagement in the course of programming in higher education through the use of gamification.Google ScholarGoogle Scholar
  38. Real-Fernández, A. 2019. Instructional Strategies for a Smart Learning System. Proceedings of the Seventh International Conference on Technological Ecosystems for Enhancing Multiculturality (TEEM 2019). 9, (2019). DOI:https://doi.org/10.1145/3362789.3362915.Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Robins, A. 2016. Learning and Teaching Programming: A Review and Discussion. 3408, April (2016), 37–41. DOI:https://doi.org/10.1076/csed.13.2.137.14200.Google ScholarGoogle Scholar
  40. Shuhidan, S. 2009. A taxonomic study of novice programming summative assessment. Conferences in Research and Practice in Information Technology Series. 95, (2009), 147–156.Google ScholarGoogle Scholar
  41. Song, J.S. 1997. An intelligent tutoring system for introductory C language course. Computers & Education. 28, 2 (Feb. 1997), 93–102. DOI:https://doi.org/10.1016/S0360-1315(97)00003-1.Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Wing, J.M. 2006. Computational thinking. Communications of the ACM. 49, 3 (Mar. 2006), 33. DOI:https://doi.org/10.1145/1118178.1118215.Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Zapata-Ros, M. 2019. Computational Thinking Unplugged. Education in the Knowledge Society. 20, (2019), 1–29. DOI:https://doi.org/http://dx.doi.org/10.14201/eks2019_20_a18Google ScholarGoogle Scholar
  1. Intelligent Tutoring Systems approach to Introductory Programming Courses

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Other conferences
      TEEM'20: Eighth International Conference on Technological Ecosystems for Enhancing Multiculturality
      October 2020
      1084 pages
      ISBN:9781450388504
      DOI:10.1145/3434780

      Copyright © 2020 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 22 January 2021

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Research
      • Refereed limited

      Acceptance Rates

      Overall Acceptance Rate496of705submissions,70%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format .

    View HTML Format