| |
|
This page has changed
since the print version was published. View revisions here.
Department of Computer Science
Computer Science (B.S.)
Faculty
Professors: Farokh Bastani, Ramaswamy Chandrasekaran,
Ding-Zhu Du, András Faragó, Gopal Gupta, Dung T. Huynh,
Dan Moldovan, Simeon C. Ntafos, Balaji Raghavachari, Hsing-Mean (Edwin)
Sha, Ivan H. Sudborough, Bhavani Thuraisingham, Klaus Truemper (Emeritus),
Kang Zang, Si-Qing Zheng
Associate Professors: Sergey Bereg, Lawrence Chung,
Jorge A. Cobb, Ovidiu Daescu, Galigekere
R. Dattatreya, Sanda Harabagiu, Vasileios Hatzivassiloglou, Jason
Jue, Latifer Khan, Rym Mili, Ivor P.
Page, B. Prabhakaran, Ravi Prakash, Haim Schweitzer, S. Venkatesan,
Yuke Wang, W. Eric Wong, I-Ling Yen
Assistant Professors: Joao Cangussu, Kendra M.L.
Cooper, Jing Dong, Xiaohu
Guo, Kevin Hamlen, Murat Kantarcioglu, Yang
Liu, Ying Liu, Neeraj Mittal, Vincent Ng, Kamil Sarac, Weili Wu,
Youtao Zhang
Senior Lecturers: Tim Farage, Herman Harrison, Sam
Karrah, Lawrence King, Greg
Osbirn, David Russo, Cort
Steinhorst, Anthony Sullivan, Laurie Thompson, Nancy Van Ness
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.
Goals for the Computer Science Program
The undergraduate Computer Science program is committed to provide
students with a high-quality education and prepare them for long and
successful careers in industry and government.
Our graduates, while eminently ready for immediate employment, will
also be fully ready for focused training as required for specific positions
in Computer Science and closely related areas. Graduates interested
in highly technical careers, research, and/or academia will be fully
prepared to further their education in graduate school.
Educational Objective for the Computer Science Program
On completion of the BS program, students will:
- have a comprehensive general education background;
- have solid knowledge in fundamental areas of Computer Science;
- have the ability to apply their knowledge to the solution of practical
and useful problems;
- have the ability to communicate effectively and work collaboratively;
- be able to become successful professionals and, if they desire,
be able to pursue graduate study;
- recognize the need for lifelong learning and have the knowledge
and skills that prepare them to adapt to rapid technological changes;
and
- understand the ethical, societal, and global issues associated with
the computing field.
Bachelor of Science in Computer Science
Degree Requirements (125 hours)
I. Core Curriculum Requirements1: 42 hours
A. Communication (6 hours)
3 hours Communication (RHET
1302)
3 hours Professional and Technical
Communication (ECS 3390) 2
B. Social and Behavioral Sciences (15 hours)
6 hours Government (GOVT
2301 and 2302)
6 hours American History
3 hours Social and Behavioral
Science (ECS
3361 )
C. Humanities and Fine Arts (6 hours)
3 hours Fine Arts (ARTS
1301)
3 hours Humanities (HUMA
1301)
D. Mathematics and Quantitative Reasoning (6 hours)
6 hours Calculus (MATH
2417 and 2419)3
E. Science (9 hours)
6 hours Lecture courses (PHYS
2325 and 2326) 4
2 hours Laboratory courses (PHYS
2125 and 2126) 4
4 hours Science Elective4
1 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 U.T.
Dallas.
II. Major Requirements: 62 hours
Major Preparatory Courses (18 hours
beyond Core Curriculum)
CS 1337 Computer
Science I
CS 2305 Discrete
Mathematics for Computing I
CS 2336 Computer
Science II
MATH
2417 Calculus I3
MATH
2418 Linear Algebra
MATH
2419 Calculus II3
PHYS
2125 Physics Laboratory I4
PHYS
2126 Physics Laboratory II4
PHYS
2325 Mechanics and Heat4
PHYS
2326 Electromagnetism and Waves4
4 hours Science Elective4
Major Core Courses (35 hours
beyond Core Curriculum)
CS 3305 Discrete
Mathematics for Computing II
CS
3340 Computer Architecture
CS 3341 Probability
and Statistics in Computer Science and Software Engineering
CS3345 Data
Structures and Introduction to Algorithmic Analysis
CS 3354 Software
Engineering
CS
4141 Digital Sytems Laboratory
CS 4337 Organization
of Programming Languages
CS4341 Digital
Logic and Computer Design
CS 4348 Operating
Systems Concepts
CS 4349 Advanced
Algorithm Design and Analysis
CS 4384 Automata
Theory
CS 4485 Computer
Science Project
ECS
3361 Social Issues and Ethics in Computer Science and Engineering5
ECS 3390 Professional
and Technical Communication2
Major Guided Electives (9 hours)
CS guided electives
are 4000 level CS courses approved by the student’s CS advisor.
The
following courses may
be used as guided electives without the explicit approval of an
advisor:
CS
4314 Intelligent Systems Analysis
CS
4315 Intelligent Systems Design
CS
4352 Human Computer Interaction I
CS
4353 Human Computer Interaction II
CS
4334 Numerical Analysis
CS
4336 Advanced Java Programming
CS
4347 Database Systems
CS
4361 Computer Graphics
CS
4365 Artificial Intelligence
CS
4375 Introduction to Machine Learning
CS
4376 Object-Oriented Programming Systems
CS
4386 Compiler Design
CS
4389 Data and Applications Security
CS
4390 Computer Networks
CS
4391 Introduction to Computer Vision
CS
4392 Computer Animation
CS
4393 Computer and Network Security
CS
4394 Implementation of Modern Operating Systems
CS
4396 Networking Laboratory
CS
4397 Embedded Computer Systems
CS
4398 Digital Forensics
CS
4399 Senior Honors in Computer Science/Software Engineering
EE
4325 Introduction to VLSI Design
SE
4351 Requirements Engineering
SE
4352 Software Architecture and Design
SE
4367 Software Testing, Verification, Validation and Quality Assurance
SE
4381 Software Project Planning and Management
SE
4485 Software Engineering Project
III. Elective Requirements: 21 hours
Advanced Electives (6 hours)
All students are required
to take at least six hours of advanced electives outside their major
field of study. These
must be either upper-division classes or lower-division classes that
have prerequisites.
Free Electives (15 hours)
All students must accumulate
at least 120 hours of university credit to graduate. Both lower-
and upper-division courses
may count as free electives but students must complete at least
51 hours of upper-division
credit to qualify for graduation. Not all courses offered by the
University can be used
as a free elective. Please consult with your advisor.
At least 9 hours of electives (out of the 21 hours
required) must be outside Science and Engineering. At least 6 hours
(out of the designated 21) should be in Humanities, Arts, and other
areas that broaden the student's educational experience. Consult an
advisor for specific classes.
Fast Track Baccalaureate/Master’s Degrees
In response to the need for post-baccalaureate education in the exciting
field of computer science, 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.
and the M.S. degrees in Computer Science (or M.S. in Computer Science
with Major in Software Engineering). Being within 30 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 hours that
may be used to complete the baccalaureate degree and also to satisfy
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.
Honors 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.50 or better GPA in at least 30 hours of coursework. Graduation
with Honors requires a 3.50 or better GPA and completion of at least
6 honors classes, including a Senior Thesis or Senior Design Project
class.
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.
For more details, contact the Office of Undergraduate Advising
(ECS South 2.502; (972)883-2004).
Minors
A minor in Computer Science requires 21 credit hours earned through
the following courses:
CS 1337 Computer Science I
CS 2305 Discrete Mathematics for Computing
I
CS 2336 Computer Science II
CS 3305 Discrete Mathematics for Computing
II
CS 3345 Data Structures and Introduction
to Algorithmic Analysis
CS 3354 Software Engineering
CS 43XX Elective (any 4000-level organized class)
A minor in Information Assurance requires 33 credit hours earned through
the following courses:
CS 1337 Computer Science I
CS 2305 Discrete Mathematics for Computing
I
CS 2336 Computer Science II
CS 3305 Discrete Mathematics for Computing
II
CS 3345 Data Structures and Introduction
to Algorithmic Analysis
CS 4347 Database Systems
CS 4348 Operating Systems Concepts
CS 4389 Data and Applications Security
CS 4393 Computer and Network Security
CS 4398 Digital Forensics
Certificates
A Certificate in Information Assurance can be obtained by completing
the following (as well as any required prerequisites):
CS 4389 Data and Applications Security
CS 4393 Computer and Network Security
CS 4398 Digital Forensics
This certificate is intended for those individuals who are working
in the industry and who already have background similar to a BS-CS degree.
CS and SE Majors that complete the required classes, as well as students
that complete the Minor in Information Assurance will be awarded certificates
in Information Assurance.
|

|