How do you cope when one (or some) of your project(s) is/are getting way behind schedules and upper management is pinching you on the matter?
I think the first step is to have a meeting with your direct supervisor to discuss what is behind schedule, why it's behind schedule, and what they can do for you to facilitate the work getting done.
Keep the whole situation as transparent as possible between you and your boss, and be honest about the constraints on your time.
Be honest and don't promise more than is possible. Avoid adding more people, unless those people are uber-geeks with the skillset you desperately need. ("Adding people to a late project only makes it later" (Brook's law))
Say/admit that it is late and then ask them for help.
In most cases they'll ask you what you need to get on schedule again and do their best to provide it. But in any case they have to take a little bit of the responsibility from that point on and they will not be so hard on you.
Of course if they really want to help, make sure they don't do the wrong things, like adding more man-power for example.
Here's what I tend to do in cases like this:
- Determine why they are behind schedule. There is usually a bunch of reasons (feature creep, underestimated the effort involved, disruption, juggling too much work) so you'll need to analyse the contributing factors. Make a list for yourself what they are, possibly check with your manager or a coworker to see if you've missed anything
- Come up with a suggested plan and revised estimates that'll realistically get you back on schedule. Don't promise something you can't deliver - there is no point in assuming that'll you be working 14 hour days for the next three weeks to catch up because 99% of the time this will not work. And unless you can lock yourself in an office and block out all interruptions, you will have to admit that you can't spend 100% of your time on this and possibly even 80%.
- Once you've got the info assembled, talk to management and try to communicate the issues. Keep in mind that they're probably not technical so you might have to explain things that are obvious to you but not to them.
The above is of course all under the assumption that there is a genuine interest in addressing the problem and not just find a convenient scape goat.
I would do the following:
- Meet with the key stakeholders and see which functionality can be dropped, or added in a later phase.
- Re-evalute the project plan, creating a realistic project plan, including some contingency, holidays etc.
- Go through this in detail with all members effected by it, explaining why it's slipped, and why this new plan will be delivered.
Oh and take the dev team out to lunch/dinner and tell them what a great job they've done so far.
It is good to gather the objective facts that determined schedule slipping.
However, you should think on several aspects: 1. Objective facts might point that you made some mistakes. In this case, you might have a hard time. 2. Objective facts might help you, if some of the factors were beyond your control, or there were risks long time signaled and now manifesting.
Either case, try to propose a solution to get the schedule back. If you propose a feasible solution and convince the listener on this, you might have not-so-hard explanations to do...
Of course, you'll have to make sure that later you'll get the schedule/budget on time.
Determine root cause - typically the cause will be consistent from project to project. Develop a 2-3 options to correct the timeline of the current problematic projects - either extending the timeline to what it will be (based on the current info) OR making adjustments to bring the timeline in. Develop 2-3 long term options to ensure future planning is more accurate (try not to just add padding - this will make marginal projects less worthwhile doing). Improvement process is never ending, at the end of each project perform a post mortem and use the results to better manage future work.
heres a few tips:
- Use a bug tracking system - this will help you figure out just how bad the damage is
- Realize the political obstacles are greater then the technical
- Stem the tide of negative sentiment - this may involve apologizing to the customer
- Feature freeze - i know, easier said than done, but try
if you want more, have a read of this article: Rescuing a Hopelessly Derailed Project
this may also be relevant to your situation: Surviving An Under-resourced Project
--LM