Software Engineering Major

Degree Type: B.S. 
Minimum Credits Required: 120

University Degree Requirements

For complete details on these and other university degree requirements, refer to the Degree and Graduation Requirements section in the University Catalog.

  1. Minimum of 120 semester credits (some programs may exceed this minimum).
  2. Complete the University General Education requirements.
  3. Minimum institutional GPA of 2.00 based on work taken at NDSU.
  4. Minimum of 30 credits in resident at NDSU.
  5. Minimum of 36 upper level credits (courses numbered 300 or higher).
  6. Students with transfer credit must meet the NDSU 30 credits in residence (#4). Of these 30 credits in residence, a minimum of 15 credits must be in courses numbered 300 or above, and 15 credits must be in the student's declared major curricula.

University General Education Requirements

A list of university approved general education courses along with the administrative policies governing the requirement and the categories is available

Category C: Communication12
Category R: Quantitative Reasoning3
Category S: Science and Technology10
Category A: Humanities and Fine Arts6
Category B: Social and Behavioral Sciences6
Category W: Wellness2
Category I: Intercultural Knowledge and Competence
Category L: Digital Literacy
Total Credits39

Major Requirements

ECE 111Introduction to Electrical and Computer Engineering3
ECE 211Circuit Analysis I 14
ECE 275Digital Design 14
ECE 341Random Processes3
ECE 374Computer Organization4
ECE 376Embedded Systems4
ECE 479Formal Verification3
CSCI 160Computer Science I 14
CSCI 161Computer Science II 14
CSCI 213Modern Software Development With AI Tools 13
CSCI 222Discrete Mathematics 13
CSCI 305Principles of Cybersecurity 13
CSCI 313Software Development with Frameworks 13
CSCI 366Database Systems 13
CSCI 372Comparative Programming Languages 13
CSCI 413Principles of Software Engineering 13
CHEM 121General Chemistry I3
or BIOL 111 Concepts of Biology
MATH 129Basic Linear Algebra 13
MATH 165Calculus I 14
MATH 166Calculus II 14
MATH 265Calculus III 14
PHYS 251University Physics I4
STAT 330Introductory Statistics3
Software Engineering Track & Technical Electives
Select either Systems Programming track or Applications Development track to complete the requirements for the major. The technical electives will vary depending on the track selected. 18 or 21
Total Credits97-100
1

A grade of C or better is required for all CSCI prefix courses in the core and the tracks, and also in ECE 275, ECE 211, and all required MATH prefix courses.

Systems Programming Track

ECE 401Design I1
ECE 403Design II2
ECE 405Design III3
ECE 474Computer Architecture3
ENGR 327Ethics, Engineering, and Technology3
Technical Electives: Any 300-400 level CSCI or ECE courses not listed as program requirements above. 19
Total Credits21

Applications Development Track

CSCI 416Software Architecture and Design 13
CSCI 419Software Testing and Debugging 13
CSCI 445Software Projects Capstone 13
CSCI 489Social Implications of Computers 13
Technical Electives: Any 300-400 level CSCI or ECE courses not listed as program requirements above. 16
Total Credits18