Component-Based Development (CBD) is gaining popularity as an effective reuse technology. Components in CBD are mainly for interorganizational reuse, rather than intra-organizational reuse [1]. One of the common forms of reusing commercial-off-the-shelf (COTS) components is to acquire and customize them for each application. Therefore, components must be developed with consideration of commonality and variability in a domain in order to increase the reusability and applicability [2]. One effective factor in determining the quality of components is how precisely the variability is modeled and how effective customization mechanisms are provided. COTS components often come in binary and blackbox form, therefore modifying the source code or re-linking object code with library are forbidden. However, much of current approaches to component customization are directed towards tailoring whitebox components, i.e. source code is modified. In this paper, we present a comprehensive set of techniques to realize variability into blackbox components and to provide effective interface-based customization mechanisms. Maintanbility, applicability and reusability can be enhanced by using the mechanism.
[1]
Cristina Gacek,et al.
Implementing product line variabilities
,
2001,
SSR '01.
[2]
Jan Bosch,et al.
Issues Concerning Variability in Software Product Lines
,
2000,
IW-SAPF.
[3]
Ji Hwan Park,et al.
C-QM: A Practical Quality Model for Evaluating COTS Components
,
2003,
Applied Informatics.
[4]
Soo Dong Kim.
Lessons learned from a nationwide CBD promotion project
,
2002,
CACM.
[5]
Perdita Stevens,et al.
Modelling Recursive Calls with UML State Diagrams
,
2003,
FASE.
[6]
Frank van der Linden,et al.
Software Architectures for Product Families
,
2000,
Lecture Notes in Computer Science.
[7]
Mike Mannion,et al.
Using Patterns to Model Variability in Product Families
,
1999,
IEEE Softw..
[8]
Soo Dong Kim,et al.
A Systematic Methodology for Developing Component Frameworks
,
2004,
FASE.