Page 268 -
P. 268
Management Issues in Outsourced Projects
There are some important ways project management is different for an outsourced project
than it is for a project developed in-house. It’s not just the relationship with the vendor
that’s different; it’s also the relationship between you, your management at your own
company, and your team members. By paying special attention to transparency, informa-
tion sharing, and communication, you can make sure these relationships lead to a success-
ful project.
Actively Manage Your Project
If you have a relatively small project with well-defined requirements, known acceptance
criteria, and a specific deadline—in other words, a fixed amount of work in a fixed period
of time—then the project will probably work out fine. The success of a project like this
hinges primarily on the technical competence of the programmers and on their ability to
work together as a team. This is especially common when an organization that has never
developed software before needs a specific piece of software written and does not want to
build up its own IT infrastructure.
If you are a project manager at an organization that makes software as part of its core
operations, then you are probably not in this situation, and your outsourced projects will
probably not be this simple. They are much more likely to involve an open-ended com-
mitment (one that, in some cases, could go on for years). Many organizations that out-
source their work do not have a good grasp on their requirements, and often have not put
much thought into what they need from the project or the vendor (other than “working
software”—which, in practice, is not an easy thing to pin down).
The truth is, many outsourced projects don’t go well. What’s more, the clients at those
projects don’t necessarily realize that their projects have started to go bad until they
receive a piece of software that does not do what they need it to do. This situation is
harder to prevent here than it would be in an in-house project, for several reasons. If you
are getting a much cheaper labor cost than you would for your own employees, then you
might have a much larger project team than you are used to managing. You might also be
used to having a lot of visibility into how your projects are going, because your in-house
programmers talk to you routinely and give you (and your users and stakeholders) a lot of
status updates.
When you are managing an outsourced project, the status doesn’t readily present itself. If
you have a good management structure in place, you can trust your delegated managers
at the vendor to relay the status to you. However, the most reliable way for you to get a
good handle on the status of your project is to collect it yourself. If, for example, you are
building a project, you should ask for nightly build reports and unit test results. You
should track the lines of code produced on a daily or weekly basis, and you should have
access to a defect tracking system with metrics. Numbers like that can give you regular
snapshots of the health of the project.
260 CHAPTER ELEVEN