DevOps and its Philosophy : Education Matters!

DevOps processes comply with principles and offer practices with main objective to support efficiently the evolution of IT systems. To be efficient a DevOps process relies on a set of integrated tools. DevOps is the first required competency together with Agile Method required by the industry. DevOps processes are sharing many aspects with microservices approaches especially the modularity and flexibility which enables continuous change and delivery. As a new approach it is necessary to developp and offer to the academy and to the industry training programs to prepare our engineers in the best possible way. In this chapter we present the main aspects of the educational effort made in the recent years to educate to the concepts and values of the DevOps philosophy. This includes principles, practices, tools and architectures, primarily the Microservice architectural style. Two experiences have been made, one at academic level as a master program course and the other, as an industrial training. Based on those two experiences, we provide a comparative analysis and some proposals in order to develop and improve DevOps education for the future.

[1]  Ramtin Jabbari,et al.  What is DevOps?: A Systematic Mapping Study on Definitions and Practices , 2016, XP Workshops.

[2]  Manuel Mazzara,et al.  Deriving Specifications of Dependable Systems: toward a Method , 2010, ArXiv.

[3]  Ivan Lanese,et al.  Towards a Unifying Theory for Web Services Composition , 2006, WS-FM.

[4]  Lianping Chen,et al.  The Journal of Systems and Software , 2022 .

[5]  Manuel Mazzara,et al.  Toward Design, Modelling and Analysis of Dynamic Workflow Reconfigurations - A Process Algebra Perspective , 2011, WS-FM.

[6]  Manuel Mazzara,et al.  Jolie Good Buildings: Internet of things for smart building infrastructure supporting concurrent apps utilizing distributed microservices , 2016, ArXiv.

[7]  Alberto Sillitti,et al.  Teaching DevOps in Corporate Environments: An experience report , 2018, DEVOPS.

[8]  Antonio Bucchiarone,et al.  From Monolithic to Microservices: An Experience Report from the Banking Domain , 2018, IEEE Software.

[9]  Michael Le,et al.  Container and Microservice Driven Design for Cloud Infrastructure DevOps , 2016, 2016 IEEE International Conference on Cloud Engineering (IC2E).

[10]  Michael A. Cusumano,et al.  How Microsoft builds software , 1997, CACM.

[11]  Marite Kirikova,et al.  Simplifying the DevOps Adoption Process , 2017, BIR Workshops.

[12]  Liming Zhu,et al.  DevOps - A Software Architect's Perspective , 2015, SEI series in software engineering.

[13]  Adil Mehmood Khan,et al.  Teaching Programming and Design-by-Contract , 2018 .

[14]  Fabrizio Montesi,et al.  Microservices: Yesterday, Today, and Tomorrow , 2017, Present and Ulterior Software Engineering.

[15]  Pooyan Jamshidi,et al.  Microservices Architecture Enables DevOps: Migration to a Cloud-Native Architecture , 2016, IEEE Software.

[16]  Nicolas Guelfi,et al.  Design of a (Yet Another?) DevOps Course , 2018, DEVOPS.

[17]  Mario Piattini,et al.  Mutation Testing , 2014, IEEE Software.

[18]  Jeff Sutherland,et al.  The Scrum Guide , 2012 .

[19]  Manuel Mazzara,et al.  Towards Abstractions for Web Services Composition , 2006 .

[20]  Mu Zhou,et al.  Dependable Workflow Reconfiguration in WS-BPEL , 2011 .

[21]  Watts S. Humphrey,et al.  Introduction to the Team Software Process , 1999 .

[22]  Ivan Lanese,et al.  Microservices: How To Make Your Application Scale , 2017, Ershov Informatics Conference.

[23]  Manuel Mazzara,et al.  Microservice-Based IoT for Smart Buildings , 2016, 2017 31st International Conference on Advanced Information Networking and Applications Workshops (WAINA).

[24]  Albert Zündorf,et al.  On Collaborative Model-driven Development of Microservices , 2018, STAF Workshops.

[25]  Zhixian Yan,et al.  BPMO: Semantic Business Process Modeling and WSMO Extension , 2007, IEEE International Conference on Web Services (ICWS 2007).

[26]  Muhammad Ali Babar,et al.  Collaborative Software Development Platforms for Crowdsourcing , 2014, IEEE Software.

[27]  Zhixian Yan,et al.  Business Process Modeling: Classifications and Perspectives , 2007, BPSC.