As author of “Principles for Maturing Your System Development Life Cycle: The Ultimate Guide to the SDLC,” I am invited to speak at gatherings sponsored by various professional Information Technology related organizations. Invariably, someone will ask, “What is the best system development methodology?”
It never ceases to amaze me, that after almost 3 centuries since the dawning of the first industrial revolution, there are many highly educated IT professionals who believe that their can even be a single, best system development methodology. The question dumbfounds me, but doesn’t surprise me.
During my career, I’ve worked in organizations where various Chiefs of This or Chiefs of That insisted that their IT organizations follow the flavor of the month methodology. Perhaps it’s because they’ve just completed reading recent offering from Scott Ambler or Alistair Cockburn. Or maybe one of their professors taught them the most prolific fable ever in the annals of IT history, that Waterfall is the way to go because the father of waterfall, Dr. Winston Royce says so, (Which by the way, he never did say. He said waterfall doesn’t work!)
This one insists that Spiral is the way, that one, agile, and yet another, the Vee-Model to which I query, “German or American?” That surprises people almost to the extent of my astonishment when asked in a California restaurant, “Still or sparkling,” when I ordered a bottle of water. Next time I eat in California, I’ll be prepared.
In an article entitled “Enough of Processes—Lets Do Practices”, co-authors Ivar Jacobson, Pan Wei Ng and Ian Spence say:
“…it doesn’t matter which process you adopt as long as it is adaptable, extensible, and capable of absorbing good ideas, even if they arise from other processes.
To achieve this kind of flexibility things need to change. The focus needs to shift from the definition of complete processes to the capture of reusable practices. Teams should be able to mix-and-match practices and ideas from many different sources to create effective ways of working, ones that suit them and address their risks.”
These thoughts capture my philosophy completely. The Ultimate Guide to the SDLC captures the very best of the best practices recognized by leading industrial nations and some of the most well-known IT thought leaders from the latter half of the 20th and 21stcenturies. It defines a best in breed SDLC model that provides the kind of flexibility needed to drive business value in rapidly changing and competitive environments.
So the next time you are asked, “What is the best system development methodology?” You can answer with with conviction, “There isn’t one.”