Computing Cases Header, Picture of a Keyboard with the text "" printed over it


Teaching Tools

Teaching with Cases

Social Impact Analysis

Computer Ethics Curriculum

Curricula Index

Case Materials



Hughes Aircraft

Ethics in Computing Links

Contact Us

ACM/IEEE Computer Society Computing Curriculum 1991

Computing Curricula 1991 (CC91) was designed by a joint task force of the Association for Computing (ACM) and the Institute of Electrical and Electronics Engineers (IEEE) as a framework for the current computer science curriculum. CC91 defined computer science as a hybrid of methematice, science, and engineering. CC91 also defined computer science in terms of three processes, nine fundamental subject areas, twelve recurring concepts, and a social and professional context[28].

According to CC91, the three processes of computer science are defined as:

  • theory (mathematical roots)
  • abstraction (scientific roots)
  • design (engineering roots)

The curriculum also included nine fundamental subject areas:

  1. algorithms and data structures,
  2. architecture,
  3. artificial intelligence and robotics,
  4. database and information retrieval,
  5. human-computer communication,
  6. numerical and symbolic computations,
  7. operating systems,
  8. programming languages,
  9. software methodology and engineering.

The twelve recurring concepts are listed as:

  1. binding,
  2. complexity of large problems,
  3. conceptual and formal models,
  4. consistency and completeness,
  5. efficiency,
  6. evolution,
  7. levels of abstraction,
  8. ordering in space,
  9. ordering in time,
  10. reuse,
  11. security,
  12. tradeoffs and consequences.