Agile or Waterfall: Is this really the question?
Just to lean on Hamlet’s soliloquy in phrasing „to be or not to be, this is the question” demonstrating his inner conflict to live or to die, one very often wonders why some people put this question on the table when starting to decide how to implement an initiative: Waterfall or Agile?
After more than 20 years of managing various projects of different size and complexity, I realize in the recent years increasingly statements like: “We go agile. Waterfall doesn’t help”. “We do not have time to go waterfall”, etc.
Interestingly, you hear such arguments from people who only know the new agile development methodologies without having worked within such frameworks that they call “Waterfall”. Managers who have worked based on such “waterfall” framework do not usually use this terminology. In fact, project management is a discipline that requires planning, execution, and monitoring, no matter which methodology and how. It is interesting that “agile” people provide the definition of “waterfall” trying to create an antagonism and to negate it immediately. It sounds more a polemic discussion rather than something on the subject.
Project managers never work strictly according to the so-called “waterfall” methodology of Initiation-Planning-Execution-Closure. Project management is not a dogma. They always keep the door open to go one backward and initiate changes and new functionalities.
Just in order to avoid misunderstandings, I do not have anything against agile methodologies. For software development, where you have not yet completed the full specification but you clearly know part of it, certainly, you can start the development. However, even in such a case, you should consider a certain degree of risk of being forced to roll back and start at a previous stage. This causes costs for sure. On the other hand, provided the plan was correct, you gain time and can show some results. But, as mentioned, provided the plan was correct. I have been witnessing projects where they developed many pieces of software and later on realized that they had not considered this and that. They rolled back causing dozens of Thousands of Dollars costs. This is the other side of the coin.
I would like to see how the fundamentalists of “agile” could build a data center or construct a building with their understanding of agile methodologies. The term “Agile” seems to be more a buzzword for people who escape any kind of planning. Often I observed people trying to get around giving commitments, ignoring certain structures and reporting. On the other hand, people tending to micro-manage people like the daily “standings” of agile methodology to monitor, command and control people. The result is the frustration of the team members, overloading, and inner resignation. Here are hidden costs involved to appear later.
… and the question still remains according to the spirit of the time: agile or waterfall?