Scaled Agile Framework, SAFe® is the world's leading framework for Business Agility. SAFe® is built around seven Core Competencies with Customers as a focal point in the center. The seven core competencies each have three dimensions making it a total of twenty-one dimensions to enable Business Agility. These dimensions contain some of the practices, patterns, and guidelines to Scale Agility across the enterprise.
DevOps and the Continuous Delivery Pipeline
One of the Dimensions of Agile Product Delivery core competency.
DevOps is a mindset, a culture, and a set of technical practices. DevOps is a combination of two words, Development and Operation, indicating the ability to achieve speed and stability. DevOps makes continuous delivery possible. To survive and thrive through digital disruption, organizations should master the mindset and technical practices of DevOps. DevOps enables the Continuous Delivery Pipeline or CDP.
CALMR Approach to DevOps
While DevOps enables Continuous Delivery / Release on Demand capabilities, there are multiple facets that should not be ignored.
DevOps Handbook calls it CALMS (Culture, Automation, Lean, Measurement, Sharing) and SAFe® calls it CALMR (Culture, Automation, pLean Flow, Measurement, Recovery).
These approaches to
DevOps guide the teams and organization towards continuous value delivery and business outcomes.
DevOps strives to achieve Speed and Stability both at the same time, involving everyone on the Value Stream towards business outcomes. Factors like Increased frequency of deployment/delivery, quality, decreased risk, and improved mean time to recovery (MTTR) become a reality in this approach.
Culture
One of the major factors in this transformation is Culture. Such a culture requires the teams to be Customer Centric, Collaborative in nature sharing the learning and practices which work in the context and psychological safety for the teams to be tolerant of failures. The teams working in this environment imbibe the Principles of Lean and Agile in their day-to-day work.
Automation
The next facet of DevOps after the Culture, (while we intend not to say there is a sequence) is Automation. At scale, manual processes tend to hamper progress in turn causing compromise on Quality. We need to critically look at what part of the overall pipeline needs to be automated based on the need for speed, an initial investment in the infrastructure, and the extensibility of the system over a period of time to name a few considerations.
The following categories of tools/thoughts could be of great help in building the right automation.
- Version Control
- Infrastructure as Code / Service
- Test Automation
- Vulnerability Detection
- Monitoring and Controlling
- CI/CD and appropriate toolchain
Central idea is to get the feedback faster, helping improve business outcomes like all the facets of DevOps.
Lean Flow
When we strive to achieve a state of continuous flow, many of the Lean practices like WIP limit, Batch size, and Queue length need to be considered. Making the Work in Process visible, having small batch sizes which make the work go through the system faster, and closely managing the queue length for predictability becomes important.
Measurement
The ability to measure accurately the effectiveness of delivery of value to the customer is another aspect of DevOps. While there is no one measure fits all approach, looking at some of the Leading Indicators and Flow-based measurements works well for most of the implementation, large and small organizations alike. Measuring the flow, quality and value is paramount and each organization should think from the customer's (internal and external) perspective, about what makes sense for them.
Find Our Upcoming Trainings
Recovery
The last in the CALMR approach is the ability to Recover. When we care about low-risk releases, we need to be ready for unknowns. The capability of identifying the problems in a deployed solution and "either fixing forward or rolling back" helps with a seamless experience for the customer. This requires the architecture and infrastructure to enable solution/s to be built in a way to facilitate recovery. The skills needed from tools, technology, and mindset perspectives play a key role too. Lean thinking and rehearsing for failures are some of the key factors and practices to imbibe in the teams for this facet of DevOps to be successful.