the ethics of software project management

Upload: alex-muresan

Post on 03-Jun-2018

220 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/12/2019 The Ethics of Software Project Management

    1/2

    The Ethics of Software Project Management

    Introduction

    Software project management is the collection of techniques used to develop and deliver various types ofsoftware products. This developing discipline traditionally includes technical issues such as: the choice ofsoftware development methodology, how to estimate project size and schedule, how to ensure safety, what

    resources to reuse, and which programming development environment to use. The discipline also includesmanagement 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. Softwareproject management addresses both the process of software development and the desired functionalcharacteristics of the final software product. A complete software project management plan is the design,implementation, control and test strategy for a software development process.

    Applying Ethics

    Relevant ethical principles must be established in order to identify the ethical issues associated with softwareproject 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 thatguides others towards some common goal rather than conceptual reflection of the role and value of projectmanagement.

    Generic Software Project Management

    Whilst it is recognised that the development of a piece of software might have its own special set of problemsand challenges that have to managed there are many similarities in all software projects that means it is worthconsidering a generic approach which will lay down foundations for the management of all software projects. Inhis book, How to Run Successful Projects, in the British Computer Society Practitioner Series, [O'Connell, 1994]provides details of the Structured Project Management (SPM) approach. He explains that SPM is a practicalmethodology that, as [De Marco and Lister, 1987] state, is a "basic approach one takes to getting a job done".This appears to be a generic approach which is practical rather than conceptual and provides practitioners withrealistic guidance in undertaking the complex activity of project management.

    Ethical Management

    The eight ethical principles can be used to provide an insight to how ethical management might be achieved. Theactivities within each of the ten steps of SPM have been analysed in order to identify the dominant ethical issuesof each step [Rogerson, 1997]. The results of this analysis are shown in Figure 3. It is recognised that most of theeight ethical principles will have some impact on each step but it is important to identify those which will have asignificant impact on each particular step. The mapping in Figure 3 shows those relationships which areconsidered significant. Those with the highest ethical significance, indicated by the number of ethical principlesthat prevail are, at this level, the ethical hotspots of a generic approach to software project management.

    Scope of Consideration

    Stakeholders

    As mentioned previously, establishing the right scope of consideration is essential in defining acceptable projectgoals. The scope of consideration is influenced by the identification and involvement of stakeholders. In

  • 8/12/2019 The Ethics of Software Project Management

    2/2

    traditional software project management the stated needs of the customer are the primary item of concern instating the project objectives.

    Stakeholder Identification

    [Gert, 1988, Green, 1994] use a rights model to help identify relevant stakeholders. Once the stakeholders areidentified one can itemise the specific obligations owed by the software developers to each of thesestakeholders. Gert gives 10 basic moral rules. Although this is a deontological theory, it has been arguedelsewhere that these rules are consistent with a Rawlsian approach to moral standards for software professionals

    [Gotterbarn 1991].

    Involvement

    Once the stakeholders have been identified, it is necessary to seek their involvement in the development processin order to meet their rights in the most effective way. As indicated above, in traditional project developmentthere is a very narrow range of stakeholder involvement. Such restricted stakeholder involvement reduces thelikelihood that any relevant ethical issues are properly considered. The evidence from Farbey substantiates ourclaim that no current method of software project management considers ethical issues.

    Generic Software Development Impact Statement

    One way of addressing the need to modify project goals in a formal way is to use a modification of a social impact

    statement. A social impact statement is modelled on an environmental impact statement which is requiredbefore major construction is undertaken. The environmental impact statement is supposed to specify thepotential negative impacts on the environment of the proposed construction and specify what actions will betaken to minimise those impacts. Proposed social impact statements have been described for identifying theimpact of information systems on direct and indirect system users [Shneiderman and Rose, 1995], whereas ourSoftware Development Impact Statement (SoDIS) is intended to reflect the software development process aswell as the more general ethical obligations to various stakeholders.

    Specific Software Development Impact Statement

    Work Breakdown Structure

    Most software project management models proceed by decomposing each task into smaller more manageabletasks. These smaller tasks are then carefully described in terms of resource needs, costs and expected time tocomplete. Once a project is decomposed in this way, the costs of the individual tasks are added together toestimate the total project cost. These individual task descriptions are elaborated and included in the softwareproject management plan. This set of task descriptions, sometimes called Work Breakdown Structure (WBS), isused in the reviewing and monitoring of the completion of tasks. The entire software development process isorganised in terms of an ordered hierarchy of tasks, the WBS. Each WBS task is dependent on the completion ofother WBS tasks. Each WBS task includes a description of the other WBS task on which it depends.

    Muresan Alexandru Ioan,

    An IV, CT