SE 4550 : Software Architecture and Design
SE 4550: Software Architecture and Design
Semester Hours: 3.0
Contact Hours: 3
Coordinator: Michael Decker
Text: Pattern-Oriented Software Architecture, A System of Patterns: Vol 1
Author(s): Frank Buschmann
Year: 2000
SPECIFIC COURSE INFORMATION
Catalog Description
Principles and concepts of analyzing and designing large software systems. Analysis of software systems. Designing software systems using design patterns and object-oriented techniques. Prerequisites: Grade of C or better in SE 3540. Credits cannot be received for both SE 4550 and SE 5550. Approved for distance learning.
Course type: ELECTIVE
SPECIFIC COURSE GOALS
- I can select and use appropriate design patterns.
- I can specify a software system's architecture using UML.
- I can understand separation of concerns and its impact on software design.
- I can architect a software system based on the given requirements.
- I can perform a design review on a software system.
SOFTWARE ENGINEERING STUDENT OUTCOMES ADDRESSED BY THIS COURSE
- SE 1 An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics
- SE 2 An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors
- SE 6 An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions
LIST OF TOPICS COVERED
- Introduction and Importance of Design
- Software Architecture
- Components and connectors
- Constraints
- Composition
- Unified Modeling Language
- Software Design
- Design reviews
- Inter-operability
- Separation of concerns
- Object-oriented Design
- Design patterns
- Information hiding
- Interfaces
- Inheritance and polymorphism
Updated: 12/15/2025 04:47PM