Your venture is like writing a book: you can work your way through it one chapter at a time, or you can put in some serious work upfront to carefully craft an outline.
Which is best: get going or carefully outline?
Don’t listen to me, listen to Amor Towles.
Amor Towles spent seven years writing his first book and ended up with, well, no book at all.
After that, before writing the first chapter of his next book, Amor Towles committed himself to creating a detailed outline of the entire book, “so I can then focus on the poetry, bringing things to light.”
The result is bestselling novels: Rules of Civility (2011) and A Gentleman in Moscow (2016).
What does this have to do with Agile?
Agile values incremental implementation (think of it as writing your book as you go along) over strategy and overarching solution design (writing an outline)—and as Amor Towles warns us, this can have unfortunate consequences.
Flashback for context
Before “Agile” came about, people (me included) used to start projects with analysis and design. A lot of analysis and design, as a matter of fact.
It made sense: before getting knee-deep in implementation, you ought to think through the problem (analysis) and come up with the best possible solution (design).
And so you approached the task of analysis and design in a comprehensive fashion, with painstaking attention to detail, and as a result a good amount of documentation.
If you completed a thorough analysis and nailed down a solid design, it would be smooth sailing from there: faster, better, cheaper. Or so the thinking went.
But there were problems.
For starters, the project documentation would get long and cumbersome. To address this particular problem, people developed expertise in using diagrams (UML diagrams for example) and mockups (UI mockups in particular) instead of words. After all, a picture is worth a thousand words.
Another problem was “scope creep.” The more analysis and design you did, the more complicated and drawn-out the project would get. So much so that you would always reach a point where you just had to lock down whatever documentation you had managed to produce up until then, so at last you could move on to the next phase of the project.
And to top it all, in the end, when you finally delivered that elaborate solution, you would inevitably find out it wasn’t perfect anyway—not quite what people wanted.
A paradigm shift
Then in 2001, the Agile Manifesto proclaimed a different way of working based on a carefully selected set of values, including this one: “value working software over comprehensive documentation.”
With this deceptively simple statement, the Manifesto declared a radical shift: instead of spending months trying (and failing) to document every detail of the perfect solution, just go ahead and get going.
To put it another way, don’t overthink it.
Start listing and prioritizing features, talk about them and build them one feature at a time, and adjust course along the way based on customer feedback.
And yes indeed, Agile-minded people now advocate this type of incremental approach for any venture, not just software projects.
Don’t get Agile wrong
Agile makes a point.
In the same vein, outlining is not for every writer.
But don’t get Agile wrong: don’t pursue your projects willy-nilly, with no clear target state in mind, in the name of “agility.”
Basically, don’t do everything incrementally: incremental implementation is good, not incremental thinking.
Incremental implementation is good, not incremental thinking.
Overarching solution design
Agile is not a journey to the unknown, it’s a deliberate shift that requires some figuring out.
Figure out who you are and do it on purpose.”
—Dolly Parton
Whatever you do, and even more so if your endeavor involves a lot of people, figure out an overarching design that everybody can rally around and effectively work toward.
Know that your design will be hard to implement and that it will change over time—but don’t use this as an excuse to neglect it or tiptoe around it.
And back to the first question, you don’t have to choose one or the other, do both: get going and carefully outline.
Do this with purpose and you might just end up with, well, as Amor Towles did, truly remarkable stories.