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

Computer Science

Program and Application Information
Department Head:Dr. Brian M. Slator
Graduate Coordinator:Dr. Changhui Yan
Department Location:258 QBB (formerly IACC)
Department Phone:(701) 231-8562
Department Email:gradinfo@cs.ndsu.edu
Department Web Site:cs.ndsu.edu/
Application Deadline:February 1 for fall semester; September 1 for spring semester**
Degrees Offered:Ph.D., M.S.
Test Requirement:GRE
English Proficiency Requirements:TOEFL ibT 79; IELTS 6.5

**Spring admissions are given only occasionally, depending on funding and faculty research needs. If there are no spring openings, spring applicants are automatically considered for the subsequent fall semester. There are no summer admissions for any Computer Science program.


Program Description

The Department of Computer Science and Operations Research offers the Master of Science (M.S.) and Doctor of Philosophy (Ph.D.) degrees in Computer Science. Graduate course work in Operations Research is offered and may be used to provide an operations research concentration to either program. For additional information, please contact the department at (701) 231-8562 or gradinfo@cs.ndsu.edu.

Admissions Requirements

In addition to the minimum Graduate School requirements, the following items are required for all Computer Science applicants seeking an advanced degree:

Master of Science

  • The applicant must have a bachelor’s degree from an educational institution of recognized standing. Admission to the program is competitive; the following minimum requirements are necessary but are not sufficient for automatic admission.
  • The applicant must show, by a combination of educational background, academic performance, and work experience, the potential to succeed in advanced study and research in computer science. Minimum preparation usually includes the ability to program in one or more modern, commonly used high-level languages (such as Java or C++); and experience in using data structures such as linked lists and binary trees. Minimum preparation for unconditional admission to the master's program would normally include courses in computer science principles and theory equivalent to the NDSU courses.
CSCI 161Computer Science II4
CSCI 222Discrete Mathematics3
CSCI 366Database Systems3
CSCI 372Comparative Programming Languages3
  • The applicant for the Computer Science M.S. degree program must have a cumulative grade point average (GPA) in all previous courses of at least 3.0 (out of 4.0) or equivalent to attain full standing.
  • The applicant for the Computer Science M.S. degree program must have a score above the median (50th percentile) for the quantitative reasoning portion of the GRE exam.
  • International students are welcome to apply. They must submit TOEFL, IELTS, or PTE Academic score. Minimum requirements are: TOEFL score of at least 550 (paper based) or 79 (internet based); IELTS score of at least 6.5; or PTE Academic score of at least 53.
  • Eligibility for a teaching or tutoring assistantship requires the following additional requirements: TOEFL score minimum overall of 79, with minimum of 19 speaking, and minimum of 21 writing; IELTS score minimum overall of 6.5, with a minimum of 5.5 speaking and minimum of 6.0 writing; or PTE Academic score minimum overall of 53, with a minimum of 51 speaking and minimum of 56 writing.

Doctor of Philosophy

The applicant must have at least a four-year bachelor's degree, or a master's degree in computer science. In some cases, students with a degree in a closely related area may be considered, provided the course work includes exposure to the skills listed under M.S. above. Students with only a bachelor's degree should have substantial computer science experience, whether acquired through course work or professional experience.

Admission to the program is competitive, and requirements for admission to this program are more rigorous than for admission to the M.S. program. Students applying with a bachelor's degree only should meet a minimum GPA of 3.25 in previous coursework. The applicant for Computer Science Ph.D. degree program must have a GRE score above the median (50th percentile) for the quantitative reasoning portion. The admissions committee will evaluate the applicant's overall academic record, as well as any relevant employment and professional experience. Of particular importance is evidence of the applicant's potential for scholarship and independent research at the Ph.D. level. International students are welcome. English Language requirements are the same as for the Computer Science M.S. program.

The graduate admissions committee reviews all applications during the month following the application deadline and considers accepted students for any available assistantship positions within the department. If an assistantship is not offered at time of admission, accepted students can then fill out an application on the Computer Science website for later consideration.

Financial Assistance

Assistantships are available to selected graduate students. Teaching one section of a lower division service course requires 10 hours of work per week and qualifies the student for a waiver of graduate tuition and a monthly stipend. Other assistantships that provide a stipend and tuition waiver include research assistantships, which involve assisting faculty with their research, and graduate service assistantships, which involve tutoring, grading or computer-related work with faculty members or organizations on campus. Related prior experience increases the likelihood of a teaching or tutoring assistantship being awarded. For all assistantships, a student's chances are greater after they have been at NDSU one or two semesters.

The department offers a tuition waiver only to students who are awarded an assistantship. There is a scholarship program that includes a tuition waiver, administered by the Dean of the Graduate School. Students should contact the Graduate School for application forms.

Master of Science

Master of Science in Computer Science Degree Requirements32
Semester core courses (required of all students):
Software Development Processes
Survey of Artificial Intelligence
Algorithm Analysis
Introduction To Database Systems
Graduate Seminar
Three to five additional 700-800 level Computer Science courses selected in consultation with your adviser.
Thesis Option
Additional graduate coursework8-12
Master's Thesis (6-10 credits)
Comprehensive Study Option
Additional Graduate Coursework14-16
Master's Paper (2-4 credits)

  • Research adviser should be selected by the end of the second semester at NDSU.
  • A Plan of Study listing coursework and examination committee members should be completed by the end of the second semester at NDSU.
  • All course work must be approved by the student's adviser, Supervisory Committee, department chair, and graduate dean through the plan of study.
  • A maximum of 9 semester credits may be transferred into the program. There may be a maximum of 6 credits of independent study.
  • Comprehensive Examination (on the core courses) should be completed by the end of the fourth semester.
  • Final Oral Examination on the student's research.

Doctor of Philosophy

Doctor of Philosophy in Computer Science degree requirements 90
Core Courses: (or their equivalent in transfer or examination credits)
Software Development Processes
Survey of Artificial Intelligence
Algorithm Analysis
Introduction To Database Systems
Five to ten additional courses selected in consultation with your adviser.
  • Research adviser should be selected by the second semester at NDSU.
  • A minimum of 15 didactic credits numbered 700 -789 or 800-898, of which at least 9 are not included in the Computer Science Core Courses listed above.
  • 30-45 semester credit hours of research – The Ph.D. requires a research contribution to be made under the supervision of one of the Computer Science Department’s graduate faculty members.
  • Research proposal presentation and preliminary oral examination (qualifying exam) should be completed by the fourth semester at NDSU
  • Satisfactory completion of the Comprehensive Exam at the PhD Level. (written based on the core courses)
  • Dissertation
  • Final oral examination on the dissertation.

Some additional information regarding the course work:

  • A student holding a Master of Science degree from an educational institution of recognized standing may use:
    • 30 credits previously completed toward the 90 total credits required for the doctoral degree OR
    • Up to 9 credits previously earned graduate level courses with a grade of B or better may be used toward the 90 total credits for the doctoral degree.
  • The 90 credits (including any credits transferred) must be computing-related with at least 45 credits involving significant graduate level computer science material. Generally, these credits would be offered by a computer science department.
  • The 90 credits may include a maximum of 15 credits of non-didactic courses (independent studies or seminars). Seminars are limited to 4 of those credits.
  • The student's advisory committee, the department chair, the college dean, and the graduate dean all must approve the course work on the plan of study.

Department Faculty

Anne Denton, Ph.D.
University of Mainz, 1996
Research Interests:  Data Mining, Bioinformatics, Scientific Informatics, Databases, Geospatial Data, Cloud Computing

Wei Jin, Ph.D.
State University of New York at Buffalo, 2008
Research Interests: Text and Web Mining, Information Retrieval and Extraction, Machine Learning, Bioinformatics and Health Informatics

Dean Knudson, Ph.D.
Northwestern University, 1972
Research Interests: Software Engineering, International Capstone Programs, University/Industry Relationships

Jun Kong, Ph.D.
University of Texas, Dallas, 2005
Research Interests: Human Computer Interaction, Mobile Computing, Software Engineering

Juan (Jen) Li, Ph.D.
University of British Columbia, 2008
Research Interests: Large-scale Distributed System ( P2P and Cloud Computing, Distributed Search, Routing Algorithms), Semantic Web Technologies, Social Networks, Information Retrieval, Knowledge Discovery

Simone Ludwig, Ph.D.
Brunel University, 2004
Research Interests: Swarm Intelligence, Evolutionary Computation, Fuzzy Reasoning, Cloud Computing

Kenneth Magel, Ph.D.
Brown University, 1977
Research Interests: Software Engineering, Human-Computer Interfaces, Software Complexity, and Software Design

Kendall Nygard, Ph.D.
Virginia Polytechnic Institute and State University, 1978
Research Interests:  Data Science, Optimization Modeling, Smart Grid, Sensor Networks, Agents, Artificial Intelligence, Security, Adaptive Systems, Swarm Intelligence

William Perrizo, Ph.D.
University of Minnesota, 1972
Research Interests: Data Mining, Distributed Database Systems, Centralized Database Systems, Data Security, Bioinformatics

Saeed Salem, Ph.D.
Rensselaer Polytechnic Institute, 2009
Research Interests: Bio-Informatics and Data Mining

Brian Slator, Ph.D.
New Mexico State University, 1988
Research Interests: Artificial Intelligence, Educational Media

Jeremy Straub, Ph.D.
University of North Dakota, 2015
Research Interests: Multi-tier Mission Architecture & Control, Autonomous Data Link Reduction, Autonomous Vehicle Control, Machine Vision, Super Resolution

Vasant Ubhaya, Ph.D.
University of California-Berkeley, 1971
Research Interests: Algorithm Analysis, Approximation and Optimization

Gursimran Walia, Ph.D.
Mississippi State University, 2009
Research Interests: Empirical Software Engineering, Software Errors and Software Quality Improvement, Requirements Engineering, Human Cognition in Software Engineering, Managing and Estimating Software Quality

Changhui Yan, Ph.D.
Iowa State University, 2005
Research Interests: Bioinformatics, Computational Biology, Genomics, Machine Learning, Data Mining, Big Data, Cloud Computing

Professors of Practice

Oksana Myronovych, Ph.D.
North Dakota State University, 2009

Mark Pavicic, Ph.D. 
Columbia University, 1985

Adjunct Faculty

Hyunsook Do, Ph.D.
University of Nebraska, 2007
Research Interests: Software Engineering, Software Testing, Regression Testing, Software Maintenance, Requirements Verification, Software Empirical Methodologies