Maybe you’ve heard the phrase “time and tide wait
for no man.” It’s a little bit of a cliche, but that doesn’t mean it isn’t
true…especially when it comes to IT project deadlines. Erratic and under/over-estimated
timelines, so-called “scope creep”, unexpected staff illnesses or
supplier failures – these are just some of the things that could (and probably
will) go wrong with your project. And because time is today the most common
metric to measure efficiency, the schedule delays caused by these events can
end up costing you a fair amount of money (in addition to a possible damaged
reputation).

Is there a solution? Sure! Proper planning, well
executed and taking account of potential pitfalls, is the sure-fire way of
ensuring that projects are successfully implemented. Most project managers know this and spend a significant amount
of time developing project schedules and delivery timelines. Where they often
trip up, however, is in failing to realize that project planning is a
continuous activity that must proactively and continuously take place
throughout the project life cycle, and not one that ends with the receipt of
the customer’s advance fees.

In this document, I’ll offer some tips to help you plan
your next project and ensure that it comes in on time, under budget and at a
high quality level.

The Problems

First, let’s look at some of the reasons for project
delays:

  • Over-ambitious
    estimates and incorrect task assessment:
    Often, project teams are
    unable to correctly estimate the time and effort required to complete
    given tasks, leading to overly-optimistic schedules. Customer pressure may
    also force teams to attempt to complete too many tasks in a compressed
    timeframe — a self-defeating strategy that ultimately risks the quality
    of the end-product.
  • Unreasonable
    project scope:
    Often, some projects are too big for the time that’s
    been assigned to them. Management (or customers) can be irrational at
    times, trying to squeeze in as many features and development work as
    possible per release, without practically analyzing if it is even doable.
  • Lack
    of task clarity:
    Sometimes, no clear breakdown of tasks and team roles
    exists, leading to misunderstandings between team members.
  • Lack
    of risk management systems:
    Some teams seem to live in a make-believe
    world, believing that they can rescue a project at the last minute and
    that all crises can be tabled to the next meeting. This isn’t an
    appropriate response. All projects have problems; any one problem could
    destroy the plan and throw the project out of whack. If these problems are
    not identified and proactively resolved on an ongoing basis, things will
    only get worse.
  • Lack
    of resources:
    “This project needs five developers. But we only
    have four. Never mind, we’ll manage”. Sound familiar? If so, know
    that it’s not going to work — a project that needs five members isn’t
    going to meet its deadline with only four. A variant of this problem is
    when a project starts out with the appropriate number of members, but then
    “loses” some of them to other projects along the way (usually
    because someone higher up decided they knew more about resource allocation
    than the project manager).
  • Missing
    or damaged infrastructure:
    Projects are often delayed because the
    infrastructure — hardware, software, tools, documents — required to
    complete the project successfully is either unavailable or non-functional
    just when it’s most urgently needed.

The Solutions (10 tips)

It’s not all gloom and doom, though. Take the following
measures to mitigate these issues and ensure a well-planned, well-executed, and
timely project.

  1. Analyze
    the requirements in detail:
    Understand exactly what the project
    involves, down to the smallest details. Ask questions to clarify ambiguous
    areas. Finally, hire professionals to clearly document the business
    requirements, the functional specification, and the design requirements.
    Watch out for scope creep; it can single-handedly destroy all the work
    you’ve done. If the need arises, take aggressive steps to reduce the scope
    of the project, or to avoid adding unplanned new features that require
    significant integration time.
  2. Map
    available resources:
    Map available resources with requirements to
    ensure that there are enough personnel on site to complete the job.
    Identify all relevant infrastructure — hardware,
    software, human resources, tools, documents — required to execute the
    project well before the project development starts.
  3. Perform
    training and knowledge transfer:
    Include training, if any, as part of
    the project timeline. Don’t treat training as something team members do on
    their own time, but account for it in the project schedule and budget.
  4. Identify
    risks:
    Identify the potential risks and create contingency plans to
    deal with them. Develop a back-up plan to meet the project deadline in
    case of unexpected process or personnel failures; this
    “plan B” acts are your support system when things don’t
    go as planned.
  5. Estimate
    and allocate:
    Assign roles and responsibilities to team members and
    ensure each task has a clear owner. Use project management tools and Gantt
    charts to record who does what and identify start and end dates for each
    activity. Failure to assign clear responsibilities for each task can lead
    to overlapping responsibilities, duplication of efforts, excessive time
    spent on activities and inferior product quality.
  6. Modularize
    work:
    Break down main activities into sub-activities, until each
    activity is complete on its own and independent of other activities.
    Arrange them in logical order, and then start executing the smallest
    activity in the order of occurrence.
  7. Avoid
    too many meetings:
    Plan meetings to discuss the status of the project,
    or on an as-needed basis to address immediate problems. Long, unending
    meetings with no clear agenda and hence no clear outcome only waste time.
  8. Write
    things down:
    Document the failures and successes of the project. This
    is important; it acts as historical information for similar activities in
    other projects. Use a project dashboard to visually obtain a high level
    overview of the project and to measure the progress of project activities.
    Take stock of the project at each milestone, and update the project
    dashboard each time.
  9. Beware
    of follow-the-sun development:
    If there is a follow-the-sun
    development model (a continuous engineering environment with development
    happening 24/7 across the globe), ensure clear communication to avoid
    misunderstanding between co-located or cross-country-located team members.
    Coordinate well and regularly so that nothing falls through the cracks.
  10. Escalate
    issues:
    Escalate issues to management as they occur and brainstorm on
    solutions to problems. Trying to remedy problems after they’ve
    deteriorated beyond recovery is the last thing you need.

It should be clear that the key to a successful, timely
project lies with proactive planning and time and resource management. Take the
above tips into consideration, and nothing can stop your project from meeting
its objectives and timelines. Good luck!