Software engineering involves designing, implementing, and maintaining computer programs. Developing modern software systems requires more than programming skills and core computer science concepts. It requires software engineering skills, which are in high demand in the software industry.

The Software Engineering concentration focuses on the concepts, techniques, and tools necessary for software analysis, design, testing, maintenance, and teamwork. Courses will include hands-on work with the software engineering tools used in industry.

This concentration combines a rigorous computer science degree with courses in software design, software testing, project management, and system analysis and design.

Learning Outcomes

Upon completing this program, students will be able to:

  • Work effectively in teams to develop computational solutions to complex problems.
  • Communicate technical ideas effectively in writing and verbally.
  • Confidently pursue graduate studies or professional employment in software engineering and computer science.

Potential Occupations

In addition to the career opportunities open to all computer science graduates, the software engineering concentration opens career paths that include:
Software developer, software architect, full-stack developer, software project manager, database programmer, computer systems analyst, web developer, computer and information systems manager, UX designer, cloud engineer, mobile application developer, and educator.

Effective Fall 2020

A minimum grade of C (2.000) is required in CO 150 and in all CS, CIS, DSCI, MATH, and STAT courses which are required for graduation.

CO 150College Composition (GT-CO2)1A3
CS 165CS2--Data Structures 4
MATH 160Calculus for Physical Scientists I (GT-MA1)1B4
Select one course from the following: 4
CS1---No Prior Programming Experience  
CS1--Prior Programming Experience  
Select at least two courses totaling a minimum of 7 credits from the following (one course must be or include the sequenced laboratory): 7
Introduction to Astronomy (GT-SC2)3A 
Human Origins and Variation (GT-SC2)3A 
Principles of Animal Biology (GT-SC2)3A 
Principles of Plant Biology (GT-SC1)3A 
Fundamentals of Chemistry (GT-SC2)3A 
General Chemistry I (GT-SC2)3A 
Exploring Earth - Physical Geology (GT-SC2)3A 
The Blue Planet - Geology of Our Environment (GT-SC2)3A 
Geology of Natural Resources (GT-SC2)3A 
Physical Geology for Scientists and Engineers3A 
Honors Seminar: Knowing in the Sciences3A 
Attributes of Living Systems (GT-SC1)3A 
Biology of Organisms-Animals and Plants (GT-SC1)3A 
Introductory Genetics: Applied/Population/Conservation/Ecological (GT-SC2)3A 
Introductory Genetics: Molecular/Immunological/Developmental (GT-SC2)3A 
Fundamentals of Ecology (GT-SC2)3A 
Oceanography (GT-SC2)3A 
General Physics I (GT-SC1)3A 
General Physics II (GT-SC1)3A 
Physics for Scientists and Engineers I (GT-SC1)3A 
Physics for Scientists and Engineers II (GT-SC1)3A 
Arts and Humanities3B3
Diversity and Global Awareness3E3
Elective 2
 Total Credits 30
CIS 320Project Management for Information Systems 3
CS 201/PHIL 201Ethical Computing Systems (GT-AH3)3B3
CS 220Discrete Structures and their Applications 4
CS 253Software Development with C++ 4
CS 270Computer Organization 4
Select one course from the following: 3-4
Linear Algebra for Data Science  
Linear Algebra I  
Select one course from the following: 3
Introduction to Applied Statistical Methods  
Introduction to Biostatistics  
Intro to Theory and Practice of Statistics  
Historical Perspectives3D3
Elective 2-3
 Total Credits 30
CIS 360Systems Analysis and Design 3
CS 314Software Engineering4A,4B3
CS 320Algorithms--Theory and Practice 3
CS 356Systems Security 3
CS 370Operating Systems 3
Select one course from the following: 3-4
Machine Learning Foundations and Practice  
Web Development  
CS course numbered 400- or above, excluding 480-499
Advanced Writing23
Social and Behavioral Sciences3C3
Electives 5-6
 Total Credits 30
CS 414Object-Oriented Design4C4
CS 415Software Testing 4
Depth course - select two courses from the following: 8
Database Systems  
Introduction to Big Data  
Introduction to Artificial Intelligence  
Introduction to Compiler Construction  
Introduction to Distributed Systems  
Principles of Human-Computer Interaction  
Electives1 14
 Total Credits 30
 Program Total Credits: 120

Distinctive Requirements for Degree Program:

To prepare for first semester: The curriculum for the Computer Science major assumes students enter college prepared to take calculus. Entering students who are not prepared to take calculus will need to fulfill pre-calculus requirements in the first semester. All students must maintain a C (2.000) or better in CO 150 and in all CS, CIS, DSCI, MATH, and STAT courses which are required for graduation.

Semester 1CriticalRecommendedAUCCCredits
MATH 160Calculus for Physical Scientists I (GT-MA1) X1B4
Select one course from the following:   4
CS1---No Prior Programming Experience X  
CS1--Prior Programming Experience X  
Department Approved Science (See list on Concentration Requirements Tab)  3A3
Arts and Humanities  3B3
Elective   1
MATH 124 and MATH 126 may be necessary for some students to fulfill pre-calculus requirements.X   
 Total Credits   15
Semester 2CriticalRecommendedAUCCCredits
CO 150College Composition (GT-CO2)  1A3
CS 165CS2--Data Structures X 4
Department Approved Science Course with Lab (See list on Concentration Requirements Tab)  3A4
Diversity and Global Awareness  3E3
Elective   1
CO 150 must be completed by the end of Semester 2 with a grade of C or better.X   
CS 163 or CS 164 must be completed by the end of Semester 2.X   
 Total Credits   15
Semester 3CriticalRecommendedAUCCCredits
CS 220Discrete Structures and their Applications X 4
CS 270Computer Organization X 4
Select one course from the following:   3
Introduction to Applied Statistical Methods    
Introduction to Biostatistics    
Intro to Theory and Practice of Statistics    
Historical Perspectives  3D3
 Total Credits   14
Semester 4CriticalRecommendedAUCCCredits
CIS 320Project Management for Information Systems   3
CS 201/PHIL 201Ethical Computing Systems (GT-AH3) X3B3
CS 253Software Development with C++ X 4
Select one course from the following:   3-4
Linear Algebra for Data ScienceX   
Linear Algebra IX   
Electives   2-3
CS 165 and CS 220 and CS 270 must be completed by the end of Semester 4.X   
MATH 160 and MATH 369 or DSCI 369 must be completed by the end of Semester 4.X   
 Total Credits   16
Semester 5CriticalRecommendedAUCCCredits
CIS 360Systems Analysis and Design   3
CS 320Algorithms--Theory and Practice X 3
CS 370Operating Systems X 3
Advanced Writing  23
Social and Behavioral Sciences  3C3
CS 253 must be completed by the end of Semester 5.X   
 Total Credits   15
Semester 6CriticalRecommendedAUCCCredits
CS 314Software Engineering  4A,4B3
CS 356Systems Security   3
Software Engineering Breadth Course (See list on Concentration Requirements Tab) X 3-4
Electives   5-6
CS 314 and CS 320 and CS 370 must be completed by the end of Semester 6.X   
 Total Credits   15
Semester 7CriticalRecommendedAUCCCredits
CS 414Object-Oriented DesignX 4C4
Depth Course (See list on Concentration Requirements Tab)X  4
Electives   7
At least two 300- to 400-level CS classes must be completed by the end of Semester 7.X   
 Total Credits   15
Semester 8CriticalRecommendedAUCCCredits
CS 415Software TestingX  4
Depth Course (See list on Concentration Requirements Tab)X  4
ElectivesX  7
The benchmark courses for the 8th semester are the remaining courses in the entire program of study.X   
 Total Credits   15
 Program Total Credits:   120