The possibilities for specialization within the computer science field are wide, and new specializations continue to evolve as advances are made in computer hardware and software and as more applications for computer technology are discovered. Listed below are some popular areas of computer science offered by many US universities. These specializations may be offered as degree programs at some universities; more often, they will be available as areas of concentration within graduate computer science departments.
ARTIFICIAL INTELLIGENCE (AI)
AI is a complex, highly interdisciplinary branch of computer science that attempts to incorporate the principles of human intelligence and reasoning into computing systems. AI research is concerned with modeling all facets of human intelligence, but most often the research involves creating computer systems that have the ability to plan (automated deduction), adapt to different situations (machine learning), acquire human-like senses (machine vision and natural-language processing), and effect changes to the environment (robotics). Introductory courses in AI are offered at the undergraduate level; in-depth study is available at the graduate level.
A branch of computer science that is concerned with understanding, simulating, and enhancing both natural and artificial intelligence. Highly interdisciplinary in nature, cognitive science draws from research in artificial intelligence, psychology, anthropology, linguistics, philosophy, neuroscience, and engineering. A few US institutions offer interdisciplinary bachelor's degree programs in cognitive science; more often, however, this specialization is available at the graduate level.
A broad discipline that incorporates the fields of computer science and electrical engineering. Computer engineering emphasizes the theory, design, and development of computers and computer-related technology including both hardware and software. B.S. degree programs in computer engineering are most often available through engineering schools but also may be offered by computer science departments. Graduate programs provide opportunities for advanced study in computer engineering.
COMPUTER INFORMATION SYSTEMS (CIS)
This specialization, which is closely related to management information systems and information science, integrates the computer applications of data processing with problem solving to improve the efficiency of organizations. Course work in CIS may be available through undergraduate computer science or business degree programs; specialization may be available through graduate programs.
This specialization, which is related to graphic design and the visual arts, combines video and computer technologies to produce two-, three-, and four-dimensional graphic images (such as those seen in video games and computer-animated films) using computers. The content and emphasis of computer graphics programs vary greatly depending on the level of study and the department through which the program is offered. Programs are offered at the undergraduate and graduate levels, with the graduate programs focusing on more theoretical, complex areas.
One of the most open-ended and commonly pursued specializations, computer programming involves the study of how to instruct computers to perform certain tasks and how to write detailed instructions that list the steps a computer must follow in order to solve a problem. Such study also involves testing computer programs for problems ("debugging" them). Technical colleges often provide vocational training in one or two programming languages, while B.S. degree programs introduce basic programming concepts and expose students to a variety of programming languages. Graduate programs offer advanced study and analysis of computer programming (for example, comparative study and analysis of programming languages, syntax and semantics of formal languages, and language notational schemes).
The study of the principles of communication between computers. Computer networking emphasizes the design of local area networks (LAN's), which connect computers within a small geographical area, and wide area networks (WAN's), which use telephone lines or radio waves to connect computers thousands of miles apart. B.S. degree programs generally offer introductory networking courses; graduate programs offer advanced courses in network architecture, communication protocols, and network topology.
COMPUTER SERVICING TECHNOLOGY
The study of how to install, repair, and maintain computers and related equipment. Associate degree or certificate programs are offered by many technical and community colleges.
A broad, often confusing term used to describe a wide range of fields involving the study of how data is stored in computers (for example, stacks, queues, and files) and how data can be processed to solve accounting and management problems. In most cases, data processing courses and programs are offered through business rather than computer science departments. Programs offered by technical colleges (often called data processing technology programs) provide vocational training in data entry and computer operations. Four-year colleges and universities may offer data processing programs that combine study of management and computer science. Such programs are often intended to train managers, known as electronic data processing (EDP) managers, to run complex computer centers. At the graduate level, data processing-related subjects may be included as part of management information systems or information science degree programs.
Involves the study of systems, known as databases, that can efficiently store, process, and retrieve substantial quantities of information. Undergraduate computer science programs may offer introductory database courses although advanced study, including analysis and design of relational, network, and hierarchical databases, generally occurs at the graduate level.
This rapidly expanding interdisciplinary field examines the nature of information itself as well as the processes by which information transfer occurs. Drawing on other fields such as telecommunications, computer science, linguistics, philosophy, mathematics, psychology, and sociology, information science involves the analysis and development of systems for the storage and dissemination of information using computers, telecommunications, or other technologies. Courses may be offered at the B.S. degree level; graduate computer science programs provide opportunities for advanced study.
KNOWLEDGE ENGINEERING/EXPERT SYSTEMS
Knowledge engineering is a subfield of artificial intelligence that produces a type of computer system called an expert system. Expert systems are computer programs designed to perform at the level of the human expert, solving problems that are beyond the capability of conventional computer systems. Introductory courses are sometimes offered at the undergraduate level; in-depth study is available at the graduate level.
MANAGEMENT INFORMATION SYSTEMS (MIS)
MIS programs emphasize the understanding and application of computer technology to organizational problems, the design of computer-based systems for data processing, and the design of decision-support systems for management. University business departments may offer undergraduate courses and programs in MIS; many graduate business schools provide advanced study in MIS.
The study of computer systems modeled after the biological nervous system. Neural networks are designed to imitate the workings of the human brain and are used in areas such as voice and pattern recognition and speech synthesis. Introductory courses are sometimes offered through B.S. programs in computer science. Advanced study is generally offered through graduate computer science programs.
A branch of computer science that applies artificial intelligence and engineering concepts to create and program mechanical devices (robots) that are able to perform a variety of tasks including some previously performed by humans. Many technical and community colleges offer associate degree programs in robotics technology, which involves troubleshooting and maintaining robots; courses emphasizing the theory and design of robots may be offered through B.S. programs; advanced robotics study is available through graduate programs.
A still-evolving discipline based on computer science, computer technology, management, and engineering economics. Concerned with the cost- effective development and modification of computer software components, software engineering may use computer-aided software engineering (CASE) to reduce the time required by programmers to generate new programs and revise old ones. Courses in software engineering may be available through undergraduate computer science departments; advanced study is available at the graduate level.
Involves the analysis of existing computer systems and the design of new systems that meet the specific information needs of an organization. Undergraduate computer science programs often provide courses in systems analysis; advanced study is offered through graduate computer science departments.
A specialization that joins computer technology with information processing and distribution. Telecommunications engineering involves the analysis and design of all systems that receive, transmit, and deliver information. Courses may be offered through undergraduate electrical engineering or computer science departments. Advanced study in telecommunications engineering is available through graduate programs.