catalog header

Course Catalog

Computer Science and Computational Thinking

Chairperson: Gina Sprint

The B.A. in Computer Science and Computational Thinking (BACSCT) serves those students with an interest in computing who would also like to study broadly in the humanities, the social sciences, or the natural sciences. For example, students interested in language and literature could explore questions that arise in computational linguistics or in computational approaches to the study of literature.   Students interested in the social sciences could investigate sociological and economic questions through the increasing availability of large data repositories.  Students interested in the life sciences could investigate the growing field of bioinformatics.  The potential to combine computing with other disciplines makes the BACSCT an attractive option for students with diverse interests. In addition, the BACSCT degree provides background sufficient for entry level employment in many parts of the computer industry, as well as a base for further training in computer science. 

The process of majoring in BACSCT begins by selecting a Discipline for Computational Thinking (DCT), chosen from Art, Biology, Communications Studies, Economics, English, Environmental Studies, Philosophy, Sociology, or Theatre Arts.   Students choose at least twelve credits from their DCT.   The foundation in computing is built upon twenty-five credits in mathematics and computer science.   In consultation with their advisors, students also choose an additional eighteen credits in computer science courses.  These could include courses relevant to the DCT.  For instance, the Department of Computer Science offers courses in human language processing and big data analytics which could complement courses in English or Sociology.

BACSCT students can also pursue optional concentrations in Data Science, Software Application Development, or Software Security. 

  • Cautionary Notes:  
    Students may take no more than fifteen 200-level CPSC credits over the entire degree.  Of these fifteen, no more than nine may be taken to satisfy the eighteen elective credits (See “II. Computer Science Electives,” below.  Computer science courses are usually, but not always, three credits. 
  • Many upper division computer science courses require CPSC 260 as a prerequisite (see Courses offered by the Department of Computer Science for details).
     

B.A. in Computer Science and Computational Thinking: 55-59 credits

Lower Division
CPSC 121 Computer Science I
3 credits
CPSC 122 Computer Science II
3 credits
CPSC 223 Algorithm/Abstract Data Structures
3 credits
CPSC 224 Software Development
3 credits
One of the following two courses:
3-4 credits
MATH 148 Survey of Calculus

MATH 157 Calculus and Analytic Geometry I

MATH 231 Discrete Structures
3 credits
Upper Division
25 credits
Computer Science Electives*
18 credits

  * Any CPSC 200, 300, or 400-level course.
    At most three elective courses (9 credits) may be taken at the 200-level.
    9 of the 18 elective credits will be determined by the DCT Committee to best coincide with the chosen concentration.
    Courses used to fulfill a computer science concentration may also fulfill these elective credits.

CPSC 491 Software Engineering
2 credits
CPSC 491L Senior Design Project Lab I

1 credit
CPSC 492L Senior Design Project Lab II
3 credits
CPSC 499 Computers and Society
1 credit
Required concentration requirements (DCT specific courses) 

12-15 credits
  Art  12 credits
  Biology 14-15 credits
  Communication Studies  12 credits
  Economics  12 credits
  English  12 credits
  Environmental Studies  15 credits
  Philosophy  12 credits
  Sociology  12 credits
  Theatre Arts  12 credits
     

Additional elective concentration options in Computer Science:
  (Courses used to fulfill computer science concentration requirements may also fulfill the computer science elective requirements above)

 

12-18 credits

  Computer Science: Data Science 18 credits  
  Computer Science: Software Application Development 15 credits  
  Computer Science: Software Security  12 credits   

*No more than five computer science courses in the entire degree are to be at the 200 level. Many upper division computer science courses require CPSC 260 as a prerequisite (see the list of course in the University Catalog for details).

Art Concentration:

12-13 credits
VART 101 Drawing I 3 credits
One of the following two courses: 3 credits
VART 112 Design Fundamentals

VART 230 3-D Design

One of the following upper division Art History courses: 3 credits
VART 393 Modern Italian Art (taught in Florence)

VART 394 Special Topics in Art History

VART 395 Art in the 19th Century

VART 396 Art in the 20th Century

VART 397 Renaissance Art

VART 398 Roman Art and Architecture

VART 401 Renaissance Architecture

VART 402 The Image of God

VART 403/HIST 302 The Ancient City

VART 404/HIST 307 Archaeology of Ancient Greece

VART 405/HIST 308 Archaeology of Ancient Rome

VART 406/HIST 366 American Culture and Ideas

VART 407/WGST 350 Women Artists

VART 408 History of Photography

One of the following:
(Note: Some of the courses below have a prerequisite.
Check the undergraduate catalog.)
3 credits
VART 141 Ceramics I

VART 201 Drawing II

VART 221 Painting I

VART 350 Beginning Printmaking

VART 351 Beginning Screen Printing

Biology Concentration:

14-15 credits
BIOL 105/BIOL 105L Information Flow in Biological Systems 4 credits
BIOL 106 Energy Flow in Biological Systems
     (Note:  CHEM 101/101L is a prerequisite)
3 credits
Choose one of the following four options:
(Note: Some of the courses below have a prerequisite.
Check the undergraduate catalog.)
8 credits

Option A: Choose two of the following three courses:


  BIOL 205/BIOL 205L Physiology and Biodiversity


  BIOL 206/BIOL 206L Ecology


  BIOL 207/BIOL 207L Genetics

Option B:



BIOL 205/BIOL 205L Physiology and Biodiversity


BIOL 451/BIOL 451L Comparative Endocrinology (when offered)

Option C:



BIOL 206/BIOL 206L Ecology


One of the following six courses:


  BIOL 303/BIOL 303L Population Ecology (when offered)


  BIOL 305 Biological Data Analysis


  BIOL 333 Community Ecology


  BIOL 340/BIOL 340L Field Botany


  BIOL 344/BIOL 344L GIS and Ecological Techniques


  BIOL 360/BIOL 360L Plant Biology (when offered)

Option D:



BIOL 207/BIOL 207L Genetics


One of the following four courses:


BIOL 305 Biological Data Analysis




BIOL 335 Advanced Genetics




BIOL 337/BIOL 337L Developmental Biology (when offered)




BIOL 351/BIOL 351L Advanced Cell Biology (when offered)
    (Note: CHEM 230 is a prerequisite)


 

Communication Studies Concentration:

12 credits
COMM 210 Understanding Meaning-making 3 credits
COMM 230 Understanding Identity 3 credits
COMM 370 Digital Culture/Networked Self 3 credits
Choose one of the following four courses: 3 credits
COMM 340 Encounters in Public Spheres

COMM 350 Politics of Social Memory

COMM 360 Media Aesthetics 
 
COMM 450 Justice and Arts of Civic Life

Economics Concentration:

15 credits
ECON 201 Microeconomics  3 credits
ECON 202 Macroeconomics 3 credits
Choose one of the following two courses:  3 credits 
ECON 355  Regression Analysis
 
ECON 451 Econometrics*

Choose one of the following two courses: 3 credits
ECON 303 Game Theory and Economic Applications

ECON 351 Managerial Economics

ECON elective - NOTE: ECON course have pre-requisites  3 credits 

*ECON 351, ECON 355, ECON 451 pre-requisites: ECON 201 & ECON 202, (BUSN 230, or MATH 121, or MATH 321)

English Concentration:

12 credits
Any combination of four 300- or 400-level English courses

Environmental Studies Concentration:

15 credits
ENVS 101 Introduction to Environmental Studies 3 credits
ENVS 103/ENVS 103L Environmental Biology and Lab 4 credits
ENVS 104/ENVS 104L Environmental Chemistry and Lab 4 credits
ENVS 200 Case Studies in Environmental Science 4 credits


Philosophy Concentration:

12 credits
Four 400-level Philosophy courses chosen by the DCT Committee.

Sociology Concentration:

12 credits
Any four Sociology courses at the 100-, 200, and 300-levels.

Theatre Arts Concentration:

13-14 credits
THEA 100 Introduction to Theatre Arts 3 credits
One of the following two courses: 3-4 credits
  THEA 132 Stagecraft

  THEA 332 Scenic Design

THEA 235 Design Process 3 credits
THEA 239 Lighting Design 3 credits
THEA 260 Technical Lab 1 credit
   
In addition to their required DCT concentration, BSCT students may    
choose from the following optional concentrations. 
 

 

Computer Science: Software Security Optional Concentration:

  12 credits

CPSC 260 Computer Organization 3 credits 
CPSC 348 Computer Security 3 credits
CPSC 353 Cryptography  3 credits
One of the following four courses
3 credits
CPSC 341 Internet of Things
 
CPSC 346 Operating Systems  
 
CPSC 447 Computer Networks
 
EENG 410 Information Theory and Coding 
 
   

 

Computer Science: Data Science Optional Concentration: 

 18 credits
CPSC 222 Intro to Data Science 3 credits
CPSC 322 Data Science Algorithms  3 credits
One of the following 3 courses: 
3 credits
MATH 121 Introductory Statistics
 
MATH 221 Applied Statistics
 
MATH 321 Statistics for Experimentalist
 
CPSC 321 Database Management Systems 3 credits
Two of the following four courses
6 credits
CPSC 323 Machine Learning and Intelligent Systems
 
CPSC 324 Big Data Analytics 
 
CPSC 325 Data Science Project Lab

CPSC 475 Speech & NLP
 
   

 

Computer Science: Software Application Development Optional Concentration

12 credits
CPSC 331 UI/UX Design 3 credits
CPSC 332 Web Development   3 credits
CPSC 333 Mobile App Development 3 credits
CPSC 334 Linux & DevOps  3 credits  
Lower Division
CPSC 110 Special Topics for Non Majors
1.00- 3.00 credits
Computer Science topics of special interest to students majoring in other disciplines. Sample topics include principles of programming, web programming, and media computing. May not be counted towards a major in Computer Science. On sufficient demand.
CPSC 121 Computer Science I
3.00 credits
Techniques of problem-solving and algorithmic development. An introduction to programming. Emphasis is on how to design, code, debug, and document programs using good programming style. Fall and Spring.
CPSC 122 Computer Science II
3.00 credits
A continuation of CPSC 121. An examination of dynamic memory management and recursion; an introduction to basic data structures and algorithmic analysis. Fall and Spring.
Prerequisite:
CPSC 121 Minimum Grade: D
CPSC 190 Directed Study
1.00- 3.00 credits
Topic to be decided by faculty.
CPSC 212 Computational Modeling
3.00 credits
This course introduces students to the modeling process and computer simulations. It considers two major approaches: system dynamics models and agent-based models. A variety of software tools will be explored. Applications will be chosen from ecology, medicine, chemistry, biology, and others. Spring.
Prerequisite:
CPSC 121 Minimum Grade: D
Equivalent:
ITEC 212 - OK if taken between Fall 2011 and Fall 2023
CPSC 213 Special Topics
3.00 credits
Topic to be determined by instructor.
CPSC 214 Special Topics
3.00 credits
Topic to be determined by instructor.
CPSC 215 Special Topics
3.00 credits
CPSC 222 Introduction to Data Science
3.00 credits
This course provides an introduction to the underlying ideas, concepts, and techniques used in data science. Students gain skills in statistical and computational thinking, and their practical application to real-world, data-driven problem solving and decision making. The course teaches important concepts and skills in both statistical reasoning and computer programming for the purpose of analyzing real-world data sets. Examples are drawn from diverse areas such as economics, social science, health and wellness, climate science, and education. Students gain experience using the Python programming language, Python’s standard libraries for data science applications and computational notebooks (e.g., using Jupyter). The course also raises important social questions concerning privacy, social inequality, and professional ethics related to data science and its applications. Fall & Spring.
Prerequisite:
CPSC 121 Minimum Grade: D or ENSC 201 Minimum Grade: D
CPSC 223 Algorithm&Abstract Data Struct
3.00 credits
Algorithm analysis using Big-O notation, sorting, heaps, balanced binary search trees, and hash tables. Fall and Spring. MATH 231 and CPSC 223 can be taken concurrently.
Prerequisite:
CPSC 122 Minimum Grade: D and (MATH 231 Minimum Grade: D) and MATH 231 Minimum Grade: D
CPSC 224 Software Development
3.00 credits
This course covers topics in object-oriented programming, user-interface design and development, and software construction including program design, development tools, and basic concepts in software engineering. Students work on hands-on development assignments and projects throughout the semester. Fall and Spring.
Prerequisite:
CPSC 122 Minimum Grade: D
CPSC 260 Computer Organization
3.00 credits
This course covers basic topics in the design of modern computer systems. Topics include digital logic, computer system components, machine-level code, memory organization and management, computer arithmetic, assembly-language programming, and basic connections between high-level and low-level languages (C and assembly). This course also serves as a foundation for courses on networking. security, operating systems, and computer architecture, where a deeper understanding of systems-level issues is required. Fall and Spring. **** Students who have taken and received credit for CPEN 231 may not also receive credit for CPSC 260. *****
Prerequisite:
CPSC 122 Minimum Grade: D
CPSC 290 Directed Reading
.00- 3.00 credits
Individual exploration of a topic not normally covered in the curriculum.
Upper Division
CPSC 310 Special Topics
3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand.
Prerequisite:
CPSC 122 Minimum Grade: D
CPSC 311 Special Topics
3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand.
Prerequisite:
CPSC 122 Minimum Grade: D
CPSC 312 Special Topics
3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand.
Prerequisite:
CPSC 122 Minimum Grade: D
CPSC 313 Special Topics
3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand.
Prerequisite:
CPSC 122 Minimum Grade: D
CPSC 314 Special Topics
3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand.
Prerequisite:
CPSC 122 Minimum Grade: D
CPSC 315 Special Topics
1.00- 3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand. Prerequisite: CPSC 223
Prerequisite:
CPSC 223 Minimum Grade: D
CPSC 321 Database Management Systems
3.00 credits
Introduction to relational database concepts and techniques. Topics include the relational model, database design, SQL, transactions, file and index organization, and using databases within software applications, Fall. Prerequisite: CPSC 122 or CPSC 222
CPSC 322 Data Science Algorithms
3.00 credits
This course provides a detailed overview of the processes and techniques used in creating data science applications. Emphasis is placed on popular algorithms for the analysis, classification, and mining of relational data. Students learn to implement data science algorithms and techniques over real-world data sets through assignments and projects in Python. Topics include data preparation and cleaning, summary statistics, basic data visualization techniques, feature selection, discretization, k nearest neighbors, naive bayes, decision trees, ensemble methods, apriori rule mining, and k-means clustering. Fall. Prerequisite: CPSC 122 or CPSC 222
CPSC 323 Machine Lrng & Intllgnt Systms
3.00 credits
This course provides a detailed overview of topics in machine learning with an emphasis on algorithms and techniques for unstructured and complex data sets. Students implement and apply machine learning algorithms to examples drawn from time series, image, audio, textual, and numerical data. Topics include regression analysis, support vector machines, genetic algorithms, neural networks and heuristic search. Concepts and issues in building intelligent systems and the role of machine learning are also discussed. Fall.
Prerequisite:
CPSC 322 Minimum Grade: D or CPSC 223 Minimum Grade: D
CPSC 325 Data Science Project Lab
3.00 credits
This course provides an overview of how to design a data science system and deploy the system into a production environment. Students complete a semester-long project that involves researching a data science problem, proposing a solution to the problem, implementing the solution, and deploying the solution as a hosted web application. Emphasis is placed on working with web-based application programming interfaces, gathering and processing data, researching and implementing common machine algorithms for data mining and classification, and securely deploying models in the cloud. Spring, odd years.
Prerequisite:
CPSC 322 Minimum Grade: D or CPSC 323 Minimum Grade: D
Equivalent:
CPSC 483 - OK if taken since Fall 2024
CPSC 326 Organization of Program Langs
3.00 credits
Examination of the structures and concepts of procedural, functional, and logic-based programming languages. Spring.
Prerequisite:
CPSC 223 Minimum Grade: D
CPSC 331 UI/UX Design
3.00 credits
Exploration of theories and principles related to human-computer interaction, user experience design, and user interface design. Development of techniques and practices for designing and evaluating software usability. Spring.
Prerequisite:
CPSC 122 Minimum Grade: D
CPSC 332 Web Development
3.00 credits
Techniques of web-based software application development. Introduces programming languages and frameworks for web programming. Emphasis on web programming basics using well-established approaches including the basics of full-stack web development. Fall.
Prerequisite:
CPSC 122 Minimum Grade: D
CPSC 333 Mobile App Development
3.00 credits
This course provides an introduction to mobile application development. The primary aim of this course is to provide students with a thorough introduction to designing and building native and/or cross-platform apps for mobile devices. The platform, frameworks/libraries, and development tools used in this course vary and are dependent on the current demand in industry. Topics include object-oriented programming, design patterns, user interface design and implementation, data storage, working with application programming interfaces, threading, camera and photos, and location and maps. Additional topics are covered based on trending mobile app features. Fall.
Prerequisite:
CPSC 122 Minimum Grade: D
CPSC 334 Linux and DevOps
3.00 credits
This course covers topics of using and managing Linux OSes from the command line, virtual machines, containers, DevOps philosophy, continuous integration, continuous deployment, and Git. Students work on hands-on development assignments and projects throughout the semester. Spring.
Prerequisite:
CPSC 224 Minimum Grade: D
CPSC 341 Internet of Things
3.00 credits
The Internet of things (IoT) is the network of physical devices, buildings (smart building), furniture (smart home), vehicles (smart transportation), and many others. In this class, students will learn key technologies in IoT and obtain hands-on experience by building IoT devices. A substantial part of the material will cover IoT applications, IoT architecture, embedded systems, network protocols, sensor networks, and IoT security. Students will also work on research projects related to IoT applications, design, and security. Spring, odd years.
Prerequisite:
CPSC 223 Minimum Grade: D
CPSC 346 Operating Systems
3.00 credits
Study of operating systems internals. Topics include concurrent programming, memory management, file system management, scheduling algorithms, and security. Fall. Prerequisite(s): CPSC 122 and (CPSC 260 or (CPEN 231 and CPEN 231L))
CPSC 348 Computer Security
3.00 credits
Study of security and information assurance in stand-alone and distributed computing. Topics include ethics, privacy, access control methods and intrusion detection. Spring.
Prerequisite:
CPSC 223 Minimum Grade: D and CPSC 260 Minimum Grade: D or (CPEN 231 Minimum Grade: D and CPEN 231L Minimum Grade: D)
Equivalent:
CPSC 448 - Taken before Spring 2020
CPSC 351 Theory of Computation
3.00 credits
Study of automata, languages, and computability theory. Regular grammars, finite state automata, context-free grammars, pushdown automata, Turing machines, decidable and undecidable problems, and problem reduction. Fall, odd years. Prerequisite(s): CPSC 122 and (MATH 231 or MATH 301)
Prerequisite:
CPSC 223 Minimum Grade: D and (MATH 231 Minimum Grade: D or MATH 301 Minimum Grade: D)
CPSC 353 Applied Cryptography
3.00 credits
Topics include classical cryptosystems, block ciphers, public key cryptosystems, key exchange protocols, and hash functions. Fall. Prerequisite(s): CPSC 223 and (MATH 231 or MATH 301)
Prerequisite:
CPSC 223 Minimum Grade: D and (MATH 231 Minimum Grade: D or MATH 301 Minimum Grade: D)
CPSC 390 Directed Study
1.00- 3.00 credits
Topic to be decided by faculty.
CPSC 410 Advanced Topics
3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand.
Prerequisite:
CPSC 223 Minimum Grade: D
CPSC 411 Advanced Topics
3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand.
Prerequisite:
CPSC 223 Minimum Grade: D
CPSC 412 Advanced Topics
3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand.
Prerequisite:
CPSC 223 Minimum Grade: D
CPSC 413 Advanced Topics
3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand.
Prerequisite:
CPSC 223 Minimum Grade: D
CPSC 414 Advanced Topics
3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand.
Prerequisite:
CPSC 223 Minimum Grade: D
CPSC 415 Advanced Topics
3.00 credits
Topics that reflect the current interests and expertise of the faculty. On sufficient demand.
CPSC 425 Computer Graphics
3.00 credits
Introduction to the use of graphics primitives within a higher level language to produce two and three-dimensional images; underlying mathematical operations used to implement standard graphics packages; practical experience with current graphics systems. Spring, odd years.
Prerequisite:
CPSC 223 Minimum Grade: D and MATH 231 Minimum Grade: D
CPSC 431 Computer Hrdwr Dsg & Achtr
3.00 credits
Understanding the design techniques, machine structures, technology factors, and evaluation methods that will determine the form of computers in 21st century. Spring.
Prerequisite:
CPSC 260 Minimum Grade: D or CPEN 231 Minimum Grade: D
CPSC 435 Parallel & Cloud Computing
3.00 credits
Parallel Programming platforms; principles of parallel algorithm design; basic communication operations; programming using the message-passing paradigm (MPI); programming on shared address space platforms (POSIX Thread and OpenMP); cloud computing; big data analysis; and other advanced topics. On sufficient demand.
Prerequisite:
CPSC 260 Minimum Grade: D or (CPEN 231 Minimum Grade: D and CPEN 231L Minimum Grade: D)
Equivalent:
CPEN 435 - Successful completion
CPSC 436 Biomedical Informatics&Comput
3.00 credits
Investigation of the role of computers in the provision of medical services; machine learning algorithms for regression, classification, clustering, and anomaly detection; medical decision-making support; genomic medicine and its techniques. On sufficient demand.
Prerequisite:
CPSC 260 Minimum Grade: D or (CPEN 231 Minimum Grade: D and CPEN 231L Minimum Grade: D)
Equivalent:
CPEN 436 - Successful completion
CPSC 439 Digital Forensics
3.00 credits
Digital forensics covers the three functions of digital forensics performed by organizations: employee abuse investigations, incident response, and electronic discovery. Students will learn to conduct all three. In particular students will learn to gather, analyze and present digital evidence to the sponsoring organization as well as to legal audiences. On sufficient demand. Prerequisite(s):CPSC 223 and (CPSC 260 or (CPEN 231 and CPEN 231L))
CPSC 447 Computer Networks
3.00 credits
Study of main components of computer communications and networks; communication protocols; routing algorithms; machine addressing and network services. Spring - even years. Prerequisite(s): CPSC 223 and (CPSC 260 or (CPEN 231 and CPEN 231L))
CPSC 448 Network and System Security
3.00 credits
Computer Network and System Security covers cybersecurity in computer operating systems, network infrastructure, and devices like routers and switches, server management for Windows and Linux operating systems, along with managing sensitive data. On sufficient demand. Prerequisite(s): CPSC 223 and (CPSC 260 or (CPEN 231 and CPEN 231L))
CPSC 450 Design&Analysis-Comp Algorithm
3.00 credits
Advanced study of computer algorithms not covered in CPSC 223 along with principles and techniques of computational complexity. Topics could include dynamic programming, B-trees, minimum spanning trees, Floyd and Warshall algorithms, various string matching algorithms, computational geometry, exponential growth of round-off errors, NP-completeness and reducibility. Fall - even years.
Prerequisite:
CPSC 223 Minimum Grade: D and MATH 231 Minimum Grade: D
CPSC 455 Chaos & Dynamical Systems
3.00 credits
Introduction to the study of discrete nonlinear dynamical systems and their chaotic behavior. The course will focus on investigation s through computer experiments- both numerical and graphical- and the corresponding mathematical analysis of the observed behavior. A significant portion of the course will be devoted to designing graphics programs. In the humanistic tradition of Gonzaga, students will also learn the historical development of the modern science of chaotic dynamical systems. Spring - even years. Prerequisite(s): CPSC 122 and (MATH 231 or MATH 301)
CPSC 475 Speech&NaturalLangProcessing
3.00 credits
Computational approaches to language processing: text normalization, N-grams, sentiment classification, part-of-speech tagging, parsing, semantic analysis, and applied phonetics. Spring, odd years.
Prerequisite:
CPSC 223 Minimum Grade: D or CPSC 322 Minimum Grade: D
CPSC 481 Data Analytics & Communication
3.00 credits
In this course, students will learn a variety of techniques and tools for effectively communicating data analysis questions, results, and insights to a range of audiences. The course will cover techniques related to data storytelling, data visualization, interactive dashboarding, digital portfolio design and development, technical report writing, and technical presentation skills for data science. Students will also learn to effectively use modern tools related to data storytelling and visualization. On sufficient demand. Prerequisite: CPSC 222
CPSC 482 Data Intensive Systems
3.00 credits
This course covers tools and techniques used in applying statistical and machine learning approaches to real-world data sets. Through hands-on assignments and projects, students learn relevant architectures, programming models, and tools related to data modeling and storage, extract-transform-load (ETL) processes, data warehousing, and data pipeline creation and management. The course also explores scalable, distributed, and cloud-based approaches used in data-intensive applications for accessing, filtering, clustering, and classifying data. On sufficient demand.
Prerequisite:
(CPSC 223 Minimum Grade: D or CPSC 322 Minimum Grade: D) and CPSC 321 Minimum Grade: D
Equivalent:
CPSC 324 - Taken before Fall 2024
CPSC 483 Data Science Capstone
3.00 credits
This course provides an overview of how to design a data science system and deploy the system into a production environment. Students complete a semester-long project that involves researching a data science problem, proposing a solution to the problem, implementing the solution, and deploying the solution as a hosted web application. Emphasis is placed on working with web-based application programming interfaces, gathering and processing data, researching and implementing common machine algorithms for data mining and classification, and securely deploying models in the cloud. On sufficient demand.
Prerequisite:
CPSC 322 Minimum Grade: D or CPSC 323 Minimum Grade: D
Equivalent:
CPSC 325 - Taken before Fall 2024
CPSC 490 Directed Reading
1.00- 3.00 credits
Individual exploration of a topic not normally covered in the curriculum. Arrangement with an instructor.
CPSC 491 Software Engineering
2.00 credits
A survey of approaches used in software engineering focusing on software development processes, requirements engineering, estimation, scheduling, risk analysis, testing, version control, and project management. Students apply the techniques and practices learned in their senior design projects, including the development of a detailed project plan and a functional software prototype. Fall.
Prerequisite:
CPSC 223 Minimum Grade: D and CPSC 224 Minimum Grade: D
Concurrent:
CPSC 491L CPSC 499
CPSC 491L Senior Design Project Lab I
1.00 credit
First semester of a two semester senior design project in which students work in teams to develop a large software product. Teams meet weekly with their faculty project advisors. Fall.
Prerequisite:
CPSC 223 Minimum Grade: D and CPSC 224 Minimum Grade: D
Concurrent:
CPSC 491 CPSC 499
CPSC 492L Senior Design Project Lab II
3.00 credits
Second semester of a two semester senior design project in which students work in teams to develop a large software product. Teams meet weekly with their faculty project advisors. Spring.
Prerequisite:
CPSC 491 Minimum Grade: D and CPSC 491L Minimum Grade: D
CPSC 493 Software Security Engineering
3.00 credits
Secure Software Engineering covers the principles and practices of secure programming: writing programs in a safe fashion, avoiding vulnerabilities which can be exploited by attackers, and using library security features like authentication and encryption. On sufficient demand.
Prerequisite:
CPSC 223 Minimum Grade: D and CPSC 224 Minimum Grade: D
CPSC 495 Thesis I
1.00 credit
First of a two semester senior thesis project. Requires arrangement with a faculty supervisor.
CPSC 496 Thesis II
1.00 credit
Second of a two semester senior thesis project. Requires arrangement with a faculty supervisor.
Prerequisite:
CPSC 495 Minimum Grade: S
CPSC 497 Computer Science Internship
.00- 3.00 credits
Computer Industry Internship.
CPSC 499 Computers and Society
1.00 credit
This course discusses ethical, societal, security and legal issues in computing, including their relationship to professional development. Topics are examined within the context of students' senior design projects. Fall.
Prerequisite:
CPSC 223 Minimum Grade: D and CPSC 224 Minimum Grade: D
Concurrent:
CPSC 491 CPSC 491L
 

In addition to their major and minor areas of study, all undergraduate students follow a common program designed to complete their education in those areas that the University considers essential for a Catholic, Jesuit, liberal, and humanistic education. The University Core Curriculum consists of forty-five credits of course work, with additional designation requirements that can be met through core, major, or elective courses.

The University Core Curriculum is a four-year program, organized around one overarching question, which is progressively addressed through yearly themes and questions. Hence, core courses are best taken within the year for which they are designated. First year core courses encourage intellectual engagement and provide a broad foundation of fundamental skills. Second and third year courses examine central issues and questions in philosophy and religious studies. The fourth year course, the Core Integration Seminar, offers a culminating core experience. Taken at any time throughout the four years, broadening courses intersect with the core themes and extend students’ appreciation for the humanities, arts, and social and behavioral sciences. Finally, the designation requirements (writing enriched, global studies, and social justice) reflect important values and reinforce students’ knowledge and competencies.

Overarching Core Question: As students of a Catholic, Jesuit, and Humanistic University, how do we educate ourselves to become women and men for a more just and humane global community?
Year 1 Theme and Question: Understanding and Creating: How do we pursue knowledge and cultivate understanding?

  • The First-Year Seminar (DEPT 193, 3 credits): The First-Year Seminar (FYS), taken in the fall or spring of the first year, is designed to promote an intellectual shift in students as they transition to college academic life. Each small seminar is organized around an engaging topic, which students explore from multiple perspectives. The FYS is offered by many departments across the University (click here [PDF] for list of FYS courses).  
  • Writing (ENGL 101, 3 credits) and Reasoning (PHIL 101, 3 credits): The Writing and Reasoning courses are designed to help students develop the foundational skills of critical reading, thinking, analysis, and writing. They may be taken as linked sections. Writing (ENGL 101) carries one of the three required writing-enriched designations (see below).
  • Communication & Speech (COMM 100, 3 credits): This course introduces students to interpersonal and small group communication and requires the application of critical thinking, reasoning, and research skills necessary to organize, write, and present several speeches.
  • Scientific Inquiry (BIOL 104/104L, CHEM 104/104L, or PHYS 104/104L, 3 credits): This course explores the scientific process in the natural world through evidence-based logic and includes significant laboratory experience. Students pursuing majors that require science courses will satisfy this requirement through their major.
  • Mathematics (above Math 100, 3 credits): Mathematics courses promote thinking according to the modes of the discipline—abstractly, symbolically, logically, and computationally. One course in mathematics, above Math 100, including any math course required for a major or minor, will fulfill this requirement. MATH 100 (College Algebra) and courses without the MATH prefix do not fulfill this requirement.

Year 2 Theme and Question: Being and Becoming: Who are we and what does it mean to be human?

  • Philosophy of Human Nature (PHIL 201, 3 credits): This course provides students with a philosophical study of key figures, theories, and intellectual traditions that contribute to understanding the human condition; the meaning and dignity of human life; and the human relationship to ultimate reality.
  • Christianity and Catholic Traditions (RELI, 3 credits). Religious Studies core courses approved for this requirement explore diverse topics including Christian scriptures, history, theology, and practices as well as major contributions from the Catholic intellectual and theological traditions (click here [PDF] for a list of approved courses) .

Year 3 Theme and Question: Caring and Doing: What principles characterize a well lived life?

  • Ethics (PHIL 301 or RELI, 3 credits): The Ethics courses are designed to help students develop their moral imagination by exploring and explaining the reasons humans should care about the needs and interests of others. This requirement is satisfied by an approved ethics course in either Philosophy (PHIL 301) or Religious Studies (click here [PDF] for a list of approved courses).
  • World/Comparative Religion (RELI, 3 credits): Religious Studies courses approved for this core requirement draw attention to the diversity that exists within and among traditions and encourage students to bring critical, analytical thinking to bear on the traditions and questions considered. These courses carries one of the required two global-studies designations (see below) (click here [PDF] for a list of approved courses).

Year 4 Theme and Question: Imagining the Possible: What is our role in the world?” 

  • Core Integration Seminar (DEPT 432, 3 credits). The Core Integration Seminar (CIS) offers students a culminating core experience in which they integrate the principles of Jesuit education, prior components of the core, and their disciplinary expertise. Some CIS courses may also count toward a student’s major or minor. The CIS is offered by several departments across the University (click here [PDF] for list of CIS courses).

The Broadening Courses

  • Fine Arts & Design (VART, MUSC, THEA, 3 credits): Arts courses explore multiple ways the human experience can be expressed through creativity, including across different cultures and societies. One approved course in fine arts, music, theatre, or dance will fulfill this requirement (click here [PDF] for a list of approved courses).
  • History (HIST, 3 credits): History courses are intended to develop students’ awareness of the historical context of both the individual and the collective human experience. One course in History (HIST 101, HIST 102, HIST 112, HIST 201, HIST 202) will fulfill this requirement.
  • Literature (3 credits): Literature courses foster reflection on how literature engages with a range of human experience. One approved course in Literature (offered by English, Classics, or Modern Languages) will fulfill this requirement (click here [PDF] for a list of approved courses).
  • Social & Behavioral Sciences (3 credits): Courses in the social and behavioral sciences engage students in studying human behavior, social systems, and social issues. One approved course offered by Criminal Justice, Economics, Political Science, Psychology, Sociology, or Women and Gender Studies will fulfill this requirement (click here [PDF] for a list of approved courses).

The Designations
Designations are embedded within already existing core, major, minor, and elective courses. Students are encouraged to meet designation requirements within elective courses as their schedule allows; however, with careful planning students should be able to complete most of the designation requirements within other core, major, or minor courses.

  • Writing Enriched (WE; 3 courses meeting this designation): Courses carrying the WE designation are designed to promote the humanistic and Jesuit pedagogical ideal of clear, effective communication. In addition to the required core course, Writing (ENGL 101), which carries one of the WE designations, students must take two other WE-designated courses (click here [PDF] for a list of approved courses).
  • Global-Studies (GS; 2 courses meeting this designation): Courses carrying the GS designation are designed to challenge students to perceive and understand human diversity by exploring diversity within a context of constantly changing global systems. In addition to the required core course, World/Comparative Religion (RELI 300-level), which carries one of the GS designations, students must take one other GS-designated course (click here [PDF] for a list of approved courses).
  • Social-Justice (SJ; 1 course meeting this designation): Courses carrying the SJ designation are designed to introduce students to one or more social justice concerns. Students must take one course that meets the SJ designation (click here [PDF] for a list of approved courses).

Major-specific adaptations to the University Core Curriculum

All Gonzaga students, regardless of their major, will complete the University Core Curriculum requirements. However some Gonzaga students will satisfy certain core requirements through major-specific programs or courses. Any major-specific adaptations to the core are described with the requirements for the majors to which they apply.