Computer Science (BS): Software Engineering Emphasis
Program Information
Minimum Credit Hours Maximum Credit Hours
74 76
Major Academic Plan
MAP-BS in Computer Science - Software Engineering 2024-2025.pdf
Learning Outcome
Analyze a complex computing problem and to apply
Title principles of computing and other relevant disciplines
Analysis to identify solutions.
Learning Outcome
Design, implement, and evaluate a computing-based
Title solution to meet a given set of computing requirements
Design in the context of the program's discipline.
Learning Outcome
Title Communicate effectively in a variety of professional
Communication contexts.
Learning Outcome
Recognize professional responsibilities and make
Title informed judgments in computing practice based on
Ethics legal and ethical principles.
Learning Outcome
Function effectively as a member or leader of a team
Title engaged in activities appropriate to the program's
Teamwork discipline.
Learning Outcome
Apply computer science theory and software
Title development fundamentals to produce computing-
Implementation based solutions.
Free Form Requirements
Free Form Requirements
Grades below C- are not allowed in major courses.
Requirement 1 — Complete 19 Courses
Core courses:
C S111 Intro to Computer Science - Intro to Computer Science 3.0
C S191 Exploring CS - Exploring CS 0.5
C S202 Software Engineering Lab 1 - Software Engineering Lab 1 1.0
C S203 Software Engineering Lab 2 - Software Engineering Lab 2 1.0
C S204 Software Engineering Lab 3 - Software Engineering Lab 3 1.0
C S224 Computer Systems - Computer Systems 3.0
C S235 Data Structures - Data Structures 3.0
C S236 Discrete Structure - Discrete Structure 3.0
C S240 Adv Software Construction - Adv Software Construction 4.0
C S260 Web Programming - Web Programming 3.0
C S291 Careers in CS - Careers in CS 0.5
C S312 Algorithm Design & Analysis - Algorithm Design & Analysis 3.0
C S324 Systems Programming - Systems Programming3.0
C S329 Test, Analysis, & Verification - Test, Analysis, & Verification3.0
C S340 Software Design - Software Design3.0
C S404 Ethics & Computers in Society - Ethics & Computers in Society2.0
C S452 Database Modeling Concepts - Database Modeling Concepts3.0
C S480 Soft Eng Capstone 1 - Soft Eng Capstone 13.0
C S481 Soft Eng Capstone 2 - Soft Eng Capstone 23.0
Requirement 2 —Complete 4 Courses
MATH112 Calculus 1 - Calculus 1 4.0
MATH213 Elementary Linear Algebra - Elementary Linear Algebra 2.0
MATH215 Computational Linear Algebra - Computational Linear Algebra 1.0
PHSCS121 Intro to Newtonian Mechanics - Intro to Newtonian Mechanics3.0
WRTG316 Technical Communication - Technical Communication3.0
Requirement 3 — Complete 1 of 2 Courses
STAT121 Intro to Stat Data Analysis - Intro to Stat Data Analysis 3.0
STAT201 Stat for Engineers & Scientist - Stat for Engineers & Scientist 3.0
Requirement 4 — Complete 1 of 3 Courses
MATH113 Calculus 2 - Calculus 2 4.0
MATH290 Fundamentals of Mathematics - Fundamentals of Mathematics 3.0
STAT220 Stat Modeling for Data Science - Stat Modeling for Data Science 3.0
Requirement 5 — Complete 2 of 11 Courses
C S256 Introduction to HCI - Introduction to HCI 3.0
C S270 Intro to Machine Learning - Intro to Machine Learning 3.0
C S330 Concepts of Programng Lang - Concepts of Programng Lang 3.0
C S345 Operating Systems Design - Operating Systems Design 3.0
C S356 Advanced Techniques in HCI - Advanced Techniques in HCI 3.0
C S453 Fund of Information Retrieval - Fund of Information Retrieval 3.0
C S456 Mobile and Ubiquitous HCI -Mobile and Ubiquitous HCI 3.0
C S460 Comp Comms & Networking - Comp Comms & Networking 3.0
C S462 Distributed System Design - Distributed System Design 3.0
C S465 Computer Security - Computer Security 3.0
C S473 Advanced Machine Learning - Advanced Machine Learning 3.0
C S486 Verification and Validation - Verification and Validation 3.0
Requirement 6 — Complete 3 hours
Courses will not double count between Requirement 5 and Requirement 6.
C S252 Intro to Computational Theory - Intro to Computational Theory 3.0
C S256 Introduction to HCI - Introduction to HCI 3.0
C S270 Intro to Machine Learning - Intro to Machine Learning 3.0
C S330 Concepts of Programng Lang - Concepts of Programng Lang 3.0
C S345 Operating Systems Design - Operating Systems Design 3.0
C S355 Graphics and Image Processing - Graphics and Image Processing 3.0
C S356 Advanced Techniques in HCI - Advanced Techniques in HCI 3.0
C S393 Adv Algorithms & Probl Solving - Adv Algorithms & Probl Solving 3.0
C S401R Topics in Computer Science - Topics in Computer Science - You may take up to 3.0 credit hours 1.0v
C S405 Software Business - Software Business 3.0
C S412 Linear Prog/Convx Optimization - Linear Prog/Convx Optimization 3.0
C S450 Computer Vision - Computer Vision 3.0
C S453 Fund of Information Retrieval - Fund of Information Retrieval 3.0
C S455 Computer Graphics - Computer Graphics 3.0
C S456 Mobile and Ubiquitous HCI - Mobile and Ubiquitous HCI 3.0
C S460 Comp Comms & Networking - Comp Comms & Networking 3.0
C S462 Distributed System Design - Distributed System Design 3.0
C S465 Computer Security - Computer Security 3.0
C S466 Blockchain Technologies - Blockchain Technologies 3.0
C S470 Intro Artificial Intelligence - Intro Artificial Intelligence 3.0
C S471 Voice Interfaces - Voice Interfaces 3.0
C S473 Advanced Machine Learning - Advanced Machine Learning 3.0
C S474 Deep Learning - Deep Learning 3.0
C S479 Intro to Machine Translation - Intro to Machine Translation 3.0
C S486 Verification and Validation - Verification and Validation 3.0
C S493R Computing Competitions - Computing Competitions - You may take up to 3.0 credit hours 3.0
C S497R Undergraduate Research - Undergraduate Research - You may take up to 6.0 credit hours 3.0
C S498R Undergraduate Special Projects - Undergraduate Special Projects - You may take up to 3.0 credit hours 1.0v
C S501R Adv Topics in Computer Sci - Adv Topics in Computer Sci - You may take up to 3.0 credit hours 1.0v
C S513 Robust Control - Robust Control 3.0
C S556 Research Methods in HCI - Inter Soft Systems 3.0
C S574 Transformers for NLP - Transformers for NLP 3.0
C S575 Intro to Graph Data Science - Intro to Network Science 3.0
C S580 Theory of Predictive Modeling - Theory of Predictive Modeling 3.0
EC EN424 Computer Systems - Computer Systems 4.0
EC EN425 Real-Time Operating Systems - Real-Time Operating Systems 4.0
IT&C567 Cybersecurity & Pen Test - Cybersecurity & Pen Test 3.0
MATH411 Numerical Methods - Numerical Methods 3.0
MATH431 Probability Theory - Probability Theory 3.0
MATH485 Mathematical Cryptography - Mathematical Cryptography 3.0
Note: If C S 493R, C S 498R, or C S 501R is chosen, it must be taken for 3 credit hours.
Requirement 7 — Obtain confirmation from your advisement center that you have completed the following:
Complete Senior Exit interview with the C S department during last semester or term.
Note: Math 112, Math 113, Phscs 121, WRTG 316, and C S 312 can be used to fill both General Education and program
requirements. Advanced Writing and Oral Communication: WRTG 316. Quantitative Reasoning: Math 112 or 113.
Languages of Learning: Math 112 or 113. Physical Science: C S 312 or Phscs 121.