Sie sind auf Seite 1von 9

Ethical Issues and Software Development Projects

Ethical Issues and Software Development Projects

A.O. Aliyu and Adedayo Stephen

Energy Commission of Nigeria, Abuja. Nigeria

Abstract Software development requires more responsibilities than the application of technical skills and very little attention is pay to ethical issues (Stapleton, 2008, p. 206). Ethical behavior is not just than simply keeping the law; in fact software engineers must be straightforward and ethically accountable if they are to be esteemed as professionals (Nwaocha, 2008, p. 7). According to Stapleton (2008), software engineers are not clearly conscious of the likely significance of ethical judgment making in the systems development project. Also, Devereux (2004) reported the lack of ethical awareness in the higher education programs and ethics is rarely part of systems development curricula. Systems engineering consider technology to be morally and culturally neutral Stapleton and Hersh (2004).

Ethical Issues and Software Development Projects Ethical Issues and Software Development Projects Todays research work is on the ethics of science, technology development and

deployment of the development of professional codes of ethics (Stapleton, 2008, p. 405). Also , The ethics of care emphasizes solidarity, community, and caring about one's special relationships and can be contrasted with the more dominant ethics of justice and rights, which emphasizes universal standards, professional codes of conduct, moral rules, and impartiality. The ethics of care has been particularly associated with women's studies as it was developed primarily from an appreciation of how female moral development progresses (Stapleton, 2008, p. 406). Between the year 1970 and 1980 feminist authors initiated question on the assumptions behind most of the traditional ethical theories. Gilligan put forward a theory of moral development for women which are in there phases, challenging the justice-based approaches to moral discussion (Gilligan, 1982). Men tend to embrace an ethic of rights using quasi-legal terminology and impartial principles women tend to affirm an ethic of care that centers on responsiveness in an interconnected network of needs, care, and prevention of harm. Taking care of others is the core notion. (Ethics of care, 2002) Software Development Methodology Software methodology is referred to as the body of methods, rules, postulates, procedures, and processes that are used to manage software (Nwaocha, 2008). System development methodology is also considered to be the framework that is used to structure, plan, and control the process of developing an information system (Stapleton L. , 2008). A system development methodology may not be necessarily suitable for use in all projects. Each of the

Ethical Issues and Software Development Projects

available methodologies is best suited to specific kinds of projects, based on various technical, organizational, project and team considerations. (Selecting a development approach, n.d) Classical Systems Development and Ethics Classical systems development approaches are not concerned with human factors and as a result ethics is not part of the methodologies (Stapleton L. , 2008). The professional organizations have codes of ethics for the systems and software engineers. Stapleton L. (2008) also claimed that these approaches therefore, leave ethical concerns to the professional institutions rather than build them explicitly into the methodologies. Software process is refers to a set of events and related results whose aim is the development or evolution of software product (Sommerville, 2000). The events are specification, development; validation and evaluation, the generic process models used are waterfall, evolutionary development, formal transformation and integration from reusable components (Nwaocha, 2008). Software Development Phases We are in an information age, one in which the management of the information resources of the organization is of vital importance (Cortada, 2007). Business information systems are systems that use these resources to convert data to information in order to improve productivity. Business information systems usually compose of smaller systems, called subsystems (Cortada, 2007). Computer hardware and software are important resources that support information systems and sub-systems. System analysis is a general terms that refers to an orderly, structured process, life methodology. Four phases namely; study, design, development and operation makeup the basic life cycle of computer related business systems (Kay, 2002). There are four information eras namely; the early era (1940-1955), the growing era (1955- 1956), the refining era (1965-1980) and the mature era (1980-date) (George, 2006). The early era concentrate on hardware, and human machine communication was very difficult. The

Ethical Issues and Software Development Projects

growing era improve this communication through the introduction of English like programming languages; however techniques for managing computer related project were lacking (George, 2006). During the refining era, explosive growth occurred in the development of large and small computer systems and in their applications. Developments in microelectronics technology contributed significantly to this growth. Throughout most of the refining era, in spite of a proliferation of applications, difficulties were encountered using computer to solve problems. However, toward the end of this era , a structured system analysis process called life cycle methodology came into increasing use as means of developing usable business information system (George, 2006). Structured techniques for the analysis, design, and development of computer related information system are now enhanced in the maturing era (Stapleton L. , 2008). These techniques are used to develop information systems in applications areas such as distributed, data processing, the automated office and management decision supports. This is an era in which information is acknowledged as important corporate resources (George, 2006). Many of the past difficulties in developing effective computer based business systems stemmed not only from belated effects to apply management controls, but also failure to recognize that techniques applicable to the development of hardware end product could be applied without modification to the development of software end products (George, 2006). However, as a result of experience gained from large government and commercial software projects in the latter part of the 1060 and throughout the 1970s, the concepts of life cycle management was adapted to fit to the development of information based business systems. Life cycle methodology The key to modifying the life cycle concept for the management of software projects was the recognition that, although supporting documentation accompanies a physical product

Ethical Issues and Software Development Projects

throughout its development, documentation is the software product (George, 2006, p. 43). The life cycle methodology for developing complex systems is modular, top-down procedure (Nwaocha, 2008, p. 108). The life cycle of an information based system exhibits distinct phases. These are the study, design, development and the operation phases (Modell, 2007). The Study Phase This is the phase during which a problem is identified, alternate system required to design the system. Task performed in the study phase are grossly analogous to determining that a shelter from the element is needed, and deciding that a two bedroom house is a more appropriate shelter than a palace, a cave or other possible selection. (George, 2006, p. 43) The Design Phase In this phase, the detail design of the system selected in the study phase is decided on in the study phase. In the case of an information based business system, design activities include the allocation of resources to equipment tasks, the technical specification are prepared for the performance of all allocated task (George, 2006, p.43). The Development Phase According to George ( 2006), phase in which the information based systems is constructed from the design phase. All necessary procedure, manuals, software specifications and other documentation are completed. The staff is trained and the complete system is tested for operational readiness. This is comparable to the actual construction of our two bedroom house from the plans prepared in its design phase (George, 2006). The Operation Phase In this phase, the new system is mounted or there is an exchange from the old system to the new one. During this phase the new system is operated and maintained, its performances reviewed, and changes in it are managed (Modell, 2007). As stated by George (2006),

Ethical Issues and Software Development Projects

operation phase is analogous to moving into and living in the house that we have built. If we have performed the activities of the preceding phase adequately, then the roof will not leak.

Socio-Technical Systems Development (STSD) Socio-technical systems development highlights technology over people and enhances the use and development of technology, human knowledge and skill (Stapleton L. , 2008, p. ). The three STSD methodologies are Soft Systems Methodology (SSM), multiview and effective technical and human implementation of computer-based artefacts (ETHICS) (Rogerson, Weckert, & Simpson, 2000). Mumford (1983a) recaps as follows: All change involves some conflicts of interest. To be resolved, these conflicts need to be recognized, brought out into the open, negotiated and a solution arrived at which largely meets the interests of all the parties in the situation... successful change strategies required institutional mechanisms which enable all these interests to be represented, and participation provides these. There are four aspects of systems that must be unified and stabilized in order to form a workable system: people, technology, tasks and organization (Mumford, 2003). Also (Stapleton L. , 2008) stated that; Multiview and Multiview2 offer ethics as a guiding principle but, like SSM and ETHICS, does not indicate clearly how this principle might itself work out in the practical reality of an ISD project. Ethical Issues in Software Development Projects A research on ethical decision making in technology development was conducted by Stapleton L. ( 2008) using a case study of participation in a large-scale information systems development project. Various dimensions of participation were identified and how it affect

Ethical Issues and Software Development Projects software development projects. The study pointed out some of the role ethics played in the

software development projects. This includes; finance and technical dominant voices, deadlines, credit and blame attribution, abandonment and isolation, and the surviving of the implementation (Stapleton L. , 2008, p. 415). Conclusion Ethical issues are to be taking very serious during software development, this also include; the confidentiality of their employers or clients irrespective of whether or not a formal confidentiality agreement has been signed. The competence level of the software engineer should not be compromised (Sommerville, 2000). They should not knowingly accept projects which are not within their competence. During software development, software engineers should be aware of local laws governing the use of intellectual property such as patents and copyright. Intellectual property of employers and clients should be protected.

Ethical Issues and Software Development Projects

Refferences Ethics of care. (2002). Retrieved from http://caae.phil.cmu.edu/Cavalier/80130/part2/II_7.html Cortada, J. W. (2007). Do We Live in the Information Age?: Insights from Historiographical Methods. Retrieved from http://www.informaworld.com/smpp/ftinterface~content=a925326204~fulltext=7132409 30~frm=content Devereux, N. (2004). Information technology professional competence: an empirical study of Irish higher education, M.Sc. Thesis. Ireland : Waterford Institute of Technology. George, O. (2006). Object oriented technology. Lagos: National Open University of Nigeria. Gilligan, c. (1982). In a different voice. Retrieved from http://www.stolaf.edu/people/huff/classes/handbook/Gilligan.html Kay, R. (2002). QuickStudy: System Development Life Cycle. Retrieved from http://www.computerworld.com/s/article/71151/System_Development_Life_Cycle Modell, M. E. (2007). A professional's guide to systems snalysis, second edition. Retrieved from http://www.martymodell.com/pgsa2/pgsa03.html Mumford, E. (2003). Redesigning human systems. Pennsylvania : Idea Publishing. Nwaocha, V. (2008). Software engineering methodologies. Retrieved from http://www.nou.edu.ng/noun/NOUN_OCL/pdf/pdf2/CIT%20731.pdf Rogerson, S., Weckert, J., & Simpson, C. (2000). An ethical review of information systems development-the Australian computer society's code of ethics and SSADM. Inf Technol People 13(2), 121-136.

Ethical Issues and Software Development Projects Selecting a development approach. (n.d.). Retrieved from

http://www.cms.gov/SystemLifecycleFramework/Downloads/SelectingDevelopmentApp roach.pdf Sommerville, I. (2000). Software Engineering . Retrieved from http://www.scribd.com/doc/240298/Ian-Sommerville-Software-Engineering-2000 Stapleton, L. (2008). Ethical decision making in technology development: A case study of participation in a large-scale information systems development project. AI & Society, 22 (3) 405-429. Retrieved from http://proquest.umi.com.proxy1.ncu.edu/pqdweb?did=1475042031&sid=6&Fmt=6&clien tId=52110&RQT=309&VName=PQD Stapleton, L., & Hersh, M. (2004). Technology development and ethical decision making: Identity factors and social construction. Proceedings of IFAC international multitrack conference of advances in control systems Technical University of ViennalElsevier. New York: Routledge.