Agile Product Delivery
Specifically, you can take the time to develop and bring to the table an outside-in, market-centric perspective that is so compelling and so well informed that it can counterbalance the inside-out company-centric orientation of last year’s operating plan.
—Geoffrey Moore, Escape Velocity
Agile Product Delivery
Why Agile Product Delivery?
Achieving business agility requires Agile Teams and Agile Release Trains (ARTs) to increase their ability to deliver innovative products and services rapidly. This capability requires balancing the focus on execution and customers, ensuring the creation of the right solutions, for the right customers, at the right time.
Figure 1 illustrates the three dimensions of APD:
- Customer Centricity and Design Thinking
- Develop on Cadence, Release on Demand
- DevOps and the Continuous Delivery Pipeline
The mutually supportive capabilities of the APD competency create opportunities for sustained market and service leadership.
Customer Centricity and Design Thinking
Customer centricity and design thinking comprise the first dimension of APD. This mindset and way of doing business put the customer first, at the enterprise’s core, to provide positive customer experiences and build long-term relationships.
Customer Centricity is a mindset and way of doing business that focuses on creating positive user experiences and customer engagement with the organization’s products and services. It puts the customer at the center of every decision, deeply considering the effect on its end users . This mindset motivates long-term customer relationships, enabling more customer value, often in unexpected ways . This dimension of APD encourages Agile Teams to:
- Focus on the customer – Employ user and market research, including developing personas, to align and focus the organization on specific, targeted user segments.
- Understand the customer’s needs – Invest time in identifying and building solutions that address these needs.
- Think and feel like the customer – Apply empathy and strive to see the world from their customers’ point of view.
- Build whole product solutions – Design whole product solutions for the user’s needs, ensuring that the initial and long-term user experiences are optimal and evolve as needed.
- Create customer lifetime value – Move beyond a transactional mentality and focus on the overall customer relationship over the solution’s life. .
Customer-centric businesses create greater profits, employee engagement, and customer satisfaction. Customer-centric governments and nonprofits create resilience, sustainability, and the alignment needed to fulfill their mission.
Product Management is responsible for coordinating and bringing new solutions to market while ensuring the ongoing success of existing products.
Design Thinking is integral to customer centricity. It’s an iterative development process that ensures solutions are desired by customers and users while also ensuring the solution is feasible, economically viable, and sustainable throughout its lifecycle.
It has two main activities that result in a sustainable solution:
- Understanding the problem – The problem space is where designers explore the problem, including its complex nature, and get a clear definition of the problem, gaining insight into the requirements and benefits of a desirable solution
- Designing the right solution – The solution space is where ideas are generated, visualized, and prototypes are developed and tested.
Figure 2 shows the core processes of design thinking, illustrated as a double diamond. This process focuses on thoroughly exploring the problem space before creating solutions.
Applying design thinking during development ensures the solution is desirable, viable, and feasible. At the same time, understanding and managing solution economics results in a sustainable product or service.
Understanding the problem typically includes the following two activities:
- Discover – Seeks to understand the problem by engaging with users and market research to identify unmet needs.
- Define – Analyzes the discover phase data using convergent techniques to generate insights into the specific problems and unmet needs.
After exploration, the organization has the inputs to begin designing a solution, which often involves the following activities:
- Develop – Applies customer journey maps and story mapping to quickly design potential, cost-effective solutions.
- Deliver – Produces various artifacts that are suitable for creating the solution. These solutions often start as prototypes with continuous delivery from the ARTs.
Figure 2 also illustrates how divergent and convergent thinking are applied to exploring ideas, working towards goals, and addressing challenges. Both are necessary, and together they lead to unique solutions for challenges that require exploration and creativity.
In SAFe, Lean UX extends the traditional user experience design process beyond merely executing design elements and anticipating how users might interact with a system. Instead, it encourages a far more comprehensive view of why a Feature exists, the functionality required to implement it, and a hypothesis for its intended benefits. Leading indicators and getting immediate feedback from customers and end-users help determine if the system meets customer needs and business objectives. Lean UX provides a closed-loop method for defining, hypothesizing, building, measuring value, and learning.
In Lean UX, the designer’s role evolves more toward design facilitation— and taking on a new set of responsibilities. Besides Lean Startup, Lean UX has two other foundations: Design thinking and Agile development. Design thinking helps widen the scope of user experience work beyond mere interfaces and artifacts. It looks at the whole system and applies design tools to broader customer problems, relying heavily on collaboration, iterative approaches, and empathy as its core to problem-solving. 
Develop on Cadence, Release on Demand
Figure 3 illustrates the concept of developing on cadence and releasing on demand. It separates the concerns of developing solutions and releasing value, ensuring customers can get what they need when desired, which improves business agility.
Why Develop on Cadence?
In a flow-based system, establishing routine development activities on a fast, synchronized PI cadence—a regular predictive rhythm of team and ART events—is a proven strategy to manage the inherent variability in product development. The following activities support this cadence:
- ART events – The ART has several important cadence-based events: PI Planning, System Demos, and Inspect and Adapt. The PO and Coach Sync events are held throughout the PI to help eliminate impediments, remove bottlenecks, and communicate adjustments needed by the teams.
- Agile Team events – PIs are divided into iterations, which help align Agile Teams and enable faster response to change. Team cadence-based events further support teams: Iteration Planning, Team Syncs (usually held daily), Iteration Review, and Iteration Retrospective.
Simply put, teams use a process optimized for highly variable knowledge work, providing a reliable series of events and activities on a regular, predictable schedule.
Why Release on Demand?
Releasing on demand provides a significant strategic advantage by making value available when customers, the market, and the business need it. In collaboration with stakeholders, Product Management determines when a release should happen, what elements should be released, and who should receive it.
Some products serve market segments that offer new functionality as soon as it’s available. While others may have distinct market rhythms that govern optimal release windows, as described in the Roadmap article.
Figure 4 illustrates the RoD processes by which new functionality is deployed into production and released incrementally or immediately to customers based on user or market demand.
- Release describes the practices necessary to deliver the solution to end users, all at once or incrementally
- Stabilize and Operate describes the practices needed to make sure the solution is working well from a functional and non-functional perspective
- Measure describes the practices to quantify if the newly-released functionality provides the intended value
- Learn describes the practices needed to decide what should be done with the information gathered and prepare for the next learning loop through the CDP
Building and maintaining a Continuous Delivery Pipeline (CDP) allows each ART to define, build, validate, and release new functionality to meet their PI objectives.
DevOps and the Continuous Delivery Pipeline
DevOps and the Continuous Delivery Pipeline lay the foundation that enables releasing value, in whole or part, at any time to meet demand.
While releasing on demand is a goal of the CDP, gaining the competency to reliably and skillfully release value whenever desired is hard work. It involves embracing the DevOps mindset and culture and creating an increasingly automated pipeline.
Each ART builds and maintains (or shares) a CDP with the assets and technologies needed to deliver solutions as independently as possible. The first three aspects of the pipeline, Continuous Exploration, Continuous Integration, and Continuous Deployment, support the delivery of new functionality, as illustrated in Figure 5.
- Continuous Exploration promotes innovation and aligns with what should be built. Design Thinking continually explores customer and market needs, defining a Vision and Roadmap.
- Continuous Integration builds quality into the development process by continuously integrating many Agile Teams’ work.
- Continuous Deployment represents the processes associated with migrating solutions from staging to production.
As noted earlier, Release on Demand (Figure 4) is the ability to make value available to customers all at once or in an ad hoc fashion based on market and business needs.
Embracing DevOps Mindset, Culture, and Practices
High-performing organizations use DevOps to dramatically outperform competitors by delivering and supporting their products and services to respond to customer demands faster.
Figure 6 illustrates that Dev is frequently in a fast-forward mode, trying to keep pace with the constant demand for changes and innovation. At the same time, Ops often presses pause on changes because they are accountable for production stability and resiliency.
DevOps aligns efforts across development, operations, and other business functions to achieve an optimal balance of speed and stability.
Ultimately, DevOps is a mindset, a culture, and a set of technical practices that provides solution elements to the customer without handoffs or too much external production and operations support. As illustrated in Figure 7, SAFe’s approach to DevOps is grounded in five concepts: Culture, Automation, Lean Flow, Measurement, and Recovery (CALMR), briefly described below.
- Culture – A culture of shared responsibility is needed for fast value delivery across the entire Value Stream. All relevant departments help create value, including development, testing, security, compliance, operations, architecture, and more.
- Automation – Automation is used to reduce or eliminate human intervention from the CDP to decrease errors and reduce the overall cycle time of the release process.
- Lean flow – Fosters limiting work in process (WIP), smaller batches, and reducing queue lengths. In other words, they Make Value Flow without Interruptions (Principle #6) and enable faster customer feedback.
- Measurement – Supports learning and continuous improvement by understanding and measuring the flow of value through the pipeline.
- Recovery – Builds systems that allow fast fixes of production issues such as automatic rollback and ‘fix forward’ capabilities, immutable infrastructure, and more.
Cloud Computing is a Key Enabler of DevOps
The ever-expanding universe of cloud capabilities has fundamentally changed how digitally enabled solutions are built, deployed, and maintained. Cloud computing has been one of the most disruptive drivers for changing the delivery model for enterprise IT since its inception . Not surprisingly, the primary reason to move to the cloud is to increase product development speed and agility .
The cloud is everywhere, and it fuels digital business and enables DevOps and a more efficient CDP. SAFe enterprises can harness the power and ubiquity of the cloud to increase agility in all areas of the organization.
Team and ART Flow
Since SAFe is a flow-based system, any interruptions to flow must be resolved quickly to enable continuous value delivery. SAFe provides six articles to help fix impediments to flow: Principle #6 – Make value flow without interruptions, Value Stream Management, Team Flow, ART Flow, Solution Train Flow, and Portfolio Flow. Each article defines a set of ‘eight flow accelerators’ that help identify, fix, optimize, and debug issues to achieve a continuous value flow.
The ART and Team flow guidance apply directly to the APD competency:
- ART Flow – This represents a state where an ART delivers a continuous flow of value to the customer. It describes how teams-of-agile teams (ARTs) work with their stakeholders to get closer to customers and build CDPs. The CDP accelerates the delivery of products and services.
- Team Flow – This represents the state in which Agile Teams deliver a continuous flow of customer value. The SAFe Team and Technical Agility (TTA) competency offers practices for creating effective cross-functional Agile Teams and ARTs. It fosters applying built-in quality practices and collaborating with extended stakeholders to deliver solutions faster.
Businesses need to balance their execution focus with a customer focus to help ensure that they are creating the right solutions, for the right customers, at the right time. APD is grounded in customer-centricity, design thinking, and Lean UX putting the customer at the center of every decision. It applies design thinking to ensure the solution is desirable, feasible, viable, and sustainable.
Developing on cadence helps manage the variability inherent in product development. Release on demand separates the release and development cadences to ensure customers can get what they need when needed. DevOps and the CDP create the foundation that enables releasing value, in whole or part, at any time to meet customer and market demand. APD enhances business agility, offering superior outcomes for the enterprise and its customers.