ACM Computing Classification System
The ACM Computing Classification System is a subject classification system for computing devised by the Association for Computing Machinery. The system is comparable to the Mathematics Subject Classification in scope, aims, and structure, being used by the various ACM journals to organise subjects by area.
History
The system has gone through seven revisions, the first version being published in 1964, and revised versions appearing in 1982, 1983, 1987, 1991, 1998, and the now current version in 2012.
Structure
The ACM Computing Classification System, version 2012, has a revolutionary change in some areas, for example, in "Software" that now is called "Software and its engineering" which has three main subjects:
- Software organization and properties. This subject addresses properties of the software itself.
- Software notations and tools. This subject covers programming languages and other tools for writing programs.
- Software creation and management. This subject covers human activities including software management.
It is hierarchically structured in four levels. Thus, for example, one branch of the hierarchy contains:
- Computing methodologies
- Artificial intelligence
- Knowledge representation and reasoning
- Ontology engineering
ACM Computing Classification System |
---|
| The 2012 version of the ACM classification has the following main categories. | | General and reference | Document types • Cross-computing tools and techniques |
---|
| Hardware | Printed circuit boards • Communication hardware, interfaces and storage • Integrated circuits • Very large scale integration design • Power and energy • Electronic design automation • Hardware validation • Hardware test • Robustness • Emerging technologies |
---|
| Computer systems organization | Architectures • Embedded and cyber-physical systems • Real-time systems • Dependable and fault-tolerant systems and networks |
---|
| Networks | Network architectures • Network protocols • Network components • Network algorithms • Network performance evaluation • Network properties • Network services • Network types |
---|
| Software and its engineering | Software organization and properties • Software notations and tools • Software creation and management |
---|
| Theory of computation | Models of computation • Formal languages and automata theory • Computational complexity and cryptography • Logic • Design and analysis of algorithms • Randomness, geometry and discrete structures • Theory and algorithms for application domains • Semantics and reasoning |
---|
| Mathematics of computing | Discrete mathematics • Probability and statistics • Mathematical software • Information theory • Mathematical analysis • Continuous mathematics |
---|
| Information systems | Data management systems • Information storage systems • Information systems applications • World Wide Web • Information retrieval |
---|
| Security and privacy | Cryptography • Formal methods and theory of security • Security services • Intrusion/anomaly detection and malware mitigation • Security in hardware • Systems security • Network security • Database and storage security • Software and application security • Human and societal aspects of security and privacy |
---|
| Human-centered computing | Human–computer interaction • Interaction design • Collaborative and social computing • Ubiquitous and mobile computing • Visualization • Accessibility |
---|
| Computing methodologies | Symbolic and algebraic manipulation • Parallel computing methodologies • Artificial intelligence • Machine learning • Modeling and simulation • Computer graphics • Distributed computing methodologies • Concurrent computing methodologies |
---|
| Applied computing | Electronic commerce • Enterprise computing • Physical sciences and engineering • Life and medical sciences • Law, social and behavioral sciences • Computer forensics • Arts and humanities • Computers in other domains • Operations research • Education • Document management and text processing |
---|
| Social and professional topics | Professional topics • Computing/technology policy • User characteristics |
---|
| Proper nouns: people, technologies and companies | Companies • Organizations • People in computing • Technologies |
---|
|
See also
- arXiv, a preprint server that uses a somewhat different subdivision of topics in its computer science subject areas but also allows papers to be classified using the ACM system
References
- Coulter, Neal (1997), "ACM's computing classification system reflects changing times", Communications of the ACM (New York, NY, USA: ACM) 40 (12): 111–112, doi:10.1145/265563.265579 .
- Coulter, Neal (chair); French, James; Glinert, Ephraim; Horton, Thomas; Mead, Nancy; Ralston, Anthony; Rada, Roy; Rodkin, Craig; Rous, Bernard; Tucker, Allen; Wegner, Peter; Weiss, Eric; Wierzbicki, Carol (January 21, 1998), "Computing Classification System 1998: Current Status and Future Maintenance Report of the CCS Update Committee" (PDF), Computing Reviews (New York, NY, USA: ACM): 1–5 .
- Mirkin, Boris; Nascimento, Susana; Pereira, Luis Moniz (2008), "Representing a Computer Science Research Organization on the ACM Computing Classification System", in Eklund, Peter; Haemmerlé, Ollivier, Supplementary Proceedings of the 16th International Conference on Conceptual Structures (ICCS-2008) (PDF), CEUR Workshop Proceedings 354, RWTH Aachen University, pp. 57–65 .
External links
- ACM Computing Classification System is the homepage of the system, including links to four complete versions of the system, for 1964 , 1991 , 1998 , and the current 2012 version .
- The ACM Computing Research Repository uses a classification scheme that is much coarser than the ACM subject classification, and does not cover all areas of CS, but is intended to better cover active areas of research. In addition, papers in this repository are classified according to the ACM subject classification.