Ideas are easy.
Execution is tricky.
You’ll know a good idea when it feels simple to articulate.
You’ll know a less-good idea when it feels complicated to articulate.
Now, to build a system, you need fine builders.
It’s easier to recruit those fine builders with an achievable plan that makes their tasks clear. Think of this as a task model.
The task model
The diagram below shows three sets of “cards.” It’s an architecture template that you can do yourself at home using nothing more than some paper — or better, cards — and a pen or marker.
The customer performs activities. The builder performs tasks. What do your customers need your help with? What are the problems you’re solving for them? These are activities.
Being frugal when deciding your initial customer-activities is the key to good execution. Narrowing your idea is an artform. It’s neither easy or simple, and requires a lot of letting go.
An achievable task model depends on having a small number of activities. There are many tasks associated with a single activity, and the more tasks you include, the more clear the work-ahead becomes. Tasks inform the us of the size and complexity of the project.
The subtask and the details.
To properly estimate the scope, the cost and the timeline of your project, spending some quality time mapping out subtasks or details will serve you well. Subtasks and task details help avoid confusion, enable builders to make better granular decisions and better comprehend what’s required of them.
Don’t try to simplify your tasks. Throw in everything you think of in a stream-of-consciousness. Tasks are like cash — another dollar doesn’t hurt — so don’t be sparing, but do be sparing by the activities. Highly-constrained activities will result in manageable tasks. Unconstrained activities will result in unmanageable tasks.
A task model is the first step to making your any idea manifest. It’s a technique used by many of the smartest people in software and it’s drop-dead simple to do yourself.
Customer’s problems are mapped to activities. The system’s responsibilities are mapped to tasks. Subtasks help those building the system have more clarity and make better decisions.
I’ll share more on story mapping and ultra-fun card mapping in my next article.
Jeff Patton’s book User Story Mapping is indispensable if you’re serious about getting deeper into story mapping and task modeling.