Computer Science Major, Bachelor of Science (BS)
The Bachelor of Science in Computer Science program is accredited by the Computing Accreditation Commission of ABET, http://www.abet.org.
The traditional computer science degree provides extensive preparation in both the theoretical and practical aspects of computer science. It prepares students for a variety of careers in computing or for additional study at the graduate level. In this program, students study both general purpose programming and programming for specialized purposes and environments. In addition, students learn about algorithms, performance analysis, networks, computer architectures, information systems, and software engineering. Students also work on a realistic project in a team environment. The program includes a variety of advanced courses that allow students to tailor their degree to their specific interests.
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.
Note: no course may be used as both a requirement and an elective in a student's program.
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 101 | CYBERSECURITY FUNDAMENTALS | 5 |
CSCD 202 | COMPUTING ETHICS | 4 |
CSCD 210 | PROGRAMMING PRINCIPLES I | 5 |
CSCD 211 | PROGRAMMING PRINCIPLES II | 5 |
CSCD 212 | OBJECT ORIENTED PROGRAMMING WITH DESIGN PATTERNS | 5 |
CSCD 240 | C AND UNIX PROGRAMMING | 5 |
CSCD 260 | ARCHITECTURE AND ORGANIZATION | 4 |
or EENG 260 | MICROCONTROLLER SYSTEMS | |
CSCD 300 | DATA STRUCTURES | 5 |
CSCD 320 | ALGORITHMS | 5 |
CSCD 327 | RELATIONAL DATABASE SYSTEMS | 4 |
CSCD 330 | COMPUTER NETWORKS | 4 |
CSCD 340 | OPERATING SYSTEMS | 5 |
CSCD 350 | SOFTWARE DEVELOPMENT PRINCIPLES | 4 |
CSCD 420 | COMPILERS | 4 |
Required Supporting Courses | ||
EENG 160 | DIGITAL CIRCUITS | 5 |
MATH/HONS 161 | CALCULUS I | 5 |
MATH 162 | CALCULUS II | 5 |
MATH 231 | LINEAR ALGEBRA | 5 |
MATH 301 | DISCRETE MATHEMATICS | 5 |
MATH 380 | ELEMENTARY PROBABILITY AND STATISTICS | 5 |
Required Laboratory Science Sequence–choose one sequence from the following | 10-15 | |
Biology | ||
BIOLOGY I | ||
BIOLOGY II | ||
BIOLOGICAL INVESTIGATION | ||
Chemistry | ||
GENERAL CHEMISTRY I and GENERAL CHEMISTRY LABORATORY I and GENERAL CHEMISTRY II and GENERAL CHEMISTRY LABORATORY II | ||
Geosciences | ||
DISCOVERING GEOLOGY | ||
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-level | 24 | |
Note: many of these elective courses have prerequisites. | ||
Note: other courses may be used with prior approval of the department. | ||
COMPUTER AND INFORMATION SECURITY | ||
C++ PROGRAMMING | ||
PRACTICAL PROBLEM SOLVING | ||
GUI PROGRAMMING | ||
.NET PROGRAMMING | ||
ANDROID MOBILE DEVELOPMENT | ||
IOS MOBILE DEVELOPMENT | ||
INTRODUCTORY COMPUTER GRAPHICS | ||
WEB APPLICATION DEVELOPMENT | ||
.NET WEB APPLICATION DEVELOPMENT | ||
EXPERIMENTAL COURSE (prior departmental approval of topic content is required) | ||
SEMINAR (prior departmental approval of topic content is required) | ||
DIRECTED STUDY (prior departmental approval of topic content is required) | ||
SCIENTIFIC PROGRAMMING | ||
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 departmental approval of topic content is required) | ||
DISTRIBUTED MULTIPROCESSING | ||
GPU COMPUTING | ||
ADVANCED ARCHITECTURE AND ORGANIZATION | ||
or EENG 460 | COMPUTING SYSTEMS: ORGANIZATION AND DESIGN | |
EMBEDDED SYSTEMS | ||
or EENG 461 | EMBEDDED SYSTEMS DESIGN | |
EMBEDDED REAL-TIME CONTROL | ||
or EENG 462 | REAL TIME EMBEDDED SYSTEMS | |
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 (variable credit–up to two 4 credit internships are allowed) | ||
EXPERIMENTAL COURSE (variable credit–prior departmental approval of topic content is required) | ||
SEMINAR (variable credit–may be repeated) | ||
DIRECTED STUDY (variable credit–prior departmental approval of topic content is required) | ||
CYBERSECURITY POLICIES, PRIVACY AND LAWS | ||
APPLIED CYBER DEFENSE | ||
APPLIED CYBER OPERATIONS | ||
DIGITAL FORENSICS AND CYBERCRIME | ||
Required Senior Capstone Series | ||
CSCD 488 | SENIOR PROJECT | 5 |
CSCD 490 | SENIOR CAPSTONE | 5 |
Total Credits | 138-143 |
Plan of Study
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 Quarter | Credits | Winter Quarter | Credits | Spring Quarter | Credits |
EENG 160 | 5 | CYBR 101 (Social Science BACR 1) | 5 | CSCD 202 (Humanities & Arts BACR 1) | 4 |
ENGL 101 | 5 | MATH 161 | 5 | ENGL 201 | 5 |
Natural Science BACR 1 (Laboratory Science Sequence)1 | 5 | Natural Science BACR 2 (Laboratory Science Sequence)1 | 5 | Social Science BACR 21 | 5 |
15 | 15 | 14 | |||
Second Year | |||||
Fall Quarter | Credits | Winter Quarter | Credits | Spring Quarter | Credits |
CSCD 210 | 5 | CSCD 211 | 5 | CSCD 212 | 5 |
MATH 380 | 5 | CSCD 240 | 5 | CSCD 300 | 5 |
Humanities & Arts BACR 21 | 5 | MATH 162 | 5 | MATH 301 | 5 |
15 | 15 | 15 | |||
Third Year | |||||
Fall Quarter | Credits | Winter Quarter | Credits | Spring Quarter | Credits |
CSCD 260 or EENG 260 | 4 | CSCD 320 | 5 | CSCD 327 | 4 |
CSCD 303 | 4 | CSCD 420 | 4 | CSCD 340 | 5 |
CSCD 330 | 4 | MATH 231 | 5 | Computer Science Elective2 | 4 |
Global Studies - graduation requirement1 | 5 | Computer Science Elective2 | 4 | Elective - certificate, minor, or general elective | 4 |
17 | 18 | 17 | |||
Fourth Year | |||||
Fall Quarter | Credits | Winter Quarter | Credits | Spring Quarter | Credits |
CSCD 350 | 4 | CSCD 488 | 5 | CSCD 490 (Senior Capstone - graduation requirement) | 5 |
CSCD 378 | 4 | Computer Science Elective2 | 4 | Computer Science Elective2 | 4 |
Computer Science Elective2 | 4 | Computer Science Elective2 | 4 | Diversity - graduation requirement1 | 5 |
12 | 13 | 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. Many of the elective courses have prerequisites. Other courses may be used with prior approval of the department.
University Competencies and Proficiencies
English
Quantitative and Symbolic Reasoning
Placement and Clearance
Prior Learning/Sources of Credit AP, CLEP, IB
General Education Requirements (GER)
- Minimum Credits—180 cumulative credit hours
- 60 upper-division credits (300 level or above)
- 45 credits in residence (attendance) at Eastern, with at least 15 upper-division credits in major in residence at Eastern
- Minimum Cumulative GPA ≥2.0
Breadth Area Core Requirements (BACR)
Humanities and Arts
Natural Sciences
Social Sciences
University Graduation Requirements (UGR)
Diversity Course List
World Language (for Bachelor of Arts)
Global Studies Course List
Minor or Certificate
Senior Capstone Course List
Application for Graduation (use EagleNET) must be made at least two terms in advance of the term you expect to graduate (undergraduate and post-baccalaureate).
Use the Catalog Archives to determine two important catalog years.
Requirements in Degree Works are based on these two catalog years:
- The catalog in effect at the student's first term of current matriculation is used to determine BACR (Breadth Area Credit Requirements) and UGR (Undergraduate Graduation Requirements).
- The catalog in effect at the time the student declares a major or minor is used to determine the program requirements.
Students who earn a BS in Computer Science from EWU should be able to:
- 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.