School of Engineering and
Applied
Science Department of Computer Science CSci 110 -- Technology and Society http://www.seas.gwu.edu/~mfeldman/csci110/summer06 Prof. Michael B. Feldman, course instructor mfeldman@gwu.edu |
NOTE ON GROUPS: Each of you has been
assigned
to a group. There is a group project in this class as well as group
discussions. Check to see what group you are in by clicking
COMMUNICATION from the main menu, then Group Pages, then select a group
(1, 2, or 3) to see which one you are assigned to. Note that
your instructor is a member of all the groups. BE SURE TO
COMMUNICATE AND WORK WITHIN YOUR GROUP.
Readings:
History of Computers, Baase, chapt. 1.1, plus URL's
Developing a Moral Framework, Baase, chapt. 10
Professional Codes of Ethics, Spinello/Tavani, chapt. 1, 6
Ethical Coordinate System (PDF
file)
Prof. C. Dianne Martin's Notes on Ethical
Systems (PDF file)
IEEE
(Institute of Electrical and Electronic Engineers) Code of Ethics
ACM (Association
for Computing Machinery) Code of Ethics (which Prof. Martin helped
to write)
ACM-IEEE
Software
Engineering Code of Ethics and Professional Practice
Learning Activities:
Electronic Introductions
(by Friday 7/7, 11:59 pm) - in your Blackboard group discussion area,
write a brief
description of your background, interests, experience
with computers, discussion of the following: Since many cultures may be
represented in this class, briefly describe how
you think technology is viewed within your culture (good, evil,
frightening,
morally corrupting, progress, etc.). In particular, comment on how the
general public in your country feels about "western" technology. If
your culture is American, your thoughts on American culture and
technology are welcome, of course!
Personal ethical frameworks
(by Friday 7/7, 11:59 PM) - in your group discussion area, locate
yourself
on the ethical coordinate system. Given the
hypothetical ethical Cartesian coordinate system (see attached Ethical
Coordinates file), locate (plot) where you think your own ethical
philosophy falls and discuss why.
Group discussion of ethics scenario (by
Tuesday 7/11 at 11:59 pm) - groups will discuss an
ethics scenario to identify the ethical situation, the stakeholders,
the alternatives and the possible correct action based upon a code of
ethics.
First look at the ACM Code of Ethics and the IEEE Ethics Code and
discuss where you think they each fall in the moral coordinate system.
Now consider the situation described below.
Each person will represent the views of one or two of the stakeholders
shown
below. As a group generate a set of alternative actions possible from
the point of view of the stakeholders you represent. (For the
professionals, use the ACM or IEEE code of ethics to develop
alternatives)
Scenario:
Civil engineers employed by a state agency were engaged in numerous
construction design projects, such as flood control, where safety of
humans is a factor. They were held personally responsible for their
work under a professional and business responsibility law. In their
design activities, the engineers increasingly relied on computer
programs that were designed by systems analysts and implemented by
computer programmers. The engineers specified the problems requiring
solution and, to various degrees, specified the methods of solution and
test cases for demonstrating that the computer programs functioned
correctly. Several of the computer programs included logic where
decisions were based on engineer-specified criteria and where the
program output selected types and quantities of construction materials
and stated how deliverable end products were to be constructed.
The engineers complained to their management that they were not able to
determine the correctness and integrity of the computer programs, and
the results of their work relied heavily on those qualities. Therefore,
an error in a computer program or an error in operation of the computer
(that could be detected by a programmer) could result in a serious
design flaw that could cause harm to people. The engineers wanted the
systems analysts and computer programmers to share in the
responsibilities for any losses under the professional and business
law. The systems analysts and programmer stated that they were merely
providing tools and had no involvement in their use. The engineers
could test and analyze the programs to assure themselves of their
accuracy. Therefore, the systems analysts and programmers should not be
held responsible.
Individual Deliverable:
Ethics Scenario Evaluation
(4-5-page paper, 15 % of your grade, due in Digital Drop Box by Friday,
7/14, 11:59 PM EDT)
Purpose: An important purpose of this course is enable you to develop analysis skills to make decisions on ethical issues that may arise related to computer systems that you develop and implement in the future. An effective way to do that is to analyze hypothetical situations or scenarios that present ethical dilemma based upon several criteria.
Assignment: In this assignment you will be given a scenario to
evaluate in four parts:
Assessment of your paper: Your paper will be graded based upon how well you can support your arguments with carefully stated reasons derived from the philosophical frameworks and the codes of ethics that were presented in class and in the Baase textbook. You are expected to use correct English grammar and spelling. You will be penalized up to 5 points for grammatical errors and spelling mistakes, depending upon the severity and frequency of the errors.
Select one of the following three scenarios to analyze:
Scenario 1 -- Software
Reliability: Promises, promises!
A company called GT is building a software platform for business-to-business (B2B) e-commerce. Their whole business model is based upon establishing a trusted marketplace with authentication of all parties. One of the hottest new B2B exchanges, eHotEx.com comes to GT to license their platform. GT finds out that they are also talking to their competitors. Landing this account would be a big PR and revenue coup for GT. As part of the deal, they require some special enhancements to the GT platform. Engineering tells Sales that they can deliver the changes fully tested in 3 months. They will have a beta version ready on 2 months. eHotEx.com indicates that they will accept the beta version and let the bugs get worked out during the release so they can launch on schedule. What should GT do? (From Communications of the ACM, February, 1993)
Scenario 2 -- Privacy:
A software engineer has started her own consulting business. She has been so successful that she now has 10 people working for her and a number of excellent clients. Their consulting work included advising on how to put together networks, how to design database management systems, and how to provide network security. Presently she is designing a database system for the personnel office of a medium-sized company. She has involved the client in the design process, informing the CEO, the director of I'T, and the director of personnel about the progress of the system. It is now time to make decisions about the kind and extent of the security to build in to the system. She has described several options to the client. Because the system is going to cost more than they planned, the client has decided to opt for a less secure system. The software engineer believes that the data they will be storing is extremely sensitive personnel information, such as performance evaluations, salary data, medical records for insurance filings, and so on. With weak security, it may be possible for company employees to gain access to this data as well as for hackers to break into it. She feels strongly that the system should be much more secure. She tries to explain the risks, but the CEO and his staff all agree that the less expensive, less secure solution will be fine. What should she do? (From Communications of the ACM, February, 1993)
Scenario 3 -- Intellectual
Property:
A programmer, working on a sophisticated data mining package, is trying to write an algorithm to do intelligent searches across multiple databases. Programmers in this company are encouraged to write about their work and publish their algorithms in professional journals. After months of tedious programming, the programmer finds himself stuck on one part of the problem. His manager, not realizing the complexity of the problem, wants the job completed within the next few days. The programmer remembers that a co-worker had written an article about a similar problem and given him the source code from an earlier version of a commercial software package developed by another company. On looking at those programs, he sees two areas of code that could be incorporated into his program. He incorporates the segments of code from the co-worker's article and from the commercial package into the program, but does not tell anyone or mention it in the documentation. The program works perfectly and is delivered a day ahead of schedule.