It’s bound to happen. Problems arise, clients change their minds, and countless other unforeseen issues can cause a project to be delayed. One important thing to remember is, resist the temptation to add more people to the project as the first option. Taking some literary advice:

“You cannot have a baby in one month by impregnating 9 women” – The Mythical Man-Month

This applies to software projects too.

In reality, sometimes adding additional people might help, but keep these points in mind before making this exception.

The newly added people should be experts at the pending task, AND/OR are going to be working on a completely independent portion of the project. The integration should be seamless with no additional contextual knowledge of the project needed.

The other practical option is – negotiate with the client and help them understand and prioritize their requirements. Drop a couple of fancy items which are “nice-to-have”, but not the “must-haves”. The client might be more accepting of a simple-yet-functional feature, instead of a half done, fancy looking feature.

Taking another cue from the “Mythical Man-Month”, here’s some advice:

“When the chef delays your omelet, you can either have him bring it out early and eat it raw, or allow him the additional time to make it cook well”.

In the end, always do a team retrospective to figure out what went wrong and caused the deliverable to be delayed.