Software engineering consists of the principled application of repeatable processes and methods for the design, development, maintenance, and evolution of software systems. The field is distinguished from programming and computer science by its emphasis on practical techniques supporting the team-based development of large-scale and long-lived software systems that are required to operate reliably and within specified functional and non-functional constraints.
Students in the BSSE will be provided with skills in software engineering processes, including requirements analysis, software design and architecture, software testing, multiple programming languages and libraries, cloud computing technologies, project management, and foundational areas such as data structures and algorithmic complexity. Elective selections will permit students to specialize in other application areas, including human-computer interaction, socio-technical computing, computer networks, high-performance computing, and cybersecurity. A capstone project will allow students to exercise the full breadth of their skillset by working with clients on real-world projects.
A distinctive characteristic of this program, and one that exemplifies its emphasis on workforce development, is the inclusion of required and industry-recognized professional certifications. All graduates of this program will be required to complete the Professional Software Developer (PSD) Certification offered by the IEEE Computer Society. In addition to the IEEE certification, students will have the opportunity to earn the Amazon Web Services (AWS) Certified Solutions Architect Professional (CSAP) certification.
Students in the BSSE will be provided with skills in software engineering processes, including requirements analysis, software design and architecture, software testing, multiple programming languages and libraries, cloud computing technologies, project management, and foundational areas such as data structures and algorithmic complexity. Elective selections will permit students to specialize in other application areas, including human-computer interaction, socio-technical computing, computer networks, high-performance computing, and cybersecurity. A capstone project will allow students to exercise the full breadth of their skillset by working with clients on real-world projects. Software engineering positions are seeing rapid and expected continued growth, at a rate of 21% growth projected through 2028. With the new found skills in software engineering processes, graduates from the program will be able to join, and be successful in, the software developer workforce.
To receive a bachelor's degree at Northern Arizona University, you must complete at least 120 units of credit that minimally includes a major, the liberal studies requirements, and university requirements as listed below.
The full policy can be viewed here.
In addition to University Requirements:
Students may be able to use some courses to meet more than one requirement. Contact your advisor for details.
Minimum Units for Completion | 120 |
Major GPA | 2.0 |
Highest Mathematics Required | MAT 226 |
University Honors Program | Optional |
Some online/blended coursework | Required |
Progression Plan Link | View Progression Plan |
Purpose Statement
Software engineering consists of the principled application of repeatable processes and methods for the design, development, maintenance, and evolution of software systems. The field is distinguished from programming and computer science by its emphasis on practical techniques supporting the team-based development of large-scale and long-lived software systems that are required to operate reliably and within specified functional and non-functional constraints.
Students in the BSSE will be provided with skills in software engineering processes, including requirements analysis, software design and architecture, software testing, multiple programming languages and libraries, cloud computing technologies, project management, and foundational areas such as data structures and algorithmic complexity. Elective selections will permit students to specialize in other application areas, including human-computer interaction, socio-technical computing, computer networks, high-performance computing, and cybersecurity. A capstone project will allow students to exercise the full breadth of their skillset by working with clients on real-world projects.
A distinctive characteristic of this program, and one that exemplifies its emphasis on workforce development, is the inclusion of required and industry-recognized professional certifications. All graduates of this program will be required to complete the Professional Software Developer (PSD) Certification offered by the IEEE Computer Society. In addition to the IEEE certification, students will have the opportunity to earn the Amazon Web Services (AWS) Certified Solutions Architect Professional (CSAP) certification.
Our ability to efficiently support the BSSE program is strengthened by our roster of related programs, including our computer science and applied computer science programs, which share many core programming courses with software engineering, and our cybersecurity programs. This program also expands on the existing options for our students to pursue computer science related degrees, with a focus on industry career opportunities.
Student Learning Outcomes
This major requires 88 - 89 units distributed as follows:
Take the following 88 - 89 units with a Grade of "C" or better in each course:
Technical Electives (6 units)
Professional Requirements (65 units)
No more than one D is allowed in professional and technical electives. Up to six units of letter-graded individualized study (CS 485 or CS 497) may be used to meet degree requirements.
Additional coursework is required if, after you have met the previously described requirements, you have not yet completed a total of 120 units of credit.
You may take these remaining courses from any of the academic areas, using these courses to pursue your specific interests and goals. You may also use prerequisites or transfer credits as electives if they weren't used to meet major, minor, or liberal studies requirements.
We encourage you to consult with your advisor to select the courses that will be most advantageous to you.
Be aware that some courses may have prerequisites that you must also successfully complete. For prerequisite information, click on the course or see your advisor.