What is CS?

Computer science

Computer science is the study of computing and what computers can do.

Computer science spans a wide range, from its theoretical and algorithmic foundations to cutting-edge developments in robotics, computer vision, intelligent systems, bioinformatics, and other exciting areas. Our work, as computer scientists, falls into three categories.

  • We develop effective ways to solve computing problems. For example, we computer scientists find the best possible ways to store information in databases, send data over networks, and display complex images. Our theoretical background allows us to determine what is possible and our study of algorithms helps us develop new approaches that provide the best performance.
  • We devise new ways to use computers. Progress in the CS areas of networking, database, and human-computer-interface enabled the development of the World Wide Web. Now CS researchers are working with scientists from other fields to make robots become practical and intelligent aides, to use databases to create new knowledge, and to use computers to help decipher the secrets of our DNA.
  • We design and implement software. Computer scientists take on challenging programming jobs. We also supervise other programmers, keeping them aware of new approaches.

Computer science spans the range from theory through programming. It offers a comprehensive foundation that permits graduates to adapt to new technologies and new ideas. The above diagram places it within the much broader space of computing.

Other computing disciplines

Computing is much more than Computer Science. Related areas include Information Systems, Software Engineering, Computer Engineering and Information Technology. What follows is a brief description of each of these fields and diagrams that place each of them within the computing space.

Information Systems specialists focus on integrating information technology solutions and business processes to meet the information needs of businesses and other enterprises, enabling them to achieve their objectives in an effective, efficient way. This discipline's perspective on information technology emphasizes information, and views technology as an instrument for generating, processing, and distributing information. Professionals in the discipline are primarily concerned with the information that computer systems can provide to aid an enterprise in defining and achieving its goals, and the processes that an enterprise can implement or improve using information technology. They must understand both technical and organizational factors, and they must be able to help an organization determine how information and technology-enabled business processes can provide a competitive advantage.

The information systems specialist plays a key role in determining the requirements for an organization's information systems and is active in their specification, design, and implementation. As a result, such professionals require a sound understanding of organizational principles and practices so that they can serve as an effective bridge between the technical and management communities within an organization, enabling them to work in harmony to ensure that the organization has the information and the systems it needs to support its operations. Information systems professionals are also involved in designing technology-based organizational communication and collaboration systems. All IS degrees combine business and computing coursework.

Software Engineering is the discipline of developing and maintaining software systems that behave reliably and efficiently, are affordable to develop and maintain, and satisfy all the requirements that customers have defined for them. More recently, it has evolved in response to factors such as the growing impact of large and expensive software systems in a wide range of situations and the increased importance of software in safety-critical applications. Software engineering seeks to integrate the principles of mathematics and computer science with the engineering practices developed for tangible, physical artifacts.

Software engineering students learn about software reliability and maintenance and focus more on techniques for developing and maintaining software that is correct from its inception. SE students learn how to assess customer needs and develop usable software that meets those needs. Knowing how to provide genuinely useful and usable software is of paramount importance.

Software engineering is often pursued as graduate studies, as only some years of hands-on experience working on large software development projects help practitioners appreciate the complexity of managing them systematically.

Information Technology emphasizes the technology more than on the information it conveys. IT is a new and rapidly growing field that started as a grassroots response to the practical, everyday needs of business, government, healthcare, schools, and other organizations. Today, organizations of every kind are dependent on information technology. They need to have appropriate systems in place. These systems must work properly, be secure, and upgraded, maintained, and replaced as appropriate. Employees throughout an organization require support from IT staff who understand computer systems and their software and are committed to solving whatever computer-related problems they might have. Graduates of information technology programs address these needs.

IT programs produce graduates who possess the right combination of knowledge and practical, hands-on expertise to take care of both an organization's information technology infrastructure and the people who use it. IT specialists assume responsibility for selecting hardware and software products appropriate for an organization, integrating those products with organizational needs and infrastructure, and installing, customizing, and maintaining those applications for the organization's computer users. Examples of these responsibilities include the installation of networks; network administration and security; the design of web pages; the development of multimedia resources; the installation of communication components; the oversight of email systems; and the planning and management of the technology lifecycle by which an organization's technology is maintained, upgraded, and replaced.

Computer Engineering is concerned with the design and construction of computers and computer-based systems. It involves the study of hardware, software, communications, and the interaction among them. Its curriculum focuses on the theories, principles, and practices of traditional electrical engineering and mathematics and applies them to the problems of designing computers and computer-based devices.

Computer engineering students study the design of digital hardware systems including communications systems, computers, and devices that contain computers. They study software development, focusing on software for digital devices and their interfaces with users and other devices. CE has a strong engineering flavor.

Currently, a dominant area within computing engineering is embedded systems, the development of devices that have software and hardware embedded in them. For example, devices such as cell phones, digital audio players, digital video recorders, alarm systems, x-ray machines, and laser surgical tools all require integration of hardware and embedded software and all are the result of computer engineering.

The graphics and most of the text on this page were taken with permission from the ACM + AIS + IEEE-CS Computing Curricula 2005.

CS Jobs Sitemap