From our experience on feature model analysis we have performed a domain analysis process with the aim of detecting the common features of different analysis tools. Those features and the different extension points are part of the FAMA FW Core. The remaining features are provided as FAMA Extensions.
In the Figure above you may see a detailed description of FAMA FW architecture that we briefly describe to understand the functionality and the flexibility of the tool:
Designed as a PL
FAMA FW has been designed and developed as a Product Line, making a previous domain analysis, identifying the variation points and the variability subjects and providing variablility management mechanisms. In the figure below the feature diagram of the tool is showed:
The next figure shows the operations or questions currently supported for each reasoner included in the framework:
Question / Reasoner | Sat4j Reasoner | JavaBDD Reasoner | Choco Reasoner | JaCoP GPL Reasoner |
---|---|---|---|---|
Number of Products | Yes | Yes | Yes | Yes |
Filter | Yes | Yes | Yes | Yes |
Products | Yes | Yes | Yes | Yes |
Validation | Yes | Yes | Yes | Yes |
Optimum Products | Yes | Yes | ||
Error Detection | Yes | Yes | ||
Error Explanation | Yes | Yes | ||
Commonality | Yes | Yes | Yes | Yes |
Valid Configuration | Yes | Yes | Yes | Yes |
Variability | Yes | Yes | Yes | Yes |
Valid Product | Yes | Yes | Yes | Yes |
ConfigurationErrors | Yes | |||
OneProduct | Yes | Yes | Yes | Yes |