Computer Science
Major Requirements
Major: Computer Science
Degree Type: B.S.
Minimum Degree Credits to Graduate: 120
University Degree Requirements
- Satisfactory completion of all requirements of the curriculum in which one is enrolled.
- Earn a minimum total of 120 credits in approved coursework. Some academic programs exceed this minimum.
- Satisfactory completion of the general education requirements as specified by the university.
- A minimum institutional GPA of 2.00 based on work taken at NDSU.
- At least 30 credits must be NDSU resident credits. Resident credits include credits registered and paid for at NDSU.
- At least 36 credits presented for graduation must be in courses numbered 300 or higher.
- 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.
Code | Title | Credits |
---|---|---|
Category C: Communication | 12 | |
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 Credits | 39 |
- *
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.
Code | Title | Credits |
---|---|---|
B.S. Computer Science Core Requirements | ||
CSCI 160 | Computer Science I | 4 or 6 |
or CSCI 227 & CSCI 228 | Computing Fundamentals in Python I and Computing Fundamentals in Python II | |
CSCI 161 | Computer Science II | 4 |
CSCI 213 | Modern Software Development | 3 |
CSCI 222 | Discrete Mathematics | 3 |
CSCI 313 | Software Development with Frameworks | 3 |
CSCI 336 | Theoretical Computer Science | 3 |
CSCI 366 | Database Systems | 3 |
CSCI 372 | Comparative Programming Languages | 3 |
CSCI 374 | Computer Organization and Architecture | 3 |
CSCI 445 | Software Projects Capstone 1 | 3 |
CSCI 455 | Networking and Parallel Computation | 3 |
CSCI 467 | Algorithm Analysis | 3 |
CSCI 474 | Operating Systems Concepts | 3 |
CSCI 489 | Social Implications of Computers 1 | 3 |
MATH 165 | Calculus I (May satisfy general education category R) | 4 |
MATH 166 | Calculus II | 4 |
STAT 367 | Probability | 3 |
STAT 368 | Statistics | 3 or 5 |
or STAT 330 & STAT 331 | Introductory Statistics and Regression Analysis | |
Track: Select one track from the four listed below | 12 | |
Total Credits | 70-74 |
STANDARD TRACK
Code | Title | Credits |
---|---|---|
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 Credits | 12 |
CYBERSECURITY TRACK
Code | Title | Credits |
---|---|---|
CSCI 277 | Introduction to UNIX | 3 |
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 Credits | 12 |
DATA SCIENCE TRACK
Code | Title | Credits |
---|---|---|
MATH 129 | Basic Linear Algebra | 3 |
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 Credits | 12 |
SOFTWARE ENGINEERING TRACK
Code | Title | Credits |
---|---|---|
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 Credits | 12 |
Major Requirements
Major: Computer Science
Degree Type: B.A.
Minimum Degree Credits to Graduate: 120
University Degree Requirements
- Satisfactory completion of all requirements of the curriculum in which one is enrolled.
- Earn a minimum total of 120 credits in approved coursework. Some academic programs exceed this minimum.
- Satisfactory completion of the general education requirements as specified by the university.
- A minimum institutional GPA of 2.00 based on work taken at NDSU.
- At least 30 credits must be NDSU resident credits. Resident credits include credits registered and paid for at NDSU.
- At least 36 credits presented for graduation must be in courses numbered 300 or higher.
- 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.
Code | Title | Credits |
---|---|---|
Category C: Communication | 12 | |
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 Credits | 39 |
- *
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.
Code | Title | Credits |
---|---|---|
B.A. Computer Science Core Requirements | ||
CSCI 114 | Computer Applications (May satisfy general education category S) | 3 |
or TL 116 | Business Software Applications | |
CSCI 159 | Computer Science Problem Solving | 3 |
CSCI 160 | Computer Science I | 4 or 6 |
or CSCI 227 & CSCI 228 | Computing Fundamentals in Python I and Computing Fundamentals in Python II | |
CSCI 161 | Computer Science II | 4 |
CSCI 213 | Modern Software Development | 3 |
CSCI 222 | Discrete Mathematics | 3 |
CSCI 312 | Survey of Programming Languages | 3 |
CSCI 313 | Software Development with Frameworks | 3 |
CSCI 366 | Database Systems | 3 |
CSCI 371 | Web Scripting Languages | 3 |
CSCI 445 | Software Projects Capstone 1 | 3 |
CSCI 488 | Human-Computer Interaction | 3 |
CSCI 489 | Social Implications of Computers 1 | 3 |
Related Major Requirements | ||
COMM 260 | Introduction to Web Design | 3 |
COMM 261 | Introduction to Web Development (or any 300/400 level CSCI elective) | 3 |
MATH 146 | Applied Calculus I (May satisfy general education category R) | 4 |
or MATH 165 | Calculus I | |
STAT 330 | Introductory Statistics | 3 |
STAT 331 | Regression Analysis | 2 |
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 | MATH prefix course with a number higher than MATH 147, but not MATH 165 | |
Statistics | STAT prefix course (except for STAT 330 or STAT 331) | |
BA Degree Requirements | ||
Proficiency at the second year level in a modern foreign language. | ||
Total Credits | 63-65 |
Minor Requirements
Minor: Computer Science
Minimum Credits: 16
Minor Requirements
Code | Title | Credits |
---|---|---|
Required Courses | ||
CSCI 213 | Modern Software Development | 3 |
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 Credits | 16-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.