Bachelor of Computer Science

About

In the Bachelor of Computer Science (BCS) Program, you’ll learn about computer programming, algorithms, professional development, the local and global impact of computing. You’ll also study a variety of professional, ethical, legal, security, and social issues. In addition, you’ll develop your problem-solving skills and take courses in network programming, database management, and web and software development. The BCS degree differs from the Bachelor of Science in Computer Science degree in the required mathematics, required natural science, a few required computer science courses, and the required number of computer science electives.

Curriculum & Requirements Academic Plan Learning Outcomes

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 Computer Science (BCS)

The Bachelor of Computer Science program provides significant formal training in database and web programming, unique internship opportunities, and team development of information system projects. The program is designed to help prepare students to realize the potential of information systems. Graduates can enjoy a career as a systems analyst, database administrator, web developer or software engineer.

Note: no course may be used for both a requirement and an elective.

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
CYBR 101CYBERSECURITY FUNDAMENTALS5
CSCD 202COMPUTING ETHICS4
CSCD 210PROGRAMMING PRINCIPLES I5
CSCD 211PROGRAMMING PRINCIPLES II5
CSCD 212OBJECT ORIENTED PROGRAMMING WITH DESIGN PATTERNS5
CSCD 240C AND UNIX PROGRAMMING5
CSCD 300DATA STRUCTURES5
CSCD 320ALGORITHMS5
CSCD 327RELATIONAL DATABASE SYSTEMS4
CSCD 330COMPUTER NETWORKS4
CSCD 350SOFTWARE DEVELOPMENT PRINCIPLES4
Required Supporting Course
MATH 301DISCRETE MATHEMATICS5
Required Electives–choose eight courses from the following, at least four at the 400 level32
Notes: No course may be used for an elective that is used to satisfy another major requirement. Upper division MATH or CSCD 95–99 courses may be used–prior department approval of topic content is required.
COMPUTER AND INFORMATION SECURITY
C++ PROGRAMMING
PRACTICAL PROBLEM SOLVING
OPERATING SYSTEMS
GUI PROGRAMMING
.NET PROGRAMMING
ANDROID MOBILE DEVELOPMENT
IOS MOBILE DEVELOPMENT
INTRODUCTORY COMPUTER GRAPHICS
WEB APPLICATION DEVELOPMENT
.NET WEB APPLICATION DEVELOPMENT
SCIENTIFIC PROGRAMMING
COMPILERS
RANDOMIZED ALGORITHMS AND PROBABILISTIC ANALYSIS
ADVANCED DATABASE MANAGEMENT SYSTEMS
DATA MINING
BIG DATA ANALYTICS
ADVANCED NETWORKING CONCEPTS
NETWORK SECURITY
PRINCIPLES OF PROGRAMMING LANGUAGE
SECURE CODING
TOPICS IN COMPUTER SCIENCE (prior department approval of content required)
DISTRIBUTED MULTIPROCESSING
GPU COMPUTING
ADVANCED ARCHITECTURE AND ORGANIZATION
EMBEDDED SYSTEMS
EMBEDDED REAL-TIME CONTROL
PARALLEL AND CLOUD COMPUTING
3D COMPUTER GRAPHICS PRINCIPLES
ADVANCED 3D COMPUTER GRAPHICS
VIRTUAL REALITY WITH COMPUTER GRAPHICS AND GAME ENGINES
INTELLIGENT SYSTEMS
MODELING AND SIMULATION
MACHINE LEARNING
DEEP LEARNING
HUMAN COMPUTER INTERFACE
INTERNSHIP (up to two 4 credit internships are allowed)
DIRECTED STUDY (prior department approval of content required)
CYBERSECURITY POLICIES, PRIVACY AND LAWS
APPLIED CYBER DEFENSE
APPLIED CYBER OPERATIONS
DIGITAL FORENSICS AND CYBERCRIME
3D ANIMATION
4D ANIMATION
Required Senior Capstone Series
CSCD 488SENIOR PROJECT5
CSCD 490SENIOR CAPSTONE5
Total Credits98
 

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 may be offered in different terms and not all courses are offered every term, checking the academic schedule is paramount in keeping an individual plan current. There may be some courses that have required prerequisites not listed in the plan, review the course descriptions for information. 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
CYBR 101 (Social Science BACR 1)5CSCD 202 (Humanities & Arts BACR 1)4MATH 3015
ENGL 1015ENGL 2015Global Studies - graduation requirement15
Natural Science BACR 115Natural Science BACR 215Social Science BACR 215
 Elective - certificate, minor, or general elective1 
 15 15 15
Second Year
Fall QuarterCreditsWinter QuarterCreditsSpring QuarterCredits
CSCD 2105CSCD 2115CSCD 2125
Diversity - graduation requirement15CSCD 2405CSCD 3005
Elective - certificate, minor, or general elective5Elective - certificate, minor, or general elective5Humanities & Arts BACR 215
 15 15 15
Third Year
Fall QuarterCreditsWinter QuarterCreditsSpring QuarterCredits
CSCD 3304CSCD 3205CSCD 3274
Elective - certificate, minor, or general elective5Computer Science Elective24Computer Science Elective24
Elective - certificate, minor, or general elective5Elective - certificate, minor, or general elective5Computer Science Elective24
Elective - certificate, minor, or general elective1Elective - certificate, minor, or general elective1Elective - certificate, minor, or general elective3
 15 15 15
Fourth Year
Fall QuarterCreditsWinter QuarterCreditsSpring QuarterCredits
CSCD 3504CSCD 4885CSCD 490 (Senior Capstone - graduation requirement)5
Computer Science Elective24Computer Science Elective24Computer Science Elective24
Computer Science Elective24Computer Science Elective24Elective - certificate, minor, or general elective5
Elective - certificate, minor, or general elective3Elective - certificate, minor, or general elective2Elective - certificate, minor, or general elective1
 15 15 15
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 eight courses from the approved list, at least four at the 400 level. No course may be used for an elective that is used to satisfy another major requirement. Upper division MATH or CSCD 95–99 courses may be used–prior department approval of topic content is required.

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: 

Required Courses
CYBR 101 CYBERSECURITY FUNDAMENTALS 5
CSCD 210 PROGRAMMING PRINCIPLES I 5
CSCD 240 C AND UNIX PROGRAMMING 5
COMPUTER AND INFORMATION SECURITY 4
CSCD 330 COMPUTER NETWORKS 4
NETWORK SECURITY 4
SECURE CODING 4
Total Credits 31

Program Learning Outcomes

Upon completion of the graduation requirements, Bachelor of 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.
  • identify risk with regard to security, to participate in risk mitigation activities, and to provide application and information security.

Approved January 2019