University of Portland Bulletin 2012-2013

Computer Science, B.S.C.S.

Computer science is a dynamic field of study and practice that encompasses many aspects including programming languages, data structures, computer organization, theory, and software design and development.

The faculty has established a set of program educational objectives which are listed below.

Program Educational Objectives:

The computer science program prepares graduates who will:

  1. Be successful as practicing professionals in diverse career paths or in graduate school.
  2. Distinguish themselves in breadth of perspective and the ability to solve complex problems.
  3. Be effective communicators and team members, with many assuming leadership roles.
  4. Be active in their profession and participate in continuing education opportunities to foster personal and organizational growth.
  5. Demonstrate a concern for justice, ethical behavior, and societal improvement through participation in professional and civic organizations.

The program of study provides both breadth and depth of topics in a progression of course work, beginning with a foundation of mathematics and computer science fundamentals during the freshman and sophomore years. Courses during the junior year provide additional theoretical and practical background in computer science. Capstone course work during the senior year enables students to pursue their areas of interest through in-depth analysis, experimentation, and design. Development of written and oral communication skills and teamwork are incorporated as important components of the educational experience.

The computer science program leads to a bachelor of science in computer science degree. The program is accredited by the Computing Accreditation Commission of ABET.

See Core and College Requirements. (For CS majors, the upper-division theology elective may be a Theological Perspectives (THEP) class. If a student uses a single THEP course to satisfy two core requirements, three additional credits of humanities and social sciences, approved by the CS program chair, must be taken.)

Degree Requirements

Computer Science Requirements — 93-94 hours

CS 203Introduction to Computer Science

3

CS 273Computer Science Laboratory

1

CS 301Object-oriented Design

3

CS 303Data Structures I

3

CS 304Data Structures II

3

CS 352Programming Languages

3

CS 371Object-oriented Design Laboratory

1

CS 373Data Structures Laboratory

1

CS 374Computing Systems Laboratory

1

CS 400Seminar

2

CS 411Analysis of Algorithms

3

CS 441Software Engineering

3

CS 446Operating Systems

3

CS 451Theory of Computation

3

CS 452Compiler Design

3

CS 480Senior Design Project Preparation

3

CS 481Senior Design Project

3

EE 231Logic Design

3

EE 333Computer Organization

3

EGR 110Introduction to Engineering

2

MTH 201Calculus I

4

MTH 202Calculus II

4

MTH 311Discrete Structures

3

MTH 341Introduction to Linear Algebra

3

MTH 461Probability and Statistics I

3

PHY 204General Physics Lecture and Lab

4

PHY 205General Physics Lecture and Lab

4

Computer Science electives

6

Applied Elective

3

Technical Elective

3

Restricted science elective and laboratory

4

EGR 360Analysis of Engineering Data

2

Or

MTH 361Applied Statistics I

3

Total Credit Hours:93-94

EGR 110: For transfer students who have not had an Introduction to Engineering course, the dean may approve the substitution of another technical course, provided these students transfer in 30 or more hours of technical courses. 

Computer science, applied, and technical electives: Each computer science elective must be an upper-division CS course. The technical elective may be an upper-division CE, CS, EE, EGR, ME, or MTH course or a 200-level EE course. The applied elective may be any course approved by the student’s advisor as being relevant to their future career.

Restricted science elective and laboratory: BIO 206/276, CHM 207/277, or PHY 306/376.

Total Credit Hours: 123-124