May 27th, 2009 Chris
I was visiting a friend of mine posted to NATO in Brussels over the last week (OK, visited for two days and went to Paris with Colleen for the rest). He was lamenting the use of PowerPoint in his job and I had to agree. In my former corporate life, PowerPoint was the way of communicating. Didn’t matter how complex the issue – it would be boiled down to a few bullets on a chart.
There is a very cool design guy my friend Eric introduced me to, named Edward Tufte. He wrote a great book called The Cognitive Style of Powerpoint: Pitching Out Corrupts Within, making the argument that the typical charts only serve to weaken verbal and spatial reasoning, and almost always corrupt statistical analysis.
However, I did find a new use for PowerPoint in a development process we’re using for the stream-lined MicroBiz Development Process (MDP – a new acronym!). Why a new development process? Well – I guess the long and short of it is that the traditional development process I’m used to is way too slow and expensive.
I’m used to writing long, gory specifications, complete with personas, etc… and handing it off to a development team for detailed functional specs, design specs, UI specs, QA plans, etc… Those are great if you can have millions to spend and 6-9 months. I have neither…
Instead, with the MDP (wat dat? oh yeah…), the goal is to compress these activities by leveraging a very important factor – a detailed and clear picture of what the application will do in the mind of the “Product Manager” (aka me).
Traditionally, I’m used to letting the gory details of the application get sorted out by the experts as part of the discovery and specification process. If we want to compress that, it means that I have to have a very clear picture of what the app will do and how it will do it. That cuts out a bunch of steps although still leaves the risk that one develops something that then blows up capabilities or the schedule or the cost or all three…
So what did I do specifically? For our app, I create two documents… 1. A high level specification complete with a list of functions that the app has to do that and the role of the people who do them. This is pretty much like a standard requirements document except I focused on the stuff that was behind the covers (performance, scalability, security, etc…).
2. The second thing I did was what really made this project fly… It was to dust off PowerPoint and used it to create a UI wireframe. That is, to go through and show the various screens that the app presents. In my case, I had one section for the end user and one for system administrators.
It was an incredibly effective but laborious process. Each screen was mapped out including what info would be presented and what actions the user could perform. Essentially it was compressing the requirements spec and UI design into one document. Along the way, it forced me to examine every aspect of functionality – essentially reducing each user interaction to a series of inputs, a series of processes, then a series of outputs.
Was this the final UI design – nope. That the dev experts can work. But what it clearly showed is what the application needed to do and the wireframe was close enough to the UI design that it was a relatively straightforward transition.
But coming up with the wireframe slides was a painful process as it required a very crisp view of what the app was to do. It took me at least five run-throughs till I was happy with the 80-slide result.
Then the real payoff occurred. The MDP relies on rapid prototyping. That is, quickly implementing somewhat rough hunks of functionality for review and testing. With the Powerpoint wireframes, the dev team was able to crank out the first half of the app (ie. about 50% of the functionality) in only three weeks. And they’ll have the whole thing ready for alpha in another three weeks.
So six weeks from delivery of these documents to a fully functional alpha… Pretty cool. That, combined with some intensive testing by the Quality Assurance team (aka me), and we’re developing this application faster than I would have ever guessed was possible.
Now, will we hit speed bumps that impact our cost and time and effort? Absolutely – that is to be expected when moving so fast.
Is it still an order of magnitude more efficient for us than the traditional large company dev process? Absolutely.
We’ll see how it goes – only two months till beta and four months till commercial release. What could go wrong? (oh yeah – it’s software…).
C.
Posted in General | 2 Comments »