Erik Jonsson School of Engineering and Computer Science
Department of Computer Science
Computer Science (B.S.) and Software Engineering (B.S.)
Professors: Farokh Bastani, R. Chandrasekaran, Ding-Zhu Du, András Faragó, Gopal Gupta, Dung T. Huynh, Jason Jue, Dan Moldovan, Simeon C. Ntafos, B. Prabhakaran, Balaji Raghavachari, Hsing-Mean (Edwin) Sha, Ivan H. Sudborough, Bhavani Thuraisingham, Klaus Truemper (Emeritus), I-Ling Yen, Kang Zhang, Si-Qing Zheng
Associate Professors: Sergey Bereg, Lawrence Chung, Jorge A. Cobb, Kendra M.L. Cooper, Ovidiu Daescu, Sanda Harabagiu, Murat Kantarcioglu, Latifur Khan, Yang Liu, Neeraj Mittal, Vincent Ng, Ivor P. Page, Ravi Prakash, Kamil Sarac, Haim Schweitzer, S. Venkatesan, Yuke Wang, W. Eric Wong, Weili Wu, Rym Zalila-Wenkstern
Assistant Professors: Mark Gabel, Vibhav Gogate, Xiaohu Guo, Kevin Hamlen, Zhiqiang Lin
Senior Lecturers: Tim Farage, Herman Harrison, Shyam Karrah, Feliks Kluźniak, Linda Morales, Greg Ozbirn, Miquel Razo-Razo, Cort Steinhorst, Janell Straach, Laurie Thompson, Jay Veerasamy
The Computer Science Department offers the B.S. degree in Computer Science and the B.S. degree in Software Engineering. Both are based on a solid foundation of mathematics, including calculus, linear algebra, and discrete mathematics. These programs of study are designed to offer students opportunities to prepare for an industrial, business, or governmental career in a rapidly changing profession and to prepare for graduate study in a field in which further education is strongly recommended. The two programs have the same basis in core computer science, including the analysis of algorithms and data structures, modern programming methodologies, and the study of operating systems. The Computer Science program continues with courses in advanced data structures, programming languages, telecommunications networks, and automata theory, while the Software Engineering program include courses in requirements engineering, software validation and testing, and software architecture, culminating in a challenging project course in which students must demonstrate use of software engineering techniques. Both programs offer a rich choice of elective studies, including courses in artificial intelligence, computer graphics, databases, and compiler design.
The school offers a "fast track" B.S. / M.S. option; see Fast Track Baccalaureate/Master's Degree Program.
Mission of the Department of Computer Science
The mission of the Department of Computer Science is to prepare undergraduate and graduate students for productive careers in industry, academia, and government by providing an outstanding environment for teaching, learning, and research in the theory and applications of computing. The Department places high priority on establishing and maintaining innovative research programs to enhance its education quality and make it an important regional, national and international resource center for discovering, integrating and applying new knowledge and technologies.
Software Engineering (B.S.)
Goals of the Software Engineering Program
The focus of the Software Engineering degree is to provide world class education in modern software engineering. The overall goals of the Bachelor of Science in Software Engineering Program are:
Program Educational Objectives for Software Engineering
Within a few years after graduation, graduates of the Software Engineering Program should:
The B.S. program in Software Engineering is accredited by the Engineering Accreditation Commission of ABET, www.abet.org.
Bachelor of Science in Software Engineering
Degree Requirements (123 semester credit hours)
I. Core Curriculum Requirements1: 42 semester credit hours
Communication (6 semester credit hours)
Social and Behavioral Sciences (15 semester credit hours)
Humanities and Fine Arts (6 semester credit hours)
Mathematics and Quantitative Reasoning (6 semester credit hours)
Science (9 semester credit hours)
II. Major Requirements: 70 semester credit hours
Major Preparatory Courses (20 semester credit hours beyond Core Curriculum)
Major Core Courses (38 semester credit hours beyond Core Curriculum)
Major Guided Electives (12 semester credit hours)
SE guided electives are 4000 level CS/SE courses approved by the student's CS/SE advisor. The following courses may be used as guided electives without the explicit approval of an advisor:
Application Domains (9 semester credit hours)
An important aspect of Software Engineering education is the use of software engineering concepts in a particular application domain. Students should use two or three of their guided electives to complete one of the applications domains below. Additional application domains may become available. Completing an application domain may require careful scheduling since many of these classes will not be offered every semester. It is strongly encouraged that you consult with an advisor.
Networks (9 semester credit hours)
Information Assurance (9 semester credit hours)
Embedded Systems (9 semester credit hours)
Computer Imaging (9 semester credit hours)
Artificial Intelligence and Cognitive Modeling (9 semester credit hours; take 3 of 5)
Human-Computer Interaction (9 semester credit hours)
III. Elective Requirements: 11 semester credit hours
Advanced Electives (6 semester credit hours)
All students are required to take at least six semester credit hours of advanced electives outside their major field of study. These must be either upper-division classes or lower-division classes that have prerequisites. Four of these semester credit hours may be satisfied with MATH 2418 Linear Algebra counted under Major Preparatory courses.
Free Electives (9 semester credit hours)
All students must accumulate at least 124 semester credit hours of university credit to graduate. Both lower- and upper-division courses may count as free electives but students must complete at least 51 semester credit hours of upper-division credit to qualify for graduation.
Degree programs in the Erik Jonsson School of Engineering and Computer Science are governed by various accreditation boards that place restrictions on classes used to meet the curricular requirements of degrees they certify. For this reason, not all classes offered by the University can be used to meet elective requirements. Please check with your academic advisor before enrolling in classes you hope to use as free electives.
Fast Track Baccalaureate/Master's Degrees
In response to the need for post-baccalaureate education in the exciting field of software engineering, a Fast Track program is available to exceptionally well-qualified students who choose their courses carefully. At the end of five years of successful study, it is possible to earn both the B.S. degree in Software Engineering and the M.S. degree in Computer Science or the M.S. degree in Computer Science with Major in Software Engineering. Being within 30 semester credit hours of graduation, a student admitted to the graduate program and accepted into the Fast Track program may, during the senior year, take 15 graduate semester credit hours that may be used to complete the baccalaureate degree and also to satisfy the requirements for the master's degree.
Interested students should see the Associate Dean of Undergraduate Education (ADU) for specific admission requirements to the Fast Track program.
The Department of Computer Science offers upper-division Honors for outstanding students in both the B.S. in Computer Science and B.S. in Software Engineering degree programs. These programs offer special sections of designated classes and other activities designed to enhance the educational experience of exceptional students. Admission to the Honors programs requires a 3.500 or better GPA in at least 30 semester credit hours of coursework. Graduation with Honors requires a 3.500 or better GPA and completion of at least 6 honors classes, including a Senior Thesis or Senior Design Project class. For more details, contact the Office of Undergraduate Advising (ECS South 2.502; 972-883-2004).
Departmental Honors with Distinction may be awarded to students whose Senior Thesis or Senior Design Project is judged by a faculty committee to be of exemplary quality. Only students graduating with Departmental Honors are eligible. Thesis/projects must be submitted by the deadline that applies to M.S. Theses and Ph.D. Dissertations in the graduating semester to allow for proper evaluation. Students interested in Honors with Distinction are encouraged to start working on their thesis/project a year prior to graduation.
A minor in Software Engineering requires 21 semester credit hours earned through the following courses:
- Curriculum Requirements can be fulfilled by other approved courses from accredited institutions of higher education. The courses listed in parentheses are recommended as the most efficient way to satisfy both Core Curriculum and Major Requirements at UT Dallas.
- Hours fulfill the communication elective of the Core Curriculum.
- Six semester credit hours of Calculus are counted under Mathematics Core, and two semester credit hours of Calculus are counted as Major Preparatory Courses.
- Nine semester credit hours of Science are counted under Science Core. Three semester credit hours are counted as Major Preparatory Courses. Students should consult an advisor for specific classes that satisfy this requirement.
- Transfer students with sufficient background may petition to substitute upper level semester credit hours in the major for this class.
- Hours contribute to the Social and Behavioral Sciences component of the Core Curriculum.