Computer Science

Chairperson: Paul De Palma
Professors: P. De Palma, K. Yerion
Associate Professors: D. Hughes, C. Smith
Assistant Professor: P. Crowley

The computer science program at Gonzaga University is built upon a foundation of mathematics, natural science, intensive programming, computer architecture, and the liberal arts. The program offers a B.S. in Computer Science, achieved through a broad range of advanced computer science topics. All seniors participate in either a large software engineering or group research project, completed under the guidance of a faculty member and a project sponsor.

Faculty research interests include remote sensor networks, robotics, genetic algorithms, computational linguistics, mathematical modeling, and scientific data management. Select students can participate in these and other projects through the Gonzaga University Center for Evolutionary Algorithms, the Intel Corporation Computational Sciences Laboratory, the Sensor Networks and Robotics Laboratory or directly with a faculty mentor. Students are encouraged to pursue summer research or internships. Many of our students secure summer research funding through the National Science Foundation-sponsored Research Experience for Undergraduates program. Others intern in the computer industry, some with companies that regularly work with our department.

The department has several laboratories and a multiuser Linux server. The laboratories include a microcomputer lab with machines running Linux and Windows, a lab used in the senior software engineering and group research, a sensor networks and robotics lab, and a computer cluster composed of 512 Intel quad and dual core blade servers. All computer labs on campus, as well as the dormitory rooms, are connected to the campus-wide network and from there to the Internet. The department also sponsors a student chapter of the Association for Computing Machinery, the world’s oldest and largest organization of computer scientists.

B.S. in Computer Science: 128 credits
I. Computer Science/Engineering Requirements: 35 credits
Lower Division
CPSC 121 Computer Science I 3 credits
CPSC 122 Computer Science II 3 credits
CPSC 223 Algorithms and Abstract Data Structures
3 credits
CPSC 224 Object-Oriented and Event Programming 3 credits
CPEN 230/CPEN 230L Introduction to Digital Logic 4 credits
CPEN 231/CPEN 231L Microcomputer Architecture and Assembly Language Programming 4 credits
Upper Division
CPSC 326 Organization of Programming Languages 3 credits
CPSC 330 Software Engineering 3 credits
CPSC 346 Operating Systems 3 credits
One of the following two courses:
CPSC 491 Software Engineering Senior Group Design I
CPSC 493 Group Research I
2 credits
One of the following two courses:
CPSC 492 Software Engineering Senior Group Design II
CPSC 494 Group Research II
3 credits
CPSC 499 Comprehensive 1 credit
II. Computer Science Electives: 9 credits
CPSC 300 or 400 level courses
Three 300 or 400 level CPSC courses 9 credits Up to two upper division Computer Engineering (CPEN) courses may be taken in place of CPSC electives.
9 credits
III. Mathematics and Science: 32 credits
BIOL/CHEM/PHYS
any two semester sequences normally taken by science
majors.
8 credits
Any course from PHYS, CHEM, BIOL normally taken by majors and with a lab component 4 credits
MATH 157 Calculus I 4 credits
MATH 258 Calculus II 4 credits
MATH 231 Discrete Structures 3 credits
MATH any two 300 or 400 level courses 6 credits
MATH/BIOL/CHEM/PHYS any 300 or 400 level
course normally taken by science majors
3 credits

IV. Computer Science Core: 49 credits

In addition to the University Core requirements, the Department of Computer Science requires that its students take courses in history, fine arts, social science, foreign culture, and social justice.

  1. a. History (6 credits): HIST 101 and either HIST 102 or HIST 112 in their first year. If they are unable to complete all six 100-level HIST credits in their first year, HIST 201 or HIST 202 may be substituted for one 100-level course after the first year.
  2. b. Fine Arts (3 credits): one course in either VART, MUSC, or THEA from courses approved by Dean of Arts and Sciences.
  3. c. Literature (3 credits): one British or American literature course (ENGL 201 - ENGL 285).
  4. d. Social Science (6 credits): CRIM 101, ECON, SOCI, POLS, or PSYC: two courses from these departments.
  5. e. Foreign Language or Culture (3 credits): one course in any foreign language (classical or modern) or one (foreign culture) course approved by the Dean of Arts and Sciences. Foreign-language speaking students from foreign cultures who have completed the nine English core credits at Gonzaga prior to their fourth year (last thirty credits) may petition the Associate Dean of Arts and Sciences for a waiver of the foreign language or culture requirement.
  6. f. Social Justice (3 credits): One course on Social Justice issues related to experiences of difference (like race, class, gender, ethnicity or sexual orientation), from courses approved by the Dean of Arts & Sciences; (may be combined with other core or major requirements).
V. School of Engineering and Applied Science Core: 28 credits
See “The Core Curriculum of the School of Engineering and Applied Science,” Sections I, II, III, and V
VI. Other Electives: 3 credits
Any course or combination of courses from anywhere in the University 3 credits

Minor in Computer Science (18 credits)
CPSC 121 Computer Science I 3 credits
CPSC 122 Computer Science II 3 credits
CPSC 223 Algorithms and Abstract Data Structures 3 credits
CPSC Electives (CPSC 224 or above) 9 credits


The SEAS core curriculum represents a common body of knowledge. The engineering programs core consists of fifty-three credits which are common to and required of all engineering degree programs in the school: the first thirty-two credits (of which there is a more complete description in the General Degree Requirements and Procedures section of this catalogue) form the University core requirement while the remaining twenty-one credits are required by engineering degree programs.

All undergraduate students are subject to the provisions of this core; transfer students, however, should consult the General Degree Requirements and Procedures section of this catalogue for possible modifications to the philosophy and religious studies requirements listed below. Substitutions for discontinued courses are required and authorized by the proper University authorities. The University and School core requirements are grouped into the following categories.

University requirements
  1. Thought and Expression (7 credits): ENGL 101, SPCO 101, and PHIL 101 (preferably taken in the same semester).
  2. Philosophy (9 credits): PHIL 201, PHIL 301, and PHIL 400 level elective.
  3. Religious Studies (9 credits): RELI 100, RELI 200, and RELI 300 levels: one elective from each level.
  4. Mathematics (4 credits): one MATH (not CPSC) course at the 100 level or above: engineering students must use MATH 157.
  5. English Literature (3 credits): ENGL 102, ENGL 103H, ENGL 105 or ENGL 106.
Engineering program specific:
  1. Mathematics (11 credits): MATH 258, MATH 259, MATH 260.
  2. Physics (4 credits): PHYS 103, PHYS 103L.
  3. Chemistry (4 credits): CHEM 101, CHEM 101L.
Computer Science program specific:
  1. Mathematics (17 credits): MATH 157, MATH 231, MATH 258, 2 300/400 level electives.
  2. Lab Science (12 credits): Students are encouraged to take 16 credits.
  3. History (6 credits): see program description section.
  4. Fine Arts (3 credits): see program description section.
  5. Literature (3 credits): see program description section.
  6. Social Science (6 credits): see program description section.
  7. Foreign Language or Culture (3 credits): see program description section.
  8. Social Justice (3 credits): see program description section.