Computer Science

Major Requirements

Major: Computer Science

Degree Type: B.S.
Minimum Degree Credits to Graduate: 122

University Degree Requirements

  1. Satisfactory completion of all requirements of the curriculum in which one is enrolled.
  2. Earn a minimum total of 120 credits in approved coursework.  Some academic programs exceed this minimum.
  3. Satisfactory completion of the general education requirements as specified by the university.
  4. A minimum institutional GPA of 2.00 based on work taken at NDSU.
  5. At least 30 credits must be NDSU resident credits.  Resident credits include credits registered and paid for at NDSU.
  6. At least 36 credits presented for graduation must be in courses numbered 300 or higher.
  7. Students presenting transfer credit must meet the NDSU residence credits and the minimum upper level credit. Of the 30 credits earned in residence, a minimum of 15 semester credits must be in courses numbered 300 or above, and 15 semester credits must be in the student’s curricula for their declared major.

For complete information, please refer to the Degree and Graduation Requirements section of this Bulletin.

University General Education Requirements

A list of university approved general education courses and administrative policies are available here.

Category C: Communication12
College Composition I
College Composition II
Fundamentals of Public Speaking
Upper Division Writing
Category R: Quantitative Reasoning 3
Category S: Science and Technology 10
Category A: Humanities and Fine Arts 6
Category B: Social and Behavioral Sciences 6
Category W: Wellness 2
Category D: Cultural Diversity *†
Category G: Global Perspectives *†
Total Credits39
*

Courses for category D & G are satisfied by completing D & G designated courses in another general education category.

General education courses may be used to satisfy requirements for both general education and the major, minor, and program emphases, where applicable. Students should carefully review major requirements to determine if specific courses can also satisfy these general education categories.

Major Requirements

 A Grade of 'C' or better is required for all CSCI prefix courses.

B.S. Computer Science Core Requirements
CSCI 160Computer Science I4 or 6
or CSCI 227
CSCI 228
Computing Fundamentals in Python I
and Computing Fundamentals in Python II
CSCI 161Computer Science II4
CSCI 213Modern Software Development3
CSCI 222Discrete Mathematics3
CSCI 313Software Development with Frameworks3
CSCI 336Theoretical Computer Science3
CSCI 366Database Systems3
CSCI 372Comparative Programming Languages3
CSCI 374Computer Organization and Architecture3
CSCI 445Software Projects Capstone 13
CSCI 455Networking and Parallel Computation3
CSCI 467Algorithm Analysis3
CSCI 474Operating Systems Concepts3
CSCI 489Social Implications of Computers 13
MATH 165Calculus I (May satisfy general education category R)4
MATH 166Calculus II4
STAT 367Probability3
STAT 368Statistics3 or 5
or STAT 330
STAT 331
Introductory Statistics
and Regression Analysis
Track: Select one track from the four listed below12
Total Credits70-74

STANDARD TRACK

Select one of the following:3
Basic Linear Algebra
Introduction to UNIX
Computer Science Electives:9
Select 3 didactic courses from any 300-400 level CSCI prefix courses that are not part of the core requirement.
Total Credits12

CYBERSECURITY TRACK

CSCI 277Introduction to UNIX3
Cybersecurity Electives:9
Defensive Network Security
Ethical Hacking
CSCI 405
Malware Detection, Analysis and Threat Mechanisms
Cybersecurity Law and Policy
Computer Crime and Forensics
Secure Software Development
Network Security
Foundations of the Digital Enterprise
Total Credits12

DATA SCIENCE TRACK

MATH 129Basic Linear Algebra3
Data Science Electives:9
Secure Software Development
Introduction to Data Science in Python
Fundamentals of Data Engineering
Machine Learning
Introduction to Artificial Intelligence
Artificial Intelligence, Ethics, and the Environment
Intelligent Agents
Cloud Computing
Introduction to Data Mining
Total Credits12

SOFTWARE ENGINEERING TRACK

Select one of the following:3
Basic Linear Algebra
Introduction to UNIX
Software Engineering Electives:9
Secure Software Development
Mobile Software Engineering
Principles of Software Engineering
Software Architecture and Design
Software Testing and Debugging
Fundamentals of Data Engineering
Cloud Computing
Foundations of the Digital Enterprise
Human-Computer Interaction
Total Credits12
1

Department Capstone: CSCI 445 Software Projects Capstone (typically taken during the last spring semester prior to degree completion) & CSCI 489 Social Implications of Computers (typically taken during the last fall semester prior to degree completion)

Link to view program description and 4-year Plan of Study

Major Requirements

Major: Computer Science

Degree Type: B.A.
Minimum Degree Credits to Graduate: 122

University Degree Requirements

  1. Satisfactory completion of all requirements of the curriculum in which one is enrolled.
  2. Earn a minimum total of 120 credits in approved coursework.  Some academic programs exceed this minimum.
  3. Satisfactory completion of the general education requirements as specified by the university.
  4. A minimum institutional GPA of 2.00 based on work taken at NDSU.
  5. At least 30 credits must be NDSU resident credits.  Resident credits include credits registered and paid for at NDSU.
  6. At least 36 credits presented for graduation must be in courses numbered 300 or higher.
  7. Students presenting transfer credit must meet the NDSU residence credits and the minimum upper level credit. Of the 30 credits earned in residence, a minimum of 15 semester credits must be in courses numbered 300 or above, and 15 semester credits must be in the student’s curricula for their declared major.

For complete information, please refer to the Degree and Graduation Requirements section of this Bulletin.

University General Education Requirements

A list of university approved general education courses and administrative policies are available here.

Category C: Communication12
College Composition I
College Composition II
Fundamentals of Public Speaking
Upper Division Writing
Category R: Quantitative Reasoning 3
Category S: Science and Technology 10
Category A: Humanities and Fine Arts 6
Category B: Social and Behavioral Sciences 6
Category W: Wellness 2
Category D: Cultural Diversity *†
Category G: Global Perspectives *†
Total Credits39
*

Courses for category D & G are satisfied by completing D & G designated courses in another general education category.

General education courses may be used to satisfy requirements for both general education and the major, minor, and program emphases, where applicable. Students should carefully review major requirements to determine if specific courses can also satisfy these general education categories.

Major Requirements

 A Grade of 'C' or better is required for all CSCI prefix courses.

B.A. Computer Science Core Requirements
CSCI 114Computer Applications (May satisfy general education category S)3
or TL 116 Business Software Applications
CSCI 159Computer Science Problem Solving3
CSCI 160Computer Science I4 or 6
or CSCI 227
CSCI 228
Computing Fundamentals in Python I
and Computing Fundamentals in Python II
CSCI 161Computer Science II4
CSCI 213Modern Software Development3
CSCI 222Discrete Mathematics3
CSCI 312Survey of Programming Languages3
CSCI 313Software Development with Frameworks3
CSCI 366Database Systems3
CSCI 371Web Scripting Languages3
CSCI 445Software Projects Capstone 13
CSCI 488Human-Computer Interaction3
CSCI 489Social Implications of Computers 13
Related Major Requirements
COMM 260Introduction to Web Design3
COMM 261Introduction to Web Development (or any 300/400 level CSCI elective)3
MATH 146Applied Calculus I (May satisfy general education category R)4
or MATH 165 Calculus I
STAT 330Introductory Statistics3
STAT 331Regression Analysis2
Other Courses:
Select these seven credits from the following areas:7
ScienceCannot be courses with the CSCI prefix
EngineeringCannot be ENGR 311 or ENGR 312
MathMATH prefix course with a number higher than MATH 147, but not MATH 165
StatisticsSTAT prefix course (except for STAT 330 or STAT 331)
BA Degree Requirements
Proficiency at the second year level in a modern foreign language.
Total Credits63-65
1

CSCI 445 Software Projects Capstone & CSCI 489 Social Implications of Computers form the department capstone. CSCI 445 is typically taken during the last spring semester and CSCI 489 is typically taken during the last fall semester prior to degree completion. 

Minor Requirements

Minor: Computer Science

Minimum Credits: 16

Minor Requirements

Required Courses
CSCI 213Modern Software Development3
Choose one of the following sequences:8-9
Computer Science I
and Computer Science II
Computing Fundamentals in Python I
and Computing Fundamentals in Python II
and Computing Fundamentals in Python III
Additional Electives: Select 5 or 6 credits to reach the minor 16 cr. minimum (at least 3 credits must be CSCI 300-400 level).5-6
Total Credits16-18

Minor Requirements and Notes

  • A minimum of 8 credits must be taken at NDSU.
  • A grade of 'C' or better is required in all courses applied to this minor.