2004 - 2006 Undergraduate Catalog
Introduction (home)
Contents / Site Map
Policies / Procedures
Tuition and Fees
Financial Aid
Campus Resources
Degree Requirements
Undergraduate Programs
Course Descriptions
Academic Calendar
Board of Regents
Correspondence Directory
Alphabetical Index
UTD Home Page
Online Catalogs Index
Graduate Catalog

Software Engineering Course Descriptions

SE 2370 Mathematical Foundations of Software Engineering (3 semester hours) Boolean logic, first-order logic, models of first-order logic. Introduction to program verification, applications in Software Engineering. Completeness Theorem. Regular expressions, regular sets, finite-state machines, and applications in Software Engineering. Fundamentals of Graph Theory, basic graph algorithms. Statecharts, Petri Nets and their role in Software Engineering. Prerequisite: CS 2305. (3-0) S
SE 2V95 Individual Instruction in Computer Science/Software Engineering (1-6 semester hours) Individual study under a faculty member’s direction. May be repeated for credit. Consent of instructor required. (Same as CS 2V95) ([1-6]-0) R
SE 3195 Special Topics in Computer Science/Software Engineering (1 semester hour) May be repeated for credit (4 hours maximum). Must be taken Credit/No Credit. Consent of instructor required. (Same as CS 3195) (1-0) R
SE 3341 Probability and Statistics in Computer Science and Software Engineering (3 semester hours) Axiomatic probability theory. Calculation of probabilities of compound events, with illustrations from Computer Science and Software Engineering examples. Random variables. Synthesis of important random variables from CS/SE-related random experiments–binomial, geometric, multinomial, Poisson, exponential, and related distributions. Expectation. Important functions of random variables and evaluation of distributions of functions. Generation of random numbers of various distributions, starting from the standard uniform random number generators. Sums of independent random variables. Convolution and the use of transforms in simple cases involving exponential and Poisson random variables. Illustrative examples and simulation exercises from queuing, reliability, and program analysis disciplines. Elements of parameter (point) estimation. Prerequisites: MATH 1326 or MATH 2419, and CS 2305. (Same as CS 3341) (3-0) S
SE 3345 Data Structures and Introduction to Algorithmic Analysis (3 semester hours) Analysis of algorithms including time complexity and Big-O notation. Analysis of stacks, queues, and trees, including B-trees. Heaps, hashing, and advanced sorting techniques. Disjoint sets and graphs. Course emphasizes design and implementation. Prerequisites: CS 2336, and one of CS 3305 or SE 2370. (Same as CS 3345) (3-0) S
SE 3354 Software Engineering (3 semester hours) Introduction to software life cycle models. Software requirements engineering, formal specification and validation. Techniques for software design and testing. Cost estimation models. Issues in software quality assurance and software maintenance. Prerequisites: CS 2336 or CS 3333, and CS 2305. (Same as CS 3354) (3-0) S
SE 3V95 Undergraduate Topics in Computer Science/Software Engineering (2-9 semester hours) Subject matter will vary from semester to semester. May be repeated for credit (9 hours maximum). (Same as CS 3V95) ([2-9]-0) S
SE 4340 Computer Architecture (3 semester hours) Boolean algebra and logic circuits; register transfer operations; design of a small computer; input, output, and interrupt organization; powerful addressing modes, instruction formats, and their hardware structures; microprogram control. Prerequisite: CS 2305 or TE 3307. (Same as CS 4340) (3-0) S
SE 4347 Database Systems (3 semester hours) This course emphasizes the concepts and structures necessary for the design and implementation of database management systems. Topics include data models, data normalization, data description languages, query facilities, file organization, index organization, file security, data integrity, and reliability. Prerequisite: CS/SE 3345. (Same as CS 4347) (3-0) Y
SE 4348 Operating Systems Concepts (3 semester hours) An introduction to fundamental concepts in operating systems: their design, implementation, and usage. Topics include process management, main memory management, virtual memory, I/O and device drivers, file systems, secondary storage management, and an introduction to critical sections and deadlocks. Prerequisites: CS 4340, one of CS/SE 3345 or TE 3346, and a working knowledge of C and UNIX. (Same as CS 4348) (3-0) S
SE 4351 Requirements Engineering (3 semester hours) Introduction to system and software requirements engineering. The requirements engineering process, including requirements elicitation, specification, and validation. Essential words and types of requirements. Structural, informational, and behavioral requirements. Non-functional requirements. Scenario analysis. Conventional, object-oriented and goal-oriented methodologies. Prerequisites: SE 2370, CS/SE 3354 or consent of instructor. (3-0) S
SE 4352 Software Architecture and Design (3 semester hours) Introduction to software design with emphasis on architectural design. Models of software architecture. Architecture styles and patterns, including explicit, event-driven, client-server, and middleware architectures. Decomposition and composition of architectural components and interactions. Use of non-functional requirements for tradeoff analysis. Component based software development, deployment and management. Prerequisites: SE 2370, CS/SE 3354 or consent of instructor. (3-0) S
SE 4367 Software Testing, Verification, Validation and Quality Assurance (3 semester hours). Methods for evaluating software for correctness, and reliability including code inspections, program proofs and testing methodologies. Formal and informal proofs of correctness. Code inspections and their role in software verification. Unit and system testing techniques, testing tools and limitations of testing. Statistical testing, reliability models. Prerequisites: SE 2370, CS/SE 3354 or consent of instructor. (3-0)
SE 4376 Object-Oriented Programming Systems (3 semester hours) In-depth study of the features/advantages of object-oriented approach to problem solving. Special emphasis on issues of object-oriented analysis, design, implementation, and testing. Review of basic concepts of object-oriented technology (abstraction, inheritance, and polymorphism). Object-oriented programming languages, databases, and productivity tools. Prerequisite: CS 2336 or equivalent programming experience. (Same as CS 4376) (3-0) S
SE 4381 Software Project Planning and Management (3 semester hours) Planning and managing of software development projects. Software process models, ISO 9000, SEI’s Capability Maturity Model, continuous process improvement. Planning, scheduling, tracking, cost estimation, risk management, configuration management. Prerequisite: CS/SE 3354. (3-0) Y
SE 4485 Software Engineering Project (3 semester hours) This course is intended to complement the theory and to provide an in-depth, hands-on experience in all aspects of software engineering. The students will work in teams on projects of interest to industry and will be involved in analysis of requirements, architecture and design, implementation, testing and validation, project management, software process, software maintenance, and software re-engineering. Prerequisites: at least two of SE 4351, SE 4352, SE 4367, SE 4381. (3-1) S
SE 4399 Senior Honors in Computer Science/Software Engineering (3 semester hours) For students conducting independent research for honors theses or projects. (Same as CS 4399) (3-0) R
SE 4V95 Undergraduate Topics in Computer Science/Software Engineering (1-9 semester hours) Subject matter will vary from semester to semester. May be used as SE Guided Elective on SE degree plans. May be repeated for credit (9 hours maximum). (Same as CS 4V95) ([1-9]-0) R


General Information
Computer Science
Electrical Engineering
Software Engineering
Telecommunications Engineering




This catalog is a general information publication only. It is not intended to nor does it contain all regulations that relate to students. The provisions of this catalog do not constitute a contract, express or implied, between any applicant, student or faculty member and The University of Texas at Dallas or The University of Texas System. The University of Texas at Dallas reserves the right to withdraw courses at any time, to change fees or tuition, calendar, curriculum, degree requirements, graduation procedures, and any other requirements affecting students. Changes will become effective whenever the proper authorities so determine and will apply to both prospective students and those already enrolled.

Statement on Equal Educational Opportunity
The University of Texas at Dallas is committed to an educational and working environment that provides equal opportunity to all members of the University community. In accordance with federal and state law, the University prohibits unlawful discrimination on the basis of race, color, religion, national origin, gender, age, disability, and veteran status. Discrimination on the basis of sexual orientation is also prohibited pursuant to University policy.