Software Engineering Education in the DevOps Era: Experiences and Recommendations
DevOps has reached the mainstream, in part, because it proposed a way to solve the last mile of the software delivery process. It brought to the industry concrete solutions to some concerns that software engineering and academia have traditionally ignored. The popularity and success of DevOps got the attention of the academia and some universities have started to include DevOps related content in their programs. After doing our own experience, we found out that introducing DevOps is not as simple as adding a new course. In fact, it requires a major redesign of the Software Engineering curriculum. In this article we share some key ideas and recommendations to include DevOps in Software Engineering programs.
Bass, L., Weber, I., and Zhu, L. (2015). DevOps: A Software Architect’s Perspective. Addison-Wesley Professional, 1st edition.
Beyer, B., Jones, C., Petoff, J., and Murphy, N. (2016). Site Reliability Engineering: How Google Runs Production Systems. O’Reilly Media, Incorporated.
Bourque, P. and Fairley, R. E. (2014). Guide to the Software Engineering Body of Knowledge, Version 3.0. IEEE Computer Society.
Chatley, R. and Procaccini, I. (2020). Threading devops practices through a university software engineering programme. In 2020 IEEE 32nd Conference on Software Engineering Education and Training (CSEE&T), pages 1–5.
Demchenko, Y., Zhao, Z., Surbiryala, J., Koulouzis, S., Shi, Z., Liao, X., and Gordiyenko, J. (2019). Teaching devops and cloud based software engineering in university curricula. In 2019 15th International Conference on eScience (eScience), pages 548–552.
Fernandes, M., Ferino, S., Fernandes, A., Kulesza, U., Aranha, E., and Treude, C. (2022). Devops education: An interview study of challenges and recommendations.
Fong-Jones, L. and Vargo, S. (2018). What’s the difference between devops and sre? (class sre implements devops).
Fontela, C. and Santos, G. D. (2022). Learning communication skills in software development management courses: an active learning experience. In 2022 IEEE Biennial Congress of Argentina (ARGENCON), pages 1–8.
Hills, M. (2020). Introducing devops techniques in a software construction class. In 2020 IEEE 32nd Conference on Software Engineering Education and Training (CSEE&T).
Hobeck, R., Weber, I., Bass, L., and Yasar, H. (2021). Teaching devops: A tale of two universities. In Proceedings of the 2021 ACM SIGPLAN International Symposium on SPLASH-E, SPLASH-E 2021, page 26–31, New York, NY, USA. ACM.
IEEE Computer Society (2022). Software engineering body of knowledge v4 public review.
Jennings, R. A. K. and Gannod, G. (2019). Devops - preparing students for professional practice. In 2019 IEEE Frontiers in Education Conference (FIE), pages 1–5.
Paez, N. and de la Fuente, H. (2022). Software engineering education meets devops: an experience report. In 2022 IEEE Biennial Congress of Argentina (ARGENCON).
Schilling, W. W. (2022). Wip: Integrating modern development practices into a software engineering curriculum.
Villagra, S., Benedetti, G. D., Bruno, T., Fernández, L., and Outeda, N. (2020). Teaching software engineering: an active learning experience. In 2020 IEEE Congreso Bienal de Argentina (ARGENCON), pages 1–6.