Computer Science, BAS

Computer scientists and engineers have revolutionized society and created the computer and telecommunications industries that are so important to human life and the world's economy. As a result of this revolution, expertise in computer science is essential in many new areas, including computer and network service and consulting companies, financial institutions, health industries, natural science labs and medical research labs, and other contexts where intensive manipulation of information is important. As a result, opportunities for computer scientists and engineers have expanded greatly, both in specialized fields as well as in numerous dual-career opportunities in which computer expertise is combined with advanced degrees in business, communication, engineering, law, medicine, and science.

Computer Science (ASCS) Major Requirements

37 course units are required.

CIS 1100Introduction to Computer Programming1
CIS 1200Programming Languages and Techniques I1
CIS 1210Programming Languages and Techniques II1
CIS 2400Introduction to Computer Systems1
CIS 2620Automata, Computability, and Complexity1
CIS 3200Introduction to Algorithms1
CIS Electives 12
CIS Project Electives 22
Engineering Electives2
CIS 4980Senior Capstone Project1
Math and Natural Science
MATH 1400Calculus, Part I1
MATH 1410Calculus, Part II1
or MATH 1610 Honors Calculus
CIS 1600Mathematical Foundations of Computer Science1
Select two of the following Natural Sciences:2
Principles of Physics I (without laboratory)
Principles of Physics II (without laboratory)
Chemistry Advanced Placement/International Baccalaureate Credit (Engineering Students Only)
Introduction to General Chemistry I
Introduction to Biology A
Introduction to Biology - The Molecular Biology of Life
Math/Natural Science Electives3
Technical Electives
Select 8 course units, with departmental approval 3,48
General Electives 5
Select 4 Social Science or Humanities courses4
Select 2 Social Science or Humanities or Technology in Business & Society courses2
EAS 2030Engineering Ethics1
or CIS 4230 Ethical Algorithm Design
or CIS 5230 Ethical Algorithm Design
or LAWM 5060 ML: Technology Law
Free Elective
Select 1 course unit of free elective (approval required)1
Total Course Units37

A CIS Elective is a CIS or NETS engineering course numbered 1000 or above or ESE 3500 Embedded Systems/Microcontroller Laboratory. (Note that not all CIS/NETS courses are engineering courses, please see the SEAS Undergraduate Handbook.) At most one CU of 1000-level courses may be used as a CIS Elective.


Select from the following list: CIS 3410 Compilers and Interpreters, CIS 3500 Software Design/Engineering, CIS 3800 Computer Operating Systems, CIS 4410 Embedded Software for Life-Critical Applications,CIS 5410 Embedded Software for Life-Critical ApplicationsCIS 4500 Database and Information Systems, CIS 5500 Database and Information Systems,  CIS 4550 Internet and Web Systems, CIS 5550 Internet and Web SystemsCIS 4600 Interactive Computer Graphics, CIS 5600 Interactive Computer GraphicsCIS 4710 Computer Organization and Design, CIS 5710 Computer Organization and DesignCIS 5050 Software Systems, CIS 5530 Networked SystemsNETS 2120 Scalable and Cloud Computing or ESE 3500 Embedded Systems/Microcontroller Laboratory.


 OPTION 1: Any approved minor, or sequence of approved courses. Remaining must be Math, Natural Science or Engineering.


OPTION 2: Any 8 CU's from Math, Natural Science or Engineering


Must include a Writing Seminar (a list of approved Writing Seminars can be found in the SEAS Undergraduate Handbook)

The degree and major requirements displayed are intended as a guide for students entering in the Fall of 2023 and later. Students should consult with their academic program regarding final certifications and requirements for graduation.