2021-2022 Undergraduate Catalog

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 120Computer Science 1: Programming Fundamentals

4

CS 121Computer Science 2: Data Structures and Objects

4

CS 222Advanced Programming

3

CS 224Design and Analysis of Algorithms

3

CS 230Computer Organization and Architecture

3

CS 239Social and Professional Issues

1

CS 380Theory of Computation 1

3

CS 416Computer Networks

3

CS 418Database Design

3

CS 419Operating Systems

3

CS 431Programming Languages

3

CS 495Software Engineering 1

3

CS 498Software 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

CS 124Discrete Structures

3

or

MATH 215Discrete Systems

4

MATH 161Applied Calculus 1

3

or

MATH 165Calculus 1

4

MATH 181Elementary Probability and Statistics

3

or

MATH 221Probability and Statistics

3

or

MATH 321Mathematical Statistics

4

or

ECON 221Business Statistics

3

May substitute another statistics course with permission of Computer Science Department chairperson.

3-5 credits from lab science:

BIO 111Principles of Biology 1

4

or

CHEM 111General Chemistry 1

4

or

GEOL 201Earth, Life, and Time

3

or

PHYC 110General Physics 1

4

or

PHYC 120General Physics 1

5

May substitute another natural science course that meets with a scheduled lab with permission of department chairperson.

Electives, 12 credits from

CS 215Introduction to Game Design

3

CS 315Game Programming

3

CS 341Computer Science Community & School Outreach

1-6

CS 369Professional Experience 1

1 TO 3

CS 410Web Programming

3

CS 411Mobile Application Development

3

CS 420Multitier Web Architectures

3

CS 421Data Analytics

3

CS 439Current Topics Seminar in Computer Science

3 TO 6

CS 445Human-Computer Interaction

3

CS 446System Administration

3

CS 447Network Security

3

CS 455Data Mining

3

CS 456Image Processing

3

CS 490Software Production Studio

3 TO 6

CS 499Independent Study

1 TO 6

MATH 415Mathematics of Coding and Communication

3

Total Credit Hours: 63-68