journal article·2020-12-31Open access

A Pilot Experience with Software Programming Environments as a Service for Teaching Activities

Amanda Calatrava Arroyo, Marcos Ramos Montes, J. Damian Segrelles Quilis

Applied Sciences· Volume 11· Issue 1

Abstract

Software programming is one of the key abilities for the development of Computational Thinking (CT) skills in Science, Technology, Engineering and Mathematics (STEM). However, specific software tools to emulate realistic scenarios are required for effective teaching. Unfortunately, these tools have some limitations in educational environments due to the need of an adequate configuration and orchestration, which usually assumes an unaffordable work overload for teachers and is inaccessible for students outside the laboratories. To mitigate the aforementioned limitations, we rely on cloud solutions that automate the process of orchestration and configuration of software tools on top of cloud computing infrastructures. This way, the paper presents ACTaaS as a cloud-based educational resource that deploys and orchestrates a whole realistic software programming environment. ACTaaS provides a simple, fast and automatic way to set up a professional integrated environment without involving an overload to the teacher, and it provides an ubiquitous access to the environment. The solution has been tested in a pilot group of 28 students. Currently, there is no tool like ACTaaS that allows such a high grade of automation for the deployment of software production environments focused on educational activities supporting a wide range of cloud providers. Preliminary results through a pilot group predict its effectiveness due to the efficiency to set up a class environment in minutes without overloading the teachers, and providing ubiquitous access to students. In addition, the first student opinions about the experience were greatly positive.
Source: crossref · Quality: baseline

Research context

OpenAlex topics: Cloud Computing and Resource Management · IoT and Edge/Fog Computing · Online Learning and Analytics

SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.

Affiliations

Instituto de Instrumentación para Imagen Molecular (I3M), Universitat Politècnica de València (UPV), 46022 Valencia, Spain

Funding

Vicerrectorado de Estudios, Calidad y Acreditación of Universitat Politècnica de València · Consellería d'Innovació, Universitat, Ciència i Societat Digital, Generalitat Valenciana

References (33)

Show source-provided references
1. Khine, M.S. (2018). Computational Thinking in the STEM Disciplines: Foundations and Research Highlights, Springer.10.1007/978-3-319-93566-9 ↗
2. Velázquez-Iturbied, J.Á. (2018, January 19–21). Towards an Analysis of Computational Thinking. Proceedings of the 2018 International Symposium on Computers in Education (SIIE), Jerez, Spain.10.1109/SIIE.2018.8586710 ↗
3. Burbaitė, R., Drąsutė, V., and Štuikys, V. (2018, January 17–20). Integration of computational thinking skills in STEM-driven computer science education. Proceedings of the 2018 IEEE Global Engineering Education Conference (EDUCON), Tenerife, Spain.10.1109/EDUCON.2018.8363456 ↗
4. Hu, C.C., Tseng, H.T., Chen, M.H., Alexis, G.P.I., and Chen, N.S. (2020, January 6–9). Comparing the effects of robots and IoT objects on STEM learning outcomes and computational thinking skills between programming-experienced learners and programming-novice learners. Proceedings of the 2020 IEEE 20th International Conference on Advanced Learning Technologies (ICALT), Tartu, Estonia.10.1109/ICALT49669.2020.00033 ↗
5. The effectiveness of learning simulations for electronic laboratories10.1002/j.2168-9830.2002.tb00675.x ↗
6. Enhancing the learning of fluid mechanics using computer simulations10.1002/j.2168-9830.2007.tb00946.x ↗
7. Collaboration and fuzzy-modeled personalization for mobile game-based learning in higher education10.1016/j.compedu.2019.103698 ↗
8. Cloud computing and education: A state-of-the-art survey10.1016/j.compedu.2014.08.017 ↗
9. Segrelles, J.D., Moltó, G., and Caballer, M. (2015, January 5–7). Remote Computational Labs for Educational Activities via a Cloud Computing Platform. Proceedings of the 2015 Information Systems Education Conference (ISECON), Orlando, FL, USA.
10. Segrelles, J.D., and Moltó, G. (2016, January 12–15). Assessment of Cloud-based Computational Environments for Higher Education. Proceedings of the 2016 IEEE Frontiers in Education Conference, Erie, PA, USA.10.1109/FIE.2016.7757604 ↗
11. Analysis of information and communication technologies in higher education: A case study of business degree
12. Balancing software engineering education and industrial needs10.1016/j.jss.2012.01.060 ↗
13. A survey of evidence for test-driven development in academia10.1145/1383602.1383644 ↗
14. An experience in integrating automated unit testing practices in an introductory programming course10.1145/820127.820183 ↗
15. Bowyer, J., and Hughes, J. (2006, January 20–28). Assessing undergraduate experience of continuous integration and test-driven development. Proceedings of the 28th International Conference on Software Engineering, Shanghai, China.10.1145/1134285.1134393 ↗
16. Matthies, C., Treffer, A., and Uflacker, M. (2017, January 18–21). Prof. CI: Employing continuous integration services and Github workflows to teach test-driven development. Proceedings of the 2017 IEEE Frontiers in Education Conference (FIE), Indianapolis, ID, USA.10.1109/FIE.2017.8190589 ↗
17. Hill, J.H. (2010, January 1–8). CUTS: A system execution modeling tool for realizing continuous system integration testing. Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering, Cape Town, South Africa.10.1145/1810295.1810365 ↗
18. Angulo, M.A., and Aktunc, O. (2019). Using GitHub as a teaching tool for programming courses. ASEE Gulf-Southwest Section Annual Meeting 2018 Papers, American Society for Engineering Education.10.18260/1-2-370.620-31594 ↗
19. Mason, R.T., Masters, W., and Stark, A. (2017, January 21–23). Teaching Agile Development with DevOps in a Software Engineering and Database Technologies Practicum. Proceedings of the 3rd International Conference on Higher Education Advances, Valencia, Spain.10.4995/HEAD17.2017.5607 ↗
20. Heckman, S., and King, J. (2018, January 21–24). Developing software engineering skills using real tools for automated grading. Proceedings of the 49th ACM Technical Symposium on Computer Science Education, Baltimore, MD, USA.10.1145/3159450.3159595 ↗
21. (2020, December 20). OASIS Topology and Orchestration Specification for Cloud Applications (TOSCA). Available online: https://www.oasis-open.org/committees/tc_home.php?wg_abbrev=tosca.
22. Cloud resource orchestration in the multi-cloud landscape: A systematic review of existing frameworks10.1186/s13677-020-00194-7 ↗
23. (2020, December 20). Cloudify. Available online: https://cloudify.co.
24. Massachusetts Institute of Technology (2020, December 20). StarCluster. Available online: http://web.mit.edu/stardev/cluster/.
25. Zurich, U. (2020, December 20). ElastiCluster. Available online: https://elasticluster.github.io/elasticluster/.
26. The Apache Software Foundation (2020, December 20). Apache ARIA TOSCA Orchestration Engine. Available online: http://ariatosca.incubator.apache.org.
27. University of Stuttgart (2020, December 20). OpenTOSCA. Available online: http://www.opentosca.org.
28. Giannakopoulos, I., Papailiou, N., Mantas, C., Konstantinou, I., Tsoumakos, D., and Koziris, N. (2, January 27). CELAR: Automated application elasticity platform. Proceedings of the 2014 IEEE International Conference on Big Data (Big Data), Anchorage, AK, USA.10.1109/BigData.2014.7004481 ↗
29. CompatibleOne: The Open Source Cloud Broker10.1007/s10723-013-9285-0 ↗
30. Dynamic management of virtual infrastructures10.1007/s10723-014-9296-5 ↗
31. Hat, R. (2020, December 20). Ansible. Available online: https://www.ansible.com/.
32. JUnit Team (2020, December 20). JUnit Framework for Java. Available online: https://junit.org/.
33. Arien Malec, E.A. (2020, December 20). Check Unit Testing Framework for C. Available online: https://libcheck.github.io/check/.