Computer Science, BS


Program Description

This program provides students with a broad understanding of the principles and practice of Computer Science, with the craft of programming emphasized as a central tool both for pedagogy (learning by doing) and for preparation for professional practice. Students study fundamental topics in software, hardware, and theory, as well as in-depth subjects such as artificial intelligence, graphics, compilers, and distributed systems.


Program Curriculum

120 credits

Utah Tech General Education Requirements

All Utah Tech General Education requirements must be fulfilled. A previously earned degree may fulfill those requirements, but courses must be equivalent to Utah Tech's minimum General Education standards in American Institutions, English, and Mathematics.

General Education Core Requirements
English3-7
Mathematics3-5
American Institutions3-6
Life Sciences 3-10
Physical Sciences3-5
Laboratory Science0-1
Fine Arts3
Literature/Humanities3
Social & Behavioral Sciences3
Exploration 3-5
Computer Science Core Requirements
CS 1400Fundamentals of Programming3
CS 1410Object Oriented Programming3
CS 2420Introduction to Algorithms and Data Structures3
CS 2450Software Engineering3
CS 2810Computer Organization and Architecture3
CS 3005Programming in C++3
CS 3530Computational Theory3
CS 3510Algorithms3
CS 4600Senior Project3
Complete at least twenty-one (21) credits from the following:
CS 3200Web Application Development I3
CS 3400Operating Systems3
CS 3410Distributed Systems3
CS 3520Programming Languages3
CS 3600Graphics Programming3
CS 4300Artificial Intelligence3
CS 4307Database Systems3
CS 4320Machine Learning3
CS 4550Compilers3
Math & Science Core Requirements
CS 3310Discrete Mathematics3
MATH 1210Calculus I (MA)4
MATH 1220Calculus II (MA)4
MATH 3400Probability & Statistics3-4
or MATH 2270 Linear Algebra
or MATH 2210 Multivariable Calculus (MA)
or MATH 2280 Ordinary Differential Equations
or MATH 2250 Differential Equations and Linear Algebra
BIOL 1610
BIOL 1615
Principles of Biology I (LS)
and Principles of Biology I Lab (LAB)
5
PHYS 2210
PHYS 2215
Physics/Scientists Engineers I (PS)
and Physics/Scientists Engineers I Lab (LAB)
5
Computer Science Elective Requirements
Complete at least nine (9) credits from the following:
CS 3010Mobile Application Development for Android3
CS 3020Mobile Application Development: iOS3
CS 3150Computer Networks3
CS 3200Web Application Development I3
CS 3400Operating Systems3
CS 3410Distributed Systems3
CS 3440Software Practices3
CS 3500Application Development3
CS 3520Programming Languages3
CS 3600Graphics Programming3
CS 4200Web Application Development II3
CS 4300Artificial Intelligence3
CS 4307Database Systems3
CS 4320Machine Learning3
CS 4550Compilers3
CS 4800RUndergraduate Research (up to 6 credits)1-3
CS 4920RInternship1-3
CS 4990Special Topics in Computer Science3
CS 4992RComputer Science Seminar (up to 4 credits)1
CS 4991RCompetitive Programming0.5
IT 2700Information Security3
IT 3100Systems Design and Administration3
IT 3110System Automation3
IT 4200DevOps Lifecycle Management3
SE 1400Web Design Fundamentals (ALCS)3
SE 3150Software quality3
SE 3400Human-Computer Interaction3
SE 3450User Experience Design3

NOTE: A course may only be used to fulfill one program requirement. Dual-listed courses may only be used once to fill requirements. Consult course descriptions in the current catalog to verify dual-listed courses.


Graduation Requirements

  1. Complete a minimum of 120 college-level credits (1000 and above).
  2. Complete at least 40 upper-division credits (3000 and above).
  3. Complete at least 30 upper-division credits at Utah Tech for institutional residency.
  4. Cumulative GPA 2.0 or higher.
  5. Grade C or higher in each Core Requirement and Elective Requirement course.