## 4 Integration of FamiWare and INTER-TRUST
### Integration of the INTER-TRUST Modules and Security Concerns
#### 4.1.2 Integration of the Security Concerns  
Figure 6 shows the VSpec tree that models the variability of the INTER-TRUST security concerns (_i.e._, the VSpec tree contained in the security composite variability shown in Figure 5). The top of Figure 6 shows the abstract part in which all of the security concerns, functionalities, attributes and parameters that can be reconfigured at runtime are specified (_i.e._, the variability specification tree for security). The bottom of Figure 6 shows a representation of the specific implementation of the security functionalities encapsulated in the FamiWare components (_i.e._, the base model of the security concerns). Details of the parameters of each security concern in the variability specifications tree and in the FamiWare components are hidden in Figure 6 to simplify it. Some of these details are shown in Figure 7 for the authentication functionality and are detailed below. Finally, the security features of the tree and the specific functionality of the FamiWare components for security are linked by using the CVL variation points (middle of Figure 6). A particular selection of the features in the tree defines a particular configuration of the security components.  
As stated, Figure 7 shows the kinds of details that were omitted for the security concerns in Figure 6. In particular, the required configuration for the attributes and parameters of the authentication concern are shown. The graphical elements shown in grey indicate those elements selected in a particular configuration. In this case, the VSpec NetworkAuthhas been selected to indicate that a dynamic authentication and key establishment protocol [5] will be used as the authentication mechanism. Moreover, the configuration also includes the parameters for the certificate authority (TrustedCA) such as the information about the organization that issued the certificate and the parameters for the key caches that will store the session keys to be used with the certificate (nodeID, Keyand KeyLifetime). Note that this is only an example, and the variability model allows different instances of each component modeling a security concern to be created and configured. Moreover, as illustrated in Figure 8 in Section 4.3, the variability model also allows the use of different authentication mechanisms for different parts of the same application.  
Finally, the FamiWare base model is extended to integrate the security aspects provided by INTER-TRUST. Security concerns are implemented in INTER-TRUST using the aspect-oriented  
Figure 6: Composite variability: security concerns.  
Figure 7: Resolution model of the authentication concern.  
programming approach [20]. However, the approach presented in this paper is not affected by the use or not of aspects. FamiWare components communicate using a publish/subscribe interaction model. This means that in order to integrate the security aspects provided by INTER-TRUST, we need to define a FamiWare wrapper component that wraps the behavior provided by the advice of the INTER-TRUST aspects. This is straightforward, since the aspects in INTER-TRUST act also as a wrapper of the security behavior, which is implemented independently of a particular technology.