| |
|
This page contains revisions
since the catalog's original publication:
Additions are in red
Deletions are in red
strikethrough
Go back to
current version
Software Engineering (B.S.S.E)
Faculty
Professors: Farokh Bastani, Ramaswamy Chandrasekaran,
András Faragó, Gopal Gupta, Dung T. Huynh, Dan Moldovan,
Simeon C. Ntafos, Balaji Raghavachari, Hsing-Mean (Edwin) Sha, Ivan
H. Sudborough,Bhavani Thuraisingham,
Ioannis G. Tollis, Klaus Truemper,
Si-Qing Zheng
Associate Professors: Sergeiy
BespamyatnikhBereg, Lawrence Chung,
Galigekere R. Dattatreya, Sanda Harabagiu, Vasilieos
Hatzivassiloglou, Jason Jue, Rym Mili, Ivor P. Page,
B. Prabhakaran, Ravi Prakash, Haim Schweitzer, Subbarayan.
Venkatesan, Yuke Wang, W. Eric Wong, I-Ling Yen, Kang Zhang
Assistant Professors: Joao Cangussu, Jorge A. Cobb,
Kendra M.L. Cooper, Ovidiu Daescu, Jing Dong, Jason
Jue, Latifur Khan, Neeraj Mittal,
Vincent Ng, B. Prabhakaran, Kamil
Sarac, R.N. Uma, Weili Wu, Youtao Zhang
Senior Lecturers: Douglas
Benn, Tim Farage, Herman Harrison, Sam Karrah, Lawrence
King, Radha Krishnan, Rafael Lacambra,
Joseph Leubitz, Greg Osbirn, David Russo, Veli
Sahin, Martha Sanchez, Nerandra
Sheth, Cort Steinhorst, Anthony Sullivan, Laurie Thompson,
Nancy Van Ness, Wei Wei
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 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:
- To prepare students for software engineering positions in industry
or government;
- To prepare students for graduate study in Software Engineering;
and
- To provide a solid foundation in Computer Science and Software Engineering
principles that will allow graduates to adapt effectively in a quickly
changing field.
Software Engineering Educational
Objectives of the Software Engineering
Program
The current objectives for graduates of the Bachelor of Science in
Software Engineering Program are to:
- effectively apply knowledge of programming, algorithms, data structures,
and software engineering to the development of complex software systems;
- communicate technical concepts effectively in both written documents
and oral presentations;
- design and analyze software at the component, subsystem, and software
architecture levels and make informed, sound software design tradeoffs;
- understand the social and ethical issues that arise in their work
and deal with them professionally;
- understand the importance of all phases of the software lifecycle,
with emphasis on the need to plan for change and continuously vie
to improve the software process;
- work effectively in a software development team and with other engineering
professionals;
- appreciate the need for lifelong learning and adapt to rapid technological
changes.
Bachelor of Science in Software Engineering
Degree Requirements (124 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 (ISSS 3360)
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)
2 hours Laboratory courses
(PHYS 2125 and 2126)
4 hours Science Elective4
II. Major Requirements: 64 hours
Major Preparatory Courses (2118
hours beyond Core Curriculum)
CS
1337 Computer Science I
CS
2305 Discrete Mathematics for Computing I
CS
2336 Computer Science II
MATH
2417 Calculus 13
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
SE
2370 Mathematical Foundations
of Software Engineering
4 hours Science Elective4
Major Core Courses (3134
hours beyond Core Curriculum)
CS/SE
3341 Probability and Statistics in Computer Science
CS/SE
3345 Algorithm Analysis and Data Structures
CS/SE
3354 Software Engineering
CS/SE
4340 Computer Architecture
CS/SE
4348 Operating Systems Concepts
ECS
3390 Professional and Technical Communication2
ISSS
3360 Politics and Values in Business
and Technology
SE
3306 Mathematical Foundations of Software Engineering
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
Major Guided Electives (12 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:
CGS/CS
4314 Intelligent Systems Analysis
CGS/CS
4315 Intelligent Systems Design
CGS/CS
4352 Human Computer Interaction I
CGS/CS
4353 Human Computer Interaction II
CS/MATH
4334 Numerical Analysis
CS
4337 Organization of Programming Languages
CS/SE
4347 Database Systems
CS
4349 Advanced Algorithm Analysis and Design
CS
4361 Computer Graphics
CS
4365 Artificial Intelligence
CS/SE
4376 Object Oriented Programming Systems
CS
4380 Senior Design Project
CS
4384 Automata Theory
CS
4386 Compiler Design
CS/TE
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/SE
4399 Senior Honors in Computer Science/Software Engineering
EE
4325 Introduction to VLSI Design
EE
4420 Microprocessor Systems
Design
Application Domains (9-10
hours)
An important aspect of Software Engineering education is the use of
software engineering concepts in a particular application domain. Students
should use two of their three 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.
Digital Systems Design
(10 hours)
CS/SE
4340 Computer Architecture
EE 4325
Introduction to VLSI Design
EE 4420
Microprocessor Systems Design
Networks (9 hours)
CS/TE 4390 Computer
Networks
CS 4393 Computer
Network Security
CS 4396 Networking
Laboratory
Embedded Systems (9 hours)
CS/SE 4348 Operating
Systems
CS 4394 Implementation
of Modern Operating Systems
CS 4397 Embedded
Computer Systems
Computer Imaging (9 hours)
CS 4361 Computer
Graphics
CS 4391 Introduction
to Computer Vision
CS 4392 Computer
Animation
Artificial Intelligence and Cognitive Modeling
(9 hours)
CS 4365 Artificial
Intelligence
CGS 4314 Intelligent
Systems Analysis
CGS 4315 Intelligent
Systems Design
Human-Computer Interaction (9 hours)
CS 4361 Computer
Graphics
CGS 4352 Human
Computer Interactions I
CGS 4353 Human
Computer Interactions II
III. Elective Requirements: 18 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 (12 hours)
All students must accumulate
at least 124 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.
Fast Track Baccalaureate/Master’s Degrees
In response to the need for post-baccalaureate education in the exciting
field of computer sciencesoftware 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 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 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.
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.5 or better GPA in at least 30 hours
of coursework. Graduation with Honors requires a 3.5 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).
3 + 2 Programs
The University of Texas at Dallas offers
"3 + 2" programs with Abilene Christian University, Austin
College, Paul Quinn College, and Texas Woman's University. These programs
combine the strengths of these respective institutions with those of
The University of Texas at Dallas, and permit students to earn two undergraduate
degrees simultaneously while preparing for a professional career in
engineering. Full-time undergraduate students attend one of the institutions
listed above, majoring in mathematics, physics, or computer science
for three years, and then continue their education for two years at
The University of Texas at Dallas, majoring in electrical engineering.
After completion of the program, students receive the Bachelor of Science
degree in their chosen major from one of the above institutions and
the B.S.E.E. degree from U.T. Dallas. Further details of the individual
programs and persons to contact at the respective institutions can be
obtained from the U.T. Dallas Electrical Engineering Program Office.
Minors
A minor in Software Engineering 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/SE 3345 Data Structures and Introduction to Algorithms
CS/SE 3354 Software Engineering
SE 3306 Mathematical Foundations of Software Engineering
SE 43XX Elective (any 4000-level organized class)
|

|