Software Engineering, BS

Program Description

The Bachelor of Science degree in Software Engineering (SE) is designed to emphasize learning the practical elements of producing reliable software in a professional setting. Building on the core foundations of computer science, this degree instructs students in the tools, techniques, and practices used to produce robust software in a variety of settings and to solve a broad range of problems.


Admission Requirements

The admissions process works as follows:

  1. Student applies and is accepted to Utah Tech
  2. Student's major is designated as Associate of Programming
  3. Student completes the requirements in the Associate of Programming with a flat C or higher
  4. Student meets with the Computing Advisor to ensure that required courses are complete and to finalize an academic plan
  5. Student's major is switched from Associate of Programming to Software Engineering

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 Sciences3-10
Physical Sciences3-5
Fine Arts3
Literature/Humanities3
Social & Behavioral Sciences3
Core Discipline Requirements
CS 1400Fundamentals of Programming 23
CS 1410Object Oriented Programming 23
CS 2100Discrete Structures 23
CS 2420Introduction to Algorithms and Data Structures 23
CS 2450Software Engineering 23
CS 2810Computer Organization and Architecture 23
CS 3005Programming in C++ 23
CS 3150Computer Networks 23
CS 3510Algorithms 23
CS 4307Database Systems 23
or IT 2300 Database Design & Management
IT 1100Introduction to Unix/Linux 23
SE 1400Web Design Fundamentals (ALCS) 23
SE 3100Software Practices 23
SE 3150Software Quality 23
SE 3200Web Application Development I 23
SE 3400Human-Computer Interaction 23
SE 4200Web Application Development II 23
SE 4600Senior Project 23
SET 1000Graduation Planning & Career Prep I0
MATH 1100Business Calculus (MA) 23
or MATH 1210 Calculus I (MA)
MATH 2050Applied Statistics with Programming3
Complete six (6) credits from the following list of elective courses: 16
Data Wrangling
Operating Systems 2
Distributed Systems 2
Programming Languages 2
Game Development 2
Computational Theory 2
Graphics Programming 2
Artificial Intelligence 2
Machine Learning 2
Data Mining
Data Visualization
Compilers 2
Undergraduate Research (up to 6 credits)
Special Topics in Computer Science 2
Competitive Programming
Computer Science Seminar (up to 4 credits)
Immersive Game Development I 2
Design Thinking 2
Data Visualization and Storytelling 2
Information Security 2
Systems Design and Administration 2
System Automation 2
DevOps Virtualization 2
DevOps Lifecycle Management 2
Entrepreneurial Marketing
Mobile Application Development 2
Internet of Things Programming 2
User Experience Design 2
Tech Entrepreneurship 2
Online Marketing and SEO (ALCS) 2
Internship (ALPP)
Software Entrepreneurial Exploration
Special Topics in Software Engineering 2

Complete all courses from one of the following tracks:1

Entrepreneurial and Marketing Track
DES 2100Design Thinking 23
SE 3500Tech Entrepreneurship 23
SE 3550Online Marketing and SEO (ALCS) 23
DevOps Track
IT 3110System Automation (Prerequisites: IT 3100 and IT 2400) 23
IT 3300DevOps Virtualization (Prerequisites: IT 2400) 23
IT 4200DevOps Lifecycle Management 23
Application Track
SE 3010Mobile Application Development 23
SE 3250Internet of Things Programming 23
SE 3450User Experience Design 23
Data Science Track
CS 4300Artificial Intelligence 23
or CS 4400 Data Mining
CS 4320Machine Learning 23
CS 4410Data Visualization3
Game Development Track
CS 3500Game Development 23
CS 3600Graphics Programming 23
CS 4995Immersive Game Development I 23
1

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.

2

Course Fee Required. See course fee tab for details. 

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, SE Elective Requirement, and Track Requirement course.