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.
Our traditional computer science degree provides extensive preparation in both the theoretical and practical aspects of computer science. It will prepare you for a variety of careers in computing or for additional study at the graduate level. In this program you will study both general purpose programming and programming for specialized purposes and environments. In addition, you will learn about algorithms, performance analysis, networks, computer architectures, information systems and software engineering. You will also work on a realistic project in a team environment. The program includes a variety of advanced courses that allow you to tailor your degree to your 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|
|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|
|CSCD 300||DATA STRUCTURES||5|
|CSCD 327||RELATIONAL DATABASE SYSTEMS||4|
|CSCD 330||COMPUTER NETWORKS||4|
|CSCD 340||OPERATING SYSTEMS||5|
|CSCD 350||SOFTWARE DEVELOPMENT PRINCIPLES||4|
|Web Development–choose one of the following|
|CSCD 378||WEB APPLICATION DEVELOPMENT||4|
|or CSCD 379||.NET WEB APPLICATION DEVELOPMENT|
|Security–choose one of the following|
|CSCD 303||COMPUTER AND INFORMATION SECURITY||4|
|or CSCD 434||NETWORK SECURITY|
|or CSCD 437||SECURE CODING|
|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-13|
|GENERAL CHEMISTRY I|
and GENERAL CHEMISTRY LABORATORY I
and GENERAL CHEMISTRY II
and GENERAL CHEMISTRY LABORATORY II
|THE EARTH'S INTERIOR|
|THE EARTH'S SURFACE|
|GENERAL PHYSICS I|
|GENERAL PHYSICS II|
|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|
|PRACTICAL PROBLEM SOLVING|
|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)|
|AUTOMATA AND COMPILERS|
|RANDOMIZED ALGORITHMS AND PROBABILISTIC ANALYSIS|
|ADVANCED DATABASE MANAGEMENT SYSTEMS|
|BIG DATA ANALYTICS|
|ADVANCED COMPUTER NETWORKS|
|PRINCIPLES OF PROGRAMMING LANGUAGE|
|TOPICS IN COMPUTER SCIENCE (prior departmental approval of topic content is required)|
|ADVANCED ARCHITECTURE AND ORGANIZATION|
|EMBEDDED REAL-TIME CONTROL|
|PARALLEL AND CLOUD COMPUTING|
|3D COMPUTER GRAPHICS PRINCIPLES|
|ADVANCED 3D COMPUTER GRAPHICS|
|VIRTUAL REALITY AND DATA VISUALIZATION|
|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)|
|Required Senior Capstone Series|
|CSCD 488||SENIOR PROJECT||5|
|CSCD 490||SENIOR CAPSTONE||5|
University Competencies and Proficiencies
- 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
All admitted students must officially Declare a Major by the time they reach 90 credits (junior standing).
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.
SOAR 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.