SWE 6343 User
Interface Design and Implementation
3-0-3
Prerequisite: SWE 6623
This course covers the
major frameworks, methods, and approaches to designing, engineering,
implementing, and testing user interfaces. It covers user and usability
requirements gathering, task analysis, user-interface design, implementation of
the user interface, and evaluation with respect to requirements and the users'
tasks. Illustrative design and implementation projects are completed
throughout the term.
SWE 6623 Software
Engineering I
3-0-3
Prerequisite: CS
5123/3424
This course covers the
initial phases of the software-development life cycle. Topics include
planning, requirements analysis, requirements specification, and design.
A number of techniques for performing analysis and design are explored and
applied in a major project.
SWE 6633 Software
Project Management
3-0-3
Prerequisites: SWE 6623
Focus on organizational
and technical roles in software engineering. Emphasis on: models of
software life cycle, software maturity framework, strategies of implementing
software, software process assessment, project planning tools, software
configuration management, managing software quality and usability, leadership
principles, and professional and ethical issues. A required project
combines technical and managerial techniques for assessing software design and
development.
SWE 6723 Software
Engineering II
3-0-3
Prerequisite: SWE 6623
This course covers the
entire software development life-cycle. Emphasis is placed on advanced
topics including prototyping, verification and validation, formal methods, and
quality management. A major component is a group project that utilizes a
Computer Assisted Software Engineering (CASE) tool to assist in the in the
analysis, design, and implementation of a system.
SWE 6743
Object-Oriented Analysis and Design
3-0-3
Prerequisites: CS
5183/3663 and SWE 6623
This course explores the
object-oriented software development process including analysis, design, and
programming. Emphasis is on the object-oriented paradigm.
SWE 6753 Computer Game
Design & Development
3-0-3
Prerequisite: CS 5123
Advanced Programming and Data Structures
Topics include graphics,
multimedia, visualization, animation, virtual reality simulation concepts,
methods, and tools of game design and developments using the software
engineering life cycle are emphasized. A
team project on a game prototype is required
SWE 6763 Software
Metrics and Quality Management
3-0-3
Prerequisite: SWE 6623
This course covers the
principles of software measurement such as, scaling, validity, and reliability.
The various software metrics on volume, effort, quality, and cost estimation
are explored. The theory and principles of software verification and validation
effectiveness, and reliability models are studied. The application of these
measurements to software customer satisfaction and total quality management is
explored.
SWE 6783 User
Interaction Engineering
3-0-3
Prerequisites: CS 5183/3663
and SWE 6623
This course follows a
complete software-engineering cycle to produce software objects (classes and/or
components) that support users in effective, efficient, and enjoyable
interactions with computers. Class exercises and a project incorporate
concepts and methods including ethnographic and user analysis; cognitive
ergonomics; usability metrics and criteria; software-engineering practices,
conventions, standards, and documentation; device-user action mapping;
person-system function allocation; quality management systems; conceptual
prototyping; embedded systems in support of ubiquitous computing; and
function-behavior analysis.
SWE 6813 Component
Based Software Development
3-0-3
Prerequisites: CS 5123
and CS 5183
This course covers the
concepts, foundations, and architectures of component-based software
development (CBSD) and its related technologies. Component-based tools
and languages, approaches for implementation of CBSD, including designing,
building, assembling, and deploying reusable COTS and in-house software
components are discussed in depth. The current concrete realizations of
component technologies will be explored. Students will do projects
focused on the life cycle of software components.
SWE 6823 Embedded
Systems Analysis and Design
3-0-3
Prerequisite: SWE 6623
This project-oriented
course focuses on using modern methods, techniques, and tools for specification
and design of embedded systems. Topics include analytical methods,
design/development methods, and notations. Performance evaluation based
on modeling and simulation techniques is also covered.
SWE 6843 Embedded
Systems Construction and Testing
3-0-3
Prerequisite: CS
5243/3243
This project-oriented course
focuses on the use of current software building technology, testing,
reliability analysis, and benchmarking. Topics include component-based
development (CBD), implementation technologies, and real-time operating systems
(RTOS), with emphasis on the use of measurement tools, and domain
libraries. The course also covers issues in hardware software co-design.
SWE 6883 Formal
Methods in Software Engineering
3-0-3
Prerequisites: CS 5423
and SWE 6623
This course involves a
study of formal methods applicable to software development with an emphasis on
methods that support formal specification and verification. Such methods
may include transformational techniques, logic-based formalisms, algebraic and
model-based specifications, tools, etc.
SWE 6901-6903
Special Topics
1 to 3 hours
Prerequisite: As
determined by the Instructor and Program Head
Special topics selected
by the program head. Offered on a demand basis. A student may
repeat this course with special permission.
SWE 7903 Software
Engineering Capstone
3-0-3
Prerequisite:
Satisfactory completion of the MSSWE core (SWE 6623, SWE 6633, SWE 6723, SWE
6743, SWE 6763, and SWE 6883)
This course is designed
for students to give a professional focus to their degree. The students
work in designated teams under the supervision of the course instructor (a CSE
faculty member), on a project of practical significance in software
engineering. Each of the teams will deliver a final working product,
generate a substantial final report, and give a final presentation on the
project.
.
Modified: July 17, 2003