2016-17 Academic Catalog

Computer Science and Engineering

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

Department Head: Dr. Donna Reese
Graduate Coordinator: Dr. T.J. Jankun-Kelly

300 Butler Hall
Box 9637
Mississippi State, MS 39762-9637
Telephone: 662-325-2756
Fax: 662-325-8997
E-mail: office@cse.msstate.edu
Website: http://www.cse.msstate.edu

Graduate study is offered in the Department of Computer Science and Engineering leading to the degrees of Master of Science in computer science and Doctor of Philosophy in computer science.

The program of study of a Master of Science in computer science degree includes advanced courses in computer science that are selected according to the goals of the student.  The program of study includes a thesis option, a professional project option, or courses-only option.  The program of study of a Doctor of Philosophy (Ph.D.) in computer science degree includes advanced courses in computer science and significant scholarly research in computer science, presented in a dissertation.  Applicants with bachelor degrees can apply for direct admission to the Ph.D. program.  Applicants with master’s degrees are also welcome. 

The department’s core research areas include the following.

  • artificial intelligence
  • computational science
  • graphics
  • human centered computing
  • software engineering and systems

These core competencies support research applications in areas such as bioinformatics, visualization, computer security and forensics, human-computer interactions and high performance computing.  Faculty, research assistants, thesis students, and dissertation students participate in a wide variety of research projects.  Many research projects are multi-disciplinary or multi-specialty in nature.

Several teaching and research assistantships are available. Application forms for admission to graduate studies, departmental assistantships, information regarding the graduate programs, faculty and their research interests, and courses are available from the department’s page on the World Wide Web.

Application Procedure

An applicant is required to submit the following application requirements to the Office of the Graduate School.

  • application for admission to graduate study
  • transcripts from all former institutions attended
  • TOEFL or IELTS score (for applicable international students)
  • scores on the general test of the Graduate Record Examination (GRE)
  • three letters of recommendation
  • statement of the applicant’s career goals and objectives
  • application fee

International students will also need a Document of Support Form and associated documentation, which are typically submitted after approval for admission.

In addition, the applicant is encouraged to submit directly to the Department of Computer Science and Engineering any additional information (such as GRE subject test scores, résumé, etc.) that supports his/her application.

The department’s application form for assistantships is separate from the application for graduate admission. The application and more information are available at http://web.cse.msstate.edu/prospective/grad/assistantships.php .  

Application Dates

Applications may be submitted at any time. Completed applications should be received by the dates specified by the Office of the Graduate School. Preference for awarding assistantships will be given to applications received by

SummerFebruary 1
FallFebruary 1
SpringOctober 1

M.S. Admission Requirements

Regular Admission to the M.S. Program

For regular admission to the Master of Science program, the applicant must

  • satisfy the minimum requirements for admission to graduate study as specified in the Mississippi State University Graduate School Catalog  and submit all documents as required in the application information ;
  • possess those qualifications and interests that indicate to the Computer Science and Engineering Graduate Studies Committee that the applicant will be successful in the MSU computer science Master of Science program;
  • have a minimum TOEFL (Test of English as a Foreign Language) score of 550 PBT (79 iBT) or IELTS (International English Language Testing System) score of 6.5. (This applies only to international students. The University may waive the TOEFL requirement for international students who hold a degree from a U.S. Institution).

Contingent Admission to the M.S. Program

An applicant who fails to meet the requirements for regular admission may be considered for contingent admission by the Graduate Studies Committee.  Contingent admission may be granted under the following conditions:

  • An international student with a TOEFL score of less than 550 (79 iBT) or IELTS of 6.5 but at least 500 PBT (61 iBT) or 5.5 on the IELTS may be admitted.  To achieve regular admission status, the student will be required to complete satisfactorily the appropriate English as a Second Language sequence of courses; see the MSU Graduate School Bulletin (General Requirements for Admission, English Language Requirements for International Students) for specific requirements.
  • An applicant who has not yet taken the GRE but who has a computer science baccalaureate degree from a U.S. institution may be admitted, but only on a contingency basis. To achieve regular admission status, the student will be required to take the GRE General Test in his or her first semester and obtain a satisfactory composite GRE score.
  • A student who has not completed the undergraduate prerequisites may be given contingent admission.  To achieve regular admission status, the student must complete all remaining prerequisites with a grade of B or better in each course.

Ph.D. Admission Requirements

Regular Admission to the Ph.D. Program

For regular admission to the doctoral program, the applicant must

  1. satisfy the minimum requirements for admission to graduate study as specified in the Mississippi State University   admissions information  in the Graduate School Catalog  and submit all documents as required in the application procedure below;

  2. possess those qualifications and research interests that indicate to the Computer Science and Engineering Graduate Studies Committee that the applicant will be successful in the computer science doctoral program; and

  3. have a minimum TOEFL (Test of English as a Foreign Language) score of 550 PBT (213 CBT or 79 iBT) or IELTS (International English Language Testing System) score of 6.5.  (This applies only to international students.  The University may waive the TOEFL requirement for international students who hold a degree from a U.S. institution.)

Some students have master’s degrees when they begin their Ph.D. studies, and some students pursue a Ph.D. degree directly after earning a bachelor’s degree (a “Direct Ph.D.”).

Contingent Admission to the Ph.D. Program

A student who fails to meet the requirements for regular admission may be considered for contingent admission by the Graduate Studies Committee.  Contingent admission may be granted under the following conditions:

  1. An international student with a TOEFL score of less than 550 PBT (or equivalent) but at least 500 PBT (173 CBT or 61 iBT) or 5.5 on the IELTS may be admitted.  To achieve regular admission status, the student will be required to complete satisfactorily the appropriate English as a Second Language sequence of courses; see the MSU Graduate School Bulletin (General Requirements for Admission, English Language Requirements for International Students) for specific requirements.

  2. An applicant who has not yet taken the GRE but who has a computer science baccalaureate degree from a U.S. institution may be admitted, but only on a contingency basis. To achieve regular admission status, the student will be required to take the GRE General Test in his or her first semester and obtain a satisfactory composite GRE score.

  3. A student who has not completed the undergraduate prerequisites may be given contingent admission.  To achieve regular admission status, the student must complete all remaining prerequisites with a grade of B or better in each course.

Admission to Candidacy

A doctoral student becomes a candidate upon completion of all prerequisite and Fundamental Areas courses, completion of all courses on the program of study, acceptance of a research topic by his/her Graduate Committee, and passing the preliminary examination.

Academic Performance

Academic Probation

Requirements of the Graduate School apply as explained in the Bulletin of the Graduate School section “General Degree Completion Requirements.”

Once admitted to the graduate program in Computer Science, a student who fails to maintain a satisfactory academic record will be considered to be on academic probation.  A graduate GPA will be computed for each student at the end of each semester.  The student's graduate GPA is the average of all graduate courses attempted while in the CS graduate program.

  • A student whose graduate GPA drops below 3.00 is automatically on academic probation.
  • A student who obtains a grade below a B on a prerequisite course is automatically on academic probation.
  • To be removed from probation, the student, by the completion of the next nine credit hours of progress toward the degree, must:
    • achieve a graduate GPA of 3.00 or above and
    • earn a grade of B or above on any prerequisite course for which a grade lower than B was previously obtained.

With the approval of the Graduate Coordinator and the Dean of the College of Engineering, a student may retake one course per degree.  This policy applies to all courses (even those not on the program of study) taken as a graduate student related to a specific program, and only to those courses taken at MSU. With the exception of those courses approved for repeated credit (e.g., internships, special topics, individual studies, thesis, dissertation, etc.), a specific course may be repeated only once.  Both courses will remain on the permanent transcript, and both grades will be computed in final averages.  No additional program credit hours will be generated from a repeated course.

At the beginning of each semester the Department of Computer Science and Engineering Graduate Studies Committee evaluates the records of all Computer Science graduate students currently on probation, as well as students with multiple grades of C and those making a grade of D, F, or U during the previous semester.  The committee will consider recommending that the Dean of the College of Engineering dismiss a student enrolled in a graduate program in Computer Science if:

  • The student was admitted on TOEFL contingency and fails to make satisfactory progress towards completion of the appropriate English as a Second Language sequence of courses.
  • The student was admitted without GRE scores and fails to take the GRE General Test during the next semester or fails to obtain a satisfactory composite score on the GRE.
  • The student was admitted with contingencies due to deficiencies in prerequisite coursework and fails to make satisfactory progress toward completion of the prerequisites.
  • The student is on academic probation and is unable to meet all requirements for removal from probation by the completion of the next 9 credit hours of progress toward the degree.
  • The student makes a grade of D or F in a graduate or undergraduate course attempted while in the graduate program in Computer Science or 6 or more credit hours of C grades.
  • The student receives a grade of U in an S/U graded course.

Appeals Process

A student who has been dismissed from the Computer Science graduate program has the right to appeal the dismissal.

  • Within four weeks of being notified of the dismissal, a student who wishes to appeal must write a letter requesting a reconsideration of the dismissal, giving all pertinent facts and explaining any extenuating circumstances.  The letter should be addressed to the Head of the Department of Computer Science and Engineering.  The Head of the Department of Computer Science and Engineering will review this appeal and will render a decision within five working days.  If the decision is in favor of the student, the Head of the Department of Computer Science and Engineering will recommend to the Dean of the College of Engineering that the student's dismissal from the Computer Science graduate program be rescinded.
  • If the student is dissatisfied with the decision of the Department Head, the student may appeal in writing to the Dean of the College of Engineering.  See Appeal of Academic Dismissal in this publication.
  • If this appeal is unsuccessful, the student may then appeal to the Provost and Vice President for Academic Affairs.

Undergraduate Prerequisite Courses for the Master’s Degree

The prerequisite courses required of all Master’s students are the following and their prerequisites:

CSE 2383Data Structures and Analysis of Algorithms3
MA 2733Calculus III3
ECE 3724Microprocessors4
CSE 3813Introduction to Formal Languages and Automata3
CSE 4713/6713Programming Languages3
CSE 4733/6733Operating Systems I3
CSE 4833/6833Introduction to Analysis of Algorithms3

Candidates for the master’s degree must have completed all prerequisite courses or their equivalent. These courses may be completed after enrolling in the graduate program.  A program of study for the master’s degree may include 6000-level prerequisite courses.

Accelerated Program

The Accelerated Program enables a student to complete both a  bachelor’s degree in Computer Science or Software Engineering and a master’s degree in Computer Science in approximately five years.  The program has the following features.

  • A student must apply for admission to the program no sooner than the end of the sophomore year (60 hours or more of graded courses).  The criteria for admission assesses whether the applicant possesses those qualifications and interests that indicate to the department’s Graduate Studies Committee that the applicant will be successful in the MSU M.S. in Computer Science program.  The applicant must have an overall GPA of 3.5.
  • A student must have senior standing to enter the program.  A student is classified as an undergraduate until all the requirements for the undergraduate degree are fulfilled, at which point the student is then classified as a graduate student.
  • A maximum of 9 hours of graduate courses taken after entering the program and prior to completing the bachelor’s degree can count toward both the bachelor’s degree and the program of study for the Master of Science in Computer Science degree.  In order to count toward the master’s degree, such courses must conform to other requirements for the M.S. degree.  The program will follow procedures established by the Registrar for dual counting.
  • During the senior year, if a student in the program enrolls in any graduate courses during a given term, then the maximum load of combined graduate and undergraduate courses is 16 credits during that fall or spring semester, or 6 credits during that summer (all summer terms combined).
  • During the senior year, approval to enroll in graduate courses will be granted by the department’s graduate coordinator using the form found at http://www.grad.msstate.edu/forms/pdf/accel.pdf .
  • During the senior year, graduate courses at the 6000-level will count toward the Bachelor of Science degree similarly to the corresponding 4000-level courses.
  • During the senior year, graduate courses at the 7000-level or above will count toward the Bachelor of Science degree as technical electives.
  • During the senior year, the student will submit a normal admission application package for the M.S. degree, including GRE scores and application fee.
  • Upon earning the bachelor’s degree and making satisfactory progress, the student will be admitted to the Master of Science in Computer Science program.  The department’s graduate coordinator will initiate the graduate admission process by the end of the first semester of the senior year.
  • After earning the bachelor’s degree, the student will complete the M.S. degree requirements in the normal manner.
  • An undergraduate student may opt out of the program at any time and complete only the undergraduate portion of the program.  No additional dual counting will occur after opting out.

Master of Science in Computer Science - Thesis

Fundamental Areas Courses
Select at least three of the following: 19-10
Data Communications and Computer Networks
Designing Parallel Algorithms
Introduction to Software Engineering
Principles of Computer Graphics
Database Management Systems
Artificial Intelligence
Theory Courses
Select one of the following:3
Theory of Computation
Algorithms
Complexity of Sequential and Parallel Algorithms
Special Topics in Computer Science and Engineering 2
Seminar
CSE 8011Graduate Seminar1
Additional Coursework
8000 or 9000-level graduate-level coursework 312
Research/Thesis
CSE 8000Thesis Research/ Thesis in Computer Science and Engineering6
Total Hours31-32
1

A student who has taken any of these six courses for undergraduate credit may use the undergraduate course to meet the graduate Fundamental Areas requirement and substitute another graduate-level course approved by the student's graduate committee.

2

On a topic which has been designated in advance by the department as a theory course fulfilling this requirement.

3

A minimum of 12 credit hours of full graduate (8000- or 9000-level) computer science courses must be included in the program of study.

The student must:

  • propose research within his/her area of  interest.  Normally the major professor will direct the thesis research.  The research must be accepted by his/her Graduate Committee and reported in a defensible thesis paper
  • defend the thesis research to his/her Graduate Committee at a formal presentation at the time of the comprehensive examination.

A student may only select the thesis option if a member of the graduate faculty has agreed to serve as the thesis director.

Master of Science in Computer Science - Non-Thesis

Fundamental Areas Courses
Select at least three of the following: 19
Data Communications and Computer Networks
Designing Parallel Algorithms
Introduction to Software Engineering
Principles of Computer Graphics
Database Management Systems
Artificial Intelligence
Theory Courses
Select one of the following:3
Theory of Computation
Algorithms
Complexity of Sequential and Parallel Algorithms
Special Topics in Computer Science and Engineering 2
Seminar
CSE 8011Graduate Seminar1
8000 or 9000-level graduate-level coursework 3, 418
Total Hours31
1

A student who has taken any of these six courses for undergraduate credit may use the undergraduate course to meet the graduate Fundamental Areas requirement and substitute another graduate-level course approved by the student's graduate committee.

2

On a topic which has been designated in advance by the department as a theory course fulfilling this requirement.

3

A minimum of 15 credit hours of the courses in the program of study must be at the full graduate level (numbered 8000 or 9000).

4

One of the three additional courses may be CSE 8080 if the student’s major professor (or another member of the student’s graduate committee) agrees to direct the project;

Students who complete a directed project present the results of the directed project to his/her Graduate Committee at the time of the comprehensive examination. All M.S. students must perform satisfactorily on an oral comprehensive examination.  The master’s comprehensive examination is held in conjunction with the student’s project presentation.

Doctor of Philosophy in Computer Science

Major Coursework
Select two of the following Theory of Computation courses:6-12
Theory of Computation
Algorithms
Complexity of Sequential and Parallel Algorithms
Special Topics in Computer Science and Engineering 1
Select at least four full graduate courses from one area (the area of concentration) below and at least two full graduate courses from one other area below (the supporting area): 218
Artificial Intelligence
Software Engineering
High Performance Computing
Graphics and Visualization
Computer Security
Select at least three of the following Fundamental Areas courses: 39-10
Data Communications and Computer Networks
Designing Parallel Algorithms
Introduction to Software Engineering
Principles of Computer Graphics
Database Management Systems
Artificial Intelligence
CSE 8011Graduate Seminar1
Additional 8000- to 9000-level coursework9
Dissertation
CSE 9000Dissertation Research/ Dissertation in Computer Science and Engineering 420
Total Hours63
1

On a topic designated in advance by the department as a theory course fulfilling this requirement.

2

Courses applying directly to the student's research and approved by the student's Graduate Committee may be included in the research area coursework, even if they are offered from another area or by another department.

3

A student who has taken any of these six courses for undergraduate credit may use the undergraduate course to meet the graduate fundamental areas requirement and substitute another graduate-level course approved by the student’s Graduate Committee.

4

A student may enroll in dissertation hours only with the approval of his/her major professor, who is the instructor of record and will assign a grade (S or U).

Graduate courses completed as part of a master’s degree or graduate courses completed prior to entry into the Ph.D. program may, when approved by the student’s Graduate Committee, be applied to the Ph.D. degree requirements. The Committee’s decision will be documented by an “Attachment Sheet for Program of Study” form. The program of study will cover remaining coursework requirements.

All undergraduate prerequisite courses listed for the master’s degree must be satisfied.  A Ph.D. student’s program of study may include 6000-level prerequisite courses. 

Minor

A minor is defined by the Graduate School as a current block of coursework completed in any program other than the major program and approved for master’s or doctoral programs.  A minor for Ph.D. students in computer science is optional.  The minor requirements (12 hours) are in addition to those required in the major area and must be approved by the minor professor.  The minor professor serves as a member of the student’s Graduate Committee.

Examination Procedure

During preparation for the doctoral degree, the student will be required to complete three examinations and present an oral dissertation proposal. The examinations are the qualifying examination, typically taken during the student’s first year of study; a preliminary examination, taken after the student has completed (or is within 6 hours of having completed) all coursework and has had a dissertation topic approved; and the final examination, taken when all other examinations and the dissertation have been completed.

At the time that the student takes the qualifying examination, the graduate faculty will conduct a review of the student’s status in the program. This review will include, as a minimum, the following:

  • performance on the qualifying examination
  • progress and performance in courses
  • possible serious impediments to further progress toward the doctorate

Such a review could result in binding recommendations from the graduate faculty or strong recommendations that the student address a problem within a certain time frame or could even result in dismissal from the program.

Minor in Computer Science, Master's Degree Program

The Graduate Council requires that a student who wishes to earn a minor in computer science in a master’s degree program complete at least 9 semester hours of computer science graduate credit, not to include CSE 6613.  In addition, the Department of Computer Science and Engineering requires that the following requirements be satisfied:

  • At least 3 semester hours must be at the full graduate (8000) level.
  • At least 6 semester hours must be in one of the research focus areas, or theory.
  • CSE 2383 or CSE 6753 or equivalent must have been completed by the student.  This required background may have been completed during undergraduate study. CSE 6753 may count toward the minor.
  • The student must pass a comprehensive examination over minor coursework, as determined by the minor professor.  This may be in conjunction with an examination for the primary degree program.

 The student must be accepted by a minor professor in the Department of Computer Science and Engineering and have the approval of both the minor professor and the Graduate Coordinator in Computer Science and Engineering of the minor program of study.  The minor professor will be included in the student’s supervisory committee.

Minor in Computer Science, Doctoral Degree Program

The Graduate Council requires that a student who wishes to earn a minor in computer science in a Ph.D. degree program complete at least 12 semester hours of computer science graduate credit, not to include CSE 6613.  In addition, the Department of Computer Science and Engineering requires that the following requirements be satisfied:

  • At least 3 semester hours must be at the full graduate (8000) level.
  • At least 6 semester hours must be in one of the research focus areas, or theory. 
  • CSE 2383 or CSE 6753 or equivalent must have been completed by the student. This required background may have been completed during undergraduate study. CSE 6753 may count toward the minor.
  • The student must pass a comprehensive examination over minor coursework, as determined by the minor professor.  This may be in conjunction with an examination for the primary degree program.

The student must be accepted by a minor professor in the Department of Computer Science and Engineering and have the approval of both the minor professor and the Graduate Coordinator in Computer Science and Engineering of the minor program of study. The minor professor will be included in the student’s supervisory committee.

University policy on graduate minors is located in the Master of Science and Doctor of Philosophy sections in this publication.

CSE 6153 Data Communications and Computer Networks: 3 hours.

(Prerequisites: Grade of C or better in CSE 1384 or ECE 3732, and ECE 3724 . Three hours lecture.The concepts and practices of data communications and networking to provide the student with an understanding of the hardware and software used for data communications. (Same as ECE 4833/6833 )

CSE 6163 Designing Parallel Algorithms: 3 hours.

(Prerequisites: Grade of C or better in CSE 3324 or CSE 4733/6733). Three hours lecture. Techniques for designing algorithms to take advantage efficiently of different parallel architectures. Includes techniques for parallelizing sequential algorithms and techniques for matching algorithms to architectures

CSE 6214 Introduction to Software Engineering: 4 hours.

(Prerequisite: CSE 2383 with a grade of C or better). Three hours lecture. Two hours laboratory. Introduction to software engineering; planning, requirements, analysis and specification, design; testing; debugging; maintenance; documentation. Alternative design methods, software metrics, software projecet management, reuse, and reengineering

CSE 6223 Managing Software Projects: 3 hours.

(Prerequisite:CSE 4214/6214 with grade of C or better). Three hours lecture. Concepts in software project management functions such as planning, organizing, staffing, directing and control, estimating, scheduling, monitoring, risk management, and use of tools

CSE 6233 Software Architecture and Design Paradigms: 3 hours.

(Prerequisite: Grade of C or better in CSE 4214/6214). Three hours lecture. Topics include software architectures, methodologies, model representations, component-based design ,patterns,frameworks, CASE-based designs, and case studies

CSE 6243 Information and Computer Security: 3 hours.

(Prerequisite: Credit or registration in CS 4733/6733). Three hours lecture. Topics include encryption systems, network security, electronic commerce, systems threats, and risk avoidance procedures

CSE 6273 Introduction to Computer Forensics: 3 hours.

(Prerequisite:Senior standing in CSE/SE/CPE/MIS/CJ) Three hours lecture. Introduction to computer crime and the study of evidence for solving computer-based crimes. Topics: computer crime, computer forensics and methods for handling evidence

CSE 6283 Software Testing and Quality Assurance: 3 hours.

(Prerequisite:Grade of C or better in CSE 4214/6214). Three hour lecture. Topics include methods of testing, verification and validation, quality assurance processes and techniques, methods and types of testing, and ISO 9000/SEI CMM process evaluation

CSE 6363 Software Reverse Engineering: 3 hours.

(Prerequisite: CSE 4733/6733). Three hours lecture. Software specification recovery and malicious software analysis. Tools and techniques for analyzing compiled programs and communications in the absence of documentation

CSE 6383 Cryptography and Network Security: 3 hours.

(Prerequisite: Credit or registration in CSE 4153/6153). Three hours lecture. Basic and advanced concepts in cryptography and network security: symmetric and asymmetric cryptography, key management, wired and wireless network security protocols, network systems security

CSE 6413 Principles of Computer Graphics: 3 hours.

(Prerequisities:MA 3113 and grade of C or better in CSE 2383). Three hours lecture. Graphics hardware; algorithms,graphics primitives, windowing and clipping , transformations,3D graphics, shading,hidden surfaces; standards

CSE 6453 Game Design: 3 hours.

(Prerequisites: All majors: junior standing, Design-oriented majors: courses in digital art and/or sound design. CS/SE/CPE majors: CSE 3324 or equivalent with a grade of C or better). Three hours lecture. Principles of computer game design: Game mechanics, structure, narrative, character/environment/level design

CSE 6503 Database Management Systems: 3 hours.

(Prerequisites: CSE 2383 and CSE 2813, both with a grade of C or better). Three hours lecture. Modern database models; basic database management concepts; query languages; database design through normalization; advanced database models; extensive development experience in a team environment

CSE 6613 Bio-computing: 3 hours.

Three hours lecture. Essential programming skills for computational biology. Problem-solving and use of specialized bio-computing libraries. (Credit will not be given to students matriculating in Computer Science, Computer Engineering , or Software Engineering degree programs)

CSE 6623 Computational Biology: 3 hours.

(Prerequisite:BCH 4113/6113 or equivalent and CSE 1384 or CSE 4613/6613 ). Three hours lecture. Computational analysis of gene sequences and protein structures on a large scale. Algorithms for sequence alignment, structural and functional genomics, comparative genomics, and current topics

CSE 6633 Artificial Intelligence: 3 hours.

(Prerequisite:Grade of C or better in CSE 2383 and CSE 2813) Three hours lecture. Study of the computer in context with human thought processes. Heuristic programming;search programming; search strategies; knowledge representation; natural language understanding; perception; learning

CSE 6653 Cognitive Science: 3 hours.

(Prerequisite: PSY 3713 or CSE 4633 or PHI 4143/6143 or AN 4623/6623). Three hours lecture. The nature of human cognition from an interdisciplinary perspective, primarily utilizing a computational model, including insights from philosophy, psychology, linguistics, artificial intelligence, anthropology, and neuroscience. (Same as PSY 4653/6653)

CSE 6663 Human-Computer Interaction: 3 hours.

(Prerequisite: Junior class standing or consent of instructor). Three hours lecture. Conceptual models formed by users, aspects of computer systems which affect users, interface design and evaluation, and examples and critiques of specific interfaces

CSE 6713 Programming Languages: 3 hours.

(Prerequisities:Grade of C or better in ECE 3724 and CSE 3813 ).Three hours lecture. An introduction to programming language specification and analysis. Additional topics include control structrues, data types, and structures,run-time environments, binding strategies, compilers, and interpreters

CSE 6723 Compiler Construction: 3 hours.

(Prerequisite:Credit or registration in CSE 4713/6713). Formal treatment of context-free programming language translation and compiler design concepts, including: lexical, syntactic and semantic analysis, machine-dependent code generation and improvement, and error processing

CSE 6733 Operating Systems I: 3 hours.

(Prerequisites: Grade of C or better in CSE 2383 and ECE 3724).Three hours lecture. Historical development of operating systems to control complex computing systems; process management, communication, scheduling techniques;file systems concepts and operation; data communication, distributed process management

CSE 6743 Operating Systems II: 3 hours.

(Prerequisites: CSE 4733/6733 with grade of C or better). Three hours lecture. Integrated treatment of hardware and software concepts in operating systems design; procedure implementation; creation and control of processes;name and space management

CSE 6753 Foundations in Computation: 3 hours.

(Prerequisite: CSE 1213 or CSE 1233 or CSE 1273 or CSE 1284 with a grade of C or better, or permission of instructor). Three hours lecture. Foundational concepts of computational algorithm design and analysis. (No credit for student in Computer Science, Computer Engineering, or Software Engineering degree programs)

CSE 6833 Introduction to Analysis of Algorithms: 3 hours.

(Prerequisites:CSE 2383,CSE 2813, and MA 2733 with a grade of C or better). Three hours lecture. Study of complexity of algorithms and algorithm design. Tools for analyzing efficiency; design of algorithms, including recurrence, divide-and-conquer, dynamic programming and greedy algorithms

CSE 6990 Special Topics in Computer Science and Engineering: 1-9 hours.

Credit and title to be arranged. This course is to be used on a limited basis to offer developing subject matter areas not covered in existing courses. (Courses limited to two offerings under one title within two academic years)

CSE 7000 Directed Individual Study in Computer Science and Engineering: 1-6 hours.

Hours and credits to be arranged

CSE 8000 Thesis Research/ Thesis in Computer Science and Engineering: 1-13 hours.

Hours and credits to be arranged

CSE 8011 Graduate Seminar: 1 hour.

One hour seminar. Reports on recent advances and problems in computer science by guest speakers,faculty, and students; student participation, general discussion

CSE 8080 Directed Project in Computer Science: 1-3 hours.

Hours and credits to be arranged. An individual professional project open only to candidates for the Master of Science degree (project option). Formal written and oral project reports are required

CSE 8153 Advanced Data Communications: 3 hours.

(Prerequisite:CSE 4153/6153 or equivalent). Three hours lecture. A study of advanced concepts and practices of data communications with particular emphasis on Local Area Networks and Transmission Control Protocol/Internet Protocol (TCP/IP)

CSE 8163 Parallel and Distributed Scientific Computing: 3 hours.

(Prerequisite:CSE 4163/6163). Three hours lecture. Algorithms for distributed scientific computing; performance evaluation; scheduling and load balancing issues for scientific applications; architectural issues affecting performance

CSE 8233 Software Engineering Project Management: 3 hours.

(Prerequisites:CSE 4214/6214). Three hours lecture. Management of the engineering of software products including estimating, planning, process management, and special topics

CSE 8243 Software Specification: 3 hours.

(Prerequisites:CSE 4214/6214). Three hours lecture. Writing software specifications, transforming specifications into code , and verifying transformations using formal methods

CSE 8253 Software Design: 3 hours.

(Prerequisite:CSE 4214/6214). Three hours lecture. Software design principles, attributes, models, and methodologies; object-oriented designs; real-time system design; user interface design;design verification; reusability issues; tools;current issues

CSE 8273 Software Requirements Engineering: 3 hours.

(Prerequisites:CSE 4214/6214 with grade of C or better). Three hours lecture. An in-depth study of current research and practice in requirements elicitation, requirements analysis, requirements specification, requirements verification and validation, and requirements management

CSE 8283 Empirical Software Engineering: 3 hours.

(Prerequisite:CSE 4214/6214). Three hours lecture. Basics of empirical software engineering, metrics, and modeling of the software development process, validation and comparing software engineering methods, and methods for data analysis

CSE 8413 Visualization: 3 hours.

(Prerequisites:CSE 4413/6413).Three hours lecture. Essential algorithms for three-dimensional rendering and modeling techniques;viewing transformations, illumination, surface modeling; methodologies for visualization of scalar and vector fields in three dimensions

CSE 8433 Advanced Computer Graphics: 3 hours.

(Prerequisites:CSE 4413/6413 ). Three hours lecture. Realistic, three-dimensional image generation; modeling techniques for complex three-dimensional scenes; advanced illumination techniques; fractal surface modeling; modeling and rendering of natural phenomena

CSE 8613 Cognitive Models of Skill: 3 hours.

(Prerequisite: Graduate standing). Three hours lecture. Introduction to cognitive modeling, with a focus on computational models of skill acquisition and expert skill. (Same as PSY 8723 )

CSE 8673 Machine Learning: 3 hours.

(Prerequisite: CSE 4633/6633 ). Three hours lecture. Introduction to machine learning, including computational learning theory, major approaches to machine learning, evaluation of models, and current research

CSE 8813 Theory of Computation: 3 hours.

(Prerequisite: CSE 3813).Three hours lecture.Study of abstract models of computation,unsolvability,complexity theory, formal grammars and parsing, and other advanced topics in theoretical computer science

CSE 8833 Algorithms: 3 hours.

(Prerequisites: CSE 4833/6833).Three hours lecture. Advanced techniques for designing and analyzing algorithms, advanced data structures, case studies, NP-completeness including reductions, approximation algorithms

CSE 8843 Complexity of Sequential and Parallel Algorithms: 3 hours.

(Prerequisite:CSE 4833/6833 ).Three hours lecture. Complexity of sequential algorithms, theory of complexity, parallel algorithms

CSE 8990 Special Topics in Computer Science and Engineering: 1-9 hours.

Credit and title to be arranged. This course is to be used on a limited basis to offer developing subject matter areas not covered in existing courses. (Courses limited to two offerings under one title within two academic years)

CSE 9000 Dissertation Research/ Dissertation in Computer Science and Engineering: 1-13 hours.

Hours and credits to be arranged

CSE 9133 Topics in High Performance Computing: 3 hours.

(Prerequisite:Consent of Instructor). Three hours lecture. Reading and study of current work related to the area of high performance computing. Intended for doctoral students. ( May be taken for credit more than once)

CSE 9633 Topics in Artificial Intelligence: 3 hours.

(Prerequisite: Consent of instructor). Three hours lecture. Reading and study of current work related to the area of artificial intelligence. Intended for doctoral students. (May be taken for credit more than once)