INF3708 – Software Project Management
Chapter 1
Introduction to software project management
1.2 Why is software project management important?
The lack of skills and proven approach to project management and risk management are the cuases of
failure in software projects.
1.3 What is a project?
A project is a planned activity.
The following characteristics distinguish projects:
non-routine tasks are involved;
planning is required;
specific objectives are to be met or a specified product is to be created;
the project has a predetermined time span;
work is carried out for someone other than yourself;
work involves several specialisms;
people are formed into a temporary work group to carry out the task;
work is carried out in several phases;
the resources that are available for use on the project are constrained;
the project is large or complex.
The more any of these factors apply to a task, the more difficult that task will be. Project size is
particularly important. The project that employs 20 developers is likely to be disproportionately more
difficult than one with only 10 staff because of the need for additional coordination.
1.4 Software projects versus other types of project
Invisibility When a physical artefact such as a bridge is constructed the progress can actually be seen.
With software progress is not immediately visible. Software project management can be seen as the
process of making the invisible visible.
Complexity Per dollar, pound or euro spent, software products contain more complexity than other
engineering artefacts.
Conformity The ‘traditional’ engineer usually works physical systems and materials like cement and
steel. These physical systems have complexity, but are governed by consistent physical laws. Software
developers have to conform to the requirements of human clients.
Flexibility That software is easy to change is seen as a strength. However, where the software system
interface with a physical or organisational system, it is expected to that the software will change ot
accommodate the other components rather than vice versa.
Chapter 1
Introduction to software project management
1.2 Why is software project management important?
The lack of skills and proven approach to project management and risk management are the cuases of
failure in software projects.
1.3 What is a project?
A project is a planned activity.
The following characteristics distinguish projects:
non-routine tasks are involved;
planning is required;
specific objectives are to be met or a specified product is to be created;
the project has a predetermined time span;
work is carried out for someone other than yourself;
work involves several specialisms;
people are formed into a temporary work group to carry out the task;
work is carried out in several phases;
the resources that are available for use on the project are constrained;
the project is large or complex.
The more any of these factors apply to a task, the more difficult that task will be. Project size is
particularly important. The project that employs 20 developers is likely to be disproportionately more
difficult than one with only 10 staff because of the need for additional coordination.
1.4 Software projects versus other types of project
Invisibility When a physical artefact such as a bridge is constructed the progress can actually be seen.
With software progress is not immediately visible. Software project management can be seen as the
process of making the invisible visible.
Complexity Per dollar, pound or euro spent, software products contain more complexity than other
engineering artefacts.
Conformity The ‘traditional’ engineer usually works physical systems and materials like cement and
steel. These physical systems have complexity, but are governed by consistent physical laws. Software
developers have to conform to the requirements of human clients.
Flexibility That software is easy to change is seen as a strength. However, where the software system
interface with a physical or organisational system, it is expected to that the software will change ot
accommodate the other components rather than vice versa.