Graduate Programs

Department of Computer Science and Engineering

Michigan State University



Overview of Graduate Programs in Computer Science and Engineering

Faculty and Their Research Interests

Admission Requirements and Process

Application Deadlines

Decision Dates

Advice to Graduate Applicants Without a Degree in Computer Science



Other Related Links:

    The Graduate School at Michigan State University

    Cost of Living



1.  Overview of Graduate Programs in Computer Science and Engineering

Today is an exciting time for Computer Science and Engineering! Advances in computing have transformed our world in the last several decades in ways that were once considered the substance of only dreams. Computing transcends boundaries---enabling multiple disciplines, connecting diverse peoples and cultures, and globalizing economies and work forces. At Michigan State University, Computer Science and Engineering has become a true microcosm of this important and exciting field.

Completion of a graduate degree in Computer Science and Engineering provides you with an opportunity to pursue career opportunities that would not otherwise be possible. Examples include cutting-edge research and development in business, industry, or a national laboratory, or a position in academia to engage in teaching and research. A graduate degree provides you with a deeper exposure to the field of computer science and engineering, and enhances your ability to pursue further independent study of new emerging areas of our discipline.

The Department of Computer Science and Engineering offers graduate study leading to the Doctor of Philosophy (Ph.D.) and Master of Science (M.S.) degrees. Advanced study and research are available in four general areas:

             Software Systems:

  • Code generation
  • Component-based software engineering
  • Computer security
  • Database systems
  • Formal methods
  • High assurance software
  • Model-based development


            Intelligent Systems:

  • Computational linguistics
  • Computer vision
  • Data mining
  • Human computer interaction
  • Humanoid robots
  • Machine learning
  • Natural language processing


    Networking and Ubiquitous Computing:

  • Adaptive software/middleware
  • Augmented and virtual reality
  • Distributed systems
  • Mobile computing
  • Parallel and distributed processing
  • Peer-to-peer systems
  • Real-time systems
  • Sensor networks

           Biological Computing:

  • Artificial life
  • Bioinformatics
  • Biometrics
  • Computational biology
  • Evolutionary computing

Interdisciplinary work with other departments is encouraged, and faculty and students involved in many of the research areas listed above are working with colleagues in other disciplines.

Our M.S. Program prepares students for professional opportunities as well as for moving on to a Ph.D. program. In completing a M.S. degree, a student has the options of doing a thesis. The thesis option places emphasis on new research. All M.S. students must satisfy breadth requirements as well as taking enough high-level courses.

The Ph.D. degree, whose bearer is generally regarded as having an expert understanding of a particular area, is appropriate for people who are committed to pursue a deep intellectual commitment in education and research. A Ph.D. program is qualitatively different from a M.S. program. It is an open-ended commitment, normally taking three or more academic years of study and research.

The requirements for the Ph.D. and M.S. degrees are described in the Graduate Handbook. However, graduate students are engaged in educational and research activities outside of the classroom. Most M.S. students are involved in thesis research, and all Ph.D. students are engaged in dissertation research. Both of these activities provide students with the opportunity to work with faculty and other graduate students in research groups and laboratories within the CSE department and other departments. The Department hosts many guest speakers and visitors from academia and industry throughout each academic year. These visitors present lectures open to all students. In addition, all graduate students who are in their first year of study in the Department attend a research seminar series during the fall semester, where they learn about many of the ongoing research activities in the Department.

Graduate students can also participate in academic governance at the Department, College and University levels. At the Department level, graduate students elect voting members to the Department Advisory, Graduate Study and Research and Computing Environment Committees as well as a voting representative to the general Department Faculty Meeting. At the College level, graduate students have voting representation on the Engineering College Advisory Council and on the Engineering Research and Graduate Studies Committee. At the University level, graduate students elect voting members on the University Graduate Council, Academic Council and other committees as specified by the University Bylaws for Academic governance.

For a complete description of the requirements for the Ph.D. and M.S. degrees, Department policies, and information concerning financial support, please see the Graduate Handbook.

2.  Faculty and Their Research Interests

Please see the CSE Faculty Page

3.  Admission Requirements and Process

Please see the MSU Graduate School web site for general information.

In order to better serve our applicants, we are in the process of upgrading our admissions software. Please check back later for detailed information on how to apply.

Thank you for your patience during this time of transition!

4.  Application Deadlines


SPRING September 15th - Application acceptance closing date
FALL January 15th - Application acceptance closing date

Incomplete applications will NOT be reviewed.

Note we will accept complete applications after these deadlines, but there is no guarantee a late applications will be processed.

5.  Decision Dates

The GTS system allows you to inquire about the status of your application at any time. For fall semester admission, admission offers will be sent out by the end of March. For spring semester admission, admission offers will be sent out by the end of October

6.  Advice to Graduate program Applicants Without a Degree in Computer Science

The breadth of academic programs at Michigan State University involving computing and information is rapidly expanding to include a variety of interdisciplinary areas and emerging fields.  As a result, the Department encourages students to apply to the graduate program even if they do not have a B.S. or M.S. degree in computer science.

Naturally, to be successful in a Computer Science graduate degree program, an appropriate background level must be achieved.  The following guidelines indicate what background is considered adequate.  To be more specific, undergraduate courses corresponding to the topics listed are given below along with the course descriptions.

  1. Courses in mathematics including calculus up through multivariable calculus, linear (matrix) algebra, and probability and statistics.
  2. A course in discrete mathematics and discrete structures (CSE 260)
  3. A course in computer organization and architecture (CSE 320)
  4. Courses in data structures and algorithms, object-oriented programming and software design (CSE 331and CSE 335).

Prior to applying to MSU, you should evaluate the above list of recommendations with your own background. If you are missing background  in one or more areas, consider taking the relevant coursework (at MSU or elsewhere) prior to, or concurrent with, submitting an application.  In your application, discuss how your existing background and any current coursework meets the above recommendations.

Exceptional students will be considered for admission with support even during the time that they are enrolled in courses intended to help them achieve the necessary background.

CSE 260  Discrete Structures in Computer Science
Prerequisite:(MTH 133 or MTH 126 or MTH 153H or LBS 119)

Description:Propositional and first order logic. Equivalence and methods of proof. Basics of counting. Set operations, relations, functions. Grammars and finite state automata. Discrete probability. Applications to computer science and engineering.

Course:  CSE 320  Computer Organization and Architecture
Prerequisite:(CSE 232 and CSE 260)

Description: Boolean algebra and digital logic. Combinational and sequential circuits. Representations of data and instructions. Architecture and major components of computer systems. Assembly language programming and interfacing to high level languages. Assembler and linker processing.

Course:  CSE 331  Algorithms and Data Structures
Prerequisite:(CSE 232 and CSE 260)

Description: Linear data structures, trees, graphs and algorithms which operate on them. Fundamental algorithms for searching, sorting, string matching, graph problems. Design and analysis of algorithms.

Course:  CSE 335  Object-oriented Software Design
Prerequisite: (CSE 232 and CSE 260)

Description:Development of large software products, libraries, and product families. Object-oriented programming using inheritance and polymorphism. Design methods. Specification and the use of contracts to design reliable software. Configuration management and life-cycle issues.


This page was modified October 3, 2006