UT Dallas 2013 Graduate Catalog

Erik Jonsson School of Engineering & Computer Science

Graduate Program in Computer Science

Program Faculty

Professors: Farokh B. Bastani, R. Chandrasekaran, Ovidiu Daescu, Yvo G. Desmedt, Ding-Zhu Du, András Faragó, Gopal Gupta, Zygmunt Haas, Dung T. Huynh, Jason Jue, Latifur Khan, Dan I. Moldovan, Simeon C. Ntafos, Ivor P. Page, Balakrishnan Prabhakaran, Ravi Prakash, Balaji Raghavachari, Hsing-Mean (Edwin) Sha, Ivan Hal Sudborough, Bhavani Thuraisingham, Subbarayan Venkatesan, W. Eric Wong, Weili Wu, I-Ling Yen, Kang Zhang, Si Qing Zheng

Professor Emeritus: Klaus Truemper

Associate Professors: Sergey Bereg, Lawrence Chung, Jorge A. Cobb, Kendra M. L. Cooper, Xiaohu Guo, Kevin Hamlen, Sanda M. Harabagiu, Murat Kantarcioglu, Yang Liu, Neeraj Mittal, Yu-Chung (Vincent) Ng, Kamil Sarac, Haim Schweitzer, Yuke Wang, Rym Zalila-Wenkstern

Assistant Professors: Alvaro Cárdenas, Mark Gabel, Vibhav Gogate, Zhiqiang Lin, Cong Liu, Ryan McMahan

Senior Lecturers: Ebru Cankaya, Michael Christiansen, John Cole, Chris I. Davis, Timothy (Tim) Farage, Shyam Karrah, Pushpa Kumar, Linda Morales, Nhut Nguyen, Greg Ozbirn, Mark Paulk, Miguel Razo-Razo, Charles Shields Jr., Jason W. Smith, Janell Straach, Jeyakesavan (Jey) Veerasamy, Don G. Vogel

Objectives

The Graduate Program in Computer Science provides intensive preparation in the design, programming, theory, and applications of computers. The Department of Computer Science offers courses of study leading to the MS in Computer Science, the MS in Computer Science - Software Engineering, PhD degree in Computer Science, and the PhD degree in Software Engineering. Training is provided for both academically oriented students and students with professional goals in the many business, industrial or governmental occupations requiring advanced knowledge of computer theory and technology. Courses and research are offered in a variety of subfields of computer science, including operating systems, computer architecture, computer graphics, pattern recognition, automata theory, combinatorics, artificial intelligence, data and network security, natural language processing, database design, computer networks, programming languages, software systems, analysis of algorithms, computational complexity, software engineering, software testing, software reliability, scheduling, visualization, fault-tolerant computing, parallel processing, telecommunications networks, telecommunications software, performance of systems, VLSI, computational geometry, and design automation.

A comprehensive program of evening courses is offered which enables part-time students to earn the master's degree or to select individual courses of interest.

Facilities

The Department of Computer Science has a large number of PCs, Sun Workstations, and several servers for research use. Laboratories are available for parallel processing, distributed systems, software engineering, high-performance computing, graphics, programming languages and systems, telecommunications, CAD and graph visualization, image understanding and processing, artificial intelligence, data mining, natural language processing, speech processing, and web technologies. The Department of Computer Science has an Internet 2 connection and all major computers on campus are linked by an Ethernet network.

In addition to the Computer Science faculty, there are individuals who are involved in computer related work in many other areas of the University, including the several physical and social sciences and in various areas of business and management. Students majoring in computer science with interest in these important application areas have the opportunity to consult and work with talented faculty from a wide range of disciplines. The department actively participates in a number of interdisciplinary degree programs which include MS and PhD in Computer Engineering, MS and PhD in Telecommunications Engineering, and PhD in Geospatial Information Sciences.

Master of Science in Computer Science

33 semester credit hours minimum

Admission Requirements

The University's general admission requirements are discussed on the Graduate Admission page (catalog.utdallas.edu/2013/graduate/admission).

The student entering the Computer Science MS program should have an undergraduate preparation equivalent to a baccalaureate in a quantitative science, including calculus and linear algebra. However, special arrangements (requiring more than the minimal number of semester credit hours) can be made for students with good undergraduate preparation in other fields. Minimum requirements are:

  • Bachelor's degree which includes 2 semesters of calculus and 1 semester of linear algebra.
  • GPA of at least 3.0 (last 60 semester credit hours). GPA in quantitative courses of at least 3.3.
  • GRE revised scores of 308, 153, 155, and 4 for the combined, verbal, quantitative, and analytical writing components, respectively, are advisable based on our experience with student success in the program.
  • Students lacking undergraduate preparation in Computer Science must complete the courses listed below. At the discretion of the graduate advisor, a diagnostic exam may be required. The required prerequisite courses common to all master's students are:

    Required Prerequisite Courses

    CS 5303 Computer Science I
    CS 5330 Computer Science II
    CS 5333 Discrete Structures
    CS 5343 Algorithm Analysis & Data Structures
    CS 5348 Operating Systems Concepts

    Substitution of CS 5303 and/or CS 5330 by professional experience will be considered.

    Additional prerequisite courses required for the various degree plans are:

    For the Traditional Computer Science:

    CS 5349 Automata Theory
    CS 5390 Computer Networks

    For the Networks and Telecommunications Track:

    CS 3341 Probability and Statistics in Computer Science and Software Engineering
    CS 5390 Computer Networks

    For the Information Assurance Track:

    CS 5390 Computer Networks

    For the Major in Software Engineering:

    CS 3354 (SE 3354) Software Engineering or CS 5354 (SE 5354) Software Engineering

    Degree Requirements

    The University's general degree requirements are discussed on the Graduate Policies and Procedures page (catalog.utdallas.edu/2013/graduate/policies/policy).

    The student may choose a thesis plan or a non-thesis plan. The thesis plan requires a minimum of 27 semester credit hours of courses, plus completion of an approved thesis (six thesis semester credit hours). This thesis is directed by a supervising professor and must be approved by the head of the Department of Computer Science. The non-thesis plan also requires a minimum of 33 semester credit hours of courses.

    By a judicious planning of courses chosen from the computer science curriculum, supervised and approved by the graduate advisor, students may pursue the MS degree in Computer Science while emphasizing specific areas of the discipline. Students may also choose to receive the MS degree in Computer Science - Software Engineering (MSCS). Because of the rapidly changing nature of the computer science discipline, the specific courses required may change by the time of the student's admission. A listing of the required courses will be specified by the student's advisor. Specific degree requirements follow.

    Core Requirements (15 semester credit hours)

    Students are required to complete one of the following tracks:

    Traditional Computer Science Track

    Track Required Courses

    CS 6363 Design and Analysis of Computer Algorithms
    CS 6378 Advanced Operating Systems
    CS 6390 Advanced Computer Networks

    Two of the following three courses:

    CS 6353 Compiler Construction
    CS 6360 Database Design
    CS 6371 Advanced Programming Languages

    Networks and Telecommunications Track

    Track Required Courses

    CS 6352 Performance of Computer Systems and Networks
    CS 6363 Design and Analysis of Computer Algorithms
    CS 6378 Advanced Operating Systems
    CS 6385 Algorithmic Aspects of Telecommunication Networks
    CS 6390 Advanced Computer Networks

    Intelligent Systems Track

    Track Required Courses

    CS 6320 Natural Language Processing
    CS 6363 Design and Analysis of Computer Algorithms
    CS 6364 Artificial Intelligence
    CS 6375 Machine Learning

    One of the two following courses:

    CS 6360 Database Design
    CS 6378 Advanced Operating Systems

    Systems Track

    Track Required Courses

    CS 6304 Computer Architecture
    CS 6363 Design and Analysis of Computer Algorithms
    CS 6378 Advanced Operating Systems
    CS 6396 Real-Time Systems

    One of the following six courses:

    CS 6360 Database Design
    CS 6376 Parallel Processing
    CS 6380 Distributed Computing
    CS 6397 Synthesis and Optimization of High-Performance Systems
    CS 6399 Parallel Architectures and Systems
    CS 6349 Network Security

    Information Assurance Track

    Track Required Courses

    CS 6363 Design and Analysis of Computer Algorithms
    CS 6378 Advanced Operating Systems
    CS 6324 Information Security

    Two of the following four courses:

    CS 6301 Special Topics in Computer Science [subtitle: System Security and Malicious Code Analysis]
    CS 6348 Data and Applications Security
    CS 6349 Network Security
    CS 6377 Introduction to Cryptography

    One from the following courses:

    CS 6390 Advanced Computer Networks
    CS 6360 Database Design
    CS 6371 Advanced Programming Languages1
    1. must have completed CS 5349 Automata Theory

    Master of Science in Computer Science - Software Engineering (MSCS)

    33 semester credit hours minimum

    Core Requirements

    Course Requirements

    Track Required Courses

    CS 6361 (SE 6361) Advanced Requirements Engineering
    CS 6362 (SE 6362) Advanced Software Architecture and Design
    CS 6367 (SE 6367) Software Testing, Validation and Verification
    CS 6387 (SE 6387) Advanced Software Engineering Project

    One of the following four courses:

    CS 6353 Compiler Construction
    CS 6360 (SE 6360) Database Design
    CS 6371 Advanced Programming Languages
    CS 6388 (SE 6388) Software Project Planning and Management

    Students must satisfy the core requirements by either earning a 3.19 minimum grade point average OR by earning a 3.0 minimum grade point average in the five core courses and taking an extra approved elective (beyond the minimum degree requirements of 33 semester credit hours) and maintain the required GPA.

    Electives (minimum of 18 semester credit hours)

    Five (15 semester credit hours) 6000/7000/8000 level elective CS courses, or six semester credit hours of thesis or project courses plus three elective courses (6 + 9 = 15 semester credit hours), with approval of a graduate advisor; a minimum grade point average of 3.0 is required. Courses that are prerequisites to the student's core requirements are especially recommended. Approved electives must be taken to make a minimum of 33 semester credit hours.

    Note: For the information assurance track, students must also take six elective courses (three CS electives and three approved information assurance electives), and all electives must be 6000 level or above. A course cannot be used to satisfy both core and elective requirements.

    While the Department of Computer Science offers both the Master of Science in Computer Science and the Master of Science in Computer Science - Software Engineering degrees, students are not permitted to pursue both degrees.

    Doctor of Philosophy in Computer Science

    75 semester credit hours minimum beyond the baccalaureate degree

    The Department of Computer Science offers a Doctor of Philosophy in Computer Science.

    The doctoral program is tailored to the student. The student must arrange a course program with the guidance and approval of a faculty member chosen as his/her graduate advisor. Adjustments can be made as the student's interests develop and a specific dissertation topic is chosen.

    Admission Requirements

    The University's general admission requirements are discussed on the Graduate Admission page (catalog.utdallas.edu/2013/graduate/admission).

    A student may be admitted under one of two possible options:

    Admission Option One

  • A master's degree in computer science or its equivalent, and
  • A GPA of at least 3.5 and
  • GRE revised scores of at least 308, 153, 155, 159, and 4 for the combined, verbal, quantitative, and analytical writing components, respectively, are advisable based on our experience with student success in the program.
  • Admission Option Two

  • A BS in related area that includes two semesters of calculus and linear algebra with,
  • GPA of at least 3.5 in the last 60 semester credit hours, and
  • GRE revised scores of at least 315, 156, 159, and 4 for the combined, verbal, quantitative, and analytical writing components, respectively, are advisable based on our experience with student success in the program.
  • Degree Requirements

    The University's general degree requirements are discussed on the Graduate Policies and Procedures page (catalog.utdallas.edu/2013/graduate/policies/policy).

    Core requirements:

    The core requirements for the PhD degree in Computer Science are the same as the ones listed on the Master of Science in Computer Science page or on the Master of Science in Computer Science - Software Engineering page.

    Also required are:

  • Pass a qualifying examination.
  • Pass, with a grade of B or better, courses chosen as follows
  • CS 6382 Theory of Computation
  • Two 7000 and above level courses with CS and/or SE prefixes
  • Sufficient CS electives for a total of at least 75 semester credit hours beyond the baccalaureate degree. At least 9 semester credit hours of organized advanced Computer Science electives must be taken at UT Dallas. The student is encouraged to consult with an advisor in choosing electives.
  • Dissertation

    A dissertation is required and must be approved by the graduate program. A student must arrange for a dissertation advisor willing to guide this dissertation. The student must have a dissertation supervising committee that consists of no less than four members of whom at least three must be from the Computer Science faculty. The dissertation may be in computer science exclusively or it may involve considerable work in an area of application.

    Doctor of Philosophy in Software Engineering

    75 semester credit hours minimum beyond the baccalaureate degree

    The Department of Computer Science offers a Doctor of Philosophy in Software Engineering.

    The doctoral program is tailored to the student. The student must arrange a course program with the guidance and approval of a faculty member chosen as his/her graduate advisor. Adjustments can be made as the student's interests develop and a specific dissertation topic is chosen.

    Admission Requirements

    The University's general admission requirements are discussed on the Graduate Admission page (catalog.utdallas.edu/2013/graduate/admission).

    A student may be admitted under one of two possible options:

    Admission Option One

  • A master's degree in computer science or its equivalent, and
  • A GPA of at least 3.5 and
  • GRE revised scores of at least 308, 153, 155, 159, and 4 for the combined, verbal, quantitative, and analytical writing components, respectively, are advisable based on our experience with student success in the program.
  • Admission Option Two

  • A BS in related area that includes two semesters of calculus and linear algebra with,
  • GPA of at least 3.5 in the last 60 semester credit hours, and
  • GRE revised scores of at least 315, 156, 159, and 4 for the combined, verbal, quantitative, and analytical writing components, respectively, are advisable based on our experience with student success in the program.
  • Degree Requirements

    The University's general degree requirements are discussed on the Graduate Policies and Procedures page (catalog.utdallas.edu/2013/graduate/policies/policy).

    Core requirements:

    The core requirements for the PhD degree in Software Engineering are the same as those listed on the Master of Science in Computer Science - Software Engineering page.

    Also required are:

  • Pass a qualifying examination.
  • Pass, with a grade of B or better, courses chosen as follows
  • CS 6382 Theory of Computation
  • Two 7000 and above level courses with CS and/or SE prefixes
  • Sufficient CS electives for a total of at least 75 semester credit hours beyond the baccalaureate degree. At least 9 semester credit hours of organized advanced Computer Science electives must be taken at UT Dallas. The student is encouraged to consult with an advisor in choosing electives.
  • Dissertation

    A dissertation is required and must be approved by the graduate program. A student must arrange for a dissertation advisor willing to guide this dissertation. The student must have a dissertation supervising committee that consists of no less than four members of whom at least three must be from the Computer Science faculty. The dissertation may be in computer science exclusively or it may involve considerable work in an area of application.

    Updated: May 14, 2014 - Visitor: 17364