Software Engineering
Bachelor of Science
Quick Facts
Top 3%
Online Bachelor's
Program in the Nation
- U.S. News & World Report, 2024
TOP 25
Public Flagship
University
- U.S. News & World Report, 2024
Meet the ever-growing demands of the commercial, industrial and federal government job sectors with a Bachelor of Science in Software Engineering.
The BS in Software Engineering coherently integrates proven engineering techniques and disciplines with software development best practices that encompass all aspects of the software development lifecycle (SDLC). The curriculum includes core principles from systems engineering, electrical and computer engineering, and software engineering. The curriculum is based on a solid foundation of mathematics, including calculus, physics and discrete math.
Relevant software methodologies integral to the curriculum include Agile development, automated testing using continuous integration and Software DevOps. DevOps combines software development (Dev) and IT operations (Ops) to increase software application velocity and service delivery.
*Residents of some U.S. Territories may not be eligible. Please see our Eligibility & State Authorization page for more information.
The curriculum for this program includes:
This course introduces students to the different SW development lifecycle (SDLC) phases used in developing, delivering and maintaining SW products.
Using industry best practices and tools, students learn how to elicit, analyze, specify, and validate SW requirements. In addition to developing and analyzing SW requirements, students also learn how to establish and maintain a configuration baseline for subsequent changes, updates, and enhancements to the SW product as it evolves over time.
This course explores current processes, methods, and tools used in modeling and designing SW systems. Working in teams, students develop a SW design utilizing industry best practices, common design patterns, and modeling tools. They analyze various SW quality attributes in design decision making. Traceability between SW requirements and designs, and ultimately code implementation, is also part of the semester project.
Students learn to develop and utilize secure SW coding standards and defensive programming techniques to ensure that the SW functions in its intended manner; free from coding errors and inadvertent bugs that may have been introduced during development. This course promotes software integrity, security, quality, and reliability in the SW as it is developed and tested.
Students develop a SW product using a SW DevOps workflow approach with common tools used in industry. Using DevOps workflows and continuous integration/continuous delivery approaches, students assess if the quality and reliability of the SW is increased.
Students plan and track the progress of a SW development project using metrics to monitor team performance, predict cost and schedule execution, develop and assess risks/mitigation plans, and measure the quality and maturity/volatility of the software product itself.
Outcomes
Skills
Earning your Bachelor of Science in Software Engineering will build core skills, including:
- Software requirements analysis
- Software architecture
- Continuous integration
- Continuous deployment
- SW DevOps
- Software assurance
- Software configuration management
- Agile development
- Cost estimating
- Coding in multiple languages
- Operating systems
- Development tools
- SW Project Management
- Systems engineering
- Software quality assurance
Potential Career Paths
Graduates of the Software Engineering program will be prepared to pursue careers in the following fields: