In the past, it was not uncommon to have projects that
spanned years. However, for the most part, the days of the mega-project are
over. Very large projects are simply too difficult to execute successfully and
present a number of problems, including:
- The
work is less clear as you get further out. This makes it very difficult to
plan successfully. - Since
the future work is less clear, it’s harder to make accurate estimates for
effort, duration, and cost. - Business
and technical conditions change over time, making planning assumptions
very uncertain. The business and technical certainties of today can change
dramatically over time. - You
risk losing organizational support if there’s a long timeframe before delivering
tangible results. It’s very difficult to maintain organizational
enthusiasm and support over long periods of time. - Large
projects have more people and this increases the likelihood of
communication problems, misunderstandings, team turnover, and morale
problems.
Very large efforts are much too difficult and complex to
manage as a single project. It’s better to break the work down into more
manageable chunks of work, each of which is managed as its own project, with
its own Project Definition and workplan.
For instance, a long IT development effort can be broken
into separate projects. One project could be set up for the analysis work.
Toward the end of that project, you could establish three more projects to
design and build portions of the solution. A project might be structured to
create the infrastructure needed for the solution. Two more projects could be
set up for consolidated testing and final deployment respectively.
If you break a large effort into a number of inter-related
projects, there’s still a need to maintain overall management and coordination.
This is the purpose of setting up a “program.” A program is the
umbrella structure established to manage a series of related projects and is led
by a program manager. The program does not produce any project deliverables. The
program manager’s purpose is to:
- Provide
overall direction, guidance, and leadership for the projects. - Make
sure the related projects are communicating effectively. - Provide
a central point of contact and focus for the client and the project teams. - Determine
how individual projects should be defined to ensure all the work gets
completed successfully.
If you are assigned a very large project, look for ways to
break it up into smaller pieces (with or without the program umbrella).
Breaking it up into multiple smaller projects doesn’t mean you have more work–it
is the same work. However, breaking it up will allow you to manage the work
more effectively and ultimately give you a better chance to be successful.