2. Software project management is the collection
of techniques used to develop and deliver
various types of software products.
This developing discipline traditionally
includes technical issues such as: the choice of
software development methodology, how to
estimate project size and schedule, how to
ensure safety, what resources to reuse and
which programming environment to use for
the development.
3. The discipline also includes management
issues such as: when to train personnel, what
are the risks to the project success, and how to
keep the project on schedule. These choices are
then embodied in a software project
management plan.
Developing software is frequently complicated
involving many people from different areas
and with different skills, experiences and social
attitudes.
There are many operational decisions to be
taken during this extended activity.
4. There are many different approaches to control
the complexity of this activity which can be
viewed at two levels. There are those
approaches which are concerned with high
level decisions and processes such as the
Capability Maturity Model and the ISO 9000
series, and there are methods which deal with
the details of the day to day activities of the
project managers and software development
teams. These latter methods include
COCOMO, PRINCE and Function Point
Analysis.
5. Relevant ethical principles must be established
in order to identify the ethical issues associated
with software project management. Ethics
comprises both practice and reflection [van
Luijk, 1994]. It is sufficient to consider only
ethics practice in this paper because software
project management is concerned primarily
with action that guides others towards some
common goal rather than conceptual reflection
of the role and value of project management.
6. Step Description
1 Visualise what the goal is
2 Make a list of the jobs that need to be done
3 Ensure there is one leader
4 Assign people to jobs
5 Manage expectations, allow a margin of error
and have a fallback position
6 Use an appropriate leadership style
7 Know what is going on
8 Tell people what is going on
9 Repeat Step 1 through 8 until Step 10 can be
achieved
10 Realise the project goal
Figure 2 The Ten Steps of Structured Project
Management
7. The eight ethical principles can be used to
provide an insight to how ethical management
might be achieved. The activities within each of
the ten steps of SPM have been analysed in
order to identify the dominant ethical issues of
each step [Rogerson, 1997]. The results of this
analysis are shown in Figure 3
It is recognised that most of the eight ethical
principles will have some impact on each step
but it is important to identify those which will
have a significant impact on each particular
step
8. Step 1 2 3 4 5 6 7 8 9 10
Principle
1. Honour X X X X X
2. Honesty X XX X
3. Bias XXXX X X
4. Adequacy XX X
5. Due care X X X XX
6. Fairness X X X
7. Social cost X XX X
8. Action XXX XX XX
6 2 4 5 4 4 1 5 2 4
Figure 3
9. Negative affects include both overt harm and
the denial or reduction of goods. So obviously
the development of a medical software package
which delivered erroneous dosages of
medicine that killed patients would have a
negative effect; but we would also include as
having a negative effect software which limited
people's freedom of expression. Limitations on
positive ethical values and rights are negative
effects. It can also be argued that the failure to
promote positive ethical values is also a
negative effect.
10. Just as producing software of high quality should be second
nature to the software engineer so should producing
software that is ethically sensitive. Indeed there is clearly an
overlap in these two requirements. The project management
process for software development must accommodate an
ethical perspective. The major criticism of current practice is
that any ethical consideration tends to be implicit rather
than explicit which has a tendency to devalue the
importance of the ethical dimension. By using ethical
principles, identifying of ethical hotspots and using SoDIS it
is possible to ensure that the key ethical issues are properly
addressed as an integral part of the software development
process. Quite simply, project management should be
guided by a sense of justice, a sense of equal distributions of
benefits and burdens and a sense of equal opportunity. In
this way software development project management will
become ethically aligned.