|
Consequences of Computing:
A Framework for Teaching
Introduction - Page 2 of 36
Ethical and Social Questions Facing the Practicing Computer Scientist
Consider these questions that have recently come up among practicing computer scientists:
- Who should be accountable when medical software contains bugs that result in the deaths of
several patients? [25]
- When an impostor on a BBS creates significant violations of trust, is his behavior
mitigated by the fact that some therapeutic good was also achieved? [27]
- When a multi-million dollar software project is behind schedule, should technical staff who
doubt that it can be effectively rescheduled and completed inform the client
organization? [40]
- Should there be any limits to the extent that the managers and owners of private firms can
examine the detailed movements of their employees? [9]
- To what extent should employees or managers anticipate the possibility of ailments from
intensive computer use, such as repetitive strain injuries, and who is most responsible for
taking preventive measures? [28]
- To what extent are computer scientists morally responsible for anticipating and publicizing
some of the problems, as well as the social good, that could result from the implementation
of a system they have designed? [40]
All these are questions about computing, its context, and its consequences, that practicing
computer scientists have had to answer in recent cases, and are only a small sample of the
issues facing practicing computer scientists every day. Rigorous training in mathematical
theory and computational technique does not provide students with the skills they need to face
these particular questions. In both practice and curriculum, technical topics are in the
forefront and are the basis for most of the training that computer science professionals
receive. However, as we have made clear here, and as others have argued [30, 36, 38, 48, 53],
there are significant questions of everyday practice that technical training does not address.
These social and ethical questions are most likely to surface when there is disagreement between
parties about the implications of using a particular technical approach or process [30]. For
example, when a client and a contracting firm disagree about the need for security, or when
different units of an organization disagree about the best process for installing and
implementing a product. When confronted with their supervisor's disagreement about ethically
appropriate behavior, many computer professionals do not have much knowledge or skill to allow
reflection. The young computer scientist caught in such a disagreement often has little
understanding of the issues involved or of how to begin thinking carefully about the choices
that confront him or her.
No training can provide easy or algorithmic answers to these questions, but students can at
least be led to expect their appearance and to become competent in the skills and principles
needed to think clearly about them. Students who are not trained to think about the ethical
and social implications of their work may find themselves at a disadvantage when faced with
these questions. There is a clear need for a careful and critical examination, at the
undergraduate level, of the ethical and social issues surrounding the design and use of
computers.
The importance of grappling with these questions has been underscored by Curricula 1991 which
calls the "Social, Ethical, and Professional Issues" one of the subject areas in its common
requirements for the undergraduate computer science curriculum. However, there is very little
guidance in the report for those who would teach this subject area, and even less help from
other recommended curricula [1, 11, 12]. What guidance there is in Curricula 1991 is in the
form of a high-level framework for teaching in the area, rather than recommendations for
specific content or pedagogy.
|