Decisions, decisions

December 12, 2020

Particularly in large projects, you may often need to revisit a decision you made about a particular feature to understand why you chose to design it a certain way. Having access to that rationale can be invaluable, but nobody likes meeting minutes.

Perhaps you used a text link where a button would have been the obvious choice, or you included a login prompt at a certain point in the journey, and would love to take it out but can't remember why you (or whoever) put it there. These are trivial examples; it's sometimes a lot more frustrating.

Decision Log

At the start of a particularly large waterfall project I was part of a while ago, where the design had to be done ahead of development (don't ask), I thought "when we start building this thing we're gonna be like 'why did we design it like this?'" so I came up with a way to keep track of pretty much every decision we made about the design, and it's since been very useful in helping the decision making during the build.

But aside from coming back to it during a later development phase, the most value it has brought is actually evolving the soltuions in the first place. If you have multiple collaborative sessions coming up with and agreeing ideas, it's great to be able to easily log them somewhere, not to mention to come back to it in the next meeting

Above is a snippet from the log I've been using. You can probably tell that the issues are very specific, lengthy and deal with the kind of complexities you can easily (happiily) forget. And therein lies the issue: This stuff is important but you'll forget it.

The spreadsheet itself is pretty simple, but there's some crucial things to get right that make all the difference between whether you'll actually use it or not:

It's a list of issues or features.

i.e. it's a list of points that you can scan down vertically and then read its discussion thread from left to right. this is to make it easy to find the issues in the left hand column when you come back to it.

Include a status column.

We ended up with more than a hundred rows so it; was nice show only the 'outstanding' ones for the next session:

Make it easy to quickly add to

Collaborative design sessions are often fast moving, and you may well be leading them. So it's critical that if you're going to log this stuff it's easy do. One thing we found useful is to use Google Sheets ability to create javascript functions that are triggered by clicking an image - it's an easy way of adding an empty cell in the right place to add a new comment into the discussion thread (see the icon next to 'Discussion Thread').