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 AND DATA VISUALIZATION | ||
INTELLIGENT SYSTEMS | ||
MODELING AND SIMULATION | ||
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 |
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
Foreign 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.
Degree Works calculates 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 successfully earn a BS in Computer Science from EWU should be able to do the following:
- 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.