EOU official logo

Computer Science

Develop the skills needed to find yourself in a cutting edge career.


Apply to EOU
Online
Request Info

Students in the Computer Science program prepare for a future in software development to solve the complex problems faced by 21st Century America. Computer Science continues to be one of the most in-demand fields of study across the United States and around the world.

‘Eastern Update’ highlights science facilities, programs

President Tom Insko hosts a live webinar alongside EOU students and faculty on Feb. 24.

Read more

The Computer Science Program at EOU includes core credits, elective credits, and math credits, in addition to general education requirements. Earn your B.A. with a foreign language requirement, or your B.S. with just 12 more science credits.

Core curriculum includes introductions to software, operating systems, database management plus algorithms and analysis. These are the skills needed in virtually every IT job.

Unique elective courses include new media, computing theory, 3-D graphics and animation, network administration and artificial intelligence. You can also take an independent study course for a specialized topic that you choose.

Computer Science Course Offerings

CS 110 – Selected Topics (Credits: 1 to 6)

An in-depth presentation of a topic of interest to both students and faculty. Topics will vary from year to year depending on the interests and availability of faculty. Prerequisites: May be required for some topics.CS 121 – Intro Software Development (Credits: 1)
This survey course introduces computer software, the process of its development, and its uses in contemporary society. Topics include data representation, basic computer architecture, and categories of software including multimedia products, end-user applications, process-control, and scientific computing.

CS 140 – Microcomputer Syst (Credits: 3)

Emphasis is placed on the technical details of the microcomputer system as a whole in order to produce sophisticated users. This course focuses on microcomputer operating systems, their structures and relations to the microcomputer architecture, a technical understanding of information flow through the microcomputer and its hardware interfaces. This course also introduces the Internet, networking, and communications protocols such as TCP/IP.

CS 161 – Foundations Of CS I (Credits: 4)

Introduces basic data representation, branching and iteration, memory management, computer architecture, and the analysis and design of problem solutions.

CS 162 – Foundations Of CS II (Credits: 4)

Introduces some common algorithms for searching and sorting, the analysis of algorithm complexity, exception handling, and file output. Prerequisites: Math 111, CS 161.

CS 209 – Field Placement (Credits: 1-15)

CS 210 – Selected Topics (Credits: 1 to 6)

An in-depth presentation of a topic of interest to both students and faculty. Topics will vary from year to year depending on the interests and availability of faculty. Prerequisites: May be required for some topics.

CS 221 – C/C++ Programming (Credits: 4)

An introduction to the basics of programming as used in C and C++, including selection statements, loops, arrays, string handling, pointers, registers and functions. Practical exercises will require the construction, compilation, debugging, and execution of complete programs that implement given algorithms to solve simple problems. The emphasis in this course will be on the common features of C and C++; however memory allocation and the use of pointers will be discussed in the context of the ANSII C implementation. Prerequisite: CS 162.

CS 248 – Unix Programming (Credits: 3)

The essentials of UNIX tool programming will be covered with the use of high-level programming languages, utilities, and toolkits. Topics include UNIX shells and essential utilities and network security issues, and high-level networking and protocol basics. Provides students with an opportunity to team the tools and programming languages that will help them make the best use of UNIX. Prerequisite: CS 221.

CS 260 – Data Structures (Credits: 4)

An introduction to various implementations of commonly used data structures and their applications. Topics include lists, stacks, queues, trees and hash tables. Prerequisite: CS 162.

CS 310 – Selected Topics (Credits: 1 to 6)

An in-depth presentation of a topic of interest to both students and faculty. Topics will vary from year to year depending on the interests and availability of faculty. Prerequisites: May be required for some topics. Students must have at least a Sophomore standing to register for this course.

CS 311 – Operating Systems (Credits: 3)

The principles and problems involved in the development of a computer operating system. Overview of the development of operating systems, sequential and con-current processes, cooperation, communication and mutual exclusion, synchronization constructs: monitors, conditional critical regions, semaphores; deadlocks, resource allocation, scheduling policies, storage management. Prerequisite: CS 248. Student must have at least Sophomore standing to register for this course.

CS 315 – Interactive Software Design (Credits: 4)

Institutional Grad Requirement – UWR
Covers models of software development, with emphasis on the prototyping model, and user interface design. Students will design an interactive product, producing deliverables for each stage of design up to the development of a working prototype. Prerequisites: CS 162: Foundations of Computer Science II.

CS 316 – Authoring Environment Programming (Credits: 4)

Students learn to apply procedural and object oriented programming methodologies to create interactive products for informational, educational, and entertainment applications for web or stand-alone delivery Prerequisites: CS 162: Foundations of Computer Science II.

CS 318 – Algorithm Analysis (Credits: 4)

The analysis of variety of algorithms that arise frequently in computer applications. Basic principles and techniques for analyzing and improving algorithms in areas such as List Searches, Sorting, Pattern Recognition, Polynomial and Matrix Computations. Prerequisite: MATH 231 and CS 260. Student must have at least Sophomore standing to register for this course.

CS 321 – Computing Theory (Credits: 3)

Includes automata, complexity, Turing machines, unsolvable problems. Prerequisite: CS 318. Student must have at least Sophomore standing to register for this course.

CS 325 – Applied 3D Graphics and Animation (Credits: 4)

Covers the three dimensional computer modeling tools for the creation of still and moving images. Topics include creation of models using a variety of techniques including spline and vertex editing; animation using keyframes, skeleton rigging and morph targets; virtual lighting, and use texture maps. Prerequisites: CS 162: Foundations of Computer Science II.

CS 328 – Intro to Video Game Design & Development (Credits: 4)

The design, implementation, and testing of video games. Includes incremental game engine development, simple graphics, user input, animation, sound, music, and artificial intelligence. Prerequisites: CS 221, CS 260.CS 330 – Database Mgmt System (Credits: 4)
Analysis, design, and implementation of data systems in relation to information transfer. Prerequisite: CS 260, CS 3184. Student must have at least Junior standing to register for this course.

CS 335 – Networking/Network Admin (Credits: 4)

An introductory examination of the Open System Interconnection Reference Model (OSI). Topics covered include network architecture, data flow control, transmission control, path control, recovery, and routing techniques. Prerequisite: CS 311. Student must have at least Sophomore standing to register for this course.

CS 344 – Systems Analysis & Design (Credits: 3)

Introduction to fundamental concepts of object-oriented software development. Covers requirements determination and specification and systems design using the Unified Modeling Language (UML). Emphasis is placed on methods of iterative and incremental software development. Prerequisite: CS 260. Student must have at least Sophomore standing to register for this course.

CS 360 – Object-Orient Prog With C++ (Credits: 4)

A study of object oriented programming with C++. Beginning and intermediate concepts are covered including classes, objects, member functions, overloading, inheritance, polymorphism, templates, and virtual functions. Prerequisite: CS 221, CS 260. Student must have at least Sophomore standing to register for this course.

CS 369 – Mobile Application Development (Credits: 4)

Development of applications for phones, tablets, and other mobile devices, with an emphasis on the constraints facing mobile application design and development from both a hardware and user perspective. Introduction to current mobile app frameworks, events, and user interfaces. Prerequisites: CS 360.

CS 370 – User Interface Design (Credits: 3)

Institutional Grad Requirement – UWR
Introduces principles of human-computer interface design and methodologies of implementation, evaluation, and research in human-computer interaction. Topics include user psychology, dialog styles, error handling and reporting, system response time, user documentation and help systems, and “intelligent” interfaces. Discusses techniques for the implementation and testing of human-computer interfaces. Prerequisite: MM 252 and MM 315 (concurrently). Student must have at least Sophomore standing to register for this course.

CS 380 – Software Engineering (Credits: 4)

Emphasis is on the specification, organization, implementation, testing, and documentation of software. Inherent problems, challenges, tools, and methods of a large software project. Presents methods and tools used in the various stages of software production. This course should prepare students for the problems they will encounter as software professionals. Prerequisite: CS 344. Student must have at least Sophomore standing to register for this course.

CS 381 – Programming Languages (Credits: 4)

Concepts of high-level programming languages. Syntax and semantics of several existing languages. Compilers, interpreters and formal syntax specification. Prerequisite: CS 360. Student must have at least Sophomore standing to register for this course.

CS 401 – Capstone (Credits: 1 to 6)

Prerequisite: Upper-division standing or Consent of instructor. Student must have at least Junior standing to register for this course.

CS 407 – Seminar (Credits: 1 to 6)

Prerequisite: Junior or Senior standing. Student must have at least Junior standing to register for this course. Credits:

CS 409 – Practicum (Credits: 1 to 12)

Students gain practical experience in a professional or pre-professional setting. Prerequisites: Upper-division standing and consent of instructor. Student must have at least Junior standing to register for this course.

CS 410 – Selected Topics (Credits: 1 to 5)

An in-depth presentation of a topic of interest to both students and faculty. Topics will vary from year to year depending on the interests and availability of faculty. Prerequisites: May be required for some topics. Student must have at least Junior standing to register for this course.

CS 425 – Computer Graphics (Credits: 4)

This course studies the principles underlying the generation and display of 3D computer graphics.Topics include geometric transformations, 3D viewing and projection, lighting and shading, color, camera models and interaction, and standard graphics APIs. Prerequisites: CS 221 and junior standing.

CS 427 – Numerical Computation (Credits: 3)

Introduction to numerical methods. Includes topics from elementary discussion of errors, polynomials, interpolation, quadrature, linear systems of equations, and solution of nonlinear equations. Prerequisite: MATH 261, CS 360. Student must have at least Junior standing to register for this course.

CS 428 – Web Architecture/Programming (Credits: 4)

This course will cover some of the emerging technologies in the area of dynamic Web page development and Web server programming, including DHTML, XML, and Java Server Pages. Prerequisite: CS 330. Student must have at least Junior standing to register for this course.

CS 440 – Artificial Intelligence (Credits: 4)

Basic concepts of intelligent systems and artificial intelligence programming, representation, control, communication, and perception. Prerequisites: CS 318, CS 360, and junior standingBack to Top

Faculty

Richard Croft, Ph.D.
Associate Professor, came to EOU in 2000. He specializes in educational programming, computing theory, and 3D graphics applications.

T. 541-962-3695
E. rcroft@eou.edu
W. http://cs.eou.edu/rcroft


Jenelle Davis
Adjunct Instructor, came to EOU in 2019. Jenelle is a Computer Science Practitioner for 20 years in Government, Telecommunications, and Consulting. Jenelle has served as a Computer Science Instructor for 14 years. Her specializations include Networking, CyberSecurity, and Application Development.

E. jdavis19@eou.edu


Tim Harrison
Assistant Professor, came to EOU in 2018. Tim was a computer scientist for 30 years and a grades 6-12 computer science teacher for 6 years before coming to EOU. Tim designed and developed tools (software, methods, and training) to improve software development practices for the U.S. defense industry for 15 years. Then, he taught/consulted object-oriented technology for 15 years. Tim’s specialties are object-oriented technology (analysis, design & programming), requirements analysis, programming languages, and computer science education.

O. BH 107D
T. 541-962-3084
E. tcharrison@eou.edu


Khaled Sabha
Adjunct Instructor, came to EOU in 2020. He has over ten years of industrial as well as teaching experience. He is currently a full-time senior lecturer for the University of Wisconsin-Milwaukee (UWM). Khaled’s specialties are computer networking, programming, & cybersecurity.

E. ksabha@eou.edu


Samuel Sambasivam, Ph.D.
Adjunct Instructor, came to EOU in 2020. He has served in higher education for over 33 years in both face-to-face and online education. He has done extensive research, written for publications, and given presentations in computer science and mathematics. His current research interests include Big Data Analytics, Cybersecurity, Artificial Intelligence, E-learning Technologies, Software Engineering, and Client/Server Applications, Genetic Algorithms, and XML Database Applications. He has taught a variety of Computer Science courses in both undergraduate and graduate programs

E. ssambasivam@eou.edu


Greg Schulberg
Adjunct Instructor. Greg has a background in electrical engineering and worked for many years as an engineer, and later as a professional software developer a for large telecommunications company. His specialties in computer science are software engineering and architecture. He is currently a full-time faculty member in the math and computer science department at Blue Mountain Community College.

E. gschulbe@eou.edu


Steve Sheehy
Assistant Professor. Steve was a software engineer for 24 years before coming to EOU, building software for the telecommunications industry. Steve’s specialties are object-oriented programming, software engineering, and database management systems.

O. BH 107B
T. 541-962-3065
E. ssheehy@eou.edu


Kiel Wadner
Senior Instructor II, came to EOU in 2019. With a background in software engineering for enterprise environments, Kiel is an information security professional. He specializes in cyber security, spanning both the offensive and defensive arenas.

O. BH 107A
T. 541-962-3703
E. wadnert@eou.edu


Brian Scavatto
Adjunct Instructor, came to EOU in 2020. Brian is a cybersecurity practitioner with over 10 years of experience in local/federal law enforcement, the U.S. Intelligence Community, and most recently within the financial services sector. Brian has been instructing courses in computer science and cybersecurity for six years. Brian’s areas of expertise are incident response, cyber risk, cyber threat intelligence, insider threat, and network defense.

E. bscavotto@eou.edu


As the newest edition to the Computer Science department, the cybersecurity program will bring an operational focus to defending an organization’s environment. Scheduled to start in the Fall 2021, students will have both a BS and BAS route to customize their education. The curriculum is built on top of the existing Computer Science courses by adding a cross section of cybersecurity topics. Students will be exposed to topics for different specializations of cybersecurity, with an emphasis on hands-on application.

Cybersecurity Course Offerings

CS 350    Wireless & RF Fundamentals/Security

A study of basic radio frequency communication & the associated security implementations. This course provides students with a foundation in how systems communicate over various wireless technologies, such as WiFi, RFID & Bluetooth and the actions taken to secure them. Prerequisites: Math 111, CS 162 or equivalent  

CS 372  Operational Cyber Security Essentials   

A hands-on examination of cyber security concepts that cover both the defensive and offensive arenas. This course provides students with foundational technical cyber security skills needed for success in both a Windows and Linux environment. Prerequisite: CS 162 or equivalent. 

CS 373    Foundations of Information Security Management

A survey of the principal topics across the information security field. This course provides students a broad understanding of the field, the terminology, and the industry standards governing it. UWR. Prerequisite: CS 162 or equivalent.

CS 386    System Hardening/Secure Configurations   

An applied study of how to secure Windows and Linux environments. This course provides students the necessary skills to build defensible environments in order to both limit the likelihood of a breach, as well as detect a security incident. Defensive concepts will be paired with the attack scenarios to aid students in understanding why certain actions are preferred. Prerequisite: CS 372

CS 412    Incident Response & Sys Forensics   

A practical examination of how to respond to a security breach and perform system forensics. This course provides students the skills and knowledge necessary to aid during a security breach or malicious activity at an organization. Topics start with the necessary planning preparations and continue through detecting, containing, performing system forensics, and finally documenting and dealing with law enforcement or governing agencies. Prerequisite: CS 372

CS 413    Reverse Engineering/Malware Analysis   

A study of reverse engineering applications with a focus on the analysis of malicious software. This course covers a review of assembly languages, the use of a decompiler & debugger, static & behavioral analysis. Students will understand the tools and methodology used to reverse applications, and the techniques used by malware. Prerequisite: CS 372, CS 314 or equivalent. 

CS 431    Application Security   

A pragmatic study of application security from development through deployment. This course provides students the skills for finding common vulnerabilities in software, identifying deployment and configuration failures, understanding how vulnerable software is exploited and documenting findings for business leaders. Prerequisites: CS 372

CS 433    Offensive Security Tactics & Techniques   

An in-depth examination of the tactics and techniques used by security professionals to assess the defensive posture of an organization, as well as those used by malicious attackers. This course provides students with the necessary skills to perform “red team” and network penetration assessments used in a corporate environment, as well as provide a foundation in threat intelligence. Prerequisite: CS 372 or equivalent.

Faculty

Faculty

Richard Croft, Ph.D.
Associate Professor, came to EOU in 2000. He specializes in educational programming, computing theory, and 3D graphics applications.

T. 541-962-3695
E. rcroft@eou.edu
W. http://cs.eou.edu/rcroft


Jenelle Davis
Adjunct Instructor, came to EOU in 2019. Jenelle is a Computer Science Practitioner for 20 years in Government, Telecommunications, and Consulting. Jenelle has served as a Computer Science Instructor for 14 years. Her specializations include Networking, CyberSecurity, and Application Development.

E. jdavis19@eou.edu


Tim Harrison
Assistant Professor, came to EOU in 2018. Tim was a computer scientist for 30 years and a grades 6-12 computer science teacher for 6 years before coming to EOU. Tim designed and developed tools (software, methods, and training) to improve software development practices for the U.S. defense industry for 15 years. Then, he taught/consulted object-oriented technology for 15 years. Tim’s specialties are object-oriented technology (analysis, design & programming), requirements analysis, programming languages, and computer science education.

O. BH 107D
T. 541-962-3084
E. tcharrison@eou.edu


Khaled Sabha
Adjunct Instructor, came to EOU in 2020. He has over ten years of industrial as well as teaching experience. He is currently a full-time senior lecturer for the University of Wisconsin-Milwaukee (UWM). Khaled’s specialties are computer networking, programming, & cybersecurity.

E. ksabha@eou.edu


Samuel Sambasivam, Ph.D.
Adjunct Instructor, came to EOU in 2020. He has served in higher education for over 33 years in both face-to-face and online education. He has done extensive research, written for publications, and given presentations in computer science and mathematics. His current research interests include Big Data Analytics, Cybersecurity, Artificial Intelligence, E-learning Technologies, Software Engineering, and Client/Server Applications, Genetic Algorithms, and XML Database Applications. He has taught a variety of Computer Science courses in both undergraduate and graduate programs

E. ssambasivam@eou.edu


Greg Schulberg
Adjunct Instructor. Greg has a background in electrical engineering and worked for many years as an engineer, and later as a professional software developer a for large telecommunications company. His specialties in computer science are software engineering and architecture. He is currently a full-time faculty member in the math and computer science department at Blue Mountain Community College.

E. gschulbe@eou.edu


Steve Sheehy
Assistant Professor. Steve was a software engineer for 24 years before coming to EOU, building software for the telecommunications industry. Steve’s specialties are object-oriented programming, software engineering, and database management systems.

O. BH 107B
T. 541-962-3065
E. ssheehy@eou.edu


Kiel Wadner
Senior Instructor II, came to EOU in 2019. With a background in software engineering for enterprise environments, Kiel is an information security professional. He specializes in cyber security, spanning both the offensive and defensive arenas.

O. BH 107A
T. 541-962-3703
E. wadnert@eou.edu


Brian Scavatto
Adjunct Instructor, came to EOU in 2020. Brian is a cybersecurity practitioner with over 10 years of experience in local/federal law enforcement, the U.S. Intelligence Community, and most recently within the financial services sector. Brian has been instructing courses in computer science and cybersecurity for six years. Brian’s areas of expertise are incident response, cyber risk, cyber threat intelligence, insider threat, and network defense.

E. bscavotto@eou.edu


Computer Labs

EOU houses multiple computer lab options across campus with 24-hour access. These labs are used in the classroom setting but are also available to students to work at an independent clip on projects relating to Computer Science, Multimedia, Art and more. EOU strives to maintain access to cutting edge hardware and software to empower our students with the tools they need to be successful.

EOU Computer Science Video Game Design
Computer Science at EOU

Find a career

EOU's degree in Computer Science will set the stage for a career in Computer Programming, Software Development, Systems Analysis and many more. These are all highly in demand in both public and private sector.

EOU graduates are currently working for Google, Apple, HP or seeking further expertise in graduate programs.

Engaging courses

Student taking the 3D Graphics Course

Courses include Foundations of Computer Science I & II, Data Structures, Operating Systems, Computer Architecture, Artificial Intelligence, Mobile App Development, 3D Graphics and Animation and more.

Capstone

Capstone projects help culminate student learning into a functional and professional piece of work. One capstone that would get folks' attention is the game "Stampede!" which Anthony Hilyard developed as his capstone a couple of years back. It is available for Droid phones from the Google App store here.

About the Computer Science Program at EOU

Eastern Oregon University’s Computer Science department is a great choice if you are interested in programming, IT management, data analysis, system administration, software engineering, cybersecurity, or advanced study. After obtaining your degree, you will be equipped with the skills to work in the private or public sector. Our program’s curriculum enables you to personalize your degree depending on your desired career trajectory.

Our computer science program is also unique due to its individualized instruction and faculty who are experts in both teaching and technology. Graduates from the program go on to work for small and large businesses, well-known corporations, colleges and universities and private companies. Your skills will be sought after due to the rise in cloud computing, storage of big data and the need for greater information security. With your bachelor’s in computer science, cybersecurity, or IT management from EOU, your opportunities for a career are plentiful.


Have Credits to Transfer?

The option to transfer credits makes your program more affordable and can help you get on the job sooner. We allow up to 135 credits from previous college coursework to be transferred into EOU. All EOU majors require a minimum of 20 EOU credits.

To see how your credits will transfer, use our Transfer Equivalency tool.

Become an ASTEO Scholar

ASTEO is funded by a grant from the National Science Foundation’s S-STEM Program and supports students intending to join industry or attend graduate school after finishing their undergraduate degrees.


Scholarship Application

Eastern Edge

Discover your true nature with the Eastern Edge. Learn more.