OK, I don’t want to sound completely negative but I’m going to start this post by saying that even when Project Management works, things go wrong. But that’s OK because things going wrong isn’t necessarily the death knell for a project, it doesn’t even have to be particularly problematic. It’s all about how you react when things go wrong.
I’m going to tell a happy Project Management story now. The project I am just coming to the end of has been one of the best run projects I have ever worked on and in the last ten years of contracting I’ve worked on a hell of a lot of projects. I wasn’t the Project manager, so I’m not big-noting myself. It’s easy to point out what’s wrong in dysfunctional projects or dysfunctional workplaces generally but it’s really refreshing to be able to cite a real world example where most things went right.
Here’s the summary version: for a major project to work, you need to have ALL of the following in place –
- A Plan
1. A Plan. It doesn’t have to be an exhaustive plan with every task measured down to the micro level (see my previous Project Management post for my views on this idea) but you need to have an idea of where you’re going with clearly defined milestones that tell you when you’ve reached key points in the project.
2. Flexibility. Just deal with the fact that you won’t have thought of everything in the plan. Be prepared for the fact your estimates may turn out to be wildly inaccurate. Being right or wrong isn’t as important as how you react when you are wrong. When you discover something you didn’t know before, take it on board and analyse how it is going to affect the existing plan and milestones. DON’T PRETEND IT ISN’T HAPPENING! Don’t pretend you can stick to the original plan if you work a little harder. This is why “Waterfall” fails – things change and it’s useless to pretend otherwise. And if you happen to work somewhere toxic enough to punish you for telling the truth about these sorts of things – get another job. Quit or quit complaining.
3. Communication. I’m not talking about a series of interminable meetings that waste everybody’s times. I’m talking about real communication – letting people know what’s happening and how it will affect them. How you do this is up to you – the best method will vary with the situation; face-to-face, email and/or a wiki are all viable options. I’ll do another post on identifying the appropriate levels of communication on another day.
4. Support at all levels of the business. If everyone involved isn’t fully on board you are going to face a lot of unnecessary fights. The IT team has to agree, the business has to agree, the users have to agree, management has to agree, external customers have to agree and any vendors involved have to agree. Every day you spend in the early stages of a project getting various “champions” on your side will save you from a week to a month or more further down the line.
5. Respect. You have to respect everyone in your team. Your team has to have the respect of other areas of the business. Without this the project will get derailed by ridiculous shit-fights along the lines of “this is all going wrong because Bozo over there doesn’t know what they’re doing.” The person in question may well be a Bozo who knows nothing. But if there isn’t professionalism within a project then everyone suffers.
A few war stories from this project. One of the biggest strengths of this Project manager was that he was always diligent about controlling scope creep. Every time someone had a new idea he would let them know the implications. He didn’t start discussions with “No, you can’t have that,” (a recipe for nasty conflicts) but he would always say “We can look at that but we have to do some analysis first. That’s outside the scope we’ve already agreed on and we need to be sure of what impact it would have on our existing plan.” So nobody was ever given a straight “no” but the project didn’t turn into some horrific, never-ending death march.
The worst thing that happened was when an influential manager who was nothing directly to do with the project was given the specification documents to read. It wasn’t a bad idea to get his opinion, he’s an intelligent and experienced IT professional. But it was a terrible idea to show him the specs for the first time a week before we were planning to send the tender out to potential vendors.
You can’t “un-ask” someone important (in the political sense) for their opinion just because their opinion becomes inconvenient. The end result of this was that the process of getting the Tender finalised to everyone’s satisfaction and sent off kept dragging on. Because this was a totally unplanned event we had no way of knowing how long it would take to resolve and instead of lasting the week we’d allowed for, it took about 5 weeks. And every day we were thinking “maybe we’ll be finished in another day or two.”
I almost lost it at week 4 and was ready to go postal on my cow-orkers.
I’ll finish with what was one of the best surprises of the project. At a critical point in the evaluation process, the project team had committed to the management steering committee to have a decision within two weeks – an aggressive timeline given the circumstances but one we were confident we could meet. The head of the steering committee (the second most senior manager in the entire company) had a look at our proposal and said:
“I don’t think you’re allowing yourselves enough time. This is a big decision and I’d rather it was done right than done quickly. I think you should spend an extra month on the evaluation and then come back to us.”
This sort of common sense shouldn’t be a surprise. But I don’t remember the last time someone on the business side said, unsolicited, to an IT project team: “You should take more time to make sure this gets done right.”
And now, because I’m a contractor, I’ll be moving on. With my luck, the next place will be the polar opposite of this place – a madhouse where everything gets done wrong. At least it will provide a lot of blog material.
14 responses to “When Project Management Works”
Well as much as your project is going well, the shit is really hitting the fan at my “project”. To purposefully avoid being specific and getting dooced, I’m being extra careful. Actually, it’s not my “project”, but the “project” right above us. We have two “projects” run by the same company. One uses the word Bilingual in its name the other uses the word “American”.
The “bossman” resigned. He was a drunk alcoholic that kept falling asleep during work hours, but that is not why he resigned. It wasn’t the young Thai prostitutes or the mistresses all over the town either. He resigned after the top Taiwanese administrator called all of the workers idiots and money grubbing bastards. This happened right after the Halloween party at the end of October.
A week later, another “worker” quit. He sent his resignation letter on Friday, while he was getting on the plane and damaging his apartment, making sure that the “company” would have to pay the damage deposit. He left because the “company” lied to him and recruit him with false pretenses. He has been here for 3 months and it’s not getting better, so he left. With a bang, damaging the company’s reputation by sending out “reports” to all “stockholders”, making sure they knew what was going on.
The thing is that you can’t make shit like this up, it’s pure gold. I wish I could give you the full monty, but I’m not and I can’t. I am though writing all this down and probably will post and write about this when I have left my “project”. Not before.
Most people don’t understand that the important part of planning is not the plan – it’s the process. An extensive planning process addresses issues that might come up later, so that when thngs don’t go according to plan, you’ve discussed it. Good planning, if you understand it’s true purpose, enhances flexibilty, not reduces it.
Its uncanny how similar some of my situations are to yours… and im only a grad with 1 year exp 😦
I don’t believe you – projects like this don’t exist. Intelligent managers? Good communication? No six hour shit throwing meetings that make you want to die? I assume that the spec was written by unicorns in pixie dust and kept updated by elves?
This had better be made up or else my combined jealousy and anger might just cause me to spontaneously ignite.
range: keep a diary man, there’s a whole book in that stuff!
Marc: words of wisdom, no amount of planning will help you if you can’t react to change
Cody: The more things change, the more they stay the same. You might get lucky occasionally but look forward to a lot of dysfunction
Paul: OK, you are funny dude. No, there was no pixie dust. But I admit, this run was an exception to my more common horror stories.
I for one cling to the hope that these stories are real.
In fact, I have a theory that it may actually be possible to create them (shock horror).
Come to think of it, The Angry One himself is probably perfectly placed to assess whether or not the theory holds water.
I’m with you, Apoch. These thing don’t happen spontaneously and if you’re not doing everything in your power (no matter how limited you may think your power is) to make it happen then you have to accept your share of blame if things don’t work out.
I only wish we had management at the kind of level that said take time to get it right. Most often they say very little ’til it’s out the door then say ‘That’s not what we wanted….’
Yeah, I see that more often than not too unfortunately.
Yeah Mr Angry, I’ve started writing something called The Secret Memoirs about all of this stuff.
My theory in project management is that only programmers that don’t like programming want to be project managers. (And want to be richer 🙂
For this reason I always keep programming as my primary daily task and avoid complex project management that drives to nowhere…
For an alternative to complex Object persistence layer you can try:
range: I’ll be interested to see that when you release it for publication
Agusti: I’ve stayed away from PM jobs too, not the stuff I like to do.
You deleted my comment. You must hate me. Oh wait … you covered that already.
Anyway, I don’t remember all of my witicisms, but I do htink you are on to something with ‘gang of 5’. I’m actually working on a series of project management essays that take some of our sacred cows out for a burger. Only the first one (Why Projects Fail) is posted so far, but if I get enough flak or encouragement I will probably get around to the ones on communication (your #3 & 4), planning (your #1), execution (your #2), staffing and project manager qualifications (which combine to address your #5).
I think if enough of us get rational voices out there, we might effect some change. God-DAMN I love the internet! Being able to share views and expand our thinking instead of suffering in isolation can make even crappy jobs bearable.