11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101...

25
Computer Science and Software Engineering University of Wisconsin - Platteville 11 - Ethics SE 2730 Lecture Notes Yan Shi Adopted from Dr. Rob Hasker’s notes and Sommerville’s textbook notes

Transcript of 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101...

Page 1: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Computer Science and Software Engineering

University of Wisconsin - Platteville

11 - Ethics

SE 2730 Lecture Notes

Yan Shi

Adopted from Dr. Rob Hasker’s notes and Sommerville’s textbook notes

Page 2: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Professional and ethical responsibility

Software engineering involves wider responsibilities than simply the application of technical skills.

Software engineers must behave in an honest and ethically responsible way if they are to be respected as professionals.

Ethical behaviour is more than simply upholding the law.

Page 3: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Issues of professional responsibility

Confidentiality — Engineers should normally respect the

confidentiality of their employers or clients irrespective of whether or not a formal confidentiality agreement has been signed.

Competence — Engineers should not misrepresent their level of

competence. They should not knowingly accept work which is beyond their competence.

Page 4: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Issues of professional responsibility

Intellectual property rights — Engineers should be aware of local laws governing

the use of intellectual property such as patents, copyright, etc. They should be careful to ensure that the intellectual property of employers and clients is protected.

Computer misuse — Software engineers should not use their technical

skills to misuse other people’s computers. Computer misuse ranges from relatively trivial (game playing on an employer’s machine, say) to extremely serious (dissemination of viruses).

Page 5: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

What behavior is clearly wrong?

Is there ever a time when writing, distributing a virus is OK?

Can it be OK to share a game with a friend?

Y2K: was it ethical to write code in 1965 that would be sure to crash in 2000?

...

Page 6: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Sony’s copy-protection program

story (MSNBC), XCP: copy-protection program that automatically runs when CD

placed into computer — primary use: play the music (apparently the only way to play it) — goal: restricts number of times disks' tracks can be copied — includes cloaking feature to hide all files starting with "$sys$" — virus writers can and have used this cloaking feature

other ramification of the software — it runs constantly, consuming processor time — system won't go into sleep mode — Manual attempts to remove the software can disable the PC’s CD drive

An uninstaller was released — users request it via a web form — form downloads and installs program which supports downloading and

installing fixes — issue: no checks on where such fixes originate!

any web page can run any code you like on your computer!

Page 7: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

What are the issues? (Sony example)

fair use: when we purchase a media, we have the right to listen to the music/view the items — would it be right for Sony to declare it illegal to listen to

their music using Bose earphones? — can a label say it's illegal to listen to music if anyone else

can hear it at the same time? — is it right for a label to say "you can buy this, but you can

only listen to it on a CD player?"

installs software without user's knowledge — spyware!

must have administrative rights to play CD on computer

were the developers competent?

Page 9: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

1982 -- Soviet gas pipeline

CIA operatives planted a time bomb into an illegally-obtained gas pipeline system and caused a serious explosion.

The story (excerpted from above):

— Operatives working for the Central Intelligence Agency allegedly plant a bug in a Canadian computer system purchased to control the trans-Siberian gas pipeline. The Soviets had obtained the system as part of a wide-ranging effort to covertly purchase or steal sensitive U.S. technology. The CIA reportedly found out about the program and decided to make it backfire with equipment that would pass Soviet inspection and then fail once in operation. The resulting event is reportedly the largest non-nuclear explosion in the planet's history.

Was this ethical?

— no physical casualties, but significant damage to Soviet economy

— note: action was in response to learning the Soviets were systematically stealing technology from the West including "valuable data on radar, computers, machine tools and semiconductors"; "Our science was supporting their national defense."

Page 10: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Other examples of ethical issues

Software issued before ready for release — sometimes: seems as if users are asked to test software for

manufacturer

Writing spam engines — how can this be ethical when users have to continually

upgrade their filters to handle new tricks?

What if an anti-virus software manufacturer generated viruses to make other systems look bad?

Monopolistic activities: buying up other vendors to reduce competition

Privacy issues in general.

Page 11: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Ethics 101

Common sense goes a long way

— honesty, legal

Problem: not always obvious what to do

— hence, ethics course!

Most professions have a code of ethics

— arguably, not a (reputable) profession if don't have one!

— SE: Association for Computing Machinery, Institute for Electrical and Electronics Engineers

Page 12: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Laws of Robotics

A robot may not injure a human being or, through inaction, allow a human being to come to harm.

A robot must obey the orders given to it by human beings, except where such orders would conflict with the First Law.

A robot must protect its own existence as long as such protection does not conflict with the First or Second Laws.

-- Isaac Asimov

Page 13: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

ACM / IEEE Ethics Code

Software engineering code of ethics and Professional Practice — http://www.acm.org/about/se-code/

The professional societies in the US have cooperated to

produce a code of ethical practice.

Members of these organisations sign up to the code of practice when they join.

The Code contains eight principles related to the behaviour of and decisions made by professional software engineers, including practitioners, educators, managers, supervisors and policy makers, as well as trainees and students of the profession.

Page 14: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Principle 1, PUBLIC INTREST

Software engineers shall act consistently with the public interest.

— Accept full responsibility for work

— Moderate interests of employer against public

— Approve software only if it's safe and has been tested

— Disclose potential harms to the public

Page 15: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Principle 2, CLIENT AND EMPLOYER

Software engineers shall act in a manner that is in the best interests of their client and employer, consistent with the public interest.

— Provide service in areas of competence

— Don't use software obtained illegally or unethically

— Keep confidential information private Unless, of course, to support principle 1!

Don't collect company-wide email without authorization!

Page 16: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Principle 3, PRODUCT

Software engineers shall ensure that their products and related modifications meet the highest professional standards possible.

— ensuring appropriate goals, methods, standards, costs, schedule

— ensuring qualified to work on project

Page 17: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Principle 4, JUDGMENT

Software engineers shall maintain integrity and independence in their professional judgment.

— Endorse documents you believe in

— Don't engage in deceptive financial practices

— Disclose conflicts of interest

Page 18: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Principle 5, MANAGEMENT

Software engineering managers and leaders shall subscribe to and promote an ethical approach to the management of software development and maintenance.

— providing good management

— consider skills when assigning work (but allow for growth!)

— make realistic estimates

— show respect for concerns about ethical issues for a project

Page 19: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Principle 6, PROFESSION

Software engineers shall advance the integrity and reputation of the profession consistent with the public interest.

— Promoting public knowledge of SE

— Stay current in SE best practices

— Report violations of the code

Page 20: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Principle 7, COLLEAGUES

Software engineers shall be fair to and supportive of their colleagues.

— Assist in professional development

— Give credit where it's due

— Review objectively

Page 21: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Principle 8, SELF

Software engineers shall participate in lifelong learning regarding the practice of their profession and shall promote an ethical approach to the practice of the profession.

Page 22: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Evans Story

Evans, modified software, property rights

Derek Evans worked for a small management software development company

As an employee, he developed an innovative system for customer services — This became a key offering of the small firm — Unfortunately, the firm did not have him sign an agreement stating

that the software became the company property

Later, Derek is working for a larger firm in the customer service area — Basic task: helping customers with systems problems — Saturday morning, he realizes a few minor alterations to his previous

system would significantly improve his productivity — He plans to implement and install these services when he returns to

work on Monday Note that he has signed an agreement with the new company regarding

ownership

Page 23: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Evans Story (cont.)

That evening, he runs into old friends at a party and discusses his plans — Justification: "it's just for my use - after all, I did help design it" and

"besides, it's not exactly the same system" — What would be your advice? — Should Derek’s friend who knows Derek’s formal company well tell

them about it?

Later: management notices his performance improvement and requests it be distributed to others — What should Derek do now?

Suppose Derek tells management but management decides to not contact the former employer. — What should he do then?

Page 24: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Evans Case Study

General problem: ownership and use of technical knowledge

Ownership: the software system is the commercial "Lifeblood" of the old firm… — Derek's assumption that his helping to design the system

gives him some sort of "right" to use it or change it may be dangerously flawed.

Derek's current firm's license to use the software system: none… — a violation of copyright by the firm and possibly Derek

Page 25: 11 - Ethicspeople.uwplatt.edu/~shiy/courses/se273/notes/11-Ethics.pdf · 2014-05-05 · Ethics 101 Common sense goes a long way —honesty, legal Problem: not always obvious what

Summary

Issues of professional responsibility

ACM/IEEE code of ethics

Basic issue in ethics: ask if you'd like to be treated the same way!

Realize not all issues are black-and-white.