Computer Science Major: Liberal Arts Track

The Computer Science (liberal arts track) program supports the mission of the University by providing a flexible curriculum focusing on the advanced practices of computer science grounded in a strong liberal arts core curriculum.  Students have the flexibility to choose a wider range of elective courses, which can also allow them to pursue a variety of minors or even double majors (such as the Computer Science / Mathematics double major). 

The Program Educational Objectives (PEOs) are broad statements that describe what alumni do within a few years following graduation. The Computer Science (liberal arts track) Program is committed to our alumni who, within a few years of their graduation, are expected to:

  1. Be employed in fields of computer science.
  2. Continue the process of life-long learning through formal and informal education.
  3. Communicate effectively.
  4. Practice professional ethics with social responsibility.

The program emphasizes the complete development of computing-based solutions. Students learn how to gather requirements, design, develop, test, deploy, and maintain software using rigorous computing practices. They are taught how to leverage technology to create flexible and scalable applications and to address the challenges that arise during the development process. Also, the program exposes students to a range of other disciplines, such as the physical sciences, social sciences, languages and literature, and the arts, so they gain a broad understanding of the computer science environment.

Bachelor of Science in Computer Science

121 credits

Core Curriculum

Computer science majors follow the Engineering Core Curriculum with the following prescribed courses:

Area I: Mathematics and Natural Sciences
MA 0145Calculus I for Chemistry, Engineering, and Physics Majors4
or MA 0171 Calculus I
MA 0146Calculus II for Chemistry, Engineering, and Physics Majors4
or MA 0172 Calculus II
MA 0231Discrete Mathematics3
MA 0342Theory of Computation3
Select one elective in mathematics3
Select one elective in science with lab4
Select one additional elective in science3
Area II: History and Social/Behavioral Sciences
HI 0010Origins of the Modern World Since 15003
Select one 200-level history course 13
EC 0011Introduction to Microeconomics3
Select one additional social science elective3
Area III: Philosophy and Religious Studies
PH 0101Introduction to Philosophy3
Select one 200-level philosophy course3
RS 0101Exploring Religion (Shell)3
Select one 200-level religious studies course3
Select one additional elective course in Applied Ethics, Philosophy, or Religious Studies3
Area IV: English and Visual and Performing Arts
EN 0011Texts and Contexts I: Writing as Craft and Inquiry3
EN 0012Texts and Contexts II: Writing About Literature3
Select one 100-level English course 23
Select one history-focused course in Visual and Performing Arts3
Select EG 0130 or one additional course in Visual and Performing Arts
Area V: Modern and Classical Languages
Select two courses at the Intermediate level of Modern and Classical Languages6
Free Electives
Select four elective courses 312
Total Credits81

CL 0115 Greek Civilization and CL 0116 Roman Civilization may be used to fulfill this requirement.


Writing courses (ENW) do not fulfill the core literature requirement. Selected courses offering literature in translation may also fulfill this requirement; see listings under Classical Studies as well as Modern Languages and Literatures.


The Computer Science program provides various general elective courses and it is recommended that computer science students choose general electives from the computer science, software engineering, or related courses to bring the students depth in the computing fields.

Major Requirements

For a 40-credit major in computer science, students complete the following:

Foundation Courses
CS 0101Introduction to Computing3
CS 0131Fundamentals of Programming3
CS 0231Programming Workshop3
CS 0232Data Structures3
CR 0245
Digital Design I
and Digital Design I Lab
Computing and Software Depth
CS 0331Operating Systems3
CS 0343Analysis of Algorithms3
SW 0300Software Engineering Methods3
SW 0301Software Design Methods3
Select four major elective courses 412
Total Credits40

Computer Science and Software Engineering Electives

Possible electives may include:

Database Concepts
SW 0355Database Management Systems3
SW 0505Advanced Database Concepts3
SW 0508Data Warehouse Systems3
Data Science and Analytics
SW 0461Pattern Recognition3
SW 0518Data Mining and Business Intelligence3
SW 0521Information Visualization3
Electrical Engineering and Computer Hardware
CR 0246Digital Electronics Design II3
CR 0325Computer Graphics3
CR 0346Computer System Architecture3
EE 0346
Embedded Microcontrollers
and Microcontroller Lab
Information Security
SW 0530Introduction to Information Security3
SW 0531Applications and Data Security3
SW 0599Information Security Measures and Countermeasures3
Network Administration
SW 0314Network Concepts3
SW 0348Server Management3
SW 0596Network Routing and Switching3
Programming and Web Technology
SW 0305Mobile Application Development3
SW 0320Software Testing and Maintenance3
SW 0321Software Project Management3
SW 0409Advanced Programming in Java3
SW 0410Enterprise Java3
SW 0512Web Development II with ASP.NET3

A typical, full-time, four-year plan of study appears below. Some variation may be possible. Students should always discuss their individual plan of study with their advisor prior to registering for courses. 

Plan of Study Grid
First Year
CS 0101 Introduction to Computing 3
EN 0011 Texts and Contexts I: Writing as Craft and Inquiry 3
MA 0171 Calculus I 4
PH 0101 Introduction to Philosophy 1 3
Language 11 3
RS 0101 Exploring Religion (Shell) 1 3
EN 0012 Texts and Contexts II: Writing About Literature 3
MA 0172 Calculus II 4
CS 0131 Fundamentals of Programming 3
Language 11 3
Second Year
MA 0231 Discrete Mathematics 3
CS 0231
Programming Workshop
and Programming Workshop PLG
Core Religious Studies 200-level 1 3
HI 0010 Origins of the Modern World Since 1500 1 3
Science Elective 8 3
CS 0232
Data Structures
and Data Structures PLG
CR 0245 Digital Design I 3
CR 0245L Digital Design I Lab 1
Core Philosophy 200-level 1 3
Core Social Sciences course 3 3
General elective 5 3
Third Year
SW 0300 Software Engineering Methods 3
CS 0343 Analysis of Algorithms 3
Science Elective 7 4
Core Visual/Performing Arts 9 3
Core English 100 level Literature course 1 3
CS 0331
Operating Systems
or Theory of Programming Languages
SW 0301 Software Design Methods 3
MA 0342 Theory of Computation 3
Core History 200 level 1 3
Core Visual/Performing Arts History 6 3
Fourth Year
Major Elective 1 4 3
Major Elective 2 4 3
General Elective 5 3
Core Social Sciences course 3 3
Core Ethics Option 10 3
Major Elective 3 4 3
Major Elective 4 4 3
General Elective 5 3
General Elective 5 3
 Total Credits121

Choose any appropriate Core course.


Core Social Science course may be filled by appropriate courses in Economics, Psychology, Sociology, Political Science, Communications, Anthropology, etc.


Major electives are chosen from the department, but may be chosen with approval of advisory from among other courses offered in the School of Engineering.


General Electives may be chosen from any courses offered at the university, and are frequently chosen to help fulfill requirements toward a chosen minor.


Visual and Performing Art History courses can be chosen from Art History, Music, Film/Television/Media, Theater, etc. that fulfill the VPA History requirement 


Lab science elective is typically met by 100 or higher level course in Physics, Biology or Chemistry plus lab.


Lab science elective is typically met by 100 or higher level course in Physics, Biology or Chemistry, no lab required.


Can be Applied or History or EG 0130.


Any PH/RS/AE 200 level or higher will fulfill requirement.


Two courses at the intermediate level in the same language.