Skip Navigation
Fall 208 Courses
- CIS 110 Information Processing
- Integration of technology and information systems for creation, storage, and dissemination of information used in decision-making. Labs cover spreadsheets, Telnet, FTP, website creation tools.
- CIS 111 Web Programming
- Principles and practices of programming for the web using a scripting language: basic concepts of problem analysis, program design, implementation, and testing; web application architectures.
- CIS 122 Intro to Programming and Problem Solving
- Computational problem solving, algorithm design, data structures, and programming using a multi-paradigm programming language. Introduces techniques for program design, testing, and debugging.
- CIS 170 Science of Computing
- An introduction to the essential concepts and ideas of computing: hardware, algorithms, programming and networks.
- CIS 210 Computer Science I
- Basic concepts and practices of computer science. Topics include algorithmic problem solving, levels of abstraction, object-oriented design and programming, software organization, analysis of algorithm and data structures. Sequence.
- CIS 314 Computer Organization
- Introduction to computer organization and instruction-set architecture--digital logic design, binary arithmetic, design of central processing unit and memory, machine-level programming.
- CIS 399 Head First Ruby
- This course will look at both OOP and more exotic programming concepts in the language Ruby. Students are expected to have passed CIS 212 or show equivalent experience.
- CIS 407/507 Programming Competition
- Repeatable when the topic changes. Opportunity to study in greater depth specific topics arising out of other courses.
- CIS 420/520 Automata Theory
- Provides a mathematical basis for computability and complexity. Models of computation, formal languages, Turing machines, solvability. Nondeterminism and complexity classes.
- CIS 422/522 Software Methodology
- Technical and nontechnical aspects of software development, including specification, planning, design, development, management and maintenance of software projects. Student teams complete projects.
- CIS 425 Principles of Programming Languages
- Syntax and semantics. Scope rules, environments, stores, denoted and expressed values, procedures, and parameters. Definitional interpreters. Types, overloading, parametric polymorphism, and inheritance. Varieties of abstraction.
- CIS 432/532 Intro to Computer Networks
- Principles of computer network design. Link technologies, packet switching, routing, inter-networking, reliability. Internet protocols. Programming assignments focus on protocol design.
- CIS 443/543 User Interfaces
- Introduction to user interface software engineering. Emphasis on theory of interface design, understanding the behavior of the user, and implementing programs on advanced systems.
- CIS 451/551 Database Processing
- Fundamental concepts of DBMS. Data modeling, relational models and normal forms. File organization and index structures. SQL, embedded SQL, and concurrency control.
- CIS 471/571 Introduction to Artificial Intelligence
- Basic themes, issues, and techniques of artificial intelligence, including agent architecture, knowledge representation and reasoning, problem solving and planning, game playing, and learning.
- CIS 607 Network Research Seminar
- We will review a collection of interesting papers related to various aspects of networking. In each session, one student presents one (or two) paper(s) and leads the discussion. The student who presents a paper should submit a good summary of the paper to our paper review archive, called paperQ. All other students should read the paper prior to class and actively contribute to in-class discussion.
- CIS 610 Teaching Effectiveness Seminar
- This course is intended:
- to be taken by all new CIS GTFs
- to provide an array of strategies to use during your GTF and teaching experience while you are at UO and after you leave
- to encourage you to become more aware of how you teach and how to teach more effectively
- to provide a forum in which you can share teaching problems and ideas with other GTFs
- CIS 630 Distributed Systems
- Principles of distributed computer systems: interprocess communication, distributed file systems, distributed timing and synchronization, distributed programming, transactions, process scheduling, distributed shared memory.
- CIS 640 Writing in Computer Research
- Students learn to provide and accept constructive criticism of writing samples in a workshop format.
- CIT 381 Database Systems
- Introduction to database systems, emphasis on database design and access. Database concepts, data modeling, SQL, connecting database to web.