Evidence-Driven Development
From AgileOpenNorthwest
Evidence-Driven Development (EDD) - Chris Sterling
This session was inspired by Nathaniel Talbott's talk on the same subject at multiple venues, but mostly at Pivotal Labs. As we are developing our own product at Sterling Barton, we are in need of using experiment-driven techniques to gain feedback from our customers in production. I have been thinking about how we can enable this from the technology side and leverage it in our business. We, of course, are not the first by far so I wanted to hear what others thought. Also, I wanted to capture some features so that a plugin for Grails can be developed that provides some of these capabilities easily. This could lead to additional implementations in other languages and platforms based on the similar features and architecture.
The session started out with an explanation of what I see as the pieces of the EDD architecture. (image is on the right-hand side)
The focus of the session was to hit home Nathaniel's original idea that we should give the business gain feedback similar to how we do so with TDD in development. After some discussion of the different pieces of this perspective of the EDD architecture some features were captured from the group:
- Link for feature that has not been implemented yet to capture interest of users for the potential feature.
- "Like it (or not)" feature on feature not implemented page similar to "like it" feature on Facebook for a status update
- Multivariate testing tag to support round-robin feature showing for controllers and views
- A/B or split testing tag to support "this or that" options to user to capture interest for each
- Turn on/off alpha features with click of button/image
- Tweet if you do or don't like this buttons/images - still need to look into whether this is actually a good feature or not?
- Experiment with layouts on Grails site
- Find out if people are "delighted", "alright with", or "dislike" a particular feature of the site
- Feature has been "moved" with re-training tips on page, plus capture feedback about the change
- Preparedness messages and example page for upcoming changes so that feedback can be gathered before making bigger change
- Go back to "old" version button - could be problematic to maintain but may be an interesting feature for specific situations
- Market segmentation techniques support (model/data, feature(s), heavy-user, usage patterns)
- Feedback using 3 choices on a triangle with user putting their dot closer to further from corners (inspired by work from David Snowden and David Socha brought up Gerald Weinberg's point something like "1 option is not an option, 2 options is a dichotemy, but 3 options is a choice" that works in, as well)
Here are video podcasts by Nathaniel Talbott on EDD that may be of interest beyond the session:
Go back to Agile_Open_Northwest_2010_Session_Notes