similar – providing feature modeling with class
support.
7.2 Feature Model Evaluation
Several measurements have been proposed to
evaluate the quality of FMs. These measurements
assess several quality characteristics, such as
maintainability, usability, functionality and security.
Most works related to maintainability analyses (such
as (Bagheri and Gasevic, 2011); (Patzke et al., 2012)
(Montagud et al., 2012); (Chen and Babar, 2011))
focus on maintainability analysis of models.
In Bagheri’s work (Bagheri and Gasevic, 2011),
the authors proposed several metrics for three
characteristics of a FM: analysability, changeability,
and understandability (Al-Kilidar et al., 2005). The
authors conducted an experiment to validate whether
the metrics selected in their work are accurate
predictors for FMs in real scenarios. However, the
measurements in their work relate to maintainability
analysis only and do not consider influences from
other attributes (such as usability and reliability).
Patzke et al., (2012) focused on variability
complexity management during the evolution of
FMs. Their paper presented an approach to help
developers identify improvement opportunities in
product line infrastructure. The authors applied their
approach to three industrial scenarios to validate their
methodology. They also listed several symptoms of
variability “code smells” of product lines. However,
both of the evaluation metrics and the code smell
symptoms are only for variability analysis and
management in software product lines.
7.3 Guidelines for Feature Models
Lee et al., (2002) proposed a guideline for a feature
modeling process based on their experience from
industrial practice. The guideline consists of several
parts, such as guidelines for domain planning, feature
identification, organization and refactoring. Kang et
al., (2003) conducted a similar work. Compared with
(Lee et al., 2002), they added discussions about
design principles for system architecture and
components for Feature-Oriented Software
Development.
8 CONCLUSION
We explored the relationship between FM structure
and its structural complexity by applying data mining
approaches to the feature model repository provided
by SPLOT. Our experimental evaluation led to
observations that suggested several FM construction
guidelines for model designers. The contribution of
this paper is an exploration of this relationship based
on analysis from data mining approaches. To our best
knowledge, this is the first work that applied data
mining to explore patterns in a FM repository. Our
goal is to help construct robust feature models that
may improve the quality of software product lines.
In the future, we plan to include more data in our
regression model to improve the accuracy of the
result, adopt more data mining approaches (such as
decision tree and graidient boosting) to analyze the
dataset and perform empirical studies to validate our
theoretical results. As noted in Section 4, all of our
experimental data is available at: http://bit.ly/feature-
data.
REFERENCES
Al-Kilidar, H., Cox, K. and Kitchenham, B., 2005. The use
and usefulness of the ISO/IEC 9126 quality standard. In
International Symposium on Empirical Software
Engineering, pp. 7.
Apel, S., Batory, D., Kästner, C. and Saake, G., 2016.
Feature-oriented Software Product Lines. 1st ed.
Berlin: Springer.
Asikainen, T. and Männistö, T., 2009. Nivel: A
metamodelling language with a formal semantics.
Software and Systems Modeling, 8(4), pp. 521-549.
Batory, D., 2005. Feature models, grammars, and
propositional formulas. In International Conference on
Software Product Line, pp. 7-20.
Bąk, K., Diskin, Z. Antkiewicz, M, Czarnecki, K. and
Wąsowski, A., 2016. Clafer: Unifying class and feature
modeling. Software and Systems Modeling, 15(3), pp.
811-845.
Bagheri, E. and Gasevic, D., 2011. Assessing the
maintainability of software product line feature models
using structural metrics. Software Quality Journal,
19(3), pp. 579-612.
Bezerra, C. I., Andrade, R. M. and Monteiro, J. M., 2015.
Measures for Quality Evaluation of Feature Models..
Cham, Springer, pp. 282-297.
Boser, B. E., Guyon, I. M. and Vapnik, V. N., 1992. A
training algorithm for optimal margin classifiers. In
Proceedings of the 5th Annual Workshop in
Computational Learning Theory, pp. 144-152.
Briscoe, B., Odlyzko, A. and Tilly, B., 2006. Metcalfe's law
is wrong-communications networks increase in value as
they add members-but by how much? Spectrum, 43(7),
pp. 34-39.
Chen, L. and Babar, M. A., 2011. A systematic review of
evaluation of variability management approaches in
software product lines. Information and Software
Technology, 53(4), pp. 344-362.