Computer science focuses on aspects of the computer field that have a sufficiently well-defined set of abstract concepts and principles to be characterized as "scientific." The objective of a concentration in computer science is to master those abstract concepts and principles — the theory of the field — and to implement, demonstrate and test this theory via a computer.
A concentration in computer science would be a good choice for someone interested in computers and computing, including the general principles of computing and in how computers and computer programs work most efficiently.
Computer science is still a relatively "young" science, and its theory, while powerful, provides only limited help in finding usable solutions for many common problems. Therefore, computer science, as a disciplinary concentration, probably would not be the best choice for someone primarily interested in specific, real-world problem solving, particularly in the business world. For such individuals, concentrations in computer information systems, applied computer systems, computer programming, computer applications systems or computer studies would generally be more worthwhile.
Mathematics has provided much of the context from which the field of computer science has been emerging. Because mathematics continues to provide this background, as well as a variety of specific, immediately usable tools and concepts for computer scientists, intensive study of mathematics is required as part of the concentration in computer science.
Until recently, only a few topics from this latter tradition of discrete mathematics have been included in the school mathematics courses taken by most students. Thus, adult students returning to college often have not studied much, if any, discrete mathematics.
Because of the central and prerequisite position of discrete mathematical ideas within the field of computer science, study of discrete math is required. If a student does not have prior learning in discrete mathematics, study should begin in an early contract (though not necessarily the first).
A. The degree program should include study of the following areas:
B. The degree program should also include study of at least two of the following areas, or of closely related subjects.
C. The degree program should include an explicit, real-world project of some sort, in which the student is involved in the planning, implementation and evaluation of a practical application involving a specific, working hardware and software system. This component can be part of or grow out of one of the other above components.