To deliver agile outcomes, you have to do more than implement an agile process; you have to create a culture of experimentation. It's this commitment to experimenting that's at the heart of today’s most successful implementations of agile. This course shows you how to integrate the practice of experimentation across concept testing, usability testing, functional testing, and continuous deployment.
Basically, we’ll show you how to use experiments to answer these three big questions:
Should we build it? (And then: Did it matter?)
Is it usable?
Did it break?
We'll show you how to:
- Translate your product’s strategic direction into a user-centric charter with lots of small, testable ideas
- Test user motivation to make sure you’re building something that matters
- Design and conduct usability testing (even without working software)
- Use narrative collaboration to focus your testing
- Integrate functional testing into a more continuous release flow
This course is supported by the Batten Institute at UVA’s Darden School of Business. The Batten Institute’s mission is to improve the world through entrepreneurship and innovation: www.batteninstitute.org.
Should we build it? Did it matter?
Ultimately, agile’s backbone is the substitution of observable results over the false certainty of elaborate plans. You’ve learned to avoid waste by validating problems/needs and user motivation before investing in software. Putting that testing into practice takes skill and the right kind of project charter--one that allows you to break the work into small(ish), testable ideas. In this module you’ll learn how to put that into practice by making concept testing an integral part of your culture of experimentation. You’ll go deeper on the Lean Startup techniques you’ve learned to test motivation. We’ll look at how to design and run situation-appropriate experiments, and how that works before the fact (when you’re testing an idea) and after the fact (when you’re testing the value of some working software)
Is it usable?
The best products are tested for usability early and often, avoiding the destructive stress and uncertainty of a ‘big unveil’. In this module, we’ll look at how to diagnose, design and execute phase-appropriate user testing as a standard practice. Anyone can learn to use the test plan template, prototyping tool, and supporting methods you’ll learn here. And that’s a very good thing! Very often products are released with poor usability because there ‘wasn’t enough time’ to test it. With these techniques, you’ll be able to test early and often, reinforcing your culture of experimentation.
Does it break?
The practice of continuous delivery and the closely related DevOps movement are changing the way we build and release software. It wasn’t that long ago where 2-3 releases a year was considered standard. Large firms like Facebook now release new code twice a day. How do they do it? In this module, we’ll look at the whole continuous delivery pipeline and step through what successful practitioners do at each stage and how you can diagnose and apply the practices that will improve your implementation of agile. Most of these practices build on concepts we’ve covered and we’ll pay special attention to those linkages.
Your Continuous Delivery
You've learned about the continuous delivery pipeline and how to improve cycle time. In this module, you'll apply that learning to improve your own processes.