My.EOU Portal Current Students Faculty/Staff
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.
Hands-on workshops in chemistry, art, exercise science and eSports at the Tech Expo on April 2 encourage regional high school students to get involved in technology.
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 standing
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.
Adjunct Instructor, came to EOU in 2020. Gene started programming on a mainframe computer (using Natural/Adabas) early in his career, but has gradually incorporated languages such as C/C++, Java, Kotlin and a few others. Always tinkering, he is constantly learning new technologies and languages, and really gets a kick out of helping his students to do the same.
Richard Croft, Ph.D.
Associate Professor, came to EOU in 2000. He specializes in educational programming, computing theory, and 3D graphics applications.
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.
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
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
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
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
“As an online student, my experience at Eastern Oregon University has been positive. The process of applying for Chapter 31 went seamlessly and I encountered nothing but willing assistance along the way. My VA advisor has pointed me in the right direction whenever I have encountered difficulties with class selection and registration. My academic advisors check in with me on a regular basis to make sure I have all that I need to be successful in my pursuit of a Computer Science degree. Additionally, when I had a medical situation recently, all were more than supportive and allowed me time to recover and begin work in my classes as I got better. My class instructors have been extremely helpful as well. I am currently not able to maintain a full load of classes, but there was never any discussion of me having to drop out, and I have been able to reduce my credit load to fit my situation. I have no doubt that with their continued support I will be able to fully accomplish my goal of obtaining a Computer Science degree at EOU. Much respect goes out from me to all the Veteran Advisors and Counselors who have helped me along the way.”
John Kirk, U.S. Army VeteranComputer ScienceNorth Bend, OR
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.
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 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.
Students in computer science will learn to design and develop software systems for industrial, scientific, commercial and educational applications. They will acquire an understanding of programming, analysis, data structures, algorithms and operating systems. Graduates will be prepared to work in the private or public sector, or to proceed to advanced study.
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.
Discover your true nature with the Eastern Edge. Learn more.