'The DevOps Handbook' es una amplia descripción de la filosofía DevOps, de sus motivaciones, sus técnicas y su aplicación, a cargo de cuatro de los
personajes más relevantes en el nacimiento y evangelización de esta forma de entender la gestión de la TI.
El libro se estructura en 23 capítulos agrupados en seis partes.
- 'PART I - INTRODUCTION':
En esta primera parte se nos explican los fundamentos de DevOps, se nos identifican los antecedentes, Lean
management y el movimiento agile, y se identifican y describen someramente las tres vías o caminos en que se apoya DevOps: el flujo que va del desarrollo
a la puesta en producción, el feedback que recorre el camino inverso, y el aprendizaje y experimentación continuos en todas las fases de la cadena. Para
conseguirlo, los autores dividen esta parte en estos cuatro capítulos:
- 'Agile, Continuous Delivery, and the three ways'
- 'The first way: the principles of flow'
- 'The second way: the principles of feedback'
- 'The third way: the principles of continual learning and experimentation'
- 'PART II - WHERE TO START':
Esta parte describe algunos elementos sobre cómo iniciar una transformación DevOps, primero evaluando nuestros flujos actuales, a continuación identificando
el mejor punto donde comenzar y creando un equipo específico de transformación. Se insiste en aspectos como, por ejemplo, hacer muy visible el trabajo que
se realiza o en el diseño organizacional que tenga en cuenta la ley de Conway según la cual el software generado es un reflejo de la organización que lo
ha realizado (es decir, que tiende a tener los mismos módulos o partes que equipos han participado). Esta parte se desarrolla en los siguientes cuatro
capítulos:
- 'Selecting which value stream to start with'
- 'Understanding the work in our value stream, making it visible, and expanding it across the organization'
- 'How to design our organizations and architecture with Conway's law in mind'
- 'How to get great outcomes by integrating operations into the daily work of development'
- 'PART III - THE FIRST WAY: THE TECHNICAL PRACTICES OF FLOW':
Las siguientes tres partes describen en detalle, cada una, uno de los tres caminos o vía que se introdujeron en la primera parte. En concreto, aquí se
profundiza en la primera vía, aquella que recoge el flujo de desarrollo a producción y los mecanismos para conseguir que ese camino funcione de una manera
ágil y, al tiempo, segura y con calidad. Es aquí donde se explican conceptos tan importantes de DevOps como son la prueba automatizada y la integración
continua. Esta parte se estructura en los siguientes cinco capítulos:
- 'Create the foundations of our deployment pipeline'
- 'Enable fast and reliable automated testing'
- 'Enable and practice continuous integration'
- 'Automate and enable low-risk releases'
- 'Architect low-risk releases'
- 'PART IV - THE SECOND WAY: THE TECHNICAL PRACTICES OF FEEDBACK':
Se aborda ahora el segundo camino o vía de DevOps, el que recorre el camino contrario al flujo de desarrollo y despligeue para proporcionar feedback
sobre cómo marcha el proceso. Se insiste en aspectos como la monitorización y medida automatizados así como otros mecanismos más procedimentales como
los test A/B o la revisión y coordinación. Para ello, los autores desarrollan cinco capítulos:
- 'Create telemetry to enable seeing and solving problems'
- 'Analyze telemetry to better anticipate problems and achieve goals'
- 'Enable feedback so development and operations can safely deploy code'
- 'Integrate hypothesis-driven development and A/B testing into our daily work'
- 'Create review and coordination processes to increase quality of our curent work'
- 'PART V - THE THIRD WAY: THE TECHNICAL PRACTICES OF INTEGRATING INFORMATION SECURITY, CHANGE MANAGEMENT, AND COMPLIANCE':
Detalla el último de los tres caminos, quizá el menos estructurado, que es el aprendizaje continuo, un aprendizaje que debe ser rápido, frecuente y barato
y que afecta a todos los equipos y puntos de la cadena. Se apuesta por una cultura de la seguridad o prácticas como el generar intencionadamente incidencias
en producción para capacitar a los equipos a reaccionar ante ellos. Esta temática ocupa tres capítulos:
- 'Enable and inject learning into dayly work':
- 'Convert local discoveries into global improvements':
- 'Reserve time to create organizational learning and improvement':
- 'PART VI - THE TECHNICAL PRACTICES OF INTEGRATING INFORMATION SECURITY, CHANGE MANAGEMENT, AND COMPLIANCE':
Finalizan los autores con una parte un poco más corta en que se insisten en los aspectos de la seguridad, que debe estar imbuida en todos los pasos y que
se apoya, entre otras cosas, en la automatización de los controles necesarios o en la inclusión de la seguridad entre los elementos a monitorizar en
producción. También se tratan ciertos aspectos de la gestión de cambios y de conformidad. Para ello emplean los autores los dos últimos capítulos:
- 'Information security as everyone's job, every day':
- 'Protecting the deployment pipeline and integrating into change management and other security and compliance controls':
'The DevOps handbook' es un libro riguroso, en el que es fácil reconocer la experiencia y conocimiento reales de los autores en el desarrollo y explotación
de sistemas. Es un libro, además, bastante profundo, que da muchas explicaciones de las ideas que propone, aporta casos reales e incluso identifica herramientas
software específicas, aunque bien es cierto que para llevar DevOps a una organización real todavía se necesitarían más detalles y ejemplos.
Una filosofía, DevOps, más que interesante y necesaria, y una explicación profunda y cualificada de la misma por parte de los autores.
|