Bachelor of Science Program

The Bachelor of Science (B.S.) program in computer science is accredited by ABET, the professional society that accredits engineering programs. The B.S. program provides general education, strength in mathematics and science, communication and an in-depth program in computer science including an 8-credit Senior Design Project that closely models "industrial-strength" project development.

The program below is effective for students whose curriculum year (when they began the program) is 2019, 2020 or 2021. Students who enrolled before 2019 should use this curriculum page.

Recommended program of study

First semester   15
UW 1020 University Writing *   4
CSCI 1010 Computer Science Orientation   1
CSCI 1111 Introduction to Software Development   3
SEAS 1001 Engineering Orientation   1
Mathematics requirement *   3
Humanities, social science, or non-technical elective   3
     
Second semester   16
CSCI 1311 Discrete Structures I Pre (Math 1220/1231) 3
CSCI 1112 Algorithms and Data Structures Pre (CSCI 1111 with a grade of C or higher, Math 1220/1231)  3
Mathematics requirement *   3
Science requirement *   4
Humanities, social science, or non-technical elective   3
     
Third semester  

16

CSCI 2312 Discrete Structures II Pre (CSCI 1311 with a grade of C or higher; Math 1231) 3
CSCI 2461 Computer Architecture I Pre (CSCI 1112 with a grade of C or higher, CSCI 1311) 3
CSCI 2113 Software Engineering Pre (CSCI 1112 with a grade of C or higher; Math 1231) 3
Science requirement *   4
Humanities, social science, or non-technical elective   3
     
Fourth semester   17
CSCI 3410 Systems Programming Pre (CSCI 2461, 2113) 3
CSCI 2541W Database Systems and Team Projects Pre (CSCI 1311) 3
CSCI 2501 Ethical Issues in Computing   1
CSCI 3313 Foundations of Computing Pre (CSCI 1311, CSCI 2113, and CSCI 2461) 3
Science requirement *   4
Statistics or linear algebra requirement *   3
     
Fifth semester   14
CSCI 3212 Algorithms Pre (CSCI 1311, CSCI 2113) 4
CSCI 3411 Operating Systems Pre (CSCI 2461, CSCI 2113) 4
CS technical track elective   3
Humanities, social science, or non-technical elective   3
     
Sixth semester   15
Statistics or linear algebra requirement *   3
CS technical track elective   3
Non-Technical Elective   3
Humanities, social science, or non-technical elective   3
Selected elective (see below)   3
     
Seventh semester   16
CSCI 4243W Capstone Design Project I Pre (CSCI 3212 and CSCI 3411) 4
CS technical track elective   3
Non-Technical Elective   3
Humanities, social science, or non-technical elective   3
Selected elective (see below)   3
     
Eighth semester   16
CSCI 4244 Capstone Design Project II Pre (CSCI 4243) 4
CS technical track elective   3
Non-Technical elective   3
Selected elective (see below)   3
Selected elective (see below)   3

*Course satisfies the University General Education Requirement in mathematics, science, or writing. UW 1020 must be completed prior to enrolling in any writing course in the major, including CSCI 2441W and CSCI 2541W.

 

Humanities, social science, and non-technical elective requirements: All BS in computer science students must take one humanities course and two social science courses from the Columbian College G-PAC Requirement list and three additional humanities, social science, and/or non-technical courses from the SEAS Humanities, Social Science, and Non-Technical Elective Requirement list. All courses selected to satisfy this requirement must be at least 3 credits and approved by the faculty advisor.

Mathematics requirement: Can be met by taking MATH 1220 and MATH 1221 and MATH 1232 or by taking MATH 1231and MATH 1232. All students must take two MATH courses not counting MATH 1220; students who take MATH 1220 must take it as one of their selected electives.

Science requirement: Can be met by choosing from BISC 1111 and BISC 1112; CHEM 1111 and CHEM 1112; and PHYS 1021 and PHYS 1022. The three science requirement courses must include a two-course sequence.

Statistics or linear algebra requirement: Students must take both a statistics class, and a linear algebra class. The Statistics requirement can be met by choosing from APSC 3115, CSCI 3362 or CSCI 6362, CSCI 4341, or STAT 4157. The Linear algebra requirement can be met by taking one of MATH 2184, CSCI 4342, or EMSE 2705. Students who were admitted prior to fall 2014 may count STAT 1051 and STAT 1053 toward the statistics requirement, if they took the course prior to the spring 2015 semester. Students pursuing a pre-medical concentration may substitute the linear algebra requirement with a science course required by the pre-medical requirements.

As part of a residency requirement, all computer science majors must take a minimum of 30 credits in computer science at GW. The 30 credits include courses that students who participate in a study abroad program take during their approved study abroad.

Students in the Bachelor of Science program must work with their advisors to select both a technical and non-technical track. Detailed information on the curriculum, elective courses, and the technical and non-technical tracks is listed in the Bulletin which is the definitive statement of degree requirements and is updated to reflect and archive the requirements for each entering class. However, this curriculum and the subsequent links offer examples of courses and course schedules that students have used in the past and are appropriate for understanding the overall structure of our program: