Waterfall is everywhere
As a developer, I am hoping that one day I can be a project manager (PM). Many people will think that my hope is based on the money that received by a PM in Indonesia is MORE...MORE bigger than received by a developer. Well! it's not! My concerns is power! Because I have experienced difficulties in projects because of the PM was not thinking or seeing in programmer's point of view (except Fred Brooks off course). Many PM that I have work with have so much preference with waterfall. Despite the fact they use RUP (Rational Unified Process) based process but the project always executed with waterfall style.
Its okay to do waterfall if you have done the same project in the past and there are nothing new to you, for example on the technology being used or the domain problem faced. But if you are using a new technology, an unfamiliar problem domain then you have to get the feel with them by doing some coding up-front. But, most PM will reject the idea to code first. They fear the project will be fail because of that. That's why what is commonly done first is requirements gathering and no coding to trying an unfamiliar problem. Even though the project methodology is using RUP and on the schedule is mentioning about inception and elaboration phase but still no code at all. Why?? Is it I that have a wrong understanding of what inception and elaboration phase is?? Please, tell me!
Also, the system analyst is the person responsible to gather the requirements from the domain expert. And they are responsible to jot down the requirements into documents. So, in the end the programmer just read the documents and voila!!! They can understand the domain. That is just a theory. Because in my experience the analyst is not complete in jotting down the requirements. Many important informations is missing. So what the is meaning of producing the documents if it can not be count on to understand the domain? Why is this happening? Is the analyst is lacking the writing skill?? Is the time taken to produce a complete requirements documents is longer than the time allocated? This makes me wants to be an analyst too so I can produce a more complete documents for programmers. As long the software used is not a word processor :P
In the end...Just like many Indonesian movies...The ending is predictable. Me!!! As a developer that must work hard to understand and solve the problem in the remaining short time. Is it must be done like this? Or there is another way?? A better way?!
When I am being a PM the way will be better than :P Hahaha...!!! :D Lol.