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

Computer Science

Computer Science Major

The computer science undergraduate programs, based on recommendations of the Association for Computing Machinery, consist of a core of courses required for majors and a large selection of service courses and advanced courses. A grade of 'C' or better is required in all Computer Science courses. In the core, students are offered an opportunity to study concepts, applications, and implementation techniques that provide a broad practical base for both further study and a career in computing. Through a variety of service courses, every student in the university is provided an opportunity to develop computer literacy or competency. Through advanced undergraduate and graduate courses, students are offered an opportunity for in-depth study of such topics as artificial intelligence, programming languages, mobile applications, computer networks, security, information assurance, office automation, bioinformatics, software development, data mining, and data base management systems. Students are encouraged to choose elective courses from related areas including business, economics, engineering, mathematics, operations research, and statistics.

After completing part of their studies, students will find many opportunities to work part time as a research assistant to a scientist on campus, or as an intern with a local business, applying what they have learned in the classroom. Cooperative education opportunities starting in the junior year are available.

The B.A. concentrates on web development. Students receive an applied grounding in application design, web development, and deployment.

The B.S. program provides the widest exposure to computing with emphasis on high level languages, software development and advanced mathematical concepts.

Top students are encouraged to inquire about the 4+1 program providing a fast track through graduate school resulting in combined Bachelor's and Master's Degrees.

Computer Science Minor

A minor in Computer Science requires at least 17 semester hours of select computer science courses. A grade of 'C' or better is required in all courses applied toward the computer science minor.

Major Requirements

Major: Computer Science

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

General Education Requirements for Baccalaureate Degree

  • A list of approved general education courses is available here .
  • 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 the major, minor, and program emphases requirements for minimum grade restrictions, should they apply.
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.

 May be satisfied with courses required in the major. Review major requirements to determine if a specific upper division writing course is required.

College Requirements

Bachelor of Arts (BA) Degree – An additional 12 credits Humanities and Social Sciences and proficiency at the second year level in a modern foreign language. *12
Bachelor of Science (BS) Degree – An additional 6 credits in Humanities or Social Sciences *6
*

 Humanities and Social Sciences may be fulfilled by any course having the following prefix: ADHM, ANTH, ARCH, ART, CJ, CLAS, COMM, ECON, ENGL, FREN, GEOG, GERM, HDFS, HIST, LA, LANG, MUSC, PHIL, POLS, PSYC, RELS, SOC, SPAN, THEA, WGS, or any course from the approved list of general education courses in humanities and social sciences (general education categories A and B). These credits must come from outside the department of the student’s major.

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 189Skills for Academic Success 11
CSCI 213Modern Software Development3
CSCI 222Discrete Mathematics3
CSCI 313Software Development for Games3
CSCI 336Theoretical Computer Science3
CSCI 366Database Systems3
CSCI 372Comparative Programming Languages3
CSCI 374Computer Organization and Architechure3
CSCI 415Networking and Parallel Computation3
CSCI 445Software Projects Capstone 23
CSCI 467Algorithm Analysis3
CSCI 474Operating Systems Concepts3
CSCI 489Social Implications of Computers 23
ENGL 321Writing in the Technical Professions (May satisfy general education category C)3
or ENGL 324 Writing in the Sciences
MATH 165Calculus I (May satisfy general education category R)4
MATH 166Calculus II4
STAT 367Probability3
STAT 368Statistics3
Computer Science Electives: Select 3 courses from the list below.9
Note: Students seeking recognition of cyber-security skills should follow the cyber-security section below.
Topics on Personal Computers
Web Scripting Languages
Principles of Software Engineering
Simulation Models
Introduction to Artificial Intelligence
Computational Techniques for Environmental Sustainability
Cloud Computing
Linear Programming and Network Flows
Operations Research
Microcomputer Graphics
Foundations of Computer Networks
Mobile and Wireless Networks
Network Security
Foundations of the Digital Enterprise
Computer Forensics
Object-Oriented Systems
Introduction to Data Mining
Human-Computer Interaction
Seminar (Cyber-Security Focus)
Special Topics
Computer Crime, Forensics, and Investigation
Managing Information Technology Security
Total Credits71

Cyber-security

Cyber-security is optional - students interested in pursuing recognition of their achievement in cyber-security core concepts should take the B.S. Core Requirements as indicated above, as well as the additional courses listed here.  This sequence satisfies the Computer Science elective courses required for the B.S. degree.

CSCI 491Seminar (Cyber-Security Focus)3
MIS 415Managing Information Technology Security3
One of the following:3
Foundations of the Digital Enterprise
Topics on Personal Computers (Cyber-Security Focus)
Special Topics (Cyber-Security Focus)
Computer Crime, Forensics, and Investigation
Total Credits9
1

 CSCI 189 is only required for first-time, first-year students--A first-time, first-year student is defined as a student who has not yet completed a college course as a college student.  Students that are not first-time, first-year students that either transfer into the university or change their major are not required to take CSCI 189.

2

Together, 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), form the department capstone.

Major Requirements

Major: Computer Science

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

General Education Requirements for Baccalaureate Degree

  • A list of approved general education courses is available here .
  • 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 the major, minor, and program emphases requirements for minimum grade restrictions, should they apply.
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.

 May be satisfied with courses required in the major. Review major requirements to determine if a specific upper division writing course is required.

College Requirements

Bachelor of Arts (BA) Degree – An additional 12 credits Humanities and Social Sciences and proficiency at the second year level in a modern foreign language. *12
Bachelor of Science (BS) Degree – An additional 6 credits in Humanities or Social Sciences *6
*

 Humanities and Social Sciences may be fulfilled by any course having the following prefix: ADHM, ANTH, ARCH, ART, CJ, CLAS, COMM, ECON, ENGL, FREN, GEOG, GERM, HDFS, HIST, LA, LANG, MUSC, PHIL, POLS, PSYC, RELS, SOC, SPAN, THEA, WGS, or any course from the approved list of general education courses in humanities and social sciences (general education categories A and B). These credits must come from outside the department of the student’s major.

Major Requirements

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

B.A. Computer Science Core Requirements
CSCI 114Microcomputer Packages (May satisfy general education category S)3
or MIS 116 Business Use of Computers
CSCI 159Computer Science Problem Solving3
CSCI 160Computer Science I4
CSCI 161Computer Science II4
CSCI 189Skills for Academic Success 11
CSCI 213Modern Software Development3
CSCI 222Discrete Mathematics3
CSCI 313Software Development for Games3
CSCI 366Database Systems3
CSCI 371Web Scripting Languages3
CSCI 445Software Projects Capstone 23
CSCI 488Human-Computer Interaction3
CSCI 489Social Implications of Computers 23
Related Courses
COMM 260Introduction to Web Design3
COMM 261Introduction to Web Development3
ENGL 321Writing in the Technical Professions (May satisfy general education category C)3
or ENGL 324 Writing in the Sciences
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)
Total Credits64
1

 CSCI 189 is only required for first-time, first-year students--A first-time, first-year student is defined as a student who has not yet completed a college course as a college student.  Students that are not first-time, first-year students that either transfer into the university or change their major are not required to take CSCI 189.

2

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

Computer Science Minor

Minor Requirements

Required Credits: 17

Required Courses
CSCI 213Modern Software Development3
Choose one of the following two sequences:7-8
Computer Science I
and Computer Science II
Computing Fundamentals I
and Computer Science II
Additional Electives: Select 7-8 credits (at least 3 credits must be CSCI 300-400 level).7-8
Total Credits17-19

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 the computer science minor.

B.S. Calculus Ready 4- year plan

Freshman
FallCreditsSpringCredits
CSCI 1604CSCI 1614
CSCI 1891MATH 1664
MATH 1654Lab Science II4-5
Lab Science I4-5General Ed (HUM/FA)3
ENGL 110 or 1203-4 
 16-18 15-16
Sophomore
FallCreditsSpringCredits
CSCI 2133CSCI 3133
CSCI 2223CSCI 3363
COMM 1103General Ed (SOC/BehSci)3
General Ed SOC/BehSci3Add'l Gen Ed I3
Science elective3Wellness2-3
 15 14-15
Junior
FallCreditsSpringCredits
CSCI 3723CSCI 4673
STAT 3673STAT 3683
CSCI 3663CSCI 3743
General Ed (HUM/FA)3Add'l Gen Ed II3
CSCI Elective I3ENGL 321 or 3243
 15 15
Senior
FallCreditsSpringCredits
CSCI 4893CSCI 4153
CSCI 4743CSCI 4453
CSCI elective II3CSCI Elective III3
Additional Elective3Additional Elective3
 12 12
Total Credits: 114-118

B.S. Student needs preparatory MATH course(s)

Freshman
FallCredits
CSCI 1223
or 
CSCI 1593
CSCI 1891
ENGL 1104
or 
ENGL 1203
Lab Science I 
Pre-Calculus course *per placement 
 14
Total Credits: 14