Thursday 19 October 2006

I got into a conversation with a colleague about project management. I have sometimes found myself on a badly-managed project; so has he. As a matter of fact, he's just left one. He sent me this post-mortem, as an object lesson in using caution and listening to your gut when taking over a project already underway.

My colleague writes:

"I got to explain yesterday to the executives why this project went wrong and why I did not know that there were problems. Here is what I didn't say:

  1. I took over this project at the end of development. When development was completed July 1, it had not begun.
  2. I received a note from the company Rock Star VP of services that development/QA would not be able to meet their QA deadline.
  3. I lined up a QA resource here. She identified some 400 issues, which I reported to the development team.
  4. The development team continually sent back fixes that resolved approximately 40% of the issues.
  5. The QA person was forced to re-test the WHOLE application each time.
  6. Said Rock Star VP interpreted my backfilling for his team as "We're not gonna do ANY QA."
  7. After five weeks and problems still huge and no fix in site, the rock star halts the project and tells the client its because they haven't finished their report specs.
  8. After two more weeks, the project is restarted. At this point, I know that the halt wasn't just an excuse (which it looked like to the client), but an attempt to get the client to sign off. Also, the company is in a cash crisis. I lose my QA person, I have to argue to get Development to do the QA that they were supposed to do in the first place, and I'm told that I must reduce hours and billing. Explicitly stated to me: "no more QA fixes, they'll be handled in UAT."
  9. After two more weeks, I finally got our IT team to promote the app to UAT.
  10. Development tackles reports. No more fixes to already identified issues.
  11. QA calls up to tell me they can't QA the reports, because they are really big, and lots of fields, and they don't have production data, and anyway it will take them a long time, and the project doesn't have budget. I get them UAT data and tell them to test on that.
  12. I do UAT training for users on two occasions. I receive the first issue on three weeks later. I receive about 25 issues on a week after that. This is all of them for three weeks.
  13. I beg the client to add in all their issues, noting that our UAT end date is four days later. I actually had to explain that this did not mean that she had four days to add all of her issues, and that we would need some time to actually fix the issues.
  14. The client would like to reschedule training. She says no. Training will go as and when planned, regardless of problems. Sister says this right to me on the phone, I have to inform the client.
  15. Next day, Friday. Client's brother (another executive) tells me the project is over budget and wants to know how much is left or whether he should pull the plug. I ask development and am told 80 hours. I tell Brother 250 hours.
  16. Same day. I attempt to send IT/Release a set of fixes for the application that development has made. I cannot load the fixes into our unsecured FTP site. I finally (after trying to figure out how the hell I'm gonna build UAT, load the site onto a share drive on late Sunday, and tell the IT guys where it is).
  17. Monday. I ask for a build of Training site for client. Still can't get into FTP, so I load the whole thing to share drive to which IT has access.
  18. I'm called out of town to my father's death bed. I call into the office, explain the situation, ask for other managers to inform client, team, corporate, etc. They do. Kinda.
  19. Receive a fix pack from Development with an actual set of data that can be tested. I have been asking for two months. Of course, I don't know this, since I'm in my father's hospital room.
  20. Wednesday. Call the office and ask on status of build requests for UAT and training. IT manager (client's son-in-law) says no such requests have been received. Call my lead developer, and he logs in as me and says "yep, they're here. I'll resubmit."
  21. Friday. Find out that trainer is trying to contact me to look at site he'll be training on next Tuesday. Call him back, can't get him. Call his office mate and tell her about the situation. She hasn't heard. Call Brother and tell him. He hasn't heard. Call training and leave message.
  22. Call the office and ask on status of build requests for UAT and training. IT (son-in-law) says no such requests have been received.
  23. Arrive back in town Monday, go to work and see a rejection of build request because the site is not on the prescribed FTP site. Finally get the site loaded on FTP via end-around (called someone in Nashville, have them physically move the site from share drive to FTP box and load it in the directory). Argue with IT/Release and finally get both previous and new fix pack deployed to UAT, and Training built. No time to spare. Training begins
  24. Tuesday. Do a basic test of the site to ensure that fixes stated are there and available. They are.
  25. Wednesday morning. Arrive at training. Site blows up. Make the decision to roll back to previous state (from about 8 weeks earlier). This blows up. Go back to the office, manually roll back QA site to previous build (before ANY fixes have been made). Promote that to Training. Asked to leave UAT alone. Call Hyderabad to find out what's going on. Find out fix pack of last Tuesday was missing a table (they forgot).
  26. Thursday. Back to training. Things seem fine. Leave about Noon. Rebuild QA site with new fixes and test.
  27. Friday. Get a message from business analyst asking how site functionality is supposed to work at about 10:30. By 10:45, they have called training, saying significant areas of the site don't work. By 1 PM, trainer is back in Boston. By 1:05 PM, Sister is calling to say I cost the company money, I should have called training, the application doesn't work (duh!), and we did not test the application. I express regret for the problems, explain the situation. She says that trainer had been trying to call me all last week and that I wasn't available (she knows about my dad, of course), and that I'd mismanaged the project and it was WAY over budget (when I took over, it was 135% over budget).
  28. Project is handed to other Project Manager to dissect. I still have the responsibility of management, budget, fixes, QA, explanation, and making it work...but he's in charge. To date, he's had no contact with the client. He talks to the owners.
  29. I get to explain why this project was f****d on Friday. I expect that they'll fire me at the end of the meeting, which is set for 3 PM, after I'd gone and corrected all the problems (I actually could hear Sister on speaker phone in other PMs office as I walked past, so I know she's looking for someone to blame).

"Do you see why I'm pissed?"

The good news in all this: His father recovered, and is back at home. And my colleague didn't get fired; he quit.

Comments are closed.
Search
Navigation
Categories
On this page....
Archives
<November 2008>
SunMonTueWedThuFriSat
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456
Total Posts: 65
This Year: 1
This Month: 0
This Week: 0
Comments: 9
Blogroll
Contact me
Send mail to the author(s) E-mail RSS 2.0 Atom 1.0
Administration