One of the most boring and time consuming tasks in software development is creating product requirements. You spend endless days taking UI screenshots, writing up descriptions of what each UI control does, how users will interact with it, what kind of results the screens will show, and how the app will handle errors and edge cases.
You then share those requirement documents with your team, have discussions about them, and based on their feedback and comments, you go back and modify some parts of the design, take new screenshots, paste them in place of the old ones, and rewrite the corresponding parts of the documents to reflect those new changes.
And you rinse and repeat until everyone signs off on those requirements, or until you realize it’s actually easy for an angry fist to punch through an LCD monitor.
That workflow accurately describes how I spent 50% of my time working as a product manager at Microsoft 10 years ago.
It was agonizing!
And I used to think that there was no way around it, until I left in 2007 and started consulting with startups and creating my own products.
That’s when I realized that I could create product requirements 10x faster 100% more enjoyably.
How did I do it?
I replaced requirement documents with videos!
Sample product requirement from StatusPanda‘s final prototype
Instead of taking screenshots, pasting them into Word, and writing about them, I would create a fully interactive prototype, fire up my screen recorder, do a walk-through with voice over, then share those videos with the team.
Not only did this turn out to be much faster to create and iterate, it was also a much clearer way to communicate because it shows (instead of tells) your product features and interactions within the context of using it.
And developers LOVED it!
Here’s what I found to be the best formula for creating those video requirements:
Design a comprehensive prototype
I use Keynote with Keynotopia to design all UI screens, add user interactions with hyperlinks, and create animations using slide transitions.
You can also use PowerPoint instead, if you’re on a Windows machine.
I make my prototypes easier to modify and iterate on by moving all my top-level screen layouts into master slides, sharing them across various app screens, so I can change all those screens at once with one change to the master slide.
I also use slide notes to remind myself of what I want to describe during the walkthrough.
Create a walkthrough outline
I go through the user flow diagrams (also known as user’s journey) that I created earlier on during the UX design process, and I create a list all the screens and features the user will go through and interact with.
I create a list of screens, and within every screen the list of the top level tasks and actions that users can perform (e.g. Dashboard — Creating a new report)
Developers love to work with people who have thought through all the detail of how the app works, and how users interact with it. Your goal is to show them the prototype in the best way they can measure their work against.
I then record a series of 5–10 minute videos, one for each screen-feature combination from the user flow diagram, with voice over explaining how users get there, what actions they can (and cannot) take, what results the UI shows, how the feature handles edge cases, and where users can go from there.
And because I create a fully clickable and animated prototype in Keynote, it’s easy for me to show all those details in action!
I avoid creating one long video of the whole prototype, because shorter videos are faster to navigate to, better for comments and feedback, and easier to redo whenever I change one feature that requires only recording a couple of new videos.
I give each video file a name that corresponds to the screen + feature being discussed: For instance, 06-Dashboard-Create a new report.mp4. Adding the number prefix keeps files in the right order.
On the Mac, I use Quicktime Player (Free) to record screencasts. You can also use ScreenFlow ($99) if you need more advanced video editing and sound enhancement abilities. If you’re on Windows, you can use EZVid (Free) or Camtasia Studio ($199).
Share the videos
Create a new folder on DropBox (you can also use Google Drive or Microsoft Drive), drop all the videos inside it, then share it with your team. They can watch the videos, add comments and feedback, ask questions, and request more detail about a specific feature.
Upload the Keynote (or PowerPoint) version of your prototype in the same folder, so your team can experience it first-hand.
And if you need to redesign a screen or feature, you can re-record the corresponding video file and drop it in the same folder for further discussion and feedback.
That workflow has saved me hundreds of dull hours that I would have otherwise spent writing product requirements. It’s also great for showing clients how your design will be used, and to getting feedback from users about a new feature that you’re considering for your product.