Major in Computer Science (BA/BS)
Computer science is the study of information and computation and their application in computer systems. Computer science majors start by learning the fundamentals of programming, algorithms, and discrete mathematics, while upper-level courses focus on specializations such as software engineering, programming languages, theory, web and mobile platform development, operating systems, networking, and databases. The ubiquitous application of computer science necessitates that majors be broadly educated and have excellent analytical and communication skills.
The department also offers two minors:
· The computer science minor allows students with other majors to learn the foundations of traditional computer science.
· The computer security minor explores modern issues in computer and information security such as digital forensics and encryption.
Computer Science majors taking classes at the 200-level and above will be required to own a laptop computer and may be expected to bring the laptop to such classes. Computer ownership for students in 100-level courses is encouraged but not required. Some classes will require running software under Windows, but a MacIntosh with Parallels will work well for such software.
63-68 credits
Required CS Courses
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 380 | Theory of Computation 1 | 3 |
CS 416 | Computer Networks | 3 |
CS 418 | Database Design | 3 |
CS 419 | Operating Systems | 3 |
CS 431 | Programming Languages | 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.
The Department plans to offer the rest of the required courses in this group both Fall and Spring.
9-12 credits from
May substitute another statistics course with permission of Computer Science Department chairperson.
3-5 credits from lab science:
May substitute another natural science course that meets with a scheduled lab with permission of department chairperson.
Electives, 12 credits from
CS 215 | Introduction to Game Design | 3 |
CS 315 | Game Programming | 3 |
CS 341 | Computer Science Community & School Outreach | 1-6 |
CS 369 | Professional Experience 1 | 1 TO 3 |
CS 410 | Web Programming | 3 |
CS 411 | Mobile Application Development | 3 |
CS 420 | Multitier Web Architectures | 3 |
CS 421 | Data Analytics | 3 |
CS 439 | Current Topics Seminar in Computer Science | 3 TO 6 |
CS 445 | Human-Computer Interaction | 3 |
CS 446 | System Administration | 3 |
CS 447 | Network Security | 3 |
CS 455 | Data Mining | 3 |
CS 456 | Image Processing | 3 |
CS 490 | Software Production Studio | 3 TO 6 |
CS 499 | Independent Study | 1 TO 6 |
MATH 415 | Mathematics of Coding and Communication | 3 |
Total Credit Hours: 63-68