It seems that every time I want to get a project done quickly and painlessly, I am cursed with a long drawn-out, painful project instead. I must be doing something wrong in life to deserve this kind of torture. Application development should not be this hard.
Process is all part of the game in software development. I understand the value in process, approvals, checkpoints, documentation, etc. But WOW, sometimes it feels like trying to get your license renewed at the DMV… Wading through paperwork, “alignment”, approvals, reviews, etc can be very time consuming and painful.
I am convinced those who succeed at wading through process to get projects finished quickly are those with a very large network of buddies and insiders. Insiders are people who either own or control parts of the governance process. They are the people who know how to grease the wheels to get things done. They are the ones with real control. If you don’t know those types of people, you are one of the many who just wait in line, praying for the process to work as designed and advertised.
Also, these successful project managers know the process. They understand each point along the way. They have intimate knowledge about how each piece of the puzzle fits together. They have the domain knowledge necessary to plan for each facet of the project’s lifecycle. If a certain review is required, they know when, who, how to get it done. They know prerequisites, impacts, key players, etc. This knowledge is never obtainable over night.
No wonder so many projects fail to meet their original goals. Consider coming on as a new project manager with no prior knowledge of a company’s proprietary process. How can you expect to succeed on the first or second try. It is near impossible. You will have so many “gotcha” moments where you find out parts of the process you are missing because they are not documented or communicated properly.
Process is a necessary evil, but we (the software development community) have to find a way to simplify to the point where process is not a roadblock to project success. We have to find a way to fade process into the woodwork of the project pipeline. Make it transparent enough to know its there, but you don’t really notice it affecting or guiding your project. It just does its job without meddling.