I have recently been playing more golf lately. I started playing golf at least once a week while living in Kansas about 17 years ago. Recently, I was lucky enough to play at Myrtle Beach, South Carolina. While there, my friends and I played 36 holes a day for three days — and I realized my approach to putting might be all wrong. Was I supposed to be using a waterfall or agile approach to putting? Apparently, this wasn't a gimme.
I often play with my mother and her husband, Ronny. Ronny is a good ole boy, the kind whose neighbors in Paducah, Kentucky, would take a bullet for. You could literally lose count of all the people who'd come up for a hug or handshake with Ronny at Parker’s or City Rockers. And it's easy to see why. Apart from his taste in Pabst Blue Ribbon, Ronny's advice is usually sound.
I got to watching Ronny putt the other day. My putting is so bad, that I couldn't putt into a crater if my ball were leaning on the edge.
Anyway ... prior to putting, Ronny spends time positioning his ball with the ball’s printed arrow pointed directly at the hole. He then positions his putter’s face perpendicular to that arrow, and then finally positions his body to the club. Assuming that he reads the green correctly and has the correct speed, he generally makes it into the hole (or gets the ball pretty darn close).
It struck me. Not the ball. (The ball went into the hole. We covered this.) It struck me that Ronny was using his time before making his putt the same way I'd use the first phase of a GIS project. Before I go to deploy a solution — before I even develop a solution — I design it. A quality design phase of a GIS project can make or break its success, the same way Ronny's setup makes or breaks his score.
First, let's cover our bases with a quick recap of what each methodology really is. Here are how these two popular strategies for project execution break down:
Waterfall Strategy is Linear
In general, Waterfall strategy follows a linear method. First you design. Then you develop. Then you deploy. Incidentally, this is also SSP's strategy (unless the project specifically dictates otherwise). Each phase is completed and signed off by the client prior to starting the next phase. The focus of the methodology is generally pressing forward, — and your end success places immense importance on starting with a solid design.
One of the criticisms (other than the stupid name) of this method is that sometimes the design phase is either rushed or constructed with a client misunderstanding. Without solid client involvement in the early stages, the product may be built in an undesired way — resulting in a lack of satisfaction and/or costly change order. Having worked for SSP for three years now, I know firsthand that we spend a great deal of time educating and communicating with our clients (and future clients) in the beginning, which helps prevent these undesired consequences.
So if Waterfall strategy is linear, what's Agile strategy?
The Agile strategy for projects (Figure 3) involves multiple “sprints” of a specific duration. The goal of each sprint is to complete a defined list of deliverables. At the end of each sprint, the client gives input on the successes and failures, and the deliverables are redefined. The next sprint begins, to iterate on the deliverables again. Design, develop, deploy, discover — repeat. In Agile methodology, there isn't a great deal of focus placed on initial design, because the design will be refined based on frequent client testing and feedback. It's a lot easier to change your design in the Agile strategy.
Some critics of this approach point out it's more likely you'll exceed your budget or schedule, because the number of sprints performed is often not defined. In addition, the desired product may end up being constructed in a different manner than originally budgeted. Some clients may also not want (or have time) to participate in the process of which this strategy demands.
Which strategy is better? It (of course) depends on the project and our client’s wishes. In terms of golf, my strategy would be the Waterfall approach and just try to hit the ball into the hole, instead of 5-foot sprint increments.