Major in Computer Science (BA/BS)
The core courses required for all concentrations build a foundation of understanding of the principles of computer science. Students in all concentrations take the same courses during their freshmen and sophomore years, specialize in their junior and senior years, and join back together in a 2-semester immersive learning capstone experience shared by all concentrations. The core courses provide foundations in algorithmic principles and computing theory, strengthen design and development techniques, instill ethical professional competence, develop communication abilities, and build the teamwork skills necessary for working on a software project in today's industry.
Computer Science majors are required to own a laptop computer and may be required to bring the laptop to class. Some classes may require running software under Windows, but a Mac with Parallels Desktop software will work as well.
60 - 63 credits
Core Courses
The following 27 credit hours of CS courses are required of all CS majors as a part of all concentrations
| CS 120 | Computer Science 1: Programming Fundamentals | 4 |
| CS 121 | Computer Science 2: Data Structures and Objects | 4 |
| CS 222 | Advanced Programming | 3 |
| CS 224 | Design and Analysis of Algorithms | 3 |
| CS 230 | Computer Organization and Architecture | 3 |
| CS 239 | Social and Professional Issues | 1 |
| CS 316 | Introduction to Operating Systems and Computer Networks | 3 |
| CS 495 | Software Engineering 1 | 3 |
| CS 498 | Software Engineering 2 | 3 |
CS 495 and CS 498 involve a single 2-semester immersive learning project. They must be taken in the same academic year: CS 495 in the Fall and CS 498 the following Spring.
6-8 credits from
A Discrete course and a Statistics course are required of all CS majors as a part of all concentrations.
May substitute another statistics course with permission of Computer Science Department chairperson.
Concentration Specific Requirements
CS majors must complete one of the following concentrations. Note each concentration has a set of required courses and a separate set of elective courses. CS courses that are required on one concentration may be electives on other concentrations.
General CS Concentration, 27-28 credits
Required courses, 15 credits
| CS 380 | Theory of Computation | 3 |
| CS 416 | Computer Networks and Distributed Systems | 3 |
| CS 418 | Database Design | 3 |
| CS 419 | Operating Systems | 3 |
| CS 431 | Programming Languages | 3 |
Electives, 12-13 credits from
| MATH 161 | Applied Calculus 1 | 3 |
| or | |
| MATH 165 | Calculus 1 | 4 |
| MATH 415 | Mathematics of Coding and Communication | 3 |
| CS 311 | Web and Mobile Development | 3 |
| CS 312 | Back-End Development for Multiplatform Applications | 3 |
| CS 315 | Game Programming | 3 |
| CS 322 | Secure Software Development | 3 |
| CS 326 | Foundations of Artificial Intelligence | 3 |
| CS 341 | Computer Science Community & School Outreach | 1-6 |
| CS 369 | Professional Experience 1 | 1 TO 3 |
| CS 390 | Game Studio Pre-Production | 3 |
| CS 411 | Mobile Application Development | 3 |
| CS 414 | Game Studio 1 | 3 |
| CS 415 | Game Studio 2 | 3 |
| CS 421 | Data Analytics | 3 |
| CS 439 | Current Topics Seminar in Computer Science | 3 TO 6 |
| CS 445 | Human-Computer Interaction | 3 |
| CS 447 | Computer, Information, and Network Security | 3 |
| CS 448 | Secure DevOps | 3 |
| CS 455 | Data Mining and Machine Learning | 3 |
| CS 466 | New Trends in AI | 3 |
| CS 467 | Rigorous Software Specification, Design and Testing | 3 |
| CS 490 | Software Production Studio | 3 TO 6 |
| CS 499 | Independent Study | 1 TO 6 |
Web and Mobile App Development Concentration, 27 credits
Required courses, 18 credits
| CS 311 | Web and Mobile Development | 3 |
| CS 312 | Back-End Development for Multiplatform Applications | 3 |
| CS 322 | Secure Software Development | 3 |
| CS 416 | Computer Networks and Distributed Systems | 3 |
| CS 418 | Database Design | 3 |
| CS 445 | Human-Computer Interaction | 3 |
Electives, 9 credits from
| CS 315 | Game Programming | 3 |
| CS 326 | Foundations of Artificial Intelligence | 3 |
| CS 341 | Computer Science Community & School Outreach | 1-6 |
| CS 369 | Professional Experience 1 | 1 TO 3 |
| CS 380 | Theory of Computation | 3 |
| CS 390 | Game Studio Pre-Production | 3 |
| CS 411 | Mobile Application Development | 3 |
| CS 414 | Game Studio 1 | 3 |
| CS 415 | Game Studio 2 | 3 |
| CS 419 | Operating Systems | 3 |
| CS 421 | Data Analytics | 3 |
| CS 431 | Programming Languages | 3 |
| CS 439 | Current Topics Seminar in Computer Science | 3 TO 6 |
| CS 445 | Human-Computer Interaction | 3 |
| CS 447 | Computer, Information, and Network Security | 3 |
| CS 448 | Secure DevOps | 3 |
| CS 455 | Data Mining and Machine Learning | 3 |
| CS 466 | New Trends in AI | 3 |
| CS 467 | Rigorous Software Specification, Design and Testing | 3 |
| CS 490 | Software Production Studio | 3 TO 6 |
| CS 499 | Independent Study | 1 TO 6 |
Cybersecurity and Secure Software Design Concentration, 27 credits
Required courses, 15 credits
| CS 203 | Introduction to Computer Security | 3 |
| CS 311 | Web and Mobile Development | 3 |
| CS 322 | Secure Software Development | 3 |
| CS 416 | Computer Networks and Distributed Systems | 3 |
| CS 447 | Computer, Information, and Network Security | 3 |
Electives, 12 credits from
| CS 249 | Digital Forensics | 3 |
| CS 250 | Mobile Forensics | 3 |
| CS 312 | Back-End Development for Multiplatform Applications | 3 |
| CS 315 | Game Programming | 3 |
| CS 326 | Foundations of Artificial Intelligence | 3 |
| CS 341 | Computer Science Community & School Outreach | 1-6 |
| CS 369 | Professional Experience 1 | 1 TO 3 |
| CS 380 | Theory of Computation | 3 |
| CS 390 | Game Studio Pre-Production | 3 |
| CS 411 | Mobile Application Development | 3 |
| CS 414 | Game Studio 1 | 3 |
| CS 415 | Game Studio 2 | 3 |
| MATH 415 | Mathematics of Coding and Communication | 3 |
| CS 418 | Database Design | 3 |
| CS 419 | Operating Systems | 3 |
| CS 421 | Data Analytics | 3 |
| CS 431 | Programming Languages | 3 |
| CS 439 | Current Topics Seminar in Computer Science | 3 TO 6 |
| CS 445 | Human-Computer Interaction | 3 |
| CS 448 | Secure DevOps | 3 |
| CS 455 | Data Mining and Machine Learning | 3 |
| CS 466 | New Trends in AI | 3 |
| CS 467 | Rigorous Software Specification, Design and Testing | 3 |
| CS 490 | Software Production Studio | 3 TO 6 |
| CS 499 | Independent Study | 1 TO 6 |
Game Design and Development Concentration, 27 credits
Required courses, 18 credits
Electives, 9 credits from
Students may select ENG 285 or MMP 305 as an elective, but not both.
| ENG 285 | Introduction to Creative Writing | 3 |
| or | |
| MMP 305 | Introduction to Digital Signal Processing | 3 |
| MMP 336 | Advanced Audio Concepts | 3 |
| CS 311 | Web and Mobile Development | 3 |
| CS 312 | Back-End Development for Multiplatform Applications | 3 |
| CS 322 | Secure Software Development | 3 |
| CS 326 | Foundations of Artificial Intelligence | 3 |
| CS 341 | Computer Science Community & School Outreach | 1-6 |
| CS 369 | Professional Experience 1 | 1 TO 3 |
| CS 380 | Theory of Computation | 3 |
| CS 411 | Mobile Application Development | 3 |
| CS 416 | Computer Networks and Distributed Systems | 3 |
| CS 418 | Database Design | 3 |
| CS 419 | Operating Systems | 3 |
| CS 421 | Data Analytics | 3 |
| CS 431 | Programming Languages | 3 |
| CS 439 | Current Topics Seminar in Computer Science | 3 TO 6 |
| CS 445 | Human-Computer Interaction | 3 |
| CS 447 | Computer, Information, and Network Security | 3 |
| CS 448 | Secure DevOps | 3 |
| CS 455 | Data Mining and Machine Learning | 3 |
| CS 466 | New Trends in AI | 3 |
| CS 467 | Rigorous Software Specification, Design and Testing | 3 |
| CS 490 | Software Production Studio | 3 TO 6 |
| CS 499 | Independent Study | 1 TO 6 |
Artificial Intelligence and Data Analytics Concentration, 27-28 credits
Required courses, 15 credits
| CS 326 | Foundations of Artificial Intelligence | 3 |
| CS 418 | Database Design | 3 |
| CS 421 | Data Analytics | 3 |
| CS 455 | Data Mining and Machine Learning | 3 |
| CS 466 | New Trends in AI | 3 |
Electives, 12-13 credits from
| DANA 100 | Introduction to Data Analytics | 3 |
| DANA 301 | Topics in Computational Data Analytics | 3 |
| DANA 320 | Data Visualization | 3 |
| MATH 165 | Calculus 1 | 4 |
| MATH 166 | Calculus 2 | 4 |
| MATH 320 | Probability | 4 |
| CS 311 | Web and Mobile Development | 3 |
| CS 312 | Back-End Development for Multiplatform Applications | 3 |
| CS 315 | Game Programming | 3 |
| CS 322 | Secure Software Development | 3 |
| CS 341 | Computer Science Community & School Outreach | 1-6 |
| CS 369 | Professional Experience 1 | 1 TO 3 |
| CS 380 | Theory of Computation | 3 |
| CS 390 | Game Studio Pre-Production | 3 |
| CS 411 | Mobile Application Development | 3 |
| CS 414 | Game Studio 1 | 3 |
| CS 415 | Game Studio 2 | 3 |
| CS 416 | Computer Networks and Distributed Systems | 3 |
| CS 419 | Operating Systems | 3 |
| CS 431 | Programming Languages | 3 |
| CS 439 | Current Topics Seminar in Computer Science | 3 TO 6 |
| CS 445 | Human-Computer Interaction | 3 |
| CS 447 | Computer, Information, and Network Security | 3 |
| CS 448 | Secure DevOps | 3 |
| CS 467 | Rigorous Software Specification, Design and Testing | 3 |
| CS 490 | Software Production Studio | 3 TO 6 |
| CS 499 | Independent Study | 1 TO 6 |
Total Credit Hours: 60-63