370 Extra Credit: a 4 to 5 page essay, due at final exam time, June 5, 8:30am. Will be counted as a quiz, 10 points, OR homework 25 extra pts.

Legality vs. Ethicality in Software Testing

Background: Two among Several Relevant Theories of Ethics

1. The Categorical Imperative of Immanuel Kant (1724 - 1804): "Act on a maxim which you can will to be a universal law." This is a Respect for Persons (RP) morality, and a deontological, or binding duty, theory. In Kant's philosophy the Categorical Imperative means that it is both a necessary and absolute moral law, and that it is the ultimate rational basis of all moral conduct. Further, it is binding on all rational beings and is not based on conditional premises, wishes, or consequences. A maxim may be thought of as a "formula" of sorts, a prescribed behavior. For example, if A is a subjective condition, and if B is an action, then a maxim could take the form: If A occurs, I will do B. Law here is not used in the legal sense, rather it means a principle of action independent of fear of punishment, etc. Thus one applies the test of asking oneself: "Could I will (desire) that the action I am about to take, B, should become the duty of all rational beings in response to A?" Note that this is a cogent and rational argument for world peace.


2. Utilitarianism, associated with Jeremy Bentham (1748 - 1832) and John Stuart Mill (1806 - 1873) may be stated as: "Act so as to produce the greatest happiness for the greatest number of people." Pleasure and pain are held to be the only intrinsic good and intrinsic evil, respectively. Utilitarianism is also called the Greatest Happiness Theory.

Another idea often relevant in engineering ethics is The Principle of Informed Consent. This means that the potential user(s) of our products and services must be made aware of hazards and other implications of using them.

The Scenario: Personal and Corporate Ethics vs. Contract Law?

You are employed by VaporWare, Inc. (VWI) in its Software Development Group. Among your responsibilities is the testing and quality sign-off of custom software before full release to the customer or client. Normally, this is the last in-house work prior to delivery of product.

VWI is a small, privately-held "start-up" which does custom hardware and software design. You own no part of VWI, but your employment contract specifies that in two years you will be considered for inclusion in the limited partnership. A majority vote of the owners is sufficient for you to be so rewarded.

You are the only person(s) involved in the testing of the software named APUDA. The product is to be delivered to One Big Monopoly, Inc. (OBM), who intend to use APUDA in an unstated process control system. The APUDA product was to be designed to a specification furnished by OBM, which has from the outset refused to discuss the application. Rumors have circulated that the product is being developed for the CIA. Still other rumors have it that market and trade considerations are the reasons for secrecy.

The profit to VWI, based on an on-time delivery of APUDA, is estimated to be $170 thousand. There is no bonus for early delivery. Other estimates indicate that for the current fiscal year the total VWI profits will be $1.2 million. A penalty clause in the contract stipulates that payment to VWI will be reduced by an amount such that VWI profit for the APUDA project will be reduced by about $1.5 thousand for each day of delay after the due day (D-Day). Thus, for example, if the product is 10 days late, VWI will suffer a loss of $30 thousand in the APUDA Project.

Your close friend Pat was the team leader in writing the code. Because of illness to one of the team members, and another leaving VWI for another job, you received APUDA 3 days after the scheduled time to begin full-functionality testing. If you work 18-hour days, and if only minor bugs need fixing, you are confident that you can complete the testing to the original schedule and thus ship "on time." You begin testing.

Testing proceeds well and is nearly complete at 3:00 a.m. on the last day. For on-time delivery APUDA source-code is to ship by overnight carrier at 4:00 p.m. this (last) day. You enter the next-to-last input sequence and to your horror observe that the output states are not as specified. You examine the input sequence just entered and are relieved to note that you made an error in two bits in entering the input-variable sequence. Entering the correct input sequence yields the correct output. You complete the test and all is well. Of the 1,024 allowed input sequences of 16-bit words, only the next-to-last word yielded erroneous outputs.

You check again the OBM specification and observe that it does not specify performance for input bit-errors, i.e., except that if an input sequence is not in the set of allowed inputs the outputs shall remain in its previous states.

You talk to Pat at 8:00 a.m. of D-Day and are assured by Pat that, "The code meets specifications."

Assignment: Write a 4 to 5 page essay that discusses one or more of the points listed below. Cite two outside sources. You will be graded on both content and writing quality.

  1. Suppose the engineer recommends telling OBM management of the "anomalies" found in the test but VaporWare management orders APUDA shipped without informing OBM of the problems. What, if anything, should the engineer do? Support the position taken.
  2. Review the ethical code for any USA-based engineering or computer science society and cite any language that may be in it that would apply to the scenario. Many societies have worldwide membership.
  3. Consider the isolation and anonymity between the designer and the user that often occurs in engineering. In the present scenario these factors are compounded by a third party, OBM. How may this affect the performance, responsibilities, and "ownership" of the quality of the product from the designer's perspective? Ideally, how should it affect these matters?
  4. How does the engineer's ethical responsibility change owing to the presence of a third party such as OBM in the scenario given here? Examine the matter in general and for the present scenario.
  5. Compare the differences between the fundamentals of problems of the kind given here versus the homework problems assigned in a typical engineering course.
  6. Suppose the engineer in the scenario discovers that APUDA is to be used in one of the systems noted below. Examine each application and comment on the engineer's responsibility depending upon the particular application.
    1. A computer or video game.
    2. A device for monitoring the production of individual factory-workers in a so-called Third World country.
    3. Part of the attitude control system of a commercial airliner.
    4. Patient-monitor for intensive-care hospital rooms.
    5. A surveillance system for use by law enforcement to monitor clandestinely the activities of known criminals. May be used to activate unknown devices.
    6. None of the above, and the application remains unknown.

Bibliography: A highly abbreviated listing of works on engineering ethics and societal responsibility of engineers and technologists.

The World Wide Web is rich in ethics materials with many links. The Online Ethics Center for Engineering and Science at Case Western Reserve University is a good place to begin.

* Harris, C., Pritchard, M., and Rabins, M., Engineering Ethics: Concepts and Cases, Wadsworth, Belmont, CA, 1995
* Johnson, D., Computer Ethics, Second Edition, Prentice Hall, Englewood Cliffs, NJ, 1994
* Johnson, D. (Ed.), Ethical Issues in Engineering, Prentice Hall, Englewood Cliffs, NJ, 1991
* Johnson, D., and Nissenbaum, H. (Eds.), Computers, Ethics & Social Values, Prentice Hall, Upper Saddle River, NJ, 1995
* Layton, E., The Revolt of the Engineers: Social Responsibility and the American Engineering Profession, The Johns Hopkins University Press, Baltimore, 1986
* Martin, M. and Schinzinger, R., Ethics in Engineering, Third Edition, McGraw-Hill, NY, 1996
* Susskind, C., Understanding Technology, San Francisco Press, San Francisco, 1985
* Unger, S., Controlling Technology: Ethics and the Responsible Engineer, Second Edition, Wiley, NY, 1994

Writing resources: http://depts.washington.edu/owrc/resources.html

(This assignment was designed by Bruce Hemmingway and adapted from Dr. Joseph H. Wujek, P.E., http://onlineethics.org/edu/wujek/legality.html)