The Flagship Program
The Bachelor of Science program is the degree that most students pursue and addresses the more formal requirements for most Masters’ or Ph. D. Level programs. It provides the best all-around preparation for those intending to make a career in computing areas. View the BS Standard Track Flow Chart and full list of Computer Science Course Descriptions.
The learning goals of the program focus on the ability to;
apply knowledge of computer and mathematics appropriate to the discipline
analyze a problem and identify and define the computing requirements appropriate to its solution
design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs
function effectively on teams to accomplish a common goal
understand professional, ethical, legal, security, and social issues and responsibilities;
communicate effectively with a range of audience
analyze the local and global impact of computing on individuals, organizations, and society
recognize and engage in continuing professional development
use current techniques, skills, and tools necessary for computing practices
apply mathematical foundations, algorithmic principles, and computer science theory in the modeling and design of computer-based systems in a way that demonstrates comprehension of the trade-offs involved in design choices
apply design and development principles in the construction of software systems of varying complexity
High School Preparation
You should have the basic college preparatory courses in high school. Courses that develop the ability to think logically, to organize and to analyze are especially recommended (e.g., algebra, geometry, trigonometry, statistics, and calculus) if you plan to pursue this degree.
Plan of Study
Those wishing to earn a BS degree typically start with the core computer science courses CSCI 160 and 161. The major requires the courses from the following list;
CSCI 160: Computer Science I (fall and spring)
Computer Science Capstone Courses
Requirements for the STANDARD TRACK (view Standard Track Flowchart)
MATH 129: Basic Linear Algebra OR
ELECTIVES: Students need to take an additional 9 credits of CSCI 300-400 electives that are not part of the core requirement as well.
Requirements for the CYBERSECURITY TRACK (view Cybersecurity Track Flowchart)
CSCI 277: Introduction to UNIX
ELECTIVES: Students need to take an additional 9 credits of cybersecurity electives from CSCI 401-410, CSCI 469: Network Security, or CSCI 473: Foundations of the Digital Enterprise
Requirements for the DATA SCIENCE TRACK (view Data Science Track Flowchart)
MATH 129: Basic Linear Algebra
ELECTIVES: Students need to take an additional 9 credits of data science electives from CSCI 420-428, CSCI 436: Intelligent Agents, CSCI 450: Cloud Computing, CSCI 479: Introduction to Data Mining, or GEOG 455: Introduction to Geographic Information Systems
Requirements for the SOFTWARE ENGINEERING TRACK (view Software Engineering Track Flowchart)
MATH 129: Basic Linear Algebra OR
ELECTIVES: Students need to take an additional 9 credits of software engineering electives from CSCI 411-419, CSCI 450: Cloud Computing, CSCI 473: Foundations of the Digital Enterprise, or CSCI 488: Human-Computer Interaction
Additional university, college, and departmental requirements include;
Communication (C): 12 credits
ENGL 110: College Composition I
|Quantitative Reasoning (R): † 3 credits|
|Science and Technology (S): † 10 credits|
|Humanities and Fine Arts (A): † 6 credits|
|Social and Behavioral Sciences (B): † 6 credits|
|Wellness (W): † 2 credits|
|Cultural Diversity (D) *†|
| Global Perspectives (G) *† |
|Total Credits: 39 credits|
†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.
Students should consult the current general education requirements for specific courses in the NDSU Bulletin. If you consult the General Education Requirements, or the College requirements for a B.S. as described in the NDSU Bulletin, you may see requirements that appear to be slightly different from those described above, as well as other categories of requirements, such as Quantitative Reasoning and Science & Technology. However, if you satisfy the requirements described above, you should have any of these other requirements satisfied automatically. A grade of C or better is required in all Computer Science (CSCI) courses used toward the major. All core Computer Science courses must be taken at NDSU or transferred in when the student enters NDSU as a transfer student. Actual student schedules for each semester will vary depending on start year, education goals, applicable transfer credit, and course availability. Students are strongly encouraged to work with their academic advisor on a regular basis to review degree progress and customize an individual plan of study.