What this book covers
Chapter 1, Understanding the Software Development Life Cycle, provides an overview of the Software Development Life Cycle (SDLC), the software industry’s procedure for creating new software. This technique ensures that software developers build high-quality, low-cost products in the shortest amount of time possible.
Chapter 2, A Brief Introduction to Release Management, defines what release management is, its cultural significance, and its technical perspective. We’ll also review a brief history of release management and understand how it has evolved over the years, including a review of the standard six phases of any release management model.
Chapter 3, What Are the Various SDLC Release Management Models?, covers release management models such as ITIL, Waterfall, iterative, V-shaped, spiral, big bang, Agile, and DevOps.
Chapter 4, What Problems Does DevOps Release Management Try to Solve?, makes the case for why the qualities of DevOps differentiate it as a superior release management methodology by incorporating automation, minimizing risk, streamlining releases, and measuring success by tracking metrics and analyzing key performance indicators.
Chapter 5, Understanding What Makes DevOps Release Management Unique, discusses how release management is a holistic practice, taking every component of a value stream into account. DevOps integrates CI, CD, QA, security, and feedback, through the use of well-crafted, automated pipelines and a carefully selected patchwork of testing and approval processes.
Chapter 6, Understanding the Basics of CI/CD, explores CI/CD, a key strategy of DevOps release management. It automates the majority of manual human intervention that would traditionally be needed in order to produce a new software release or get new code into production.
Chapter 7, A Practical Pipeline for Technical Release Managers, will be a little different from the rest of this book. You will be shown how to build a Docker image containing a simple web application that deploys to AWS ECS, using GitHub Actions.
Chapter 8, How CI/CD Pipelines Enforce Good DevOps Release Management, covers topics including managing speed-to-market and CI/CD governance, developing your team’s branching strategy, constructing release pipelines, and implementing a change approval process that is appropriate for DevOps release management!
Chapter 9, Embracing DevOps Culture in Your Release Management Strategy, discusses developing a DevOps culture, with thorough planning and a unified approach. You’ll be shown how to get buy-in from executive leadership, form a DevOps team from the ground up, and gradually define processes that foster a culture of collaboration and continuous improvement.
Chapter 10, What Does Receiving Support from Leadership and Stakeholders Look Like, discusses how DevOps culture necessitates the unwavering backing and active involvement of the leadership within the organization. If these individuals do not wholeheartedly support and commit to the DevOps initiative, there is a significant likelihood of its failure.
Chapter 11, Overcoming Common Pitfalls in DevOps Release Management, looks at aspects such as aligning with an organization’s unique culture, working style, and software release objectives to avoid common pitfalls in DevOps release management. If you look at enough DevOps-centric establishments, you’ll notice that they encounter several common pitfalls over the course of their operations.
Appendix, contains a glossary of terms, answers to chapter questions, additional content, and templates of common documents that release managers use in their daily activities.