The Department of Computer and Information Science offers a major and a minor in computer and information science, a major in mathematics and computer science, and a minor in computer information technology.
The computer and information science major is intended for students who want to study computers and computation with strong mathematical and scientific foundations. The mathematics and computer science major emphasizes formal and abstract problem solving complemented by computational methods and computer technologies. This program, administered jointly with the Department of Mathematics, is described in the Mathematics and Computer Science section of this catalog. Both of these majors lead to the bachelor of arts (BA) or bachelor of science (BS) degrees.
Students majoring in computer and information science may choose to focus their studies in one of several areas of specialization, including in-depth tracks within computer science as well as interdisciplinary tracks involving courses from other departments. The current computer science tracks include foundations, software development, computer networks, and database and informatics. The current interdisciplinary tracks include computational arts: multimedia, business information systems, bioinformatics, and computational biology. These tracks prepare students for careers in the private or public sector as well as for graduate-level study.
All tracks build on the standard CIS core requirements. In addition, each track specifies a set of coordinated choices for fulfilling upper-division computer-science and other electives requirements. Students interested in specializing in a track should contact their advisor as early as possible.
Preparation. High school students who plan to major in computer and information science should pursue a strong academic program, including substantial work in mathematics and the sciences. Courses in algebra, geometry, trigonometry, and more advanced topics should be included. Substantial experience in expository and technical writing is highly desirable. Courses in computer programming or computer technology are useful but not required. Upon arrival at the university, freshmen should consult with a CIS advisor to find the entry-level course best suited to the student’s background.
Transfer and Second Baccalaureate Students
Transfer and second baccalaureate students should consult the online Interactive Transfer Catalog as well as a CIS advisor to determine whether computer science, mathematics, and science courses they have taken fulfill the major requirements. Completing only general-university requirements prior to transferring to the University of Oregon may not be sufficient preparation to complete a CIS degree in two years.
Students attending community college in Oregon are encouraged to obtain the Associate of Arts Oregon Transfer degree before entering the University of Oregon. While earning this degree, community college transfer students should take discrete mathematics, calculus, and computer science.
Major Requirements
Computer and information science majors must complete at least 56 credits of CIS courses, of which 24 must be earned in residence at the University of Oregon. In addition, majors must complete at least 24 credits in mathematics, 12 credits in the sciences, 4 credits of technical or business writing, and at least 8 additional credits (depending on the student’s chosen track). The specific requirements for the CIS major fall in five categories: core courses, track courses, mathematics, writing, and science.
Core Courses
Lower-Division Core
Computer Science I,II,III (CIS 210, 211, 212) is taken concurrently with Elements of Discrete Mathematics I,II,III (MATH 231, 232). Students must earn no grade below C for automatic advancement to the upper-division core courses.
Upper-Division Core
Computer and information science majors must take the following courses for a letter grade: Intermediate Data Structures (CIS 313), Computer Organization (CIS 314), Intermediate Algorithms (CIS 315), C/C++ and Unix (CIS 330), Operating Systems (CIS 415), Software Methodology (CIS 422), and Principles of Programming Languages (CIS 425).
Mathematics Core
Students must take 8 graded credits from among these three sequences (students taking the computational arts: multimedia track should consult the track description for the mathematics core requirement): Calculus I,II (MATH 251, 252) or Calculus with Theory I,II (MATH 261, 262) or Calculus for the Biological Sciences I,II (MATH 246, 247). Students also choose 8 credits from the following: Elements of Discrete Mathematics III (MATH 233), Calculus III (MATH 253), Elementary Linear Algebra (MATH 341), and Statistical Methods I (MATH 425).
Science Core
Majors must take at least 12 credits in one of the following options (students taking the bioinformatics or computational biology tracks should consult the track descriptions for science core and track requirements):
- General Physics (PHYS 201, 202, 203) or Foundations of Physics I (PHYS 251, 252, 253). Students are encouraged to complete the accompanying lab courses. Physics is required for networks track students.
- General Chemistry (CH 221, 222, 223) or Honors General Chemistry (CH 224H, 225H, 226H). Students are encouraged to complete the accompanying lab courses.
- Introduction to Chemical Principles (CH 111), The Chemistry of Sustainability (CH 113), General Chemistry (CH 221) or Honors General Chemistry (CH 224H), and General Biology I (BI 211) and either General Biology II (BI 212) or General Biology III (BI 213).
- Psychology. Mind and Brain (PSY 201), Mind and Society (PSY 202), and Statistical Methods in Psychology (PSY 302).
- Geography. The Natural Environment (GEOG 141) and two from Climatology (GEOG 321), Geomorphology (GEOG 322), or Biogeography (GEOG 323).
- Geological Sciences. Earth’s Interior Heat and Dynamics (GEOL 201), Earth Surface and Environmental Geology (GEOL 202), Evolution of the Earth (GEOL 203).
Writing Core
In addition to the university’s writing requirement, CIS majors must take either Scientific and Technical Writing (WR 320) or Business Communications (WR 321).
Computer Science Tracks
In addition to the core CIS, mathematics, science, and writing courses, computer and information science majors must complete a set of track requirements.
Foundations Track
The foundations track is the most general track, allowing a student to choose a set of electives tailored to his or her interests and intended choice of career.
Electives. Foundations track students choose a minimum of 16 credits of upper-division CIS courses from the approved list (available from the CIS department office and online) or with the consent of a CIS advisor. In addition to the CIS electives and mathematics core, students choose 8 credits of mathematics electives selected from MATH 256, 281–282, 315, 341–342, 346, 351–352, 391–393, 411–415, 420–422, 425,431–433, 441, 444–446, 456–457, 461–466; CIS 413, 420, or 427.
Software Development Track
The software development track prepares students for careers in software engineering, software project management, software quality assurance, and other areas involving the creation of software. Course work focuses on solving problems related to the cost of development as well as the quality of the software delivered in complex software projects.
CIS Required Courses. Software Methodology II (CIS 423) and User Interfaces (CIS 443); one large programming project course chosen from Computational Science (CIS 455) or Introduction to Compilers (CIS 461); one theory course chosen from Advanced Data Structures (CIS 413), Automata Theory (CIS 420), or Introduction to Logic (CIS 427).
Electives. Students choose a minimum of 8 additional credits of upper-division CIS courses from the approved list (available from the CIS department office and online) or with the consent of a CIS advisor.
Computer Networks Track
The computer networks track prepares students for careers as network systems administrators, network protocol developer-programmers, or network security specialists in a wide range of environments, including educational institutions, business enterprises, and government agencies, as well as for advanced graduate studies and research in the field of computer networks. Course work encompasses most aspects of network theory and practice.
Science. To fulfill the core science requirement, students take General Physics (PHYS 201, 202, 203) or Foundations of Physics I (PHYS 251, 252, 253). Students are encouraged to complete the accompanying lab courses.
CIS Required Courses. Introduction to Networks (CIS 432), Computer and Network Security (CIS 433), and Modeling and Simulation (CIS 445).
Electives. Students choose a minimum of 12 additional credits of upper-division CIS courses from the approved list (available from the CIS department office and online) or with the consent of a CIS advisor.
Database and Informatics Track
The database and informatics track prepares students for careers in database application programming, database design, doctoral work in business administration, and graduate work in informatics and database theory. Course work includes data structures, data architecture, and data mining.
CIS Required Courses. Database Processing (CIS 451), Database Issues (CIS 452), and Data Mining (CIS 453).
Electives. Students choose a minimum of 12 additional credits of upper-division CIS courses from the approved list (available from the CIS department office and online) or with the consent of a CIS advisor.
Interdisciplinary Tracks
Computational Arts: Multimedia Track
The computational arts: multimedia track, designed for computer and information science majors who plan to work in the field of multimedia arts, prepares the student for artistic and technical aspects of this area.
Mathematics. To fulfill the core mathematics requirement, students must take 12 credits from among these three sequences: Calculus for the Biological Sciences I,II (MATH 246, 247) or Calculus I,II (MATH 251, 252) or Calculus with Theory I,II (MATH 261, 262); and at least one of Introduction to Methods of Probability and Statistics (MATH 243), Calculus III (MATH 253), Calculus with Theory III (MATH 263), or Elementary Linear Algebra (MATH 341).
CIS Required Courses. Introduction to Computer Graphics (CIS 441), User Interfaces (CIS 443).
Electives. Students choose a minimum of 12 additional credits of upper-division CIS, music, or digital arts courses from the approved list (available from the CIS department office and online) or with the consent of a CIS advisor.
Minor. Students complete a minor in multimedia from the Department of Art in the School of Architecture and Allied Arts (28 credits; fulfilled under the supervision of an art department advisor).
Business Information Systems Track
Graduates in the business information systems track are qualified to work as analysts, managers, developers, or consultants, and to enter leadership-development programs. Completion of this track, combined with professional work experience and economics courses, prepares students to enter the Lundquist College of Business MBA program at the University of Oregon, and MBA programs at other universities.
CIS Required Courses. Introduction to Networks (CIS 432), Database Processing (CIS 451), Computer Ethics (CIS 490).
Electives. Students choose a minimum of 12 additional credits of upper-division CIS courses from the approved list (available from the CIS department office and online) or with the consent of a CIS advisor.
Minor. Students complete a minor in business administration from the Lundquist College of Business (24 credits; fulfilled under the supervision of a business college advisor).
Bioinformatics Track
The bioinformatics track prepares students to apply computational and mathematical techniques to the analysis and management of biological data. Course work in this track combines depth in applied and formal aspects of computer science with rigorous training in biology.
Science. To fulfill the core science requirement, students take General Biology I,III,IV (BI 211, 213, 214). Before you take the biology sequence, you must fulfill the appropriate chemistry prerequisites (as many as 12 additional credits). BI 212 is not required for this track.
CIS Required Courses. Database Processing (CIS 451), Data Mining (CIS 453), and Bioinformatics (CIS 454).
Upper-Division Electives. Students choose a minimum of 12 additional upper-division electives from CIS, biology, or mathematics from the approved list (available from the CIS department office and online) or with the consent of a CIS advisor.
Computational Biology
The computational biology track prepares students to apply computational techniques from computer science to address scientific problems in biology such as gene sequencing, protein analysis, and evolutionary modeling. Course work in this track combines depth in applied and formal aspects of computer science with rigorous training in biology.
Science. To fulfill the core science requirement, students take one of the CIS-approved biology sequences: BI 211, 212, 213 or BI 211, 212, 214 or BI 281H, 282H, 283H. Before you take a biology sequence, you must fulfill the appropriate chemistry prerequisites (as many as 12 additional credits).
Science Additional Required Course. Organic Chemistry (CH 331).
CIS Required Courses. Modeling and Simulation (CIS 445), Data Mining (CIS 453), and Computational Science (CIS 455).
Upper-Division Electives. Students choose a minimum of 12 additional upper-division electives from CIS, biology, or mathematics from the approved list (available from the CIS department office and online) or with the consent of a CIS advisor.
Programming Experience
Students who take Computer Science I (CIS 210) are expected to have prior programming experience from a high school course, through employment, or in a course such as Introduction to Programming and Algorithms (CIS 122). Students who are unsure about their level of preparation should meet with a CIS advisor.
Sequence of Courses. Students with sufficient programming experience should take Elements of Discrete Mathematics I,II (MATH 231, 232) and Computer Science I,II,III (CIS 210, 211, 212) in the freshman year. Students with little or no programming experience should take Explorations in Computing (CIS 105) and Introduction to Programming and Algorithms (CIS 122) in the freshman year, and the Elements of Discrete Mathematics and Computer Science sequences in the sophomore year.
Major Progress Review and Major in Good Standing
Each major must meet with his or her advisor and file the Major Progress Review form after completing Intermediate Data Structures (CIS 313) and Computer Organization (CIS 314). Mathematics and CIS core courses used to satisfy major requirements must be taken for letter grades and passed with grades of C– or better. Data Structures Laboratory (CIS 323) is taken pass/no pass (P/N) concurrently with CIS 313. Other courses used to satisfy the major requirements may be taken for letter grades or pass/no pass. Grades of C– or better or P must be earned in these courses. At least 12 of the upper-division credits applied to the degree must be taken in residence at the university. A student who receives two grades below C– in the upper-division core may be removed from the major.
Prerequisites
Except as stated in the course description, prerequisites for CIS core courses must be completed with grades of C– or better. Students who can present evidence of equivalent academic experience may submit a petition to the Undergraduate Education Committee to waive a prerequisite.
Mathematics and Computer Science
The Department of Computer and Information Science and the Department of Mathematics jointly offer an undergraduate major in mathematics and computer science, leading to a bachelor of arts or a bachelor of science degree. This program is described in the Mathematics and Computer Science section of this catalog. This major prepares students for a wide range of careers in the high tech industry, for advanced graduate study, and for careers as middle school and high school teachers.
Honors Program
Students with a GPA of 3.50 or higher in computer and information science and a cumulative GPA of 3.00 or higher are encouraged to apply to the department honors program after completing CIS 313, 314, 315, and 323. The application form is available in the department office. To graduate with departmental honors, a student must write a thesis under the supervision of a faculty member.
Internships
Practical work experience in the software industry is seen as a valuable complement to academic course work. The department works with students to place them in internship positions in the summer and throughout the academic year. Students may also use the services of the UO Career Center and other agencies to identify internship opportunities. Majors may receive academic credit for internships. To earn upper-division elective credit for an internship, the work experience must be at a technical level beyond CIS 313 or 323 and be sponsored by a CIS faculty member. A contract signed by the faculty sponsor, internship supervisor, and the student must be filed with the department before the internship begins.
Research
Faculty members in the computer and information science department receive grants from government, industry, and private sources to conduct research in their areas of expertise. Undergraduate majors are encouraged to take part in the various research groups in the department. Most students begin approaching faculty members for such opportunities while taking the 300-level courses. Research can be used to fulfill upper-division electives, as part of an honors thesis, or in some cases as a paid internship.
Awards and Honor Societies
The Erwin and Gertrude Juilfs Scholarship in Computer and Information Science, in honor of Erwin and Gertrude Juilfs, is awarded to one or more students who show exceptional promise for achievement as evidenced by grade point average, originality of research, or other creative activities.
The Geoffery Eric Wright Outstanding Junior Award, in honor of CIS student Geoffery Wright, is a scholarship for students displaying high-quality academic performance, commitment to learning, and a promise of further outstanding achievement in computer and information science and its applications.
The J. Donald Hubbard Scholarship in Computer and Information Science, in honor of J. Donald Hubbard, recognizes an undergraduate or graduate student who shows outstanding promise in the fields of computer-human interaction, computer graphics, or multimedia.
The Phillip Seeley Scholarship in Computer and Information Science has been established as a permanent endowment to provide a source of income supporting a scholarship for outstanding undergraduate CIS students. This scholarship is based on overall quality of academic work, commitment to learning, and potential for further academic achievemnt. Preference is given to resident Oregon students with financial need, as determined by the UO Office of Student Financial Aid and Scholarships.
Students with outstanding academic accomplishments may be invited to become members of Upsilon Pi Epsilon, the international honor society in computer science.
Minor Requirements
Computer and Information Science
The minor in computer and information science introduces the theories and techniques of computer science and develops programming skills that are applicable to the student’s major. It is a strong complement to a major in any of the sciences and in related fields such as multimedia arts. Students from all majors have found their career opportunities enhanced through the CIS minor.
Before enrolling in upper-division courses, students planning a minor in computer and information science must file an application form with the department. Each student should consult with a CIS faculty advisor to plan the minor program.
The CIS minor requires completion of 32 credits—24 in computer science and 8 in mathematics. Courses applied to the CIS minor must be completed with grades of C– or better. CIS 409 and CIS 323 may not be used to fulfill requirements for the minor.
| Lower-Division Courses | 20 credits |
| Computer Science I,II,III (CIS 210, 211, 212) | 12 |
| Elements of Discrete Mathematics I,II (MATH 231, 232) | 8 |
| Upper-Division Courses | 12 credits |
| Intermediate Data Structures (CIS 313) | 4 |
| Upper-division electives | 8 |
Computer Information Technology
The minor in computer information technology (CIT) prepares students to work with evolving technologies for work environments that require development and management of web applications, databases, computer networks, open-source platforms, and cloud computing. It provides practical experience in understanding the tools and technologies of the computing field. It goes well with majors in the professional schools such as business and journalism and is an excellent match with almost any major on campus.
Before enrolling in CIT upper-division courses, students planning a minor in computer information technology must file an application form with the department. Each student should consult with an assigned CIT faculty advisor to plan the minor program. The minor requires 24 credits.
Lower-division courses must be completed with grades of B– or better. Upper-division courses must be taken in sequence and are offered only once a year. Upper-division courses must be completed with grades of C– or better.
| Lower-Division Courses | 12 credits |
| Digital Information Processing (CIS 110) | 4 |
| Web Programming (CIS 111) | 4 |
| Advanced Business Systems (CIT 281) | 4 |
| Upper-Division Courses | 12 credits |
| Database Systems (CIT 381) | 4 |
| Information Architectures and Intranets (CIT 382) | 4 |
| Enterprise Networks (CIT 383) | 4 |