Understanding DevOps and its siblings
At the time of writing, DevOps is an overinflated term. It is seen as a silver bullet for every development problem, and a mandatory prerequisite for being considered cool. I'm not going to decrease the hype about DevOps, as I truly believe it's a precious technique useful for ensuring functional and high-performing teams. However, it must be said that DevOps is more a set of best practices, rather than a well-codified, magic recipe. And, as is common in these cases, one size does not fit all.
DevOps can be seen as essentially an extension of Agile methodologies. Indeed, the adoption of Agile practices (not one specifically) can be seen as a prerequisite of DevOps. And, in turn, DevOps is considered to be an essential condition for the adoption of cutting-edge approaches such as microservices (more on this in Chapter 9, Designing Cloud-Native Architectures).
The essential characteristic of DevOps is cooperation between different...