Appendix B. Curriculum Examples

Appendix B. Curriculum Examples

Modules for Specific CS Core Courses

For some CS programs it will appropriate to integrate the ES KUís across the curriculum by incorporating ES learning modules into the other CS core courses. This section presents examples of modules that can be incorporated into five of the typical core courses in computer science. Each module contains material for about one week of work in the given course.

B.1 Module for the CS1

Legal Issues and Ramifications: This module is designed to be included in the first of a sequence of two introductory computer science courses, such as CS1. It presents three formal ethical models. It emphasizes the ethical and legal aspects that may arise in a career in computer science. It introduces the concepts of fair use, and intellectual property. The major laws that apply to the computing profession are introduced. A distinction between ethical and legal is offered.

Learning Objectives:

1) To provide examples of three ethical models upon which students can base ethical decisions and to identify ethical issues that they might encounter as computer professionals.

2) To provide an opportunity for oral expression of ideas and opinions.

3) To provide an opportunity for written expression of ideas and opinions.

Recurring Concepts: conceptual and formal models, consistency and completeness, tradeoffs and consequences

Lecture Topics (3 hours minimum)

Ethical models: Bentham's Utilitarianism, Kant's Moral Imperative, Rawles' negotiation of social contracts.

Identifying ethical issues in concrete situations and applying ethical codes.

Intellectual property including copyright, patents, trademarks, and trade secrets.

The Concept of Fair Use.

Computer Regulatory Measures/Laws

Writing assignment: Write a three to five page report, with references, on a recent case related to computer technology that brings up the issues of ethics, fair use, trade secrets, or copyright, etc. Describe the facts, and include the legal conclusion that was reached.

Suggested Laboratories: (2 hours)

Discussion activity: Give the students a scenario to analyze using two of the ethical codes presented above. Have them discuss how one might be more appropriate than the other in making decisions and drawing conclusions.

Debate: Using one or more of the ethical models, take a recent example of a noteworthy legal case and argue it on ethical rather than legal grounds. Discuss the difference.

Student-Developed Computer Access and Usage Policies: Projects that students have found interesting include the development of a computer access policy for a university or the development of a computer ethics policy for a campus. One group can be assigned the task to develop the policy from the perspective of the college administration and the other group assigned the task to develop the policy from the perspective of the general student population. These policies should include prohibited actions and specific sanctions for violations of the policy.

 

 

B.2 Module for CS2

Historical and Societal Context of Computing: This module is designed to be included in the second of a sequence of two introductory computer science courses, typically CS1 and CS2. It stresses the historical development of computer technology and its impact on society. A definition of computing as a profession is offered. Classes are encouraged to develop guidelines that are related to ethical issues and professional responsibilities that might confront them as computing professionals. Methods and values that they share with other scientific and engineering disciplines are discussed.

Learning Objectives:

1) To provide an understanding of the impact of computer technology on society, develop a code of ethics for computing professionals by presenting codes of ethics of other professionals.

2) To provide an opportunity for oral expression of ideas and opinions.

3) To provide an opportunity for written expression of ideas and opinions.

Recurring Concepts: complexity, tradeoffs and consequences

Lecture Topics (3 hours minimum)

History of the development of computer technology.

Impact of computer technology on society.

Definition of computing as a profession.

Codes of ethics and professional responsibility for computing professionals.

Comparison and contrast of computer science with other scientific and professional courses of study.

Writing Assignment: Superimpose a time line of computing on top of some other recent technology such as airplanes, automobiles, television to show the rapid development and dynamic leaps in computing technology.

Suggested Laboratories: (2 hours)

Discussion activity: After having each student characterize their own personal ethics as relates to their family, religion and cultural background, have small groups collaborate in producing a list of ethical situations relating to computer use/technology with which they as employees/employers might be faced. Identify the stakeholders, winners and losers.

Discussion activity: Have students develop a framework for laws against computer trespass or laws against "software lemons" similar to laws which protect consumers against defective automobiles.

Debate: In a classroom discussion, draw up some guidelines that might be followed by computing professionals. Consider whether or not computing professionals need a formal statement of ethics and/or a regulatory body as is found in other professions (such as medicine, law, counseling by a therapist)

B.3 Module for Software Engineering

Risks, Liabilities, and Bias Considerations: This module emphasizes the risks inherent in any software application. It looks at misuse and misunderstanding as well as developer bias. An empirical study of the evaluation of a piece of software is included to sensitize students to identifying and eliminating bias during the design phase.

Learning Objectives:

1) To sensitize the software developer to the kinds of biases present in each of us that could be passed on to the software we develop, and to point out innate risks in software applications.

2) To provide an opportunity for oral expression of ideas and opinions.

3) To provide an opportunity for written expression of ideas and opinions.

Recurring Concepts: complexity of large problems, consistency and completeness, security, tradeoffs and consequences

Lecture Topics (3 hours minimum)

Types of risks: bugs, misuse, misunderstandings, security, privacy, etc.

How social context influences the development and use of technology.

How technology embodies the values of the developers.

Identifying bias in software and designing to eliminate it.

Writing Assignment: Write a three to five page paper, with references, that documents the misuse, bugs or security breaches of some software. Indicate the consequences that resulted from this problem.

Suggested Laboratories: (2 hours)

Discussion: Have small groups of students choose a piece of software to which they have access and evaluate it with respect to the values of the developers, biases, and social influences in it's development.

Empirical Study: Working in teams, produce an evaluation form that can be used to rate the various social issues (i.e. gender bias, cultural bias, etc.) that may be embedded in a piece of software. Have several other students, not necessarily CS majors, evaluate the software using the form. Draw some conclusions from the data collected with the form.

B.4 Module for Database and Information Retrieval

Liability and Privacy: The kinds of risks that are intrinsic in the development of any computer application and how these risks can be taken into account during development are discussed. Risks include software or hardware bugs, unforeseen user interactions, security risks, violations of privacy, unethical uses, and inappropriate applications of the system. Protecting data and privacy with respect to a database management system are emphasized.

Learning Objectives:

1) To provide a clear understanding of risks that a developer faces with respect to his or her software, and to emphasize the importance of protecting the data from misuse or unauthorized access.

2) To provide an opportunity for oral expression of ideas and opinions.

3) To provide an opportunity for written expression of ideas and opinions.

Recurring Concepts: complexity of large problems, consistency and completeness, security, tradeoffs and consequences

Lecture Topics (3 hours minimum)

Uses and misuses of computer technology.

Types of losses.

Losses and liability: legal aspects with respect to developer and client.

Privacy and security.

Writing Assignment: Write a three to five page paper discussing methods of risk assessment and reduction of risk. Use current examples to point out some of the risks.

Suggested Laboratories: (2 hours)

Discussion activity: Discuss in small groups some privacy and/or security issues that are inherent in large databases. Who owns the data about a particular person: medical, credit, personal, financial, consumer information, etc.

Role Playing/Debate: Give the class 2 or 3 scenarios and have some volunteers do some role playing as to how to handle the situation. More than one solution of the same scenario is possible. (One example might be using data gathered from the Internet, without the subject's knowledge or consent, being used for empirical studies.)

B.5 Module for Artificial Intelligence

Social Impact: The social impact of artificial intelligence is explored by examining public perceptions and the potential social implications of existing AI technology, not only from the point of view of the responsibilities of the developer, but also from the point of view of society and how it has been influenced by AI.

Learning Objectives:

1) To increase the student's awareness of the public perceptions and of the potential social implications of Artificial Intelligence.

2) To provide an opportunity for oral expression of ideas and opinions.

3) To provide an opportunity for written expression of ideas and opinions.

Recurring Concepts: evolution, complexity of large problems, security, tradeoffs and consequences

Lecture Topics (3 hours minimum)

Perceptions of AI technology and its impact on society.

Social, ethical, legal and philosophical aspects of AI.

Privacy and security.

Writing Assignment: After reading a science fiction book, short story or play, or viewing a movie or TV episode dealing with some aspect of AI, the student will write a three to four page paper summarizing the plot, stating the view presented by the author (good or evil), stating their personal reaction to the author's opinions, and drawing conclusions about how feasible the technology described is to becoming reality in the near future.

Suggested Laboratories: (2 hours)

Discussion activity: The above written reports are presented and discussed in small groups. The groups will characterize each work according to the following scales:

Science Fiction work:_____________________________________________

Type of technology portrayed in work:_______________________________

Technology seen as:

good neutral evil

10 _________________________ 5 ___________________________ 0

Humans seen as:

good neutral evil

10 _________________________ 5 ___________________________ 0

Who / what is in control of what happens?:

humans shared technology

10 _________________________ 5 ___________________________ 0

Have each group compute a group average of the works represented in the group and report their findings to the class.

Examples of excellent science fiction books dealing with AI:

Asimov, Isaac. books or short stories from his Robot Collection

Heinlein, Robert. Friday and The Moon is a Harsh Mistress

Hogan, James. The Two Faces of Janus

Ryan, Thomas (1977). The Adolescence of P-1. NY: Collier MacMillan.

Examples of science fiction movies dealing with AI: 2001, Blade Runner