Abstract

DevOps has become very popular lately. Many job ads refer to DevOps, I have students who interview for positions as “DevOps Engineer”, and multiple conferences and summer schools are devoted to the topic. In this talk, I will explore the extent to which DevOps represents an evolution or earlier ideas and the extent to which it differs from earlier ideas. DevOps is a set of practices intended to reduce the time between committing code and that code being deployed. Associated with these practices are a set of metrics and three interlocking aspects: cultural change, organizational change, and technological change. The metrics are used to measure improvements in the DevOps processes. This places DevOps in the process improvement world along with the CMM from the 1980s and product line practices from the 1990s. Where DevOps differs from previous activities is in the technological change area. DevOps tools are used to implement and enforce the various practices. In this it differs dramatically from prior efforts. But even DevOps tools have a history. They, in large part, depend on the cloud from the 2000s. Containers were introduced in the late 1970s. Configuration management systems date from the 1990s. With all this background, however, DevOps tools represent something new in software engineering both in their integration and in their breadth. In this talk, we will explore the new aspects of DevOps as well as some implications for education.

Recommended Citation

Bass, L. (2021). DevOps: Evolution or Revolution? In E. Insfran, F. González, S. Abrahão, M. Fernández, C. Barry, H. Linger, M. Lang, & C. Schneider (Eds.), Information Systems Development: Crossing Boundaries between Development and Operations (DevOps) in Information Systems (ISD2021 Proceedings). Valencia, Spain: Universitat Politècnica de València.

Paper Type

Keynote Presentation

Share

COinS
 

DevOps: Evolution or Revolution?

DevOps has become very popular lately. Many job ads refer to DevOps, I have students who interview for positions as “DevOps Engineer”, and multiple conferences and summer schools are devoted to the topic. In this talk, I will explore the extent to which DevOps represents an evolution or earlier ideas and the extent to which it differs from earlier ideas. DevOps is a set of practices intended to reduce the time between committing code and that code being deployed. Associated with these practices are a set of metrics and three interlocking aspects: cultural change, organizational change, and technological change. The metrics are used to measure improvements in the DevOps processes. This places DevOps in the process improvement world along with the CMM from the 1980s and product line practices from the 1990s. Where DevOps differs from previous activities is in the technological change area. DevOps tools are used to implement and enforce the various practices. In this it differs dramatically from prior efforts. But even DevOps tools have a history. They, in large part, depend on the cloud from the 2000s. Containers were introduced in the late 1970s. Configuration management systems date from the 1990s. With all this background, however, DevOps tools represent something new in software engineering both in their integration and in their breadth. In this talk, we will explore the new aspects of DevOps as well as some implications for education.