At RAHD Oncology Products, as Development Manager, I designed (in conjunction
with the Customer Support Manger), a comprehensive project management system for
our geographically distributed software and hardware development groups and
customer support group, which also supported FDA 820.30 requirements. This
provided a web interface to a relational database backend, usable by both
managers and staff, with additional support through integration with other
tools, such as a version control system (CVS), and the raw file system. It was
implemented by another developer and myself. 2000-2006
At the University of Utah, Computer Center, as a Senior Programmer and later
as Manager of Networking and Unix Systems, and as a member of the Campus Network
Advisory Committee, I saw firsthand the importance of project management,
especially in a matrix management structure (which existed even across
department boundaries). For example, ProjectA, being the responsibility of
ManagerA in DeptA, requires resources from DeptA, but also from DeptB and DeptC,
with ManagerB and ManagerC. In this type of environment, it can be extremely
difficult to guage the impact of one project on another, even with project
management tools. 1988-1995
At the University of Utah, Computer Science, as Assistant Project Director
for the the URSA Project (R&D in distributed information retrieval systems for
the CIA), I first saw the value of project management in achieving goals and
producing deliverables on time, resulting in continued funding. 1984-1985
Why bother with project management?
Software developers may tend to view "project management" as an annoyance, or
as management meddling in things it does not understand. Although both are often
true, some form of project management is nevertheless needed when multiple
projects compete for limited development resources. Some entity must be
responsible for setting the priorities, and further, for mediating incoming
project change requests and new projects, as well as unexpected problems, in
order to control the impact on the current project schedule.
Without this, the impact of changes and new projects is not only
unpredictable, but is likely to be wasteful of scarce development resources.
For example, say that projects A and B are under development, when an urgent
need for new project C arises. The developers are told to shift gears; C is top
priority. Although this might achieve C in the shortest elapsed time, it can
cause A and B to now consume more resources than if they had been completed
before C was started. If nothing else, the developers must reestablish the
project A and B mindsets and "flows" that existed prior to C, which consumes
time and energy, but the impact can go deeper.
While project management is important, it is equally important to not over do
it. This can result in resentment and failure, the failure then validating the
resentment. It is an important balance to find.