Computer Science Majors and Minors
Bachelor of Science in Computer Science
The Bachelor of Science in Computer Science is a traditional program that combines computer science, mathematics, and science.
- The major requires 42 hours of computer science courses, including those numbered 170, 180 (Computer Science I, II), 210 (Machine Org. and Assembly Lang.), 220 (Data Structures and Algorithms), 250 (Languages and Automata), 260 (Software Engineering I), 261 (Software Engineering II), 300 (Programming Languages), 320 (Operating Systems), 335 (Databases), 340 (Networking), 390 (Senior Seminar and Project),and six hours of elective courses from those numbered CSCI 200 - 397.
- Majors need to take a full year of major-level science lecture and lab. Computer Science B.S. majors must fulfill this requirement by taking one of the following lecture-lab pairs:
- BIOL 160-161 and BIOL 162-163 OR
- CHEM 160-161 and CHEM 162-163 OR
- PHYS 160-161 and PHYS 162-163 OR
- PHYS 170-161 and PHYS 172-163.
- Within mathematics, majors must take Math 225 (Foundations of Higher Math) and either 156 (General Statistics), 240 (Linear Algebra), or 256 (Introduction to Probability and Statistics)
- Majors must maintain a 2.000 cumulative grade average in their computer science courses, and fulfill the senior comprehensive requirements.
Students may opt to incorporate a cooperative experience into their academic program. Cooperative Education in Computer Science (CSCI 395) integrates professional work experience with classroom training by providing students with advanced hands-on experience in a real software engineering environment under the direct supervision of a professional software developer. Co-op students spend a semester or summer working full-time, for pay, at the employer. The student and employer may choose to continue the co-op in alternating semesters, or the co-op may be a one-time experience. The co-op may be used for up to nine hours of credit (six credits in the computer science program and three credits of general electives).
Suggested Course Sequence for Bachelor of Science in Computer Science
Student Learning Outcomes for Bachelor of Science in Computer Science
Bachelor of Arts in Computer Science
The Bachelor of Arts in Computer Science allows students room to pursue a second major or minor combined with computer science. This encourages inter- and multi-disciplinary study, developing well-rounded students ready to contribute to an increasingly interdisciplinary world that utilizes computation.
- The major requires 27 hours of computer science courses, including those numbered 170, 180 (Computer Science I, II), 220 (Data Structures and Algorithms), 250 (Languages and Automata), 260 (Software Engineering), 390 (Senior Seminar and Project), and nine hours of elective courses from those numbered CSCI 200 - 397.
- Within mathematics, majors must take MATH 225 (Foundations of Higher Math). Majors are also encouraged to take MATH 156 (General Statistics) or MATH 280 (Combinatorics) if their schedule permits.
- BA students must complete a second major or minor, of which at least 15-18 hours must be distinct from the required courses in Computer Science. If the second minor has only 15 hours of courses distinct from the BA requirements, the student must take an additional computer science elective numbered CSCI 210-390. Students are strongly encouraged to create a senior project that integrates computer science with their second major or minor.
- Majors must maintain a 2.000 cumulative grade average in their computer science courses, and fulfill the senior comprehensive requirements.
As with the BS, BA majors may opt to include a co-op experience (CSCI 395). Co-op students spend a semester or summer working full-time, for pay, at the employer. The student and employer may choose to continue the co-op in alternating semesters, or the co-op may be a one-time experience. The co-op may be used for up to nine hours of credit (six credits in the computer science program and three credits of general electives).
Suggested Course Sequence for Bachelor of Arts in Computer Science
Student Learning Outcomes for Bachelor of Arts in Computer Science
Bachelor of Arts in Artificial Intelligence (Coming Fall 2025)
The Bachelor of Arts in Artificial Intelligence provides the fundamentals of computer science and artificial intelligence (with the underlying mathematics) while also focusing on discussions of the implications of this emerging technology on the future of humanity through robust engagement in electives from humanities, social sciences, and business.
- The major requires 21 hours of computer science courses, including:
- CSCI 170 (Computer Science I)
- CSCI 180 (Computer Science II)
- CSCI 200 (Socially Responsible Data Use)
- CSCI 220 (Data Structures and Algorithms)
- CSCI 225 (Data Engineering in Python)
- CSCI 370 (Artificial Intelligence)
- CSCI 394 (AI Capstone)
- The major requires 3 hours of Data Science, including:
- DSCI 350 (Computational Machine Learning)
- The major requires 12 hours of mathematics courses, including:
- MATH 156 (General Statistics) OR MATH 256 (Introduction to Probability and Statistics)
- MATH 180 (Differential Calculus)
-
- MATH 181 (Integral Calculus)
- MATH 222 (Applied Linear Algebra)
- The major requires 12 hours of approved electives. Current approved electives include:
- THEO 315 (Contemporary Ethical Issues)
- THEO 364 (Religion in an Age of Science)
- PHIL 311 (Logic)
- PHIL 317 (Philosophy of Human Nature)
- PHIL 320 (Philosophy of Science)
- PSYC 427 (Cognitive Psychology)
- PSYC 460 (Learning and Behavior)
- SOCI 251 (Digital Justice)
- BAIS 329 (Data Mining)
- ENGR 120/121 (Emerging and Future Technology)
- Majors must maintain a 2.000 cumulative grade average in the courses listed above, and fulfill the senior comprehensive requirements.
- AI majors are not eligible for a BA in Computer Science or a minor in Computer Science but they may pursue a BS in Computer Science or a BS in Cybersecurity.
Suggested Course Sequence for Bachelor of Arts in Artificial Intelligence
Student Learning Outcomes for Bachelor of Arts in Artificial Intelligence
Bachelor of Science in Cybersecurity (Coming Fall 2025)
The Bachelor of Science in Cybersecurity provides the fundamentals of cybersecurity at the hardware, systems, and compliance levels. The program follows recommendations from the Joint Taskforce on Cybersecurity Education, convened by the Association for Computing Machinery (ACM), the IEEE Computer Society (IEEE CS), the Association for Information Systems Special Interest Group on Security (AIS SIGSEC), and the International Federation for Information Processing Technical Committee on Information Security Education (IFIP WG 11.8) to cover all of the fundamental knowledge units recommended by the National Security Agency / Department of Homeland Security for Centers of Academic Excellence in Cyber Defense.
- The major requires 27 hours of general computer science courses, including those numbered 170, 180 (Computer Science I, II), 210 (Machine Org. and Assembly Lang.), 220 (Data Structures and Algorithms), 250 (Languages and Automata), 260 (Software Engineering I), 320 (Operating Systems), 335 (Databases), 340 (Networking).
- The major requires 21 hours related to cybersecurity:
- CSCI 190 (Computer Systems and Security)
- CSCI 360 (Systems Security Fundamentals)
- CSCI 362 (Sys Admin & Script for Cyber)
- CSCI 365 (Penetration Testing)
- CSCI 381 (Cyber Defense)
- CSCI 382 (Reverse Engineering)
- CSCI 392 (Cybersecurity Capstone)
- Within mathematics, majors must take Math 225 (Foundations of Higher Math) AND either 156 (General Statistics) OR 256 (Introduction to Probability and Statistics)
- Majors must maintain a 2.000 cumulative grade average in their computer science courses, and fulfill the senior comprehensive requirements.
- Cybersecurity majors are not eligible for either a BS or a BA in Computer Science or a minor in Computer Science.
Suggested Course Sequence for Bachelor of Science in Cybersecurity
Student Learning Outcomes for Bachelor of Science in Cybersecurity
Concentration in Cybersecurity
Students pursuing either a BA or a BS in Computer Science can add the Concentration in Cybersecurity, an interdisciplinary effort of the Departments of Computer Science (CSCI) and Business Analytics and Information Systems (BAIS). The program provides the fundamentals of cybersecurity at the hardware, systems, and compliance levels. This program requires 3 hours of statistics (MATH 156 or 256), BAIS 359 (Hardware, Software, Security) and 459 (Introduction to Cyber Security), and 12 hours of computer science, including 360 (System Security Fundamentals), 340 (Networking), 365 (Network Vulnerabilities, Penetration, and Defense) and a Cybersecurity Topics course.
Students pursuing the BS can choose statistics as one of their required mathematics courses and CSCI 360 and 365 as CSCI electives. This means that the concentration will require only 1 additional CSCI cybersecurity course and 2 BAIS courses beyond the courses already required for the BS.
Students pursuing the BA can choose CSCI 340, 360, and 365 as CSCI electives. This means that the concentration will require only statistics, 1 additional CSCI cybersecurity course and 2 BAIS courses beyond the courses already required for the BA.
Students must maintain at least a 2.0 cumulative grade average in the courses taken for the concentration.
Computer Science Minor
The computer science minor requires 15 hours of computer science courses, including CSCI 170 (Computer Science I), 180 (Computer Science II), 220 (Data Structures and Algorithms), and two other approved 3-hour courses selected from CSCI 210-397.
Students must maintain at least a 2.0 cumulative grade average in these courses.
Certificate in Applied Computation
This certificate program is designed for students who are pursuing an undergraduate degree in a program other than computer science who wish to demonstrate proficiency in computational methods and problem solving. It may also be used by returning adult students who have a degree but wish to add a certificate denoting competency in the computation area. Students would take 10 hours of specific Computer Science courses: CSCI 170 (Computer Science I), 180 (Computer Science II), 220 (Data Structures and Algorithms), and CSCI 290 (Project in Applied Computation).