Architecture describes the organizational structure of a system including components, interactions, and constraints. Reusable components, units of software systems, have been considered to support a considerable improvement in reducing development costs and time to market because their interfaces and functionality are explicitly defined. Instead of reusing an individual component, however, it is much more advantageous to reuse a whole design or architecture. A domain architecture, sharing a common software architecture across a product line, includes common components shared by all products and optional components exploited by a subset of the products. Variability, one of the key concepts in the development of domain architectures indicates the ability to derive various products from the product line. Clearly, we need to support variability during domain architecture development. In this paper, we suggest a metamodeling concept that enables a common under-standing of architecture variability. The domain architecture metamodel reflects the Object Management Group's (OMGTM) Reusable Asset Specification (RAS) which addresses the engineering elements of reuse. We describe a domain architecture in which commonality and variability are explicitly considered.
[1]
Colin Atkinson,et al.
Model-Driven Product Line Architectures
,
2002,
SPLC.
[2]
Daniel J. Duffy,et al.
Domain Architectures: Models and Architectures for UML Applications
,
2004
.
[3]
Kyo Chul Kang,et al.
Feature-Oriented Domain Analysis (FODA) Feasibility Study
,
1990
.
[4]
Keunhyuk Yeom,et al.
An approach to developing domain requirements as a core asset based on commonality and variability analysis in a product line
,
2005,
IEEE Transactions on Software Engineering.
[5]
Jaejoon Lee,et al.
FORM: A feature-;oriented reuse method with domain-;specific reference architectures
,
1998,
Ann. Softw. Eng..
[6]
Hassan Gomaa,et al.
Designing Software Product Lines with UML
,
2005,
29th Annual IEEE/NASA Software Engineering Workshop - Tutorial Notes (SEW'05).
[7]
Mike Mannion,et al.
Using Patterns to Model Variability in Product Families
,
1999,
IEEE Softw..
[8]
Hassan Gomaa.
Designing Software Product Lines with UML 2.0: From Use Cases to Pattern-Based Software Architectures
,
2006,
ICSR.