Algorithms
Similarity measures
Clustering
Command and control
Consumer products
Industrial control
Military
Process control
Publishing
Real time
Computers in other systems (C.3)
Miscellaneous
Routers
Standards (e.g., TCP/IP)
Internetworking (C.2.2)
Backtracking
Control theory
Dynamic programming
Graph and tree search strategies
Heuristic methods
Plan execution, formation, and generation
Scheduling
Problem Solving, Control Methods, and Search (F.2.2)
Automatic synthesis
Hardware description languages
Optimization
Simulation
Switching theory
Verification
Design Aids
Dynamic memory (DRAM)
Read-only memory (ROM)
Static memory (SRAM)
Semiconductor Memories (B.7.1)
Business
Education
Financial (e.g., EFTS)
Government
Law
Manufacturing
Marketing
Administrative data processing
Diagnostics
Error-checking
Redundant design
Test generation
Reliability, Testing, and Fault-Tolerance (B.8)
Algebraic algorithms
Analysis of algorithms
Nonalgebraic algorithms
Algorithms (F.2.1, F.2.2)
Electronic Publishing (H.5.4, J.7)
Hardwired control
Microprogrammed logic arrays
Writable control store
Control Design Styles
Command and control languages
Linkers
Loaders
Window managers
Systems Programs and Utilities
Index Generation
General
Abuse and crime involving computers
Assistive technologies for persons with disabilities
Employment
Handicapped persons/special needs
Social Issues
Minicomputers
Applicative (Functional) Programming
Codes of good practice
Ethics
Composite structures
Contiguous representations
Hash-table representations
Linked representations
Object representation
Primitive data items
Data storage representations
Design management
Applications (SMTP, FTP, etc.)
Protocol architecture (OSI model)
Protocol verification
Routing protocols
Network Protocols
Frames and scripts
Modal logic
Predicate logic
Relation systems
Representation languages
Representations (procedural and rule-based)
Semantic networks
Temporal logic
Knowledge Representation Formalisms and Methods (F.4.1)
Backup procedures
Checkpoint/restart
Fault-tolerance
Reliability
Biographies/autobiographies
Conference proceedings
General literary works (e.g., fiction, plays)
Constrained optimization
Convex programming
Global optimization
Gradient methods
Integer programming
Least squares methods
Linear programming
Nonlinear programming
Quadratic programming methods
Simulated annealing
Stochastic programming
Unconstrained optimization
Coherence and coordination
Intelligent agents
Languages and structures
Multiagent systems
Distributed Artificial Intelligence
Microprocessors
Personal computers
Portable devices (e.g., laptops, personal digital assistants)
Workstations
Microcomputers
Applications
Life cycle
Management techniques (e.g., PERT/CPM)
Staffing
Strategic information systems planning
Systems analysis and design
Systems development
Training
Project and People Management
Array and vector processors
Associative processors
Connection machines
Interconnection architectures (e.g., common bus, multiport memory, crossbar switch)
Multiple-instruction-stream, multiple-data-stream processors (MIMD)
Parallel processors
Pipeline processors
Single-instruction-stream, multiple-data-stream processors (SIMD)
Multiple Data Stream Architectures (Multiprocessors)
Economics
Approximate methods
Exact coding
Compression (Coding) (E.4)
Distributed programming
Parallel programming
Concurrent Programming
Computer-aided software engineering (CASE)
Decision tables
Evolutionary prototyping
Flow charts
Modules and interfaces
Object-oriented design methods
Petri nets
Programmer workbench
Software libraries
State diagrams
Structured programming
Top-down programming
User interfaces
Design Tools and Techniques
Cartography
Games
Industrial automation
Medicine and science
Natural language interfaces
Office automation
Applications and Expert Systems (H.4, J)
Data mining
Image databases
Scientific databases
Spatial databases and GIS
Statistical databases
Database Applications
Cellular arrays and automata
Combinational logic
Logic arrays
Memory control and access
Memory used as logic
Parallel circuits
Sequential circuits
Design Styles
Animation
Combined
Continuous
Discrete event
Distributed
Gaming
Monte Carlo
Parallel
Visual
Types of Simulation
Super (very large) computers
Large and Medium (``Mainframe'') Computers
Data mapping
Distributed objects
Interface definition languages
Interoperability
Simulation Languages
Code generation
Compilers
Debuggers
Incremental compilers
Interpreters
Memory management (garbage collection)
Parsing
Preprocessors
Retargetable compilers
Run-time environments
Translator writing systems and compiler generators
Processors
Classifier design and evaluation
Feature evaluation and selection
Pattern analysis
Design Methodology
Design studies
Fault tolerance
Measurement techniques
Modeling techniques
Performance attributes
Reliability, availability, and serviceability
Performance of systems
Algebraic approaches to semantics
Denotational semantics
Operational semantics
Partial evaluation
Process models
Program analysis
Semantics of Programming Languages (D.3.1)
Firmware engineering
Languages and compilers
Machine-independent microcode generation
Microprogram Design Aids (D.2.2, D.2.4, D.3.2, D.3.4)
Computation of transforms (e.g., fast Fourier transform)
Computations in finite fields
Computations on matrices
Computations on polynomials
Number-theoretic computations (e.g., factoring, primality testing)
Numerical Algorithms and Problems (G.1, G.4, I.1)
Arrays
Distributed data structures
Graphs and networks
Lists, stacks, and queues
Records
Tables
Trees
Data structures
Control Structure Reliability, Testing, and Fault-Tolerance (B.8)
Semantics
Syntax
Formal Definitions and Theory (D.2.1, F.3.1, F.3.2, F.4.2, F.4.3)
Data description languages (DDL)
Data manipulation languages (DML)
Database (persistent) programming languages
Query languages
Report writers
Languages (D.3.2)
Methodologies and techniques
Modeling
Signal analysis, synthesis, and processing
Systems
Sound and Music Computing (J.5)
Large text archives
Library Automation
Autonomous vehicles
Commercial robots and applications
Kinematics and dynamics
Manipulators
Operator interfaces
Propelling mechanisms
Sensors
Workcell organization and planning
Robotics
Computer arithmetic
Conditioning (and ill-conditioning)
Error analysis
Interval arithmetic
Multiple precision arithmetic
Numerical algorithms
Parallel algorithms
Stability (and instability)
Evaluation strategies
Nonprocedural languages
Special-purpose algebraic systems
Special-purpose hardware
Substitution mechanisms
Languages and Systems (D.3.2, D.3.3, F.2.2)
Continuation (homotopy) methods
Convergence
Iterative methods
Polynomials, methods for
Systems of equations
Roots of Nonlinear Equations
Architectures
Navigation
Theory
User issues
Hypertext/Hypermedia (I.7, J.7)
Representations (general and polynomial)
Simplification of expressions
Expressions and Their Representation (E.1, E.2)
Desktop publishing
Equipment
Groupware
Spreadsheets
Time management (e.g., calendars, schedules)
Word processing
Workflow management
Office Automation (I.7)
Deterministic
Fuzzy set
Geometric
Neural nets
Statistical
Structural
Models
Computability theory
Computational logic
Lambda calculus and related systems
Logic and constraint programming
Mechanical theorem proving
Model theory
Proof theory
Recursive function theory
Set theory
Mathematical Logic (F.1.1, I.2.2, I.2.3, I.2.4)
Protection mechanisms
Standards
General (K.5.1)
Reference (e.g., dictionaries, encyclopedias, glossaries)
Data compaction and compression
Error control codes
Formal models of communication
Nonsecret encoding schemes
Coding and information theory (H.1.1)
Data models
Normal forms
Schema and subschema
Logical Design
Markets
Statistics
Suppliers
The Computer Industry
Inverse filtering
Kalman filtering
Pseudoinverse restoration
Wiener filtering
Restoration
Hierarchical
Morphological
Multidimensional
Volumetric
Image Representation
3D/stereo scene analysis
Architecture and control structures
Intensity, color, photometry, and thresholding
Modeling and recovery of physical attributes
Motion
Perceptual reasoning
Representations, data structures, and transforms
Shape
Texture
Video analysis
Vision and Scene Understanding (I.4.8, I.5)
Algorithm design and analysis
Certification and testing
Documentation
Efficiency
Parallel and vector implementations
Portability
Reliability and robustness
Mathematical software
Document management
Languages
Spelling
Version control
Document and Text Editing
Receivers (e.g., voice, data, image)
Transmitters
Data Communications Devices
Complexity measures
Performance measures
Process metrics
Product metrics
Software science
Metrics (D.4.8)
Access controls
Authentication
Cryptographic controls
Information flow controls
Invasive software (e.g., viruses, worms, Trojan horses)
Security kernels
Security and Protection (K.6.5)
Buffering
Input/output
Message sending
Network communication
Terminal management
Communications Management (C.2)
Performance Analysis and Design Aids
Complexity of proof procedures
Computations on discrete structures
Geometrical problems and computations
Pattern matching
Routing and layout
Sequencing and scheduling
Sorting and searching
Nonnumerical Algorithms and Problems (E.2, E.3, E.4, E.5, G.2, H.2, H.3)
Built-in tests
Testability
Reliability and Testing (B.8)
Censorship
Regulation
Taxation
Governmental Issues
Formal models
Worst-case analysis
Performance Analysis and Design Aids (B.8, C.4)
VLSI Systems
Distributed architectures
Mobile processors
Parallel Architectures
Asynchronous/synchronous operation
Fiber optics
Interfaces
Parallel I/O
Physical structures (e.g., backplanes, cables, chip carriers)
Topology (e.g., bus, point-to-point)
Interconnections (Subsystems)
Edge and feature detection
Pixel classification
Region growing, partitioning
Relaxation
Segmentation
Information filtering
Query formulation
Relevance feedback
Retrieval models
Search process
Selection process
Information Search and Retrieval
Software psychology
Cognitive simulation
Philosophical foundations
Cybercash, digital cash
Distributed commercial transactions
Electronic data interchange (EDI)
Intellectual property
Payment schemes
Security
Electronic Commerce (J.1)
Methodologies
Representation
Design (D.2.2)
Logic Programming
Performance Analysis and Design Aids (B.8)
Microprocessor/microcomputer applications
Process control systems
Real-time and embedded systems
Signal processing systems
Smartcards
Special-purpose and application-based systems (J.7)
Assertion checkers
Class invariants
Correctness proofs
Formal methods
Model checking
Programming by contract
Statistical methods
Validation
Software/Program Verification (F.3.1)
Applied communication and signal processing
Data dictionary/directory
Data warehouse and repository
Logging and recovery
Security, integrity, and protection
Database Administration
Calculator
Pipeline
Design Styles (C.1.1, C.1.2)
Reliability, Testing, and Fault-Tolerance
Device independence
Ergonomics
Graphics data structures and data types
Interaction techniques
Methodology and Techniques
Boundary representations
Constructive solid geometry (CSG)
Curve, surface, solid, and object representations
Geometric algorithms, languages, and systems
Hierarchy and geometric transformations
Modeling packages
Object hierarchies
Physically based modeling
Splines
Computational Geometry and Object Modeling
Codes of ethics
Ethical dilemmas
Professional Ethics (K.4)
Hardware reliability
Aerospace
Archaeology
Astronomy
Chemistry
Earth and atmospheric sciences
Electronics
Engineering
Mathematics and statistics
Physics
Physical sciences and engineering
Abstracting methods
Dictionaries
Indexing methods
Linguistic processing
Thesauruses
Content Analysis and Indexing
Domain decomposition methods
Elliptic equations
Finite difference methods
Finite element methods
Finite volume methods
Hyperbolic equations
Inverse problems
Iterative solution techniques
Method of lines
Multigrid and multilevel methods
Parabolic equations
Spectral methods
Partial Differential Equations
Occupations
Data translation
Program translation
Heterogeneous Databases
Computer-aided design (CAD)
Computer-aided manufacturing (CAM)
Computer-aided engineering
Graphics processors
Hardcopy devices
Input devices
Parallel processing
Raster display devices
Storage devices
Three-dimensional displays
Vector display devices
Hardware Architecture (B.4.2)
Copyrights
Cost estimation
Productivity
Programming teams
Software configuration management
Software process models (e.g., CMM, ISO, PSP)
Software quality assurance (SQA)
Time estimation
Management (K.6.3, K.6.4)
Object-oriented Programming
Arithmetic and logic units
Control design
Data-path design
Memory design
Styles (e.g., parallel, pipeline, special-purpose)
Design
Adaptive and iterative quadrature
Automatic differentiation
Equal interval integration
Gaussian quadrature
Multidimensional (multiple) quadrature
Quadrature and Numerical Differentiation (F.2.1)
Combinatorial algorithms
Counting problems
Generating functions
Permutations and combinations
Recurrences and difference equations
Combinatorics (F.2.2)
Concurrency
Distributed databases
Multimedia databases
Object-oriented databases
Parallel databases
Query processing
Relational databases
Rule-based databases
Textual databases
Transaction processing
Deadlocks
Multiprocessing/multiprogramming/multitasking
Mutual exclusion
Synchronization
Threads
Process Management
Filtering
Geometric correction
Grayscale manipulation
Registration
Sharpening and deblurring
Smoothing
Enhancement
Series expansion methods
Summation methods
Transform methods
Reconstruction
Management/Maintenance
Algebraic language theory
Classes defined by grammars or automata (e.g., context-free languages, regular sets, recursive sets)
Classes defined by resource-bounded automata
Decision problems
Operations on languages
Formal Languages (D.3.1)
Graphics
Layout
Placement and routing
Accreditation
Computer literacy
Approximation of surfaces and contours
Chebyshev approximation and theory
Elementary function approximation
Fast Fourier transforms (FFT)
Least squares approximation
Linear approximation
Minimax approximation and algorithms
Nonlinear approximation
Rational approximation
Special function approximations
Spline and piecewise polynomial approximation
Wavelets and fractals
Approximation
Hardware/software interfaces
Instruction set design (e.g., RISC, CISC, VLIW)
Modeling of computer architecture
System architectures
Systems specification methodology
Insurance
Physical security
Unauthorized access (e.g., hacking, phreaking)
Security and Protection (D.4.6, K.4.2)
Sequential Programming
Licensing
Patents
Proprietary rights
Trade secrets
Hardware/Software Protection
Allocation/deallocation strategies
Distributed memories
Garbage collection
Main memory
Secondary storage
Storage hierarchies
Swapping
Virtual memory
Storage Management
Adaptable architectures
Analog computers
Capability architectures
Cellular architecture (e.g., mobile)
Data-flow architectures
Heterogeneous (hybrid) systems
High-level language architectures
Stack-oriented processors
Other Architecture Styles
Interactive systems
Special architectures
Implementation (C.3)
Feature representation
Invariants
Moments
Projections
Size and shape
Feature Measurement
Auditory (non-speech) feedback
Benchmarking
Evaluation/methodology
Graphical user interfaces (GUI)
Haptic I/O
Input devices and strategies (e.g., mouse, touchscreen)
Interaction styles (e.g., commands, menus, forms, direct manipulation)
Natural language
Prototyping
Screen design (e.g., text, graphics, color)
Standardization
Style guides
Theory and methods
Training, help, and documentation
User interface management systems (UIMS)
User-centered design
Voice I/O
Windowing systems
User Interfaces (D.2.2, H.1.2, I.3.6)
Queueing theory
Image displays
Image processing software
Hybrid systems
Automation
Computer-supported collaborative work
Reengineering
Organizational Impacts
Control primitives
Functional constructs
Object-oriented constructs
Program and recursion schemes
Type structure
Studies of Program Constructs (D.3.2, D.3.3)
Bulletin boards
Computer conferencing, teleconferencing, and videoconferencing
Electronic mail
Information browsers
Videotex
Communications Applications
Computer-related health issues
Human safety
Intellectual property rights
Privacy
Transborder data flow
Use/abuse of power
Public Policy Issues
Animations
Artificial, augmented, and virtual realities
Audio input/output
Hypertext navigation and maps
Video (e.g., tape, disk, DVI)
Multimedia Information Systems
Elicitation methods (e.g., rapid prototyping, interviews, JAD)
Methodologies (e.g., object-oriented, structured)
Tools
Requirements/Specifications (D.3.1)
Biology and genetics
Health
Medical information systems
Life and medical sciences
Answer/reason extraction
Deduction (e.g., natural, rule-based)
Inference engines
Logic programming
Mathematical induction
Metatheory
Nonmonotonic reasoning and belief revision
Resolution
Uncertainty, ``fuzzy,'' and probabilistic reasoning
Deduction and Theorem Proving (F.4.1)
Data communications
Database processing
Freeware/shareware
Application Packages
Color, shading, shadowing, and texture
Fractals
Hidden line/surface removal
Radiosity
Raytracing
Virtual reality
Visible line/surface algorithms
Three-Dimensional Graphics and Realism
Collection
Dissemination
Systems issues
Digital Libraries
Computer vision
Signal processing
Text processing
Waveform analysis
Automatic analysis of algorithms
Program modification
Program synthesis
Program transformation
Program verification
Automatic Programming (D.1.2, F.3.1, F.4.1)
Environments
Simulation Support Systems
Difference formulas
Extrapolation
Interpolation formulas
Spline and piecewise polynomial interpolation
Interpolation (I.3.5, I.3.7)
Measurements
Modeling and prediction
Monitors
Operational analysis
Stochastic analysis
Performance (C.4, D.2.8, I.6)
Color
Depth cues
Object recognition
Photometry
Range data
Sensor fusion
Shading
Stereo
Surface fitting
Time-varying imagery
Tracking
Scene Analysis
Cost/performance
High-Speed Arithmetic
Application packages
Device drivers
Graphics editors
Graphics packages
Meta files
Paint systems
Picture description languages
Software support
Virtual device interfaces
Graphics Utilities
Time series
Statistical communications
Network management
Network monitoring
Public networks
Network Operations
Graphical environments
Integrated environments
Interactive environments
Programming Environments
Access methods
Deadlock avoidance
Recovery and restart
Physical Design
Computer science education
Curriculum
Information systems education
Literacy
Self-assessment
Computer and Information Science Education
Fourier analysis, correlation functions
Complexity hierarchies
Machine-independent complexity
Reducibility and completeness
Relations among complexity classes
Relations among complexity measures
Complexity Measures and Classes (F.2)
Control Structure Performance Analysis and Design Aids
Psychology
Sociology
Social and behavioral sciences
Benchmarks
Computer selection
Computing equipment management
Performance and usage measurement
Pricing and resource allocation
Installation Management
Database Machines
Hardware
Asynchronous Transfer Mode (ATM)
Centralized networks
Circuit-switching networks
Distributed networks
Frame relay networks
ISDN (Integrated Services Digital Network)
Network communications
Network topology
Packet-switching networks
Store and forward networks
Wireless communication
Network Architecture and Design
Domain engineering
Reusable libraries
Reuse models
Reusable Software
Assertions
Logics of programs
Mechanical verification
Pre- and post-conditions
Specification techniques
Specifying and Verifying and Reasoning about Programs (D.2.1, D.2.4, D.3.1, E.1)
Automatic Programming (I.2.2)
Testing, Certification, and Licensing
Organizations
Analogies
Concept learning
Connectionism and neural nets
Induction
Knowledge acquisition
Language acquisition
Parameter learning
Learning (K.3.2)
Tradeoffs between Complexity Measures (F.1.3)
Client/server
Distributed applications
Network operating systems
Distributed Systems
Object-oriented programming
Pretty printers
Program editors
Reentrant code
Coding Tools and Techniques
Contingency table analysis
Correlation and regression analysis
Distribution functions
Experimental design
Markov processes
Multivariate statistics
Nonparametric statistics
Probabilistic algorithms (including Monte Carlo)
Random number generation
Reliability and life testing
Renewal theory
Robust regression
Statistical computing
Statistical software
Stochastic processes
Survival analysis
Time series analysis
Probability and statistics
Model classification
Systems theory
Types of simulation (continuous and discrete) [*]
Simulation Theory
Automata (e.g., finite, push-down, resource-bounded)
Bounded-action devices (e.g., Turing machines, random access machines)
Relations between models
Self-modifying machines (e.g., neural networks)
Unbounded-action devices (e.g., cellular automata, circuits, networks of machines)
Models of Computation (F.4.1)
Multiple-instruction-stream, single-data-stream processors (MISD)
RISC/CISC, VLIW architectures
Single-instruction-stream, single-data-stream processors (SISD)
Von Neumann architectures
Single Data Stream Architectures
Servers
Human factors
Human information processing
User/Machine Systems
Advanced technologies
Algorithms implemented in hardware
Gate arrays
Input/output circuits
Memory technologies
Microprocessors and microcomputers
Standard cells
VLSI (very large scale integration)
Types and Design Styles
Directory structures
Distributed file systems
File organization
Maintenance
File Systems Management (E.5)
Boundary value problems
Chaotic systems
Convergence and stability
Differential-algebraic equations
Initial value problems
Multistep and multivalue methods
One-step (single step) methods
Stiff equations
Ordinary Differential Equations
Introductory and survey
Delay equations
Fredholm equations
Integro-differential equations
Volterra equations
Integral Equations
Code breaking
Data encryption standard (DES)
Public key cryptosystems
Standards (e.g., DES, PGP, RSA)
Data encryption
Discourse
Language generation
Language models
Language parsing and understanding
Machine translation
Speech recognition and synthesis
Text analysis
Natural Language Processing
Model Validation and Analysis
Document analysis
Graphics recognition and interpretation
Optical character recognition (OCR)
Scanning
Document Capture(I.4.1)
Commercial services
Data sharing
Web-based services
Online Information Services
Antialiasing
Bitmap and framebuffer operations
Digitizing and scanning
Display algorithms
Line and curve generation
Viewing algorithms
Picture/Image Generation
Expert system tools and techniques
Programming Languages and Software (D.3.2)
Contracts
Hardware patents
Channels and controllers
Data terminals and printers
Image display
Voice
Input/Output Devices
Visual Programming
Format and notation
Hypertext/hypermedia
Index generation
Languages and systems
Markup languages
Multi/mixed media
Photocomposition/typesetting
Scripting languages
Document Preparation
Code inspections and walk-throughs
Debugging aids
Distributed debugging
Dumps
Error handling and recovery
Symbolic execution
Testing tools (e.g., data generators, coverage testing)
Tracing
Testing and Debugging
People
Software
History of Computing
Conditioning
Determinants
Eigenvalues and eigenvectors (direct and iterative methods)
Linear systems (direct and iterative methods)
Matrix inversion
Pseudoinverses
Singular value decomposition
Sparse, structured, and very large systems (direct and iterative methods)
Numerical Linear Algebra
Distributed/network graphics
Remote systems
Stand-alone systems
Graphics Systems (C.2.1, C.2.4, C.3)
Architecture
Arts, fine and performing
Fine arts
Language translation
Linguistics
Literature
Music
Performing arts (e.g., dance, music)
Arts and humanities
Rapid prototyping
Reusable software
Camera calibration
Imaging geometry
Quantization
Radiometry
Reflectance
Sampling
Digitization and Image Capture
Current awareness systems (selective dissemination of information--SDI)
Distributed systems
Information networks
Performance evaluation (efficiency and effectiveness)
Question-answering (fact retrieval) systems
User profiles and alert services
Systems and Software
Collaborative learning
Computer-assisted instruction (CAI)
Computer-managed instruction (CMI)
Distance learning
Computer Uses in Education
General systems theory
Information theory
Value of information
Systems and Information Theory (E.4)
Backup/recovery
Organization/structure
Sorting/searching
Files (D.4.3, F.2.2, H.2)
Batch processing systems
Hierarchical design
Real-time systems and embedded systems
Organization and Design
Centralization/decentralization
Management audit
Quality assurance
System Management
Corrections
Extensibility
Restructuring, reverse engineering, and reengineering
Distribution, Maintenance, and Enhancement
Abstract data types
Classes and objects
Concurrent programming structures
Constraints
Control structures
Coroutines
Data types and structures
Dynamic storage management
Frameworks
Inheritance
Modules, packages
Patterns
Polymorphism
Procedures, functions, and subroutines
Recursion
Language Constructs and Features (E.2)
Asynchronous interaction
Collaborative computing
Computer-supported cooperative work
Organizational design
Synchronous interaction
Theory and models
Web-based interaction
Group and Organization Interfaces
Simulation Output Analysis
Decision support (e.g., MIS)
Logistics
Types of Systems
Direct data manipulation
Firmware support of operating systems/instruction sets
Instruction set interpretation
Peripheral control
Special-purpose
Microcode Applications
Alternation and nondeterminism
Interactive and reactive computation
Online computation
Parallelism and concurrency
Probabilistic computation
Relations among modes
Relativized computation
Modes of Computation
Record classification
Information Storage
Associative memories
Cache memories
Interleaved memories
Mass storage (e.g., magnetic, optical, RAID)
Primary memory
Sequential-access memory
Shared memory
Design Styles (D.4.2)
Modeling methodologies
Model Development
Graph algorithms
Graph labeling
Hypergraphs
Network problems
Path and circuit problems
Graph Theory (F.2.2)
Access schemes
Buses
Ethernet (e.g., CSMA/CD)
High-speed (e.g., FDDI, fiber channel, ATM)
Internet (e.g., TCP/IP)
Token rings
Local and Wide-Area Networks
Grammar types (e.g., context-free, context-sensitive)
Parallel rewriting systems (e.g., developmental systems, L-systems)
Thue systems
Grammars and Other Rewriting Systems (D.3.1)
Open Systems Interconnection reference model (OSI)
Security and protection (e.g., firewalls)
Software development
Software maintenance
Software process
Software selection
Software Management (D.2.9)
Insurance [*]
Security [*]
Data abstraction
Domain-specific architectures
Information hiding
Languages (e.g., description, interconnection, definition)
Patterns (e.g., client/server, pipeline, blackboard)
Software Architectures
Applicative (functional) languages
Concurrent, distributed, and parallel languages
Constraint and logic languages
Data-flow languages
Design languages
Extensible languages
Macro and assembly languages
Microprogramming languages
Multiparadigm languages
Nondeterministic languages
Object-oriented languages
Specialized application languages
Very high-level languages
Language Classifications
Fuzzy sets
Control theory, system theory
Biology
Communication theory and signal processing
General Literature
Legal aspects of computing
Performance and reliability (C.4)
Computers and Education
Models and principles
Cyberbetics
Analysis of algorithms and problem complexity (B.6, B.7, F.1.3)
Discrete mathematics
Register-transfer-level implementation
Games [*]
Personal computing
Mathematical logic and formal languages
Computation by abstract devices
Logics and meanings of programs
Logic design
Information systems applications
Integrated circuits
Programming languages
The computing profession
Symbolic and algebraic manipulation
Theory of Computation
Arithmetic and logic structures
Mathematics of Computing
Computers and society
Memory structures
Processor architectures
Computer system implementation
Control structures and microprogramming (D.3.2)
Document and text processing (H.4, H.5)
Input/output and data communications
Pattern recognition
Information interfaces and presentation (e.g., HCI) (I.7)
Information Systems
Data
Management of computing and information systems
Computer Systems Organization
Computer-communication networks
Computing Methodologies
Information storage and retrieval
Programming techniques (E)
Computer Applications
Simulation and modeling (G.3)
Computing Milieux
Computer graphics
Database management (E.5)
Operating systems (C)
Numerical analysis
Image processing and computer vision
Artificial intelligence
Software engineering (K.6.3)
ACM CCS/UBO
1998 version of the ACM Computing Classification System (CCS), with a small cybernetics add-on from the University of Oslo Informatics Library.