Abstract
Learning through practice is crucial to acquire a complex skill. Nevertheless, learning is only effective if students have at their disposal a wide range of exercises that cover all the course syllabus and if their solutions are promptly evaluated and given the appropriate feedback. Currently the teaching-learning process in complex domains, such as computer programming, is characterized by an extensive curricula and a high enrolment of students. This poses a great workload for faculty and teaching assistants responsible for the creation, delivering and assessment of student exercises. In order to address these issues, we created an e-learning framework - called Ensemble - as a conceptual tool to organize and facilitate technical interoperability among systems and services in domains that use complex evaluation. These domains need a diversity of tools, from the environments where exercises are solved, to automatic evaluators providing feedback on the attempts of students, not forgetting the authoring, management and sequencing of exercises. This paper presents and analyzes the use of Ensemble for managing the teaching-learning process in an introductory programming course at ESEIG - a school of the Polytechnic of Porto. An experiment was conducted to validate a set of hypotheses regarding the expected gains: increase in number of solved exercises, increase class attendance, improve final grades. They support the conclusion that the use of this e-learning framework for the practice-based learning has a positive impact on the acquisition of complex skills, such as computer programming.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
IMS QTI Web site: http://www.imsglobal.org/question/.
- 2.
IOI Web site: http://ioinformatics.org.
- 3.
ICPC Web site: http://icpc.baylor.edu/.
- 4.
IEEExtreme Web site: https://tinyurl.com/ycm8pabf.
- 5.
- 6.
References
Gross, P., Powers, K.: Evaluating assessments of novice programming environments. In: Proceedings of the First International Workshop on Computing Education Research, ICER 2005, pp. 99–110. ACM, New York (2005)
Eckerdal, A.: Novice programming students’ learning of concepts and practise. Ph.D. thesis, Uppsala, Uppsala University, Division of Scientific Computing, Numerical Analysis (2009)
Ala-Mutka, K.: A survey of automated assessment approaches for programming assignments. J. Comput. Sci. Educ. 15(2), 83–102 (2005). http://www.tandfonline.com/doi/pdf/10.1080/08993400500150747
O’Kelly, J., Gibson, J.P.: Robocode & problem-based learning: a non-prescriptive approach to teaching programming. SIGCSE Bull. 38(3), 217–221 (2006)
Robins, A., Rountree, J., Rountree, N.: Learning and teaching programming: a review and discussion. Comput. Sci. Educ. 13, 137–172 (2003)
Esteves, M., Fonseca, B., Morgado, L., Martins, P.: Improving teaching and learning of computer programming through the use of the Second Life virtual world. Br. J. Educ. Technol. 42(4), 624–637 (2010)
Lahtinen, E., Ala-Mutka, K., Järvinen, H.-M.: A study of the difficulties of novice programmers. SIGCSE Bull. 37(3), 14–18 (2005)
Schulte, C., Bennedsen, J.: What do teachers teach in introductory programming? In: Proceedings of the Second International Workshop on Computing Education Research, ICER 2006, pp. 17–28. ACM, New York (2006)
Jenkins, T.: On the difficulty of learning to program. In: 3rd Annual Conference of LTSN-ICS, Loughbourgh (2002)
Gomes, A., Mendes, A.J.: Learning to program - difficulties and solutions. In: Proceedings of the International Conference on Engineering Education (2007)
Leal, J.P., Queirós, R.: eLearning frameworks: a survey. In: International Technology, Education and Development Conference, Valencia, Spain (2010)
Queirós, R., Leal, J.P.: A survey on eLearning content standardization. In: Lytras, M.D., Ruan, D., Tennyson, R.D., Ordonez De Pablos, P., García Peñalvo, F.J., Rusu, L. (eds.) WSKS 2011. CCIS, vol. 278, pp. 433–438. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-35879-1_52
Vansteenkiste, M., Deci, E.L.: Competitively contingent rewards and intrinsic motivation: can losers remain motivated? Motiv. Emot. 27, 273–299 (2003). https://doi.org/10.1023/A:1026259005264
Burguillo, J.C.: Using game theory and competition-based learning to stimulate student motivation and performance. Comput. Educ. 55(2), 566–575 (2010)
Siddiqui, A., Khan, M., Akhtar, S.: Supply chain simulator: a scenario-based educational tool to enhance student learning. Comput. Educ. 51(1), 252–261 (2008)
Douce, C., Livingstone, D., Orwell, J.: Automatic test-based assessment of programming: a review. J. Educ. Resour. Comput. 5(3), 4 (2005)
Romli, R., Sulaiman, S., Zamli, K.: Automatic programming assessment and test data generation a review on its approaches. In: 2010 International Symposium in Information Technology (ITSim), vol. 3, pp. 1186–1192 (2010)
Tremblay, G., Guérin, F., Pons, A., Salah, A.: Oto, a generic and extensible tool for marking programming assignments. Softw. Pract. Exper. 38(3), 307–333 (2008)
Spacco, J., Hovemeyer, D., Pugh, W., Emad, F., Hollingsworth, J.K., Padua-Perez, N.: Experiences with marmoset: designing and using an advanced submission and testing system for programming courses. SIGCSE Bull. 38(3), 13–17 (2006)
Wang, F.L., Wong, T.-L.: Designing programming exercises with computer assisted instruction. In: Fong, J., Kwan, R., Wang, F.L. (eds.) ICHL 2008. LNCS, vol. 5169, pp. 283–293. Springer, Heidelberg (2008). https://doi.org/10.1007/978-3-540-85170-7_25
Mory, E.H.: Feedback research revisited. In: Handbook of Research for Educational Communications and Technology (2007)
Daly, C.: Roboprof and an introductory computer programming course. SIGCSE Bull. 31(3), 155–158 (1999)
Truong, N.K.D.: A web-based programming environment for novice programmers. Ph.D. thesis, Queensland University of Technology (2007)
Lee, F., Heyworth, R.: Problem complexity: a measure of problem difficulty in algebra by using computer. Educ. J. 28(1), 85–107 (2000)
Queirós, R., Leal, J.P.: PETCHA - a programming exercises teaching assistant. In: ACM SIGCSE 17th Annual Conference on Innovation and Technology in Computer Science Education, Haifa, Israel. ACM (2012)
Rongas, T., Kaarna, A., Kalviainen, H.: Classification of computerized learning tools for introductory programming courses: learning approach. In: Kinshuk, Looi, C.-K., Sutinen, E., Sampson, D.G., Aedo, I., Uden, L., Kaahkaonen, E. (eds.) ICALT. IEEE Computer Society (2004)
Verdú, E., Regueras, L.M., Verdú, M.J., Leal, J.P., de Castro, J.P., Queirós, R.: A distributed system for learning programming on-line. Comput. Educ. 58, 1–10 (2011)
Xavier, J., Coelho, A.: Computer-based assessment system for e-learning applied to programming education. In: Proceedings of 4th International Conference of Education, Research and Innovations, ICERI 2011, pp. 3738–3747. IATED (2011)
Guerreiro, P., Georgouli, K.: Enhancing elementary programming courses using e-learning with a competitive attitude. Int. J. Internet Educ. 10, 38 (2008)
Queirós, R., Leal, J.P.: Orchestration of e-learning services for automatic evaluation of programming exercises. 18(11), 1454–1482 (2012). http://www.jucs.org/jucs1811=orchestrationofelearningservices
Nielson, F., Nielson, H.R., Hankin, C.: Principles of Program Analysis. Springer New York Inc., Secaucus (1999)
Acknowledgments
This work is partially funded by the ERDF through the COMPETE 2020 Programme within project POCI-01-0145-FEDER-006961, and by National Funds through the FCT as part of project UID/EEA/50014/2013.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2018 Springer International Publishing AG, part of Springer Nature
About this paper
Cite this paper
Queirós, R., Leal, J.P. (2018). Fostering Students-Driven Learning of Computer Programming with an Ensemble of E-Learning Tools. In: Rocha, Á., Adeli, H., Reis, L., Costanzo, S. (eds) Trends and Advances in Information Systems and Technologies. WorldCIST'18 2018. Advances in Intelligent Systems and Computing, vol 746. Springer, Cham. https://doi.org/10.1007/978-3-319-77712-2_28
Download citation
DOI: https://doi.org/10.1007/978-3-319-77712-2_28
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-77711-5
Online ISBN: 978-3-319-77712-2
eBook Packages: EngineeringEngineering (R0)