Human Aspects of Software Engineering (Charles River Media Computer Engineering)

Slide 1

Code of Ethics of Software Engineering

Jim Tomayko Orit Hazzan

Slide 2

Ethics and Software Engineering

  • What is ethics?

  • Why is ethics needed?

  • Does the Software Engineering community need ethics?

If yes: On what principles should the ethics of software engineers be based on?

If not: Explain why

Slide 3

What is Ethics?

The Webster s Collegiate Dictionary:

Ethics is the discipline dealing with what is good and bad and with moral duty and obligation .

Differences between Ethics and Law.

Slide 4

What is a Profession?

Kasher, A. (2002). Professional Autonomy and Its Limits, the Research in Ethics and Engineering conference, 25 “27 April 2002, Delft University of Technology.

Five basic layers :

  • systematic knowledge

  • problem solving proficiency

  • constant improvement of that knowledge and proficiency

  • local understanding of professional claims and methods

  • global understanding of professional activity, which is ethics

Slide 5

What is Ethics? (Asa Kasher)

Ethics reflects what is appropriate in a professional community

The main resources for any ethics:

  • the professional dignity

  • the conception of the professional community of the profession s essence

  • the requirements of the surrounding social environments (e.g., democratic values)

Slide 6

Does the Software Engineering Community Need Ethics?

The importance of ethics of software engineers stems from the significant influence of computers and software on the world.

  • On the one hand, software engineers can cause damage;

  • On the other case they can contribute a lot to the society.

Software engineers should know what is permitted, what is forbidden, when they have the freedom to choose, etc.

Slide 7

Ethics of Software Engineering

The importance of Ethics in the start-up era:

Martin, C. D. (2001). Ethics@Coms: Why Internet start-ups need ethics codes, SIGCSE Bulletin, 33(2), pp. 7 “8.

  • Focus was placed on the product and marketing.

  • Less attention was put on topics such as vision, mission, ethics.

Ethics contributes to the image of the company; lack of ethics may cause damage.

Slide 8

Ethics of Software Engineering

In what follows , several cases related to software engineering are presented. With respect to each scenario:

  • Express your opinion about the described behavior ”Is it ethical?

  • Describe how would you behave in such a case.

  • According to your decision: Formulate one or more ethical norms, which, in your opinion, should be included in the Code of Ethics of Software Engineering.

[Lecturers are invited to select case studies for discussion from the book as well as from their own experience]

Slide 9

Ethics of Software Engineering Class Activity

Formulate ethical roles for the profession of software engineering.

[After that class activity, the code of ethics should be presented to the students. You can use the URL http://www.acm.org/serving/se/code.htm ]

Slide 10

Comments on the Code of Ethics of Software Engineering

  • In the previous version, the first principle was the product.

  • In the updated version, the first principle is public.

  • The Code is phrased in a way that it fits to changes in the world of software engineering

Slide 11

Ethics of Software Engineering ”Group Work

Suggest three activities that can be done on a regular basis to fulfill the Self section of the Code of Ethics of Software Engineering.

Категории