Agile‎ > ‎

Perfect Software vs Crappy Software vs Acceptably Shippable Software

posted Jul 15, 2015, 11:21 AM by Anjuan Simmons   [ updated Jul 21, 2016, 4:41 PM ]

As a Scrum Master, I often write emails to my Development Team to bring them back to First Principles. This is an email I wrote when we were struggling with a feature that we knew could not ship with the polish we all wanted it to have. The team had to meet a hard deadline so, as is the case when time is a constraint, scope had to be reduced.


I've been thinking about how to balance the implementation of this feature between Perfect Software (which never ships) and Crappy Software (which ships all too easily). How do we get to Acceptably Shippable Software?

I hope we can all keep in mind that this release won't be the last time we touch this feature. If we can find an acceptable implementation for the majority of our users, we can iteratively improve that implementation one to two sprints after the release. This will allow us to firm up our thoughts about the feature and also hear from our customers. In addition, shipping by our deadline will provide some internal relief that I think we can use. As I've said, "Shipping heals all wounds". The assumption, of course, is that you don't ship pain.

I trust that the team can find the right balance as we work together.