Computer Science
Chairperson: Kathie Yerion
Professors: P. De Palma, K. Yerion
Associate Professors: D. Hughes (Emeritus)
Assistant Professor: S. Bowers, Y. Zhang
The Department of Computer Science offers a B.S. in Computer Science and jointly administers the B.S. in Computer Engineering with the Department of Electrical Engineering. The computer science program is built upon a foundation of mathematics, natural science, intensive programming, computer architecture, and the liberal arts. 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, wireless mobile networks, robotics, genetic algorithms, speech recognition, mathematical modeling, scientific data management, database systems, cloud computing, and computer security. 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 courses, a sensor networks and robotics lab, and a computer cluster composed of 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 sponsors two student organizations: a chapter of the Association for Computing Machinery, the world's largest and oldest organization of computer scientists, and a chapter of Upsilon Pi Epsilon, the international honor society for computer science and related disciplines.
Computer Science majors can graduate with departmental honors if they have fulfilled all computer science degree requirements, achieved a grade point average of at least 3.50 in their CPSC courses needed for a major in Computer Science, written a senior thesis under the supervision of a Computer Science faculty member, and successfully completed CPSC 495 and 496.
Computer Engineering
The Departments of Computer Science and Electrical Engineering jointly administer the B.S. in Computer Engineering program. Computer Engineering combines computer science and electrical engineering. Computer engineers develop computer hardware, software, and especially the kinds of embedded systems found in cell phones, industrial control devices, and medical instruments. See the Undergraduate Catalog 2011-2012 entry "Computer Engineering" for a full description of the program.
B.S. in Computer Science: 129 credits
| I. Computer Science Requirements: 27 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 |
| II. Engineering Requirements: 9 credits |
|
| CPEN 230/CPEN 230L Introduction to Digital Logic | 4 credits |
| CPEN 231/CPEN 231L Microcomputer Architecture and Assembly Language Programming | 4 credits |
| ENSC 100 Engineering Seminar | 1 credit |
| Upper Division | |
| CPSC 326 Organization of Programming Languages | 3 credits |
| CPSC 346 Operating Systems | 3 credits |
| One of the following two courses: CPSC 351 Theory of Computation CPSC 450 Design and Analysis in Computer Algorithms |
3 credits |
| One of the following two courses: CPSC 491 Software Engineering Senior Group Design I CPSC 493 Group Research I |
3 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 | 0 credit |
| III. Computer Science Electives: 15 credits | |
| CPSC 200 level and above | 6 credits |
| CPSC 300 or 400 level Tech elective excluding CPSC 310-319, CPSC 423,428,435, 436 |
9 credits |
| IV. Science: 7-8 credits | |
| Science Requirements. Either a, b, or c is required: | 7-8 credits |
| a. BIOL 105/L, BIOL 106 | |
| b. CHEM 101/L, CHEM 206/L | |
| c. PHYS 103/L/R, PHYS 204/L/R | |
| V. Mathematics Requirements: 11 credits |
|
| MATH157 Calculus-Analytic Geometry I |
4 credits |
| MATH 231 Discrete Structures |
3 credits |
| MATH 258 Calculus-Analytic Geometry II |
4 credits |
| Two courses from the following are required: | 6 credits |
| MATH 260 Ordinary Differential Equation |
|
| ENSC 371 Advanced Engineering Math |
|
| CPSC 455 Chaos and Dynamical Systems |
|
| any 300 or 400 level Mathematics course | |
| VI: Science and Mathematics Electives: (not already chosen to meet requirements above) |
7 credits |
| BIOL 105/L Information Flow in Biological Systems and Lab |
|
| BIOL 205/L Physiology & Biodiversity | |
| BIOL 206/L Ecology | |
| BIOL 207/L Genetics and Lab |
|
| CHEM 101/L General Chemistry and Lab |
|
| CHEM 230/L Organic Chemistry and Lab |
|
| CPSC 455 Chaos and Dynamical Systems | |
| ENSC 371 Advanced Engineering Math | |
| PHYS 103/L/R Scientific Physics I, Lab and Recitation |
|
| PHYS 205/217 Modern Physics and Lab | |
| MATH 259 Calculus-Analytic Geometry III | |
| MATH 260 Ordinary Differential Equation | |
| any 300 or 400 level Mathematics course | |
| IV. University Core requirements: 28 credits | |
| ENGL 101 English Composition | 3 credits |
| ENGL 102 Introduction to Literature | 3 credits |
| PHIL 101 Critical Thinking | 2 credits |
| PHIL 201 Human Nature | 3 credits |
| PHIL 301 Ethics | 3 credits |
| PHIL 400 level | 3 credits |
| RELI 100 level | 3 credits |
| RELI 200 level | 3 credits |
| RELI 300 level | 3 credits |
| SPCO 101 Introduction to Speech Communication | 2 credits |
Minor in Computer Science (18 credits) |
|
| CPSC 121 Computer Science I | 3 credits |
| CPSC 122 Computer Science II | 3 credits |
| Any four 200, 300, or 400 CPSC courses | 12 credits |