Computer Science, Bachelor of Science in Computer Science
Department of Electrical Engineering and Computer Science
College of Engineering, Forestry, and Natural Sciences
This program is accredited by the Computing Accreditation Commission of the Accreditation Board for Engineering and Technology (ABET / CAC). (ABET / CAC).
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.
- All of Northern Arizona University's diversity, liberal studies, junior-level writing, and capstone requirements.
- All requirements for your specific academic plan(s).
- At least 30 units of upper-division courses, which may include transfer work.
- At least 30 units of coursework taken through Northern Arizona University, of which at least 18 must be upper-division courses (300-level or above). This requirement is not met by credit-by-exam, retro-credits, transfer coursework, etc.
- A cumulative grade point average of at least 2.0 on all work attempted at Northern Arizona University.
The full policy can be viewed here.
In addition to University Requirements:
- At least 39 units of preprofessional requirements
- At least 58 units of major courses
- Up to 9 units of major prefix courses may be used to satisfy Liberal Studies requirements; these same courses may also be used to satisfy major requirements.
- Elective courses, if needed, to reach an overall total of at least 120 units.
Students may be able to use some courses to meet more than one requirement. Contact your advisor for details.
|Minimum Units for Completion||120|
|Highest Mathematics Required||MAT 316|
|Additional Fees/Program Fees||Required|
|University Honors Program||Optional|
|Accelerated Undergraduate/Graduate Plan||Optional|
|Progression Plan Link||Not Available|
Student Learning Outcomes
Graduates are technically competent and prepared for leadership and professional practice with strength in design, problem solving, communications and teaming.
- Possess professional skills and knowledge of the software design process.
- Ability to function effectively in both co-located and distributed software development teams.
- Possess abilities to effectively communicate orally.
- Possess abilities to effectively communicate in writing.
- Abilities in creativity, critical thinking and problem identification, formulation and solving.
- Competence in and ability to apply foundational theoretical concepts and skills related to software development, including underlying knowledge of mathematics (including discrete math, linear algebra, and statistics).
- Familiarity with a broad range of programming languages and paradigms, with practical competence in at least two languages and paradigms.
- Ability to apply knowledge of formal software development concepts to select and apply software development processes, programming paradigms, and architectural models appropriate to different application contexts.
- Motivation and skills needed for lifelong learning.
- Ability to use industry standard Integrated Development Environments (IDEs), debugging support tools, and other modern software development tools.
- Ability to relate a broad education and contemporary issues to software solutions and their impact in a societal and global context.
- An appreciation and understanding of professional and ethical responsibility.
- Be a leader in educational innovation and the use of technology in providing a quality educational experience.
- Attract and retain well-qualified students.
- Foster advising and mentoring relationships between faculty and students.
- Graduates have accurate, well-formed expectations about workplace or graduate school.
Take the following 97 units with a Grade of "C" or better in all required CS Core courses and CS 486C:
Preprofessional Requirements (at least 39 units)
- Basic Science courses, select one of the following blocks (7-8 units):
- Technical electives at the 200-level or above, select from (6 units):
- Engineering disciplines (EE, EGR, ME, CENE)
- Mathematics or Natural Sciences (MAT, STA, AST, BIO, CHM, GLG, PHY)
- CS (excluding CS 248)
- You may petition the department chair for approval of courses with other prefixes.
- ENG 302W (3 units)
- Core Courses: CS 126, CS 126L, CS 136, CS 136L, CS 200, CS 212, CS 249, CS 301, CS 315, CS 386, CS 396, CS 421, CS 476, CS 480 (36 units)
- CS 486C (4 units)
- CS electives at the 300-level or above, chosen with your academic or faculty advisor (18 units)
Accelerated Bachelor's to Master's Program
This program is available as an Accelerated Undergraduate/Graduate Plan. Accelerated Programs provide the opportunity for outstanding undergraduates working on their bachelor’s degree to simultaneously begin work on a master’s degree, which may allow them to complete both degrees in an accelerated manner by applying 6 units toward both degrees. Students must apply to the accelerated program and the master’s program by the application deadline, and meet all requirements as listed on the Accelerated Bachelor's to Master's Programs to be considered for admission. Admission to programs is competitive and qualified applicants may be denied because of limits on the number of students admitted each year. Be sure to speak with your advisor regarding your interest in Accelerated Programs.
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.
No more than one "D" is allowed in CS electives and technical electives.
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.