Computer Science

This is an archived copy of the 2023-24 catalog. To access the most recent version of the catalog, please visit http://catalog.ndsu.edu.

Major Requirements

Major: Computer Science

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

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

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

 May be satisfied by completing 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.

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

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
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
Track: Select one track from the four listed below12
Total Credits70

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
Principles of Cybersecurity
Malware Detection, Analysis and Threat Mechanisms
Cybersecurity Law and Policy
Computer Crime and Forensics
Network Security
Foundations of the Digital Enterprise
Total Credits12

DATA SCIENCE TRACK

MATH 129Basic Linear Algebra3
Data Science Electives:9
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
Introduction to Geographic Information Systems
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
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)

Major Requirements

Major: Computer Science

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

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

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

 May be satisfied by completing 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.

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

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
CSCI 161Computer Science II4
CSCI 213Modern Software Development3
CSCI 222Discrete Mathematics3
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 Courses
COMM 260Introduction to Web Design3
COMM 261Introduction to Web Development3
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
Science (cannot be courses with the CSCI prefix)
Engineering (cannot be ENGR 311 or ENGR 312)
Math (a course with a number higher than MATH 147, but not MATH 165)
Statistics (cannot be STAT 330 or STAT 331)
Proficiency at the second year level in a modern foreign language.
Total Credits60
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

Required Credits: 17

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.

Certificate Requirements

Computer Science

Required Credits: 9

CSCI 160Computer Science I4
CSCI 161Computer Science II4
CSCI 277Introduction to UNIX3
Total Credits11