BS in Computer Science
The Bachelor of Science in Computer Science prepares students for either continued study at the graduate level or entry into the labor market. Our students have been successful at both, with some earning doctoral degrees and some reaching high levels in the private sector, including the director of software development at a major corporation.The curriculum includes a required core of courses that provides a broad base of fundamental knowledge, but allows for individuals to follow their own specific interests at the advanced level. All courses focus on general principles that will remain valid into the future but use tools and vehicles reflecting contemporary practice.
Computer Science is perhaps the most pervasive technology of our time, reaching into every aspect of modern life, from work to recreation. It spans many disciplines, from mathematics and electrical engineering to linguistics, cognitive psychology and graphic design. It is a challenge to provide a definition of the essence of such a sprawling discipline, but one that we like is that Computer Science is the study of what can be automated.
Many people imagine that one must learn advanced mathematics to become a computer scientist or software developer. To be sure, some applications, such as computational modeling of physical processes, require techniques from advanced mathematics. Other applications, however, do not require mathematics beyond the basics taught in a strong high school program. Far more important is the ability to think logically and precisely and the ability to devise a plan to solve a problem. We have had students successfully convert to Computer Science from a variety of non-technical disciplines, including history, classics, and English literature.
All students are reminded that, in addition to meeting departmental requirements for a major, they must also meet the University Core Curriculum requirements. Students are advised that COS 420 Object-Oriented Design satisfies the Core Curriculum Capstone requirement.
The total number of credits for graduation is 120.
Courses used to fulfill major requirements in sections A through E below must be passed with a grade of C– or better. The accumulative grade point average of all courses applied to the major must be at least 2.0. At most three credits of COS 497 can be used to meet a degree requirement.
The specific course requirements are as follows:
A. Computer Science:
COS 160 Structured Problem Solving: Java
COS 161 Algorithms in Programming
COS 170 Structured Programming Laboratory
COS 250 Computer Organization
COS 255 Computer Organization Laboratory
COS 285 Data Structures
COS 350 Systems Programming
COS 360 Programming Languages
COS 398 Professional Ethics and Social Impact of Computing
COS 420 Object Oriented Design
COS 485 Design of Computing Algorithms
B. Computer Systems:
COS 450 Operating Systems
or COS 457 Database Systems
C. Completion of three additional COS courses numbered 300 and above, excluding COS 498.
Graduate courses in the Computer Science Department can be used to fulfill the requirements in section C.
D. Mathematics and Science requirements
1. Completion of:
MAT 145 Discrete Mathematics I
COS 280 Discrete Mathematics II
2. Enough additional courses from the following list to total, with the two required courses of the last item, at least 15 credit hours:
EGN 181/MAT 181 Computing with Mathematica
MAT 152 Calculus A
MAT 153 Calculus B
MAT 252 Calculus C
MAT 281 Introduction to Probability
MAT 282 Statistical Inference
MAT 295 Linear Algebra
MAT 350 Differential Equations
MAT 352 Real Analysis
MAT 355 Complex Analysis
MAT 364 Numerical Analysis
MAT 366 Deterministic Models in Operations Research
MAT 370 Non-Euclidean Geometry
MAT 380 Probability and Statistics
MAT 383 System Modeling and Simulation
MAT 392 Theory of Numbers
MAT 395 Abstract Algebra
MAT 460 Mathematical Modeling
MAT 461 Stochastic Models in Operations Research
MAT 490 Topology
MAT 492 Graph Theory and Combinatorics
3. Completion of a two-semester sequence of any of the following:
CHY 113 with CHY 114 and CHY 115 with CHY 116
PHY 121 with PHY 114 and PHY 123 with PHY 116
BIO 105 with BIO 106 and BIO 107
ESP 101 with ESP 102 and ESP 125 with ESP 126
4. Enough additional courses from the list in D(2) or the sciences to make when combined with the courses take for D(1), D(2), and D(3) at least 30 credit hours in mathematics and science. A science course taken to fulfill this requirement must be one that satisfies a degree requirement within its discipline and if it has an accompanying lab course the lab must be taken.
E. Communication skills requirement:
THE 170 Public Speaking
ITP 210 Technical Writing
Recommended Course Sequence
The following schedule of mathematics and computer science courses is typical for the freshman and sophomore years.
|First year||COS 160||COS 161|
|COS 170||MAT 145|
|Second year||COS 280||COS 250|
|COS 285||COS 255|