Computer Science has advanced rapidly in the last several decades, and this advance has ecessitated the continual revision of the curriculum in an evolving discipline. Not only have new areas of interest been added, but new approaches have influenced the ways we think about established areas in computer science. One of the fundamental changes in computer science in the last decade is the realization that the context in which technology is used must be taken into account in its design, partly because of the ethical implications of its use, and partly because understanding the context of use helps inform and improve the design. This recognition is included as one of the foundational principles in Curricula 1991, and has been a part of curriculum standards for over a decade. Thus, as a part of the natural evolution of a maturing discipline, the social and ethical context of the discipline has been included in its basic undergraduate curriculum.
As part of our work, we present a conceptual framework that allows the instructor to see the social and ethical context within which any particular issue can be viewed. Because there are several disciplines that contribute to an understanding of social and ethical context of computing, the context we construct here is multidimensional in nature. Most of the standard topics that instructors already associate with the area will be found here. But other topics, and the intersection of many topics are also suggested by this framework. We expect it will provide the sort of comprehensive, conceptual overview that the field has been lacking until now. But since these issues change with time, we also expect this framework will need to be revised periodically to reflect those changes.
Below is the framework which is explained in our first report. While viewing the framework,
In Computing Curricula 1991, the basis for defining the curriculum is stated as the 'platform of knowledge that is considered essential for all students who concentrate in the discipline.' In this report we extend the basic platform of knowledge necessary in computer science to include a tenth subject area that will cover the social and ethical impact of computing in a comprehensive and meaningful way. Our rational for doing this now is that, because of the work of Project ImpactCS, we are able to articulate the essential core of knowledge in this new area with the same rigor and formalism that was the basis for defining the other nine subject areas using knowledge units.
A knowledge unit defines a coherent collection of subject matter that is so fundamental to the designated subject area that it should occur in every undergraduate curriculum. Frequently the subject matter of a particular knowledge unit is related to other knowledge units in the common requirements and can be introduced within any of several alternative course structures. This is often the case with the knowledge units that we will describe in this new subject area designated Ethical and Social Impact of Computing (ES). The conceptual framework, principles and skills explicated in The Consequences of Computing, the first report from the ImpactCS Project, are used as the basis of the knowledge space of this new subject area. The five fundamental knowledge units of Ethical and Social Impact of Computing are:
- ES1: Responsibility of the Computer Professional
- ES2: Basic Elements of Ethical Analysis
- ES3: Basic Skills of Ethical Analysis
- ES4: Basic Elements of Social Analysis
- ES5: Basic Skills of Social Analysis