Gomaa, HassanFant, Julie Street2011-08-22NO_RESTRIC2011-08-222011-08-22https://hdl.handle.net/1920/6588Software architectural design patterns represent best practice solutions to common design challenges. However, applying design patterns in practice can be difficult because they are typically documented to be domain independent. This makes applying them in a particular domain difficult. Knowing where and at what level of abstraction software architectural design patterns should be applied in a given domain is not always clear. Currently, there are no existing approaches for building and validating domain specific software architectures that focus on reusing and composing existing software architectural design patterns. This dissertation addresses this gap by developing a software product line (SPL) based approach to building and validating domain specific software architectures from software architectural design patterns. The key contributions of this research include: the definition of distributed real-time and embedded (DRE) executable design patterns; the definition of a SPL design approach that captures SPL variability at a higher degree of granularity using design patterns; the definition of different levels of required executable design pattern customizations; and a feature and design pattern based functional validation approach. Additionally, a domain specific SPL and two real world case studies are provided to validate and demonstrate the applicability of this approach.en-USSoftware ArchitectureSoftware Product LinesSoftware Design PatternsUmlAn Approach to Building Domain Specific Software Architectures from Software Architectural Design PatternsDissertation