OMSE 532 Software Architecture and Domain Analysis

Methods and principles of the architectural design of complex, large-scale software systems to accommodate change and evolution through many product releases or versions. Survey of the major architectural styles, their strengths and weaknesses, and architectural trade-offs with respect to system goals and desired properties. Study of architectural approach to development of open systems and frameworks based on case studies. Software engineering of domain-specific software architectures for families of systems (e.g., product lines) including domain analysis, domain modeling, and design of domain-specific software architectures. Relation of software architecture to requirements and its effects on downstream design and software evolution. Students examine domain analysis and the architectural design process and products in the business context including the effect of decisions on cost and schedule. Foundation coursework is required for registration.