Computer Science, B.S.
Visit the Computer Science Department page for more information on the program and access to advising.
Program Description
The Computer Science, BS provides students with a study of theoretical foundations of computing, practical programming and software development. This program emphasizes the analysis and design of complex computing solutions, the ethical and professional responsibilities of computing professionals, and effective collaboration and communication in technical environments. Students engage in hands-on learning through core coursework and specialized tracks in areas such as full stack web development, secure computing, and artificial intelligence. Graduates can apply what they have learned to develop computing solutions across many industries.
Matriculation Requirements
- Completion of CS 1400 Fundamentals of Programming1, CS 1410 Object Oriented Programming1, CS 2300 Discrete Mathematical Structures I, CS 2420 Introduction to Algorithms and Data Structures, CS 2450 Software Engineering I, with a grade of C+ better.
- Completion of MATH 1210 Calculus I and ENGL 1010 Introduction to Academic Writing or ENGL 1005 Foundations of Academic Writing with a grade of C or better.
- Each of CS 14001, CS 14101, CS 2300, CS 2420, CS 2450, MATH 1210, and (ENGL 1010 or ENGH 1005) cannot be taken more than twice to obtain the required grade.
- Overall GPA of 2.5 or higher.
1CS 1420 may be completed instead of CS 1400 and CS 1410 for matriculation.
Program Requirements
| Code | Title | Credit Hours |
|---|---|---|
| Total Credit Hours | 120 | |
| General Education Requirements | 31 Credits | |
| ENGL 1010 | Introduction to Academic Writing | 3 |
| or ENGL 1005 | Foundations of Academic Writing | |
| ENGL 2010 | Intermediate Academic Writing | 3 |
| MATH 1210 | Calculus I 1 | 4 |
| American Institutions | 3 | |
| American History (3) | ||
| US Economic History (3) | ||
| US History to 1877 and US History since 1877 (6) | ||
| American Heritage (3) | ||
| American National Government (3) | ||
| Arts | 3 | |
| Humanities | 3 | |
| Life Sciences | 3 | |
| Physical Sciences | 3 | |
| Social & Behavioral Sciences | 3 | |
| Personal, Professional, and Civic Growth | 3 | |
| Discipline Core Requirements | 56 Credits | |
| Complete one of the following course/lab combinations: | 5 | |
| College Biology I and College Biology I Laboratory (5) | ||
| Principles of Chemistry I and Principles of Chemistry I Laboratory (5) | ||
| College Physics II and College Physics II Lab (5) | ||
| College Physics I and College Physics I Lab (5) | ||
| Physics for Scientists and Engineers I and Physics for Scientists and Engineers I Lab (5) | ||
| Physics for Scientists and Engineers II and Physics for Scientists and Engineers II Lab (5) | ||
| Introduction to Geology and Introduction to Geology Laboratory and Science Excursion (5) | ||
| Minimum grade of C- required in these courses. | ||
| Complete one of the following: | 6 | |
| Fundamentals of Programming and Object Oriented Programming (6) | ||
| Accelerated Introduction to Programming (undefined) (and an additional 3 credit CS elective not already completed) 2 | ||
| CS 2300 | Discrete Mathematical Structures I | 3 |
| CS 2370 | C Plus Plus Programming | 3 |
| CS 2420 | Introduction to Algorithms and Data Structures | 3 |
| CS 2450 | Software Engineering | 3 |
| CS 2550 | Web Programming I | 3 |
| CS 2600 | Computer Networks I | 3 |
| CS 2810 | Computer Organization and Architecture | 3 |
| CS 2900 | Data Privacy and Security | 3 |
| CS 3050G | Global Social and Ethical Issues in Computing | 3 |
| CS 3060 | Operating Systems Theory | 3 |
| CS 3240 | Discrete Mathematical Structures II | 3 |
| CS 3250 | Java Software Development | 3 |
| or CS 3260 | CsharpNET Software Development | |
| or CS 3270 | Python Software Development | |
| or CS 3370 | C Plus Plus Software Development | |
| or CS 3390R | Advanced Programming Language Other | |
| CS 3310 | Analysis of Algorithms | 3 |
| CS 3520 | Database Theory | 3 |
| ECE 3710 | Applied Probability and Statistics for Engineers and Scientists | 3 |
| or STAT 2050 | Introduction to Statistical Methods | |
| Recommended Tracks | 33 Credits | |
| Complete 33 credits from the following recommended tracks. Minimum grade of C- required in track courses. | 33 | |
| CS Track | ||
| Principles and Patterns of Software Design (3) | ||
| Advanced High Performance Computer Architecture (3) | ||
| Analysis of Programming Languages (3) | ||
| Artificial Intelligence (3) | ||
Complete 3 credits of Senior Elective Requirements; R courses are not approved for this credit. | ||
| Full Stack Web Development Track | ||
| JavaScript Software Development (3) | ||
| Human Factors in Software Development (3) | ||
| Data Management For Data Sciences (3) | ||
| Web Programming II (3) | ||
| Mobile Device Programming (3) | ||
| Cloud Computing (3) | ||
| Full Stack Web Senior Capstone (3) | ||
| Secure Computing Track | ||
| Introduction to System Administration--Linux/UNIX (3) | ||
| Advanced System Administration--Linux/UNIX (3) | ||
| Applied Cryptography (3) | ||
| Ethical Hacking Tools Development (3) | ||
| Network and Cloud Security (3) | ||
or CYBR 4350 | Web and Application Security | |
| Security Vulnerability Analysis (3) | ||
or CYBR 3750 | Malware Reverse Engineering | |
| Secure Computing Capstone (3) | ||
Complete 12 credits from the following. Minimum grade of C- required in these courses. | ||
| Database Security and Auditing (3) | ||
| Internet of Things Security (3) | ||
| Threat Hunting and Incident Response (3) | ||
| Industrial Control Systems Security (3) | ||
| Digital Forensics Investigations (3) | ||
| Advanced Mobile Devices Forensics (3) | ||
Any CS 3000 0r 4000 level course not already required | ||
| Artificial Intelligence Track | ||
| Linear Algebra (3) | ||
| Artificial Intelligence (3) | ||
| Machine Learning (3) | ||
| Deep Learning (3) | ||
or CS 4730 | Natural Language Programming Foundations and Applications | |
or CS 4480 | Digital Image Processing and Computer Vision | |
| AI Business and Tech Solutions (undefined) | ||
| Complete 9 hours from the following: | ||
| Causal Inference (3) | ||
| Data Management For Data Sciences (3) | ||
| Game Programming (3) | ||
| Data Science Through Statistical Reasoning (3) | ||
| Visualization Analytics for Data Science (3) | ||
| Software Development for Robotics (3) | ||
| Complete 9 hours from the following: | ||
| Calculus II (4) | ||
| Calculus III (4) | ||
| Introduction to Optimization (3) | ||
Any CS 3000+ course not already required. | ||
- 1
Minimum grade required (see Graduation Requirements).
- 2
If students choose CS 1420, please see advisor.
Graduation Requirements
- Completion of a minimum of 120 semester credits, with a minimum of 40 upper-division credits.
- Overall grade point average of 2.0 or above. Must have a minimum grade of C- with a combined GPA of 2.5 or higher in all discipline core and emphasis requirements and the General Education requirements marked with a footnote.
- Residency hours -- minimum of 30 credit hours through course attendance at UVU. 10 of these hours must be within the last 45 hours earned. At least 12 of the credit hours earned in residence must be in approved CSE Department courses.
- All transfer credit must be approved in writing by UVU.
- No more than 80 semester hours and no more than 20 hours in CS type courses of transfer credit from a two-year college.
- No more than 30 semester hours may be earned through independent study and/or extension classes.
- Successful completion of at least one Global/Intercultural course.
- Successful completion of at least two Writing Enriched (WE) courses.
Graduation Plan
This graduation plan is a sample plan and is intended to be a guide. Your specific plan may differ based on your Math and English placement and/or transfer credits applied. You are encouraged to meet with an advisor and set up an individualized graduation plan in Wolverine Track.
| First Year | ||
|---|---|---|
| Semester 1 | Credit Hours | |
| CS 1400 | Fundamentals of Programming | 3 |
| ENGL 1010 | Introduction to Academic Writing | 3 |
| MATH 1210 | Calculus I | 4 |
| GE | 3 | |
| GE | 3 | |
| Credit Hours | 16 | |
| Semester 2 | ||
| CS 1410 | Object Oriented Programming | 3 |
| CS 2810 | Computer Organization and Architecture | 3 |
| ENGL 2010 | Intermediate Academic Writing | 3 |
| GE | 3 | |
| GE | 3 | |
| Credit Hours | 15 | |
| Second Year | ||
| Semester 3 | ||
| CS 2300 | Discrete Mathematical Structures I | 3 |
| CS 2370 | C Plus Plus Programming | 3 |
| CS 2420 | Introduction to Algorithms and Data Structures | 3 |
| CS 2600 | Computer Networks I | 3 |
| GE | 3 | |
| Credit Hours | 15 | |
| Semester 4 | ||
| CS 2450 | Software Engineering | 3 |
| CS 2550 | Web Programming I | 3 |
| CS 2900 | Data Privacy and Security | 3 |
| Core Science | 4 | |
| Core Science Lab | 1 | |
| Credit Hours | 14 | |
| Third Year | ||
| Semester 5 | ||
| CS 3240 | Discrete Mathematical Structures II | 3 |
| CS 3310 | Analysis of Algorithms | 3 |
| CS 3520 | Database Theory | 3 |
| CS 3250 | Java Software Development or CsharpNET Software Development or Python Software Development or C Plus Plus Software Development or JavaScript Software Development or Advanced Programming Language Other | 3 |
| GE | 3 | |
| Credit Hours | 15 | |
| Semester 6 | ||
| CS 3060 | Operating Systems Theory | 3 |
| ECE 3710 or STAT 2050 | Applied Probability and Statistics for Engineers and Scientists or Introduction to Statistical Methods | 3 |
| GE | 3 | |
| CS Elective | 3 | |
| CS Elective | 3 | |
| Credit Hours | 15 | |
| Fourth Year | ||
| Semester 7 | ||
| CS Elective | 3 | |
| CS Elective | 3 | |
| CS Elective | 3 | |
| CS Elective | 3 | |
| CS Elective | 3 | |
| Credit Hours | 15 | |
| Semester 8 | ||
| CS 3050G | Global Social and Ethical Issues in Computing | 3 |
| CS Elective | 3 | |
| CS Elective | 3 | |
| CS Elective | 3 | |
| CS Elective | 3 | |
| Credit Hours | 15 | |
| Total Credit Hours | 120 | |
Program Learning Outcomes
- Analyze a complex computing problem and apply principles of computing and other relevant disciplines to identify solutions. (ABET)
- Design, implement, and evaluate a computing-based solution to meet a given set of computing requirements in the context of the program’s discipline. (ABET)
- Communicate effectively in a variety of professional contexts. (ABET)
- Recognize professional responsibilities and make informed judgments in computing practice based on legal and ethical principles. (ABET)
- Function effectively as a member or leader of a team engaged in activities appropriate to the program’s discipline. (ABET)
- Apply computer science theory and software development fundamentals to produce computing-based solutions. (ABET)
Computer and information systems managers
- Total Positions613,500
- Field Growth17.4%
- Median Salary$169,510
- Average Openings54.7
Information security analysts
- Total Positions180,700
- Field Growth32.7%
- Median Salary$120,360
- Average Openings17.3
Computer and information research scientists
- Total Positions36,600
- Field Growth25.6%
- Median Salary$145,080
- Average Openings3.4
Computer network support specialists
- Total Positions166,700
- Field Growth7.3%
- Median Salary$71,530
- Average Openings12.1
Database architects
- Total Positions61,400
- Field Growth10.8%
- Median Salary$134,700
- Average Openings4.2
Computer programmers
- Total Positions139,400
- Field Growth-9.6%
- Median Salary$99,700
- Average Openings6.4
Software developers
- Total Positions1,692,100
- Field Growth17.9%
- Median Salary$132,270
- Average Openings125.1
Software quality assurance analysts and testers
- Total Positions205,000
- Field Growth11.8%
- Median Salary$101,800
- Average Openings15.0
Web developers
- Total Positions94,100
- Field Growth9.0%
- Median Salary$84,960
- Average Openings6.6
Computer occupations, all other
- Total Positions470,900
- Field Growth10.8%
- Median Salary$104,920
- Average Openings34.8
Data scientists
- Total Positions202,900
- Field Growth36.0%
- Median Salary$108,020
- Average Openings20.8
Computer science teachers, postsecondary
- Total Positions45,000
- Field Growth6.1%
- Median Salary$96,430
- Average Openings3.7