I’m a software engineer, and I’m a writer. One pays the bills, the other feeds my soul.
Generally I consider these two parts of my life to have very little to do with each other; however this evening I got to thinking how like the waterfall model of software development my process for writing a novel is.
The waterfall gets its name from the shape of the diagrams that demonstrate it. Phases of development follow each other without overlap, starting with requirements gathering and ending when the product is deployed.
When I set about writing my novel in progress for NaNoWriMo 2007 I followed, pretty much, this process. With a few tweaks.
Instead of gathering requirements I gathered ideas: scene ideas; character ideas; bits of inspiration.
Instead of designing I plotted.
I wrote prose instead of code.
Now I’m in the analogue of the testing phase. I’m reading and reviewing my work: testing that the characters are believable and consistent; testing that the plot hasn’t got any holes; testing that the novel’s themes work. This testing/reviewing finds bugs in the novel that I will have to fix.
Enough time and work spent in the testing phase and I’ll be ready to move on to the deployment phase. I’ll have a ‘finished’ manuscript ready to start sending out to publishers.
I would say that this waterfall model is one of the most common processes for writing, but in software engineering the pure waterfall model is thought of as a flawed way to do things. I’m currently working on a project that is following an Agile software development method. So for another post I’m going to give some thought to how I could apply a more agile approach to my writing.