Agile, Have You Met Design Thinking?
In a recent blog post, Joshua Kerievsky introduces what he calls “Modern Agileâ€. In his words, modern agile “simplifies and streamlines traditional agile processes while making them sturdierâ€. Joshua presents four primary modern-agile principles:
- Make Users Awesome
- Make Safety a Prerequisite
- Experiment and Learn Rapidly
- Deliver Value Continuously
When I read the descriptions of these principles, I see a huge overlap with Design Thinking. The principle of making users awesome basically restates the importance of user-centeredness. Empathy?—?e.g., user-centeredness?—?lies at the very heart of Design Thinking.
Making safety a prerequisite emphasizes the importance of feeling safe to make mistakes. Design Thinking is fundamentally about design. Design is a creative process through which solutions are uncovered. Design Thinking actually challenges us to redefine success and failure. An interim attempt at a design that doesn’t satisfy a requirement, yet moves us towards a satisfactory solution, shouldn’t really be called a failure.
Experimenting and learning rapidly neatly captures the Design Thinking activities of iteration and user testing. The only way to validate empathy is to test how well we’ve seen our users’ perspectives. Design Thinking takes an adaptive approach, by which we incrementally validate our understanding through a circular try-test-refine feedback loop.
Delivering value continuously is one area where Agile (and DevOps too) can augment Design Thinking. The digital service economy breaks down the boundaries between design, development, and delivery. It creates the opportunity as well as the need to extend iterative user-testing beyond design, and development, all the way into operations. It challenges us to rethink business as a continuous, responsive conversation with our customers.
It is my belief that Agile, DevOps, and Design Thinking need to come together and infuse each other. Any two of them are incomplete. We need empathy, and speed, and feedback loops, at all stages of the service delivery process. Without all of them together, we will just making the industrial assembly line faster, and just overwhelm our customers more completely.
When we unify them, on the other hand, design becomes continuous. Continuous design gives us the ability to design (and operate) for complexity. In the post-industrial world, characterized by service ecosystems, digital-physical infusion, and economic disruption, nothing less will suffice.