Current DevOps Teaching Techniques: A Systematic Literature Review

  • Pedro S. C. Garcia UFOP
  • José Ferreira UFMG
  • Matheus Gonçalves UFMG
  • Tiago Carneiro UFOP
  • Eduardo Figueiredo UFMG
  • Igor M. Pereira UFOP

Resumo


DevOps is a set of practices that deals with the coordination between development and operations, in the context of teams, with the main objective of ensuring continuous integration and delivery, quality, and reliability. DevOps, which builds upon modern processes, is currently evolving. So, finding specific techniques for teaching it is crucial. This study aims to identify in the software engineering literature the existence of studies that have used techniques to teach DevOps in the last five years. To achieve this, a systematic literature review was conducted to identify teaching techniques applied in the DevOps contexts, as well as the associated benefits and challenges. From 27 papers with 40 cited techniques, we found that the most common teaching techniques are Project-Based Learning followed by Collaborative Learning and the Flipped Classroom, where 70% can be considered active methods. The benefits include increased student engagement, simulation of real industry experience, and improved practical and technical skills. However, challenges arise in validating student performance, keeping up with the rapidly changing DevOps content, and finding sufficient time to teach during a course.

Palavras-chave: DevOps, Education, Teaching Techniques

Referências

Ali Alammary, Angela Carbone, and Judy Sheard. 2016. Blended learning in higher education: Delivery methods selection.

Fernando Almeida, Jorge Simões, and Sérgio Lopes. 2022. Exploring the benefits of combining devops and agile. Future Internet 14, 2, 63.

Atlassian. 2024. Atlassian Survey 2020 - DevOps Trends. Disponível em: [link]. Acessado em: 06/05/2024.

Atlassian. 2024. O ciclo de vida de DevOps. Disponível em: [link]. Acessado em: 24/04/2024.

Len Bass, Ingo Weber, and Liming Zhu. 2015. DevOps: A software architect’s perspective. Addison-Wesley Professional.

Evgeny Bobrov, Antonio Bucchiarone, Alfredo Capozucca, Nicolas Guelfi, Manuel Mazzara, and Sergey Masyagin. 2020. Teaching DevOps in academia and industry: reflections and vision. In Software Engineering Aspects of Continuous Development and New Paradigms of Software Production and Deployment: Second International Workshop, DEVOPS 2019, Château de Villebrumier, France, May 6–8, 2019, Revised Selected Papers 2. Springer, 1–14.

Evgeny Bobrov, Antonio Bucchiarone, Alfredo Capozucca, Nicolas Guelfi, Manuel Mazzara, Alexandr Naumchev, and Larisa Safina. 2020. Devops and its philosophy: Education matters! Microservices: Science and Engineering, 349–361.

Pierre Bourque. 2020. The SWEBOK Guide—More Than 20 Years down the Road. In 2020 IEEE 32nd Conference on Software Engineering Education and Training (CSEE&T). IEEE, 1–2.

Jean-Michel Bruel and Miguel Jiménez. 2019. DevOps’ 18 education panel: Teaching feedback and challenges. In Software Engineering Aspects of Continuous Development and New Paradigms of Software Production and Deployment: First International Workshop, DEVOPS 2018, Chateau de Villebrumier, France, March 5-6, 2018, Revised Selected Papers 1. Springer, 221–226.

Angela Carrera-Rivera, William Ochoa, Felix Larrinaga, and Ganix Lasa. 2022. How-to conduct a systematic literature review: A quick guide for computer science research. MethodsX 9, 101895.

Devopedia. 2022. DEVOPEDIA - For developers - By developers. [link] [Accessed 2024-01-05.)].

Andrej Dyck, Ralf Penners, and Horst Lichter. 2015. Towards definitions for release engineering and DevOps. In 2015 IEEE/ACM 3rd International Workshop on Release Engineering. IEEE, 3–3.

Samuel Ferino, Marcelo Fernandes, Elder Cirilo, Lucas Agnez, Bruno Batista, Uirá Kulesza, Eduardo Aranha, and Christoph Treude. 2023. Overcoming Challenges in DevOps Education through Teaching Method. In 2023 IEEE/ACM 45th International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET). IEEE, 166–178.

Eduardo Fernandes, Johnatan Oliveira, Gustavo Vale, Thanis Paiva, and Eduardo Figueiredo. 2010. A Review-based Comparative Study of Bad Smell Detection Tools. (2010).

Marcelo Fernandes, Samuel Ferino, Uirá Kulesza, and Eduardo Aranha. 2020. Challenges and recommendations in devops education: A systematic literature review. In Proceedings of the XXXIV Brazilian Symposium on Software Engineering. 648–657.

Nicole Forsgren, Jez Humble, and Gene Kim. 2018. Accelerate: The science of lean software and devops: Building and scaling high performing technology organizations. IT Revolution.

GitHub. 2024. Analise para banco de dados e texto. [link] [Accessed 2024-05-23.)].

Alexandre Grotta and Edmir Parada Vasques Prado. 2022. Devops didactic transposition in is higher education: A systematic literature review.

Egon G Guba. 1981. Criteria for assessing the trustworthiness of naturalistic inquiries. Ectj 29, 2, 75–91.

Joonas Hamunen et al. 2016. Challenges in adopting a Devops approach to software development and operations.

Susanna Hartikainen, Heta Rintala, Laura Pylväs, and Petri Nokelainen. 2019. The Concept of Active Learning and the Measurement of Learning Outcomes: A Review of Research in Engineering Higher Education. Education Sciences 9, 4. DOI: 10.3390/educsci9040276

Gene Kim, Jez Humble, Patrick Debois, John Willis, and Nicole Forsgren. 2021. The DevOps handbook: How to create worldclass agility, reliability, & security in technology organizations. IT Revolution.

Barbara Kitchenham, Stuart Charters, et al. 2007. Guidelines for performing systematic literature reviews in software engineering. UK.

Leonardo Leite, Carla Rocha, Fabio Kon, Dejan Milojicic, and Paulo Meirelles. 2019. A survey of DevOps concepts and challenges. ACM Computing Surveys (CSUR) 52, 6, 1–35.

Candy Pang, Abram Hindle, and Denilson Barbosa. 2020. Understanding devops education with grounded theory. In Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering: Software Engineering Education and Training. 107–118.

Igor Muzetti Pereira, Tiago Carneiro, and Eduardo Figueiredo. 2021. A systematic review on the use of devops in internet of things software systems. In Proceedings of the 36th Annual ACM Symposium on Applied Computing. 1569–1571.

Igor Muzetti Pereira, Tiago Garcia de Senna Carneiro, and Eduardo Figueiredo. 2021. Investigating continuous delivery on iot systems. In Proceedings of the XX Brazilian Symposium on Software Quality. 1–10.

Juliana Alves Pereira, Kattiana Constantino, and Eduardo Figueiredo. 2014. A systematic literature review of software product line management tools. In Software Reuse for Dynamic Systems in the Cloud and Beyond: 14th International Conference on Software Reuse, ICSR 2015, Miami, FL, USA, January 4-6, 2015. Proceedings 14. Springer, 73–89.

Mary Poppendieck and Tom Poppendieck. 2003. Lean software development: An agile toolkit: An agile toolkit. Addison-Wesley.

Maurício Souza, Renata Moreira, and Eduardo Figueiredo. 2019. Students perception on the use of project-based learning in software engineering education. In Proceedings of the XXXIII Brazilian Symposium on Software Engineering. 537–546.

Mauricio R de A Souza, Lucas Veado, Renata Teles Moreira, Eduardo Figueiredo, and Heitor Costa. 2018. A systematic mapping study on game-related methods for software engineering education. Information and software technology 95 (2018), 201–218.

Marco Tulio Valente. 2020. Engenharia de software moderna. Princípios e Práticas para Desenvolvimento de Software com Produtividade 1, 24.

Pornpit Wongthongtham, Elizabeth Chang, Tharam Dillon, and Ian Sommerville. 2008. Development of a software engineering ontology for multisite software development. IEEE Transactions on knowledge and Data Engineering 21, 8, 1205–1217.

Xin Zhou, Yuqin Jin, He Zhang, Shanshan Li, and Xin Huang. 2016. A map of threats to validity of systematic literature reviews in software engineering. In 2016 23rd Asia-Pacific Software Engineering Conference (APSEC). IEEE, 153–160.
Publicado
30/09/2024
GARCIA, Pedro S. C.; FERREIRA, José; GONÇALVES, Matheus; CARNEIRO, Tiago; FIGUEIREDO, Eduardo; PEREIRA, Igor M.. Current DevOps Teaching Techniques: A Systematic Literature Review. In: SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 38. , 2024, Curitiba/PR. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2024 . p. 389-398. DOI: https://doi.org/10.5753/sbes.2024.3503.