Tuesday, August 04, 2015

Thoughts about a Discovery Sprint

-->
Tire tracks on a snowy road, diverging straight and to the right
At a recent federal/industry roundtable discussion, Greg Godbout, former director of 18F Consulting, suggested that user experience can be incorporated into agile development through the use of something called a Discovery Sprint. GSA's boutique agile shop provides this service as one of the short-term offerings on its menu. Now called a Design Sprint, following Google Venture's model, its purpose is "…to assess your team's or organization's readiness, understand your customers and their needs, brainstorm ideas, and provide guiding principles and recommendations to move forward."

This advice reflects an understanding that, for all its strengths, one of agile’s downsides is that it’s not a user centered method. Agile scrum is optimized for rapid development and release of working code. It’s not optimized to make products that will get adopted by end users.


Agile can result in products that work for the consumer, but to do this reliably it’s necessary to make an agile practice also a user centered practice.  I’m aware of two ways agile scrum can be refactored to include user centered design.

Idea 1: Sprint 0 (aka Discovery Sprint or Design Sprint). Add a Sprint 0 in front of development for each release. This is where UX folks can carry out UX activities that will set the development team up for Sprint 1. Thereafter, keep UX ahead of development by a duration (i.e. in Sprint 1 do the UX for Sprint 2).

Pro: UX becomes part of the development process. Hurrah!

Con: When design is a different class of sprint, the team is siloed. Separated by a sprint, UXers and developers are never focused on the same things. Sprint 0 works against the idea of applying the strengths of a multi-disciplinary team to solving problems. And it breaks iterating on solutions into hand-offs.

Workaround: Have the whole team participate in the discovery sprint.  This leads to the following idea…

Idea 2: Agile+Lean UX. Incorporate UX into the work of everyone on the team, using Lean Startup principals and methods. Lean UX is a collaborative, cross functional approach to product development that starts with a multi-disciplinary team of UXers, coders, product managers, and other relevant perspectives and skillsets. The team focuses foremost on finding and solving the right problems. They jointly develop and test hypotheses, ensuring technical viability and user satisfaction. From these shared understandings the team continues to iterate, learning more about how the website, app, service, or product they’re building should behave, building ever-richer features and elaborations, with each stage tested and corrected in its turn.

Pros:
  • User engagement begins at once. Starting with a pool of representative end users lets the team conduct immediate interviews that inform the very first design decisions.
  • End user testing is lightweight and continuous. Concepts on possible solutions and low-fidelity prototypes get tested with real users even as the first sprint kicks off. Testing continues throughout design and development.
  • All team members do design. Design thinking methods that are proven to be effective are baked into how the team comes up with ideas and solves problems.

Con:  Concerned that Agile+Lean UX (or any approach that deeply incorporates  UX into development) will slow the team down? The counter proposition is that nailing the right problem and the right solution will deliver the right product, faster overall.

Tools for Design Thinking
Here’s a short list of practical “how-tos” for doing rapid and effective design thinking and user experience within an agile environment. These can be applied in both Sprint 0 and Agile+Lean UX environments.
  • Planning documents (Lean UX Plan, “Ziegler Day Plan”) 
  • Team design charette exercises (10+10 Design Thinking, Reversing Assumptions) 
  • Shared understanding methods (Lightning Talks, Business Origami)
  • User Assumptions documents (“We Believe” worksheet, Lightweight User Profiles)
  • Lo-fi to higher-fi prototypes (paper prototypes, digital wireframes, interactive prototypes) 
  • Discount user testing (Featherweight UserTesting)

No comments:

Post a Comment