Considerations for the Teaching-Learning Processes of Introductory Programming Courses: A Systematic Literature Review

Keywords: Computer programming, teaching-learning, systematic review, first programming course

Abstract

In recent years, software development teaching-learning processes have taken on special importance because they are no longer exclusive of engineering fields; they are also applicable to various areas such as psychology, pedagogy, graphic design, and education. Although the literature includes some studies in this regard, none of them compiles the main problems and current practices of introductory programming courses. Therefore, this article presents a systematic review of literature on introductory programming courses in undergraduate programs. For that purpose, we searched four databases of bibliographical references of scientific publications and found 106 studies published in the last seven years. A detailed inspection determined that 46 of them met the criteria of this review. As a result, we compiled 33 software tools, 36 work strategies, and 18 methodological considerations, as well as important recommendations, experiences, practices, problems, and future trends related to introductory computer programming courses. This article is a starting point for future work that further benefits students and professors in the complex field of computer programming teaching-learning.

Author Biographies

Javier A. Jiménez-Toledo*, Universidad Cesmag, Colombia

MSc. en Computación, Facultad de Ingeniería, Universidad Cesmag, Pasto-Colombia. jajime-nez@unicesmag.edu.co

Cesar Collazos, Universidad del Cauca, Colombia

Ph.D. en Ciencias, Facultad de Ingeniería Electrónica y Telecomunicaciones, Departamento de Sistemas, Universidad del Cauca, Popayán-Colombia. ccolla-zo@unicauca.edu.co

Oscar Revelo-Sánchez, Universidad de Nariño, Colombia

MSc. en Computación, Facultad de Ingeniería, Departamento de Sistemas, Universidad de Nariño, Pasto-Colombia. orevelo@udenar.edu.co

References

C. Malliarakis, M. Satratzemi, y S. Xinogalos, “Educational Games for Teaching Computer Programming,” en Research on e-Learning and ICT in Education, New York: Springer, 2014, pp. 87–98. https://doi.org/10.1007/978-1-4614-6501-0_7

K. M. Y. Law, V. C. S. Lee, y Y. T. Yu, “Learning motivation in e-learning facilitated computer programming courses,” Comput. Educ., vol. 55, no. 1, pp. 218–228, Aug. 2010. https://doi.org/10.1016/j.compedu.2010.01.007

S. Fincher y M. Petre, Computer Science Education Research, London, UK: Taylor and francis Group, 2004. Disponible en: https://books.google.com.co/books?hl=es&lr=&id=cKudfMJX_SMC&oi=fnd&pg=PP1&dq=Computer+Science+Education+Research&ots=0osUWFbVA8&sig=6Xwfx9julRLbKzLaeUf7z4dTyDY#v=onepage&q=Computer%20Science%20Education%20Research&f=false

M. Ortega et al., “iProg: Development of immersive systems for the learning of programming,” en Proceedings of the XVIII International Conference on Human Computer Interaction - Interacción Cancún, 2017, pp. 1–6. https://doi.org/10.1145/3123818.3123874

G. Hernández- Pantoja, “Creencias docentes y didáctica de la programación de computadoras,” Docencia investigación innovación, vol. 2, no. 2, pp. 87–103, Dic. 2013. Disponible en: http://revistas.udenar.edu.co/index.php/duniversitaria/article/view/1445

M. O. Galdeano y F. G. O. Uribe, “La enseñanza de la programación,” Academias de computación de la UPIICSA. 2002. Disponible en: http://bibliotecadigital.conevyt.org.mx/colecciones/documentos/somece2002/Grupo4/Oviedo.pdf

M. Juganaru, Inroducción a la programación, 1st ed. México: Patria S.A. de C.V, 2014. Disponible en: https://editorialpatria.com.mx/pdffiles/9786074384154.pdf

N. Couthinjo, Introducción a la programación con Python: Algoritmos y lógica de programación para principiantes, 1st ed. Sao Paulo, Brasil: Novatec, 2016. Disponible en: https://books.google.com.co/books?id=JtwoDwAAQBAJ&printsec=frontcover&hl=es&source=gbs_ge_summary_r&cad=0#v=onepage&q&f=false

O. Trejos-Buriticá, “Consideraciones sobre la evolución del pensamiento a partir de los paradigmas de programación de computadores,” Tecnura, vol. 16, no. 32, pp. 68–83, Apr. 2012. Disponible en: https://www.redalyc.org/pdf/2570/257024143007.pdf

J. Villalobos y R. Casallas, Fundamentos de programación: aprendizaje activo basado en casos. Colombia: Universidad de los Andes, Facultad de ingeniería, 2010. Disponible en: https://eybooks.com/topic/3900-fundamentos-de-programaci%C3%B3n-aprendizaje-activo-basado-en-casos/

M. Cedano-Olvera, A. Cedano- Rodríguez, J. Rubiano-González, y A. Vega-Gutiérrez, Fundamentos de computación para ingenieros. 1st ed. Mexico: Grupo Editorial Patria, 2014. Disponible en: https://kupdf.net/download/fundamentos-de-computacion-para-ingenieros_58cb2c5adc0d60bd11c34613_pdf

K. Petersen, R. Feldt, S. Mujtaba, y M. Mattsson, “Systematic mapping studies in software engineering” en EASE'08 Proceedings of the 12th international conference on Evaluation and Assessment in Software Engineering, Italy, 2008. Disponible en: https://dl.acm.org/citation.cfm?id=2227115.2227123

B. Kitchenham, O. Pearl Brereton, D. Budgen, M. Turner, J. Bailey, y S. Linkman, “Systematic literature reviews in software engineering – A systematic literature review,” Inf. Softw. Technol., vol. 51, no. 1, pp. 7–15, Jan. 2009. https://doi.org/10.1016/j.infsof.2008.09.009

B. A. Kitchenham, T. Dyba, y M. Jorgensen, “Evidence-based software engineering,” en Proceedings. 26th International Conference on Software Engineering, 2004, pp. 273–281. https://doi.org/10.1109/ICSE.2004.1317449

B. Kitchenham y S. Charters, “Guidelines for performing Systematic Literature reviews in Software Engineering Versión 2.3,” Keel University and University of Durham, Technical Report, EBSE-2007-01, Jul. 2007. Disponible en: http://www.academia.edu/download/35830450/2_143465389588742151.pdf

B. Kitchenham et al., “Systematic literature reviews in software engineering – A tertiary study,” Inf. Softw. Technol., vol. 52, no. 8, pp. 792–805, 2010. https://doi.org/10.1016/j.infsof.2010.03.006

O. Revelo-Sánchez, C. A. Collazos-Ordóñez, y J. A. Jiménez-Toledo, “El trabajo colaborativo como estrategia didáctica para la enseñanza/aprendizaje de la programación: una revisión sistemática de literatura,” TecnoLógicas, vol. 21, no. 41, pp. 115–134, Jan. 2018. https://doi.org/10.22430/22565337.731

J. D. Martínez Díaz, V. Ortega Chacón, y F. J. Muñoz Ronda, “El diseño de preguntas clínicas en la práctica basada en la evidencia. Modelos de formulación,” Enfermería Glob., vol. 15, no. 3, pp. 431-438, Jun. 2016. https://doi.org/10.6018/eglobal.15.3.239221

B. O. Depetris, D. Aguil Mallea, H. Pendenti, G. Tejero y G. E. Feierherd, “Experiencias con Da Vinci Concurrente en la enseñanza inicial de la programación y la programación concurrente,” en Proceedings del VIII Congreso de Tecnología en Educación y Educación en Tecnología, Santiago del Estero, 2013. Disponible en: http://sedici.unlp.edu.ar/handle/10915/27581

J. López Reguera, C. Hernández Rivas, y Y. Farran Leiva, “Una plataforma de evaluación automática con una metodología efectiva para la enseñanza/aprendizaje en programación de computadores,” Ingeniare. Rev. Chil. Ing., vol. 19, no. 2, pp. 265–277, Aug. 2011. https://doi.org/10.4067/S0718-33052011000200011

J. Insuasti, “Problemas de enseñanza y aprendizaje de los fundamentos de programación” Educ. y Desarro. Soc., vol. 10, no. 2, pp. 234–246, 2016. Disponible en: https://dialnet.unirioja.es/servlet/articulo?codigo=5585933

R. Muñoz, M. Barría, R. Noel, E. Providel, y P. Quiroz, “Determinando las dificultades en el aprendizaje de la primera asignatura de programación en estudiantes de ingeniería civil informática,” en Memorias del XVII Congreso Internacional de Informática Educativa, TISE, Santiago, 2012, pp. 120–126. Disponible en: http://www.tise.cl/volumen8/TISE2012/17.pdf

A. Carbone, J. Hurst, I. Mitchell, y D. Gunstone, “An exploration of internal factors influencing student learning of programming,” en ACE ’09 Proceedings of the Eleventh Australasian Conference on Computing Education, Wellington, New Zealand, 2009, pp. 25-34. Disponible en: https://www.academia.edu/17067234/An_exploration_of_internal_factors_influencing_student_learning_of_programming

R. M. Felder y R. Brent, “Understanding Student Differences,” J. Eng. Educ., vol. 94, no. 1, pp. 57–72, Jan. 2005. https://doi.org/10.1002/j.2168-9830.2005.tb00829.x

S. Casas y V. Vanoli, “Programación y Algoritmos: Análisis y Evaluación de Cursos Introductorios,” en IX Workshop de Investigadores en Ciencias de la Computación, Comodoro Rivadavia, 2007, pp. 760–764. Disponible en: http://sedici.unlp.edu.ar/handle/10915/20502

G. Silva-Maceda, P. D. Arjona-Villicana, y F. E. Castillo-Barrera, “More Time or Better Tools? A Large-Scale Retrospective Comparison of Pedagogical Approaches to Teach Programming,” IEEE Trans. Educ., vol. 59, no. 4, pp. 274–281, Nov. 2016. https://doi.org/10.1109/TE.2016.2535207

C. Watson y F. W. B. Li, “Failure rates in introductory programming revisited,” en Proceedings of the 2014 conference on Innovation & technology en computer science education - ITiCSE ’14, Uppsala, 2014, pp. 39–44. https://doi.org/10.1145/2591708.2591749

National Science Board, Science and engineering indicators 2012. Arlington, VA, Washington: Arlington VA: National Science Foundation (NSB 12-01), 2012, pp. 589. Disponible en: http://www.scifun.org/Readings/SEind12.pdf

W. Dann, S. Copper, and R. Pausch, Learning to Program with Alice (w/ CD ROM), 3rd ed., New York: Prentice Hall Press Upper Saddle River, 2011. Disponible en: https://dl.acm.org/citation.cfm?id=2011893

A. Saez Villavicencio, F. A. Ciudad Ricardo, U. Puentes- Puentes, y J. Menéndez- Pérez, “El desarrollo de la habilidad : implementar algoritmos . Teoría para su operacionalización,” Rev. Cuba. Ciencias Informáticas, vol. 9, no. 3, pp. 99–112, Jul. 2015. Disponible en: https://rcci.uci.cu/?journal=rcci&page=article&op=view&path%5B%5D=1108&path%5B%5D=351.

M. Bozorgmanesh, M. Sadighi, y M. Nazarpour, “Increase the eficiency of adult education with the proper use of learning styles,” Nat. Sci., vol. 9, no. 5, pp. 140–145, Jun. 2011. Disponible en: http://www.sciencepub.net/nature/ns0905/21_5408ns0905_140_145.pdf

E. Lahtinen, K. Ala-Mutka, and H.-M. Järvinen, “A study of the difficulties of novice programmers,” ITiCSE '05 Proceedings of the 10th annual SIGCSE conference on Innovation and technology in computer science education, Caparica, 2005, no. 3, pp. 14-18. https://doi.org/10.1145/1151954.1067453

L. P. Baldwin y J. Kuljis, “Learning programming using program visualization techniques,” en Proceedings of the 34th Annual Hawaii International Conference on System Sciences, Maui, 2001. https://doi.org/10.1109/HICSS.2001.926232

J. R. Olague-Sánchez, et al., “Sistemas de gestión de contenidos de aprendizaje y técnicas de minería de datos para la enseñanza de ciencias computacionales, un caso de estudio en el norte de Coahuila,” Rev. Mex. Investig. Educ., vol. 15, no. 45, pp. 391–421, Apr. 2010. Disponible en: https://www.redalyc.org/pdf/140/14012507004.pdf

E. Dunican, “Making the analogy: Alternative delivery techniques for first year programming courses” en Proceedings from the 14th Workshop of the Psychology of Programming Interest Group, Brunel University, 2002, pp. 89–99. Disponible en: http://eprints.teachingandlearning.ie/3991/1/Dunican%202002.pdf

B. Depetris, D. Aguil Mallea, H. Pendenti, G. Tejero y G. E. Feierherd, “Experiencias con Da Vinci Concurrente en la enseñanza inicial de la programación y la programación concurrente,” en Proceedings del VIII Congreso de Tecnología en Educación y Educación en Tecnología, La Plata, 2013. Disponible en: http://sedici.unlp.edu.ar/handle/10915/27581

L. Thomas, M. Ratcliffe, J. Woodbury, y E. Jarman, “Learning styles and performance in the introductory programming sequence,” en Proceedings of the 33rd SIGCSE technical symposium on Computer science education - SIGCSE ’02, Cincinnati, 2002, pp.33-37. https://doi.org/10.1145/563340.563352

I. Stamouli, E. Doyle, y M. Huggard, “Establishing structured support for programming students,” en 34th Annual Frontiers in Education, 2004. FIE 2004., Savannah, 2004, pp. 679–683. https://doi.org/10.1109/FIE.2004.1408612

W. Hartmann, J. Nievergelt, y R. Reichert, “Kara, finite state machines, and the case for programming as part of general education,” en Proceedings IEEE Symposia on Human-Centric Computing Languages and Environments (Cat. No.01TH8587), Stresa, 2001, pp. 135–141. https://doi.org/10.1109/HCC.2001.995251

V. Frittelli et al., “Desarrollo de juegos como estrategia didáctica en la enseñanza de la programación,” CONAIISI, 2013. Disponible en: http://conaiisi.frc.utn.edu.ar/PDFsParaPublicar/1/schedConfs/4/120-429-1-DR.pdf

J. Sánchez García, M. Urías Ruiz, y B. Gutiérrez Herrera, “Análisis de los problemas de aprendizaje de la Programación Orientada a Objetos,” Ra Ximhai, vol. 11, no. 4, pp. 289–304, Jul. 2015. Disponible en: https://drive.google.com/file/d/0B_QQ0W8TI5acTWRwOWZWLV9FWE0/view

L. Spigariol y N. Passerini, “Enseñando a programar en la orientación a objetos,” en Congreso Nacional de Ingeniería Informática / Sistemas de Información. Educación en Ingeniería., Buenos Aires, 2013, vol. 1. Disponible en: http://conaiisi.frc.utn.edu.ar/PDFsParaPublicar/1/schedConfs/4/97-498-1-DR.pdf

L. López- Román, “Metodología para el desarrollo de la lógica de la programación orientada a objetos,” Sist. Cibernética e Informática, vol. 10, no. 2, pp. 27–32, 2013. Disponible en: http://www.iiisci.org/journal/CV$/risci/pdfs/CA889XD13.pdf

M. Sicilia, “Beyond content: sharing the design of open educational resources,” RUSC. Univ. Knowl. Soc. J., vol. 4, no. 1, pp. 1580–1698, Apr. 2007. https://doi.org/10.7238/rusc.v4i1.297

G. M. Rodríguez Carrillo, “Enseñanza de la programación de computadoras para principiantes: un contexto histórico,” Inventum, vol. 9, no. 17, pp. 51–61, Jul. 2014. https://doi.org/10.26620/uniminuto.inventum.9.17.2014.51-61

O. I. Trejos- Buriticá , “Modelo de enseñanza con aprendizaje colaborativo en estudiantes de programación de computadores,” Rev. Vector, vol. 9, pp. 48–58, Aug. 2014. Disponible en: http://vector.ucaldas.edu.co/downloads/Vector9_7.pdf

C. Romero-Chaves y M. Rosero-Sosa, “Modelo de enseñanza y su relación con los procesos metacognitivos en programación de sistemas,” Rev. Educ. en Ing., vol. 9, no. 17, pp. 1–12, Jun. 2014. Disponible en: https://educacioneningenieria.org/index.php/edi/article/view/334

J. J. Arellano-Pimentel, O. S Nieva- García, R. Solar Gonzáez, y G. Arista López, “Software para la enseñanza-aprendizaje de algoritmos estructurados,” Rev. Iberoam. Educ. en Tecnol. y Tecnol. en Educ., vol. 8, pp. 23–33, Dic. 2012. Disponible en: http://sedici.unlp.edu.ar/handle/10915/25531

T. Crews y J. Butterfield, “Using technology to bring abstract concepts into focus: A programming case study,” J. Comput. High. Educ., vol. 13, no. 2, pp. 25–50, Mar. 2002. https://doi.org/10.1007/BF02940964

M. C. Carlisle, T. A. Wilson, J. W. Humphries, y S. M. Hadfield, “Raptor: A visual programming environment for teaching algorithmic problem solving,” en Proceedings of the 36th SIGCSE technical symposium on Computer science education (SIGCSE’ 05), New York, 2005, pp. 176-180. Disponible en: https://dl.acm.org/citation.cfm?id=1047411

A. Del Prado y N. Lamas, “Alternativas para la enseñanza de pseudocódigo y diagrama de flujo,” Rev. Electrónica Iberoam. Educ. en Ciencias y Tecnol., vol. 5, no. 3, pp. 102–113, Dic. 2014. Disponible en: https://dl.acm.org/citation.cfm?id=1047411

Jeliot 3 (2018). Disponible en: https://pdfs.semanticscholar.org/9c1f/e7496114f819f05901441683ce2658bb3ff8.pdf

S. Sánchez et al., “Applying Mixed Reality Techniques for the Visualization of Programs and Algorithms in a Programming Learning Environment,” en nternational Conference on Mobile, Hybrid, and On-line Learning, Rome, 2018, pp. 84–89. Disponible en: https://pdfs.semanticscholar.org/9c1f/e7496114f819f05901441683ce2658bb3ff8.pdf

K. A. Reek, “The TRY System or how to Avoid testing students programs,” en Proceedings of the twentieth SIGCSE technical symposium on Computer science education, Louisville, Kentucky, 1989, pp. 112–116. https://doi.org/https://doi.org/10.1145/65294.71198

E. L. Jones, “Grading student programs a software testing approach,” J. Comput. Sci. Coll., vol. 16, no. 2, pp. 185-192, Jan. 2001. Disponible en: https://dl.acm.org/citation.cfm?id=369354

L. Malmi, V. Karavirta, A. Korhonen, y J. Nikander, “Experiences on automatically assessed algorithm simulation exercises with different resubmission policies,” J. Educ. Resour. Comput., vol. 5, no. 3, Sep. 2005. https://doi.org/10.1145/1163405.1163412

C. Higgins, G. Gray, P. Symeonidis, y A. Tsintfsias, “Automated assessment and experiences of teaching programming,” J. Educ. Resour. Comput., vol. 5, no. 3, pp. 1–21, Sep. 2005. https://doi.org/https://doi.org/10.1145/1163405.1163410

T. Wang, X. Su, P. Ma, Y. Wang, y K. Wang, “Ability-training-oriented automated assessment in introductory programming course,” Comput. Educ., vol. 56, no. 1, pp. 220–226, Jan. 2011. https://doi.org/10.1016/j.compedu.2010.08.003

T. Barnes, A. Chaffinet, A. Godwin, E. Powell, H. Richter “The Role of Feedback,” 2007, pp. 1–5. Disponible en: https://www.researchgate.net/profile/Tiffany_Barnes/publication/268420975_The_Role_of_Feedback_in_Game2Learn/links/551c00ec0cf20d5fbde243e7/The-Role-of-Feedback-in-Game2Learn.pdf.

T. Barnes, A. Chaffin, E. Powell, y H. Lipford, “Game2Learn: Improving the motivation of CS1 students,” en Proceedings of the 3rd international conference on Game development in computer science education, Miami, 2008, pp. 1–5. https://doi.org/10.1145/1463673.1463674

A. Chaffin, K. Doran, D. Hicks, y T. Barnes, “Experimental evaluation of teaching recursion in a video game,” en Proceedings ACM SIGGRAPH Symposium on Video Games, New Orleans, Louisiana, 2009, pp. 79–86. Disponible en: https://www.academia.edu/3884728/Experimental_evaluation_of_teaching_recursion_in_a_video_game

M. Eagle y T. Barnes, “Experimental evaluation of an educational game for improved learning in introductory computing,” en Proceedings of the 40th ACM technical symposium on Computer science education - SIGCSE ’09, Chattanooga, 2009, pp. 321-325. https://doi.org/10.1145/1508865.1508980

F. W. B. Li y C. Watson, “Game-based concept visualization for learning programming,” en Proceedings of the third international ACM workshop on Multimedia technologies for distance learning - MTDL ’11, Scottsdale, Arizona, 2011, pp. 37-42. https://doi.org/10.1145/2072598.2072607

M. Piteira y S. R. Haddad, “Innovate in your program computer class: an approach based on a serious game” en Proceedings of the 2011 Workshop on Open Source and Design of Communication - OSDOC ’11, Lisboa, 2011, pp. 49-54. https://doi.org/10.1145/2016716.2016730

K. Maragos y M. Grigoriadou, “Exploiting Talent as a Tool for Teaching and Learning,” Int. J. Learn., vol. 18, no. 1, pp. 431–439, Jan. 2011. Disponible en: http://eds.a.ebscohost.com/abstract?site=eds&scope=site&jrnl=14479494&AN=73027898&h=hkEKAT8kkVCccBiWTGfhoo5dP81tlm9%2fiB%2b4zI89XvHTFQUTftPzep%2f3YzfMaLergvw7BJbmGID4x0n%2bGLO8kw%3d%3d&crl=f&resultLocal=ErrCrlNoResults&resultNs=Ehost&crlhashurl=login.aspx%3fdirect%3dtrue%26profile%3dehost%26scope%3dsite%26authtype%3dcrawler%26jrnl%3d14479494%26AN%3d73027898

M. J. Lee y A. J. Ko, “Personifying programming tool feedback improves novice programmers’ learning,” en Proceedings of the seventh international workshop on Computing education research - ICER ’11, Providence, Rhode Island, 2011, pp. 109-116. https://doi.org/10.1145/2016911.2016934

C. Palma- Suárez y R. Sarmiento- Porras, “Estado del arte sobre experiencias de enseñanza de programación a niños y jóvenes para el mejoramiento de las competencias matemáticas en primaria,” Rev. Mex. Investig. Educ., vol. 20, no. 65, pp. 607–641, Apr. 2015. Disponible en: http://www.scielo.org.mx/scielo.php?script=sci_arttext&pid=S1405-66662015000200013

J. O’Kelly y J. P. Gibson, “RoboCode & problem-based learning: a non-prescriptive approach to teaching programming,” ACM SIGCSE Bull., vol. 38, no. 3, pp. 217-221, Jun. 2006. https://doi.org/10.1145/1140123.1140182

A. M. Phelps, C. A. Egert, y K. J. Bierre, “MUPPETS: Multi-User Programming Pedagogy for Enhancing Traditional Study: An Environment for both Upper and Lower Division Students,” en Proceedings Frontiers in Education 35th Annual Conference, Indianopolis, 2004, pp. S2H-8-S2H-15. https://doi.org/10.1109/FIE.2005.1612247

M. Muratet, P. Torguet, F. Viallet, y J. P. Jessel, “Experimental Feedback on Prog&Play: A Serious Game for Programming Practice,” Comput. Graph. Forum, vol. 30, no. 1, pp. 61–73, Oct. 2010. https://doi.org/10.1111/j.1467-8659.2010.01829.x

I. Paliokas, C. Arapidis, y M. Mpimpitsos, “PlayLOGO 3D: A 3D Interactive Video Game for Early Programming Education: Let LOGO Be a Game,” en 2011 Third International Conference on Games and Virtual Worlds for Serious Applications, Athens, 2011, pp. 24–31. https://doi.org/10.1109/VS-GAMES.2011.10

M. J. Lee y A. J. Ko, “Personifying Programming Tool Feedback Improves Novice Programmers’ Learning,” en Proceedings of the seventh international workshop on Computing education research, ICER ´11, Providence, 2011, pp. 109–116. https://dx.doi.org/10.1145/2016911.2016934

K. Brennan and M. Resnick, “New frameworks for studying and assessing the development of computational thinking (2012),” in Proceedings of the 2012 annual meeting of the American Educational Research Association, Vancouver, 2012. Disponible en: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.296.6602

R. F. Zúñiga Muñoz, J. A. Hurtado Alegría, y P. Paderewsky Rodríguez, “Discovering the mechanisms of abstraction in the performance of work teams in children to solve computational problems,” Sist. y Telemática, vol. 14, no. 36, pp. 69–87, Mar. 2016. https://doi.org/10.18046/syt.v14i36.2216

J. Mönig y B. Harvey. “Snap: Build your own blocks,” Snap, 2019. Disponible en: https://snap.berkeley.edu/

C.-C. Liu, Y.-B. Cheng, y C.-W. Huang, “The effect of simulation games on the learning of computational problem solving,” Comput. Educ., vol. 57, no. 3, pp. 1907–1918, Nov. 2011. https://doi.org/10.1016/j.compedu.2011.04.002

J. García, P. Señas, y N. Moroni, “Cubik: Una Herramienta de Apoyo a la Enseñanza de la Programación,” en ’IV Ateneo de Profesores Universitarios de Computación. San Luis., 1996, pp. 582- 594. Disponible en: http://sedici.unlp.edu.ar/bitstream/handle/10915/24233/Documento_completo.pdf?sequence=1&isAllowed=y

G. Cenich, “Un entorno para la enseñanza y aprendizaje de programación en la escuela secundaria,” en III Jornadas de TIC e Innovación en el Aula, La Plata, 2015, pp.1-9. Disponible en: http://sedici.unlp.edu.ar/handle/10915/48730

M. Gallego y F. Gortázar, “EclipseGavab, un entorno de desarrollo para la docencia online de la programación,” in Jornadas de Enseñanza Universitaria de la Informática (JENUI) - JENUI 2009 [68]. Barcelona, 2009, pp. 501-508. Disponible en: https://upcommons.upc.edu/bitstream/handle/2099/7845/p181.pdf?sequence=6&isAllowed=y

E. Lovos, A. Gonzalez, I. Mouján, R. Bertone, y C. Madoz, “Estrategias de Enseñanza Colaborativa para un Curso de Programación de Primer Año de la Licenciatura en Sistemas,” in XVIII Congreso Argentino de Ciencias de la Computación, Bahia Blanca, 2012. Disponible en: http://sedici.unlp.edu.ar/bitstream/handle/10915/23850/Documento_completo.pdf?sequence=1

J. C. Rodríguez del Pino, E. Rubio-Royo, y Z. Hernández-Figueroa, “VPL: laboratorio virtual de programación para Moodle” en Jornadas de Enseñanza Universitaria de la Informática (JENUI) - JENUI 2010, Barcelona, 2010, pp. 429-435. Disponible en: https://upcommons.upc.edu/bitstream/handle/2099/11840/r51.pdf?sequence=1&isAllowed=y

J. A. Jiménez Builes, M. Pavony Meneses, y A. F. Alvarez Serna, “Entorno de integración de PBL y CSCL para la enseñanza de algoritmos y programación en ingeniería,” Rev. Av. en Sist. e Informática, vol. 5, no. 3, pp. 189--194, Dic. 2008. Disponible en: https://revistas.unal.edu.co/index.php/avances/article/view/10112/10637

Grupo Chico, Universidad de la Mancha “Colecce 2.0,” ¿What is COLLECE 2.0?, 2018. Disponible en: http://blog.uclm.es/grupochico/proyecto-iapro/collece-2-0/

N. Moroni y P. Señas, “La Visualización de Algoritmos como Recurso para la Enseñanza de la Programación,” en IV Workshop de Investigadores en Ciencias de la Computación. WICC, La Plata, 2002, pp. 213–217. Disponible en: http://sedici.unlp.edu.ar/handle/10915/21859

E. Costelloe, “Teaching Programming. The State of the Art”, Dublin, 2004. Disponible en: https://www.scss.tcd.ie/disciplines/information_systems/crite/crite_web/publications/sources/programmingv1.pdf

Z. Li, C. Plaue, y E. Kraemer, “A spirit of camaraderie: The impact of pair programming on retention,” en 2013 26th International Conference on Software Engineering Education and Training (CSEE&T), San Francisco, 2013, pp. 209–218. https://doi.org/10.1109/CSEET.2013.6595252

D. Preston, “Using collaborative learning research to enhance pair programming pedagogy,” ACM SIGITE Newsl., vol. 3, no. 1, pp. 16–21, Jan. 2006. https://doi.org/10.1145/1113378.1113381

N. Salleh, E. Mendes, y J. Grundy, “Empirical Studies of Pair Programming for CS/SE Teaching in Higher Education: A Systematic Literature Review,” IEEE Trans. Softw. Eng., vol. 37, no. 4, pp. 509–525, Jul. 2011. https://doi.org/10.1109/TSE.2010.59

G.-J. Hwang, Z.-Y. Liang, y H.-Y. Wang, “An Online Peer Assessment-Based Programming Approach to Improving Students’ Programming Knowledge and Skills,” en 2016 International Conference on Educational Innovation through Technology (EITT), Tainan, 2016, pp. 81–85. https://doi.org/10.1109/EITT.2016.23

J. P. Ucan, O. S. Gomez, y R. A. Aguilar, “Assessment of software defect detection efficiency and cost through an intelligent collaborative virtual environment,” IEEE Lat. Am. Trans., vol. 14, no. 7, pp. 3364–3369, Jul. 2016. https://doi.org/10.1109/TLA.2016.7587643

C. Patek y A. Chattopadhyay, “Can Undergraduate Computing Research Be Student-Driven? (Abstract Only),” in Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education - SIGCSE ’17, Seattle, 2017, pp. 715–715. https://doi.org/10.1145/3017680.3022445

A. Nylén, N. Thota, A. Eckerdal, P. Kinnunen, M. Butler, y M. Morgan, “Multidimensional analysis of creative coding MOOC forums: a methodological discussion”,en Proceedings of the 15th Koli Calling Conference on Computing Education Research, Koli, Finland, 2015, pp. 137-141. https://www.doi.org/10.1145/2828959.2828971

A. Robins, J. Rountree, y N. Rountree, “Learning and Teaching Programming: A Review and Discussion,” Comput. Sci. Educ., vol. 13, no. 2, pp. 137–172, Jun. 2003. https://doi.org/10.1076/csed.13.2.137.14200

A. Pears et al., “A survey of literature on the teaching of introductory programming,” ACM SIGCSE Bull., vol. 39, no. 4, pp. 204-223, Dec. 2007. https://doi.org/10.1145/1345375.1345441

S. Wiedenbeck, V. Ramalingam, S. Sarasamma, y C. Corritore, “A comparison of the comprehension of object-oriented and procedural programs by novice programmers,” Interact. Comput., vol. 11, no. 3, pp. 255–282, Jan. 1999. https://doi.org/10.1016/S0953-5438(98)00029-0

M. De Raadt, R. Watson, y M. Toleman, “Introductory programming: What’s happening today and will there be any students to teach tomorrow?,” en ACE ’04 Proceedings of the Sixth Australasian Conference on Computing Education, Dunedin, 2004, pp. 277–282. Disponible en: https://dl.acm.org/citation.cfm?id=980005&dl=ACM&coll=DL

A. Dingle and C. Zander, “Assessing the ripple effect of CS1 language choice,” J. Comput. Sci. Coll., vol. 16, no. 2, pp. 85–93, Jan. 2001. Disponible en: https://dl.acm.org/citation.cfm?id=369331

T. Koulouri, S. Lauria, y R. D. Macredie, “Teaching Introductory Programming: A Quantitative Evaluation of Different Approaches,” ACM Trans. Comput. Educ., vol. 14, no. 4, pp. 1–28, Feb. 2015. https://doi.org/10.1145/2662412

L. Mannila y M. de Raadt, “An objective comparison of languages for teaching introductory programming,” en Proceedings of the 6th Baltic Sea conference on Computing education research Koli Calling 2006 - Baltic Sea ’06, Uppsala, 2006. https://doi.org/10.1145/1315803.1315811

S. Davies, J. A. Polack-Wahl, y K. Anewalt, “A snapshot of current practices in teaching the introductory programming sequence,” en Proceedings of the 42nd ACM technical symposium on Computer science education - SIGCSE ’11, Dallas, 2011. https://doi.org/10.1145/1953163.1953339

M. Rizvi, T. Humphries, D. Major, M. Jones, y H. Lauzun, “A CS0 course using Scratch,” J. Comput. Sci. Coll., vol. 26, no. 3, pp. 19–27, Jan. 2011. Disponible en: https://dl.acm.org/citation.cfm?id=1859166&dl=ACM&coll=DL

C. Herbert, An introduction to programming using Alice 2.2, 2da ed. Boston, Massachusetts: Cengage Learning; 2007. Disponible en: https://www.alice.org/resources/textbooks/an-introduction-to-programming-using-alice-2-2/

I. Blanchette y K. Dunbar, “How analogies are generated: The roles of structural and superficial similarity,” Mem. Cognit., vol. 28, no. 1, pp. 108–124, Jan. 2000. https://doi.org/10.3758/BF03211580

C. A. Collazos, L. Guerrero, and A. Vergara, “Aprendizaje Colaborativo: un cambio en el rol del profesor,” en Proceedings of the 3rd Workshop on Education on Computing, Punta Arenas, 2001, pp. 1–10. Disponible en: https://users.dcc.uchile.cl/~luguerre/papers/CESC-01.pdf

J. D. Dougherty, K. Nagel, A. Decker, y K. Eiselt, “Proceedings of the 45th ACM technical symposium on Computer science education,” en SIGCSE ’14 Proceedings of the 45th ACM technical symposium on Computer science education, Atlanta, Georgia, 2014. Disponible en: https://dl.acm.org/citation.cfm?id=2538862

R. T. Putnam, D. Sleeman, J. A. Baxter, y L. K. Kuspa, “A Summary of Misconceptions of High School Basic Programmers,” J. Educ. Comput. Res., vol. 2, no. 4, pp. 459–472, Nov. 1986. https://doi.org/10.2190/FGN9-DJ2F-86V8-3FAU

D. Perez-Marin, R. Hijon-Neira, y M. Martin-Lope, “A Methodology Proposal Based on Metaphors to Teach Programming to Children,” IEEE Rev. Iberoam. Tecnol. del Aprendiz., vol. 13, no. 1, pp. 46–53, Feb. 2018. https://doi.org/10.1109/RITA.2018.2809944

T. Boyle, “Constructivism: A Suitable Pedagogy for Information and Computing Sciences?,” 2000. Disponible en: http://www.mit.jyu.fi/OPE/kurssit/TIES461/Materiaali/323_Boyle.pdf

R. Muñoz et al., “Uso de Scratch y Lego Mindstorms como Apoyo a la Docencia en Fundamentos de Programación,” en XXI Jornadas de la Enseñanza Universitaria de Informática, Andorra La Vella, 2015, pp. 248–254. Disponible en: http://bioinfo.uib.es/~joemiro/aenui/procJenui/Jen2015/mu_usod.pdf

B. Restrepo Gomez, “Aprendizaje basado en problemas (ABP):una innovación didáctica para la enseñanza universitaria,” Educ. y Educ., vol. 8, pp. 9–19, 2005. Disponible en: http://bioinfo.uib.es/~joemiro/aenui/procJenui/Jen2015/mu_usod.pdf

J. A. Jiménez Toledo, C. A. Collazos Ordoñez, J. A. Hurtado Alegría, y W. L. Pantoja Yépez, “Estrategia colaborativa en entornos tridimensionales como estrategia didáctica de aprendizaje de estructuras iterativas en programación computacional,” Rev. Investigium ire Ciencias Soc. y Humanas, vol. 6, no. 2, pp. 80–92, Dic. 2015. Disponible en: https://investigiumire.unicesmag.edu.co/index.php/ire/article/view/112

M. Guerrero, D. S. Guamán, y J. C. Caiza, “Revisión de Herramientas de Apoyo en el Proceso de Enseñanza- Aprendizaje de Programación,” Rev. Politécnica Nac., vol. 35, no. 1, pp. 84–90, Feb. 2015. Disponible en: https://revistapolitecnica.epn.edu.ec/ojs2/index.php/revista_politecnica2/article/view/430

B. San Miguel, S. Aguirre, J. del Alamo, y M. Cortés, “A proposal for enhancing the motivation in students of computer programming,” en Conference name: 5th International Conference of Education, Research and Innovation, Madrid, 2012, pp. 1157–1164. Disponible en: https://library.iated.org/view/SANMIGUEL2012APR

S. Naz, S. Hamad Shirazi, T. Iqbal, D. Irfan, M. Junaid, y Y. Naseer, “Learning Programming through Multimedia and Dry-run,” Res. J. Appl. Sci. Eng. Technol., vol. 7, no. 21, pp. 4455–4463, Jun. 2014. https://doi.org/10.19026/rjaset.7.822

S. Alhazbi, “Using e-journaling to improve self-regulated learning in introductory computer programming course,” en 2014 IEEE Global Engineering Education Conference (EDUCON), Istanbul, 2014, pp. 352–356. https://doi.org/10.1109/EDUCON.2014.6826116

A. F. Szpiniak y G. A. Rojo, “Enseñanza de la programación,” Rev. Iberoam. Tecnol. en Educ. y Educ. en Tecnol., vol. 1, no. 1, pp. 100–109, Dic. 2006. Disponible en: http://teyet-revista.info.unlp.edu.ar/TEyET/article/view/182/758

J. Kaasbøll, “Exploring didactic models for programming,” NIK 98–Norwegian Computer Science Conference, pp. 195–203, Tapir, 1998. Disponible en: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.37.5194&rep=rep1&type=pdf

C. Kelleher y R. Pausch, “Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers,” ACM Comput. Surv., vol. 37, no. 2, pp. 83–137, Jun. 2005. https://doi.org/10.1145/1089733.1089734

J. Sheard y D. Hagan, “Experiences with teaching object-oriented concepts to introductory programming students using C++,” en Proceedings. Technology of Object-Oriented Languages. TOOLS 24 (Cat. No.97TB100240), Beijing, 1997, pp. 310–319. https://doi.org/10.1109/TOOLS.1997.713558

C. Herbert, “An introduction to programming with Alice,” 2007. Disponible en: https://www.bookdepository.com/es/Introduction-Programming-Using-Alice-Charles-W-Herbert/9781418836252?ref=grid-view&qid=1567123591412&sr=1-3

Ali, A., y S. Mensch, “Issues and challenges for selecting a programming language in a technology update course.,” Information Systems Education Journal, no 7, vol. 85, pp. 1-10. Jul. 2008. Disponible en: https://www.semanticscholar.org/paper/Issues-and-Challenges-for-Selecting-a-Programming-a-Ali-Mensch/8bd7c209f5152e553dedaa2eb07da5992fee8ae6

MIT, “Learn to Program, Program to Learn,” Mit Media Lab, 2013. Disponible en: https://scratch.mit.edu/

P. Guo, “Python Is Now the Most Popular Introductory Teaching Language at Top ­U.S. ­Universities,” Commun. ACM, 2014. Disponible en: https://cacm.acm.org/blogs/blog-cacm/176450-python-is-now-the-most-popular-introductory-teaching-language-at-top-u-s-universities/fulltext

J. Alonso- Jiménez, Temas de “Programación lógica e I.A.” Open LIbra, 2013. Disponible en: https://openlibra.com/es/book/temas-de-programacion-logica-e-i-a

How to Cite
Jiménez-Toledo, J. A., Collazos, C., & Revelo-Sánchez, O. (2019). Considerations for the Teaching-Learning Processes of Introductory Programming Courses: A Systematic Literature Review. TecnoLógicas, 22, 83-117. https://doi.org/10.22430/22565337.1520

Downloads

Download data is not yet available.
Published
2019-12-05
Section
Review Article

Most read articles by the same author(s)