Computer Science Major (B.S.)

Major Requirements

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 here.

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 D: Cultural Diversity
Category G: Global Perspectives
Category L: Digital Literacy
Total Credits39

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)