Bachelor of Science in Computer Science

About

In the Bachelor of Science in Computer Science Program, you’ll learn about algorithms, performance analysis, networks, computer architectures, information systems and software engineering. You can choose to concentrate in database programming, network security, operating systems, or computational informatics.

Our graduates go on to work as software developers, software engineers, game programmers, database programmers and more.

Curriculum & Requirements Academic Plan

Cybersecurity Minor for NCAE-C Prerequisite Map

What You'll Learn

The following information comes from the official EWU catalog, which outlines all degree requirements and serves as the guide to earning a degree. Courses are designed to provide a well-rounded and versatile degree, covering a wide range of subject areas.

Computer Science Major, Bachelor of Science (BS)

In the Bachelor of Science in Computer Science (BSCS) program, students learn about programming, algorithms, database systems, networking, software development, cybersecurity, computer architecture, operating systems, and computing ethics, as well as a wide range of electives based on students' interests. The BSCS degree differs from the Bachelor of Computer Science (BCS) degree in the number of required mathematics and natural science courses and computer science electives.

The Bachelor of Science in Computer Science program is accredited by the Computing Accreditation Commission of ABET, http://www.abet.org.

Note: No course may be used as both a requirement and an elective in a student's program.

Exam Requirement: All Computer Science majors are required to pass the Advanced Programming Exam prior to taking courses for which it is a prerequisite. Passing the exam is required for graduation and no exam waivers will be granted for degree completion.

Grade Requirements: As a computer science student, you are expected to maintain an overall university GPA ≥2.3. Each computer science course must be completed with a minimum grade ≥C+. All supporting courses required by the department must be completed with a minimum grade ≥C.

Required Computer Science Courses
CSCD 202COMPUTING ETHICS4
CSCD 210PROGRAMMING PRINCIPLES I5
CSCD 211PROGRAMMING PRINCIPLES II5
CSCD 240C AND UNIX PROGRAMMING5
CSCD 260
260L
ARCHITECTURE AND ORGANIZATION
and ARCHITECTURE AND ORGANIZATION LAB
4
or EENG 260
260L
MICROCONTROLLER SYSTEMS
and MICROCONTROLLER SYSTEMS LAB
CSCD 300DATA STRUCTURES5
CSCD 320ALGORITHMS5
CSCD 327
327L
RELATIONAL DATABASE SYSTEMS
and RELATIONAL DATABASE SYSTEMS LAB
4
CSCD 330
330L
COMPUTER NETWORKS
and COMPUTER NETWORKS LAB
4
CSCD 340OPERATING SYSTEMS5
CSCD 350
350L
SOFTWARE DEVELOPMENT PRINCIPLES
and SOFTWARE DEVELOPMENT PRINCIPLES LAB
4
CSCD 420
420L
COMPILERS
and COMPILERS LAB
4
Required Supporting Courses
CYBR 101CYBERSECURITY FUNDAMENTALS5
EENG 160
160L
DIGITAL CIRCUITS
and DIGITAL CIRCUITS LAB
5
MATH/HONS 161CALCULUS I5
MATH 162CALCULUS II5
MATH 231LINEAR ALGEBRA5
MATH 301DISCRETE MATHEMATICS5
MATH 380ELEMENTARY PROBABILITY AND STATISTICS5
Required Laboratory Science Sequence–choose one sequence from the following 10-15
Biology
BIOLOGY I
and BIOLOGY I LAB
BIOLOGY II
and BIOLOGY II LAB
BIOLOGICAL INVESTIGATION
and BIOLOGICAL INVESTIGATION LAB
Chemistry
GENERAL CHEMISTRY I
and GENERAL CHEMISTRY LABORATORY I
and GENERAL CHEMISTRY II
and GENERAL CHEMISTRY LABORATORY II
Geosciences
DISCOVERING GEOLOGY
and DISCOVERING GEOLOGY LAB
THE EARTH'S CLIMATE AND WEATHER
Physics
GENERAL PHYSICS I
GENERAL PHYSICS II
MECHANICS LABORATORY
HEAT AND OPTICS LABORATORY
Required Electives–choose six courses; at least four courses must be 400-level24
Note: many of these elective courses have prerequisites.
Note: other courses may be used with prior approval of the department.
C++ PROGRAMMING
and C++ PROGRAMMING LAB
.NET PROGRAMMING
and .NET PROGRAMMING LAB
INTRODUCTORY COMPUTER GRAPHICS
and INTRODUCTORY COMPUTER GRAPHICS LAB
.NET WEB APPLICATION DEVELOPMENT
and .NET WEB APPLICATION DEVELOPMENT LAB
EXPERIMENTAL COURSE (prior departmental approval of topic content is required)
DIRECTED STUDY (prior departmental approval of topic content is required)
ADVANCED DATABASE MANAGEMENT SYSTEMS
and ADVANCED DATABASE MANAGEMENT SYSTEMS LAB
DATA MINING
and DATA MINING LAB
BIG DATA ANALYTICS
and BIG DATA ANALYTICS LAB
TOPICS IN COMPUTER SCIENCE (prior departmental approval of topic content is required)
GPU COMPUTING
and GPU COMPUTING LAB
PARALLEL AND CLOUD COMPUTING
and PARALLEL AND CLOUD COMPUTING LAB
3D COMPUTER GRAPHICS PRINCIPLES
and 3D COMPUTER GRAPHICS PRINCIPLES LAB
ADVANCED 3D COMPUTER GRAPHICS
and ADVANCED 3D COMPUTER GRAPHICS LAB
DATA VISUALIZATION
and DATA VISUALIZATION LAB
GAME DESIGN AND DEVELOPMENT 1
and GAME DESIGN AND DEVELOPMENT 1 LAB
GAME DESIGN AND DEVELOPMENT 2
and GAME DESIGN AND DEVELOPMENT 2 LAB
VIRTUAL REALITY WITH COMPUTER GRAPHICS AND GAME ENGINES
and VIRTUAL REALITY WITH COMPUTER GRAPHICS AND GAME ENGINES LAB
INTELLIGENT SYSTEMS
and INTELLIGENT SYSTEMS LAB
MODELING AND SIMULATION
and MODELING AND SIMULATION LAB
MACHINE LEARNING
and MACHINE LEARNING LAB
DEEP LEARNING
and DEEP LEARNING LAB
INTERNSHIP (variable credit–one 4-credit internship is allowed)
EXPERIMENTAL COURSE (variable credit–prior departmental approval of topic content is required)
DIRECTED STUDY (variable credit–prior departmental approval of topic content is required)
COMPUTER AND INFORMATION SECURITY
and COMPUTER AND INFORMATION SECURITY LAB
APPLIED CYBER DEFENSE
and APPLIED CYBER DEFENSE LAB
NETWORK SECURITY
and NETWORK SECURITY LAB
SECURE CODING
and SECURE CODING LAB
APPLIED CRYPTOGRAPHY
and APPLIED CRYPTOGRAPHY LAB
HARDWARE DESCRIPTION LANGUAGES
and HARDWARE DESCRIPTION LANGUAGES LAB
COMPUTING SYSTEMS: ORGANIZATION AND DESIGN
and COMPUTING SYSTEMS: ORGANIZATION AND DESIGN LAB
EMBEDDED SYSTEMS DESIGN
and EMBEDDED SYSTEMS DESIGN LAB
REAL TIME EMBEDDED SYSTEMS
and REAL TIME EMBEDDED SYSTEMS LAB
Required Senior Capstone Series
CSCD 488SENIOR PROJECT5
CSCD 490SENIOR CAPSTONE5
Total Credits133-138

The following plan of study is for a student with zero credits. Individual students may have different factors such as: credit through transfer work, Advanced Placement, Running Start, or any other type of college-level coursework that requires an individual plan.

Courses could be offered in different terms, checking the academic schedule is paramount in keeping an individual plan current. Students should connect with an advisor to ensure they are on track to graduate.

All Undergraduate students are required to meet the Undergraduate Degree Requirements.

First Year
Fall QuarterCreditsWinter QuarterCreditsSpring QuarterCredits
All Courses on the Cheney CampusAll Courses on the Cheney CampusAll Courses on the Cheney Campus
CSCD 2105CSCD 2115CSCD 2405
ENGL 1015ENGL 2015CSCD 3005
MATH 1615MATH 1625MATH 3805
 15 15 15
Second Year
Fall QuarterCreditsWinter QuarterCreditsSpring QuarterCredits
All Courses on the Cheney CampusAll Courses on the Cheney CampusAll Courses on the Cheney Campus
CYBR 101 (Social Science BACR 1)5CSCD 330
330L
4CSCD 202 (Humanities & Arts 2 BACR)4
Natural Science BACR 1 - chose from major list15Natural Science BACR 2- chose from major list15EENG 160
160L
5
Social Science BACR 2 (Recommended LIBR 110)15Humanities & Arts BACR 115MATH 3015
 15 14 14
Third Year
Fall QuarterCreditsWinter QuarterCreditsSpring QuarterCredits
All Courses at the Spokane Catalyst BuildingAll Courses at the Spokane Catalyst BuildingAll Courses at the Spokane Catalyst Building
CSCD 327
327L
4CSCD 260
260L
4CSCD 3405
MATH 2315CSCD 3205CSCD Elective 224
CSCD Elective 124Global Studies - graduation requirement (online)15Diversity - graduation requirement (online)15
Elective - minor, or general elective4  
 17 14 14
Fourth Year
Fall QuarterCreditsWinter QuarterCreditsSpring QuarterCredits
All Courses at the Spokane Catalyst BuildingAll Courses at the Spokane Catalyst BuildingAll Courses at the Spokane Catalyst Building
CSCD 350
350L
4CSCD 4885CSCD 490 (Senior Capstone - graduation requirement)5
CSCD 420
420L
4CSCD Elective 424CSCD Elective 624
CSCD Elective 324CSCD Elective 524Elective - minor, or general elective5
Elective - minor, or general elective4Elective - minor, or general elective4 
 16 17 14
Total Credits 180
1

University Graduation Requirements (UGR) and Breadth Area Course Requirements (BACR) courses may be less than 5 credits and additional credits may be required to reach the required 180 total credits needed to graduate.  Students should connect with an advisor to ensure they are on track to graduate.

2

Required Electives–choose six courses from the approved list; at least four courses must be 400-level.

Cybersecurity Minor

The minor provides the skills necessary to meet an increasing demand for cybersecurity professionals.

Grade Requirements: As a computer science student, you are expected to maintain an overall university GPA ≥2.3. Each computer science course must be completed with a minimum grade ≥C+. All supporting courses required by the department must be completed with a minimum grade ≥C. Note: The required security course from the BSCS cannot be counted as part of the minor. You must complete all three security courses for the BSCS with the Cyber minor.

Required Courses
CSCD 210 PROGRAMMING PRINCIPLES I 5
CSCD 240 C AND UNIX PROGRAMMING 5
CSCD 260 ARCHITECTURE AND ORGANIZATION 4
CSCD 330 COMPUTER NETWORKS 4
EENG 160 DIGITAL CIRCUITS 4
Elective Courses–choose two courses from the following 8
Note: The required security course from the BSCS cannot be counted as part of the minor. You must complete all three security courses for the PoS  BSCS with the Cyber minor.
COMPUTER AND INFORMATION SECURITY
NETWORK SECURITY
SECURE CODING
Total Credits 30

Program Learning Outcomes

Upon completion of graduation requirements, Bachelor of Science in Computer Science students will:

  • analyze a complex computing problem and to apply principles of computing and other relevant disciplines to identify solutions.
  • design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline, utilizing techniques, skills, and tools necessary for computing practice.
  • communicate effectively in a variety of professional contexts.
  • recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles, including local and global impacts of computing solutions on individuals, organizations, and society.
  • function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline.
  • apply computer science theory and software development fundamentals to produce computing-based solutions.
  • identify risk with regard to security, to participate in risk mitigation activities, and to provide application and information security