Domain specific software architecture comprises:
- A reference architecture, which describes a general computational framework for a significant domain of applications.
- A component library, which contains reusable chunks of domain expertise.
- An application configuration method for selecting and configuring components within the architectural to meet particular application requirements.
DSSAs involve a number of domain engineering activities. The regions of the problem space (domains) are mapped into domain-specific software architectures (DSSAs) which are specialized into application-specific architectures and then implemented.
The three key factors of DSSA are:
- Domain: Must have a domain to constrain the problem space and focus development
- Technology: Must have a variety of technological solutions like tools, patterns, architectures & styles, legacy systems to bring to bear on a domain
- Business: Business goals motivate the use of DSSE
Minimizing costs: reuse assets when possible
Maximize market: develop many related applications for different kinds of end users
These three factors together apply technology to domain-specific goals which is made firm by business knowledge.
The overview of the DSSA process is given below: