TRANSFORMING ATTRIBUTE AND CLONE-ENABLED FEATURE MODELS INTO CONSTRAINT PROGRAMS OVER FINITE DOMAINS

Raúl Mazo, Camille Salinesi, Daniel Diaz, Alberto Lora-Michiels

2011

Abstract

Product line models are important artefacts in product line engineering. One of the most popular languages to model the variability of a product line is the feature notation. Since the initial proposal of feature models in 1990, the notation has evolved in different aspects. One of the most important improvements allows specify the number of instances that a feature can have in a particular product. This improvement implies an important increase on the number of variables needed to represent a feature model. Another improvement consists in allowing features to have attributes, which can take values on a different domain than the boolean one. These two extensions have increased the complexity of feature models and therefore have made more difficult the manually or even automated reasoning on feature models. To the best of our knowledge, very few works exist in literature to address this problem. In this paper we show that reasoning on extended feature models is easy and scalable by using constraint programming over integer domains. The aim of the paper is double (a) to show the rules for transforming extended feature models into constraint programs, and (b) to demonstrate, by means of 11 reasoning operations over feature models, the usefulness and benefits of our approach. We evaluated our approach by transforming 60 feature models of sizes up to 2000 features and by comparing it with 2 other approaches available in the literature. The evaluation showed that our approach is correct, useful and scalable to industry size models.

References

  1. Batory, D. S., 2005. Feature models, grammars, and propositional formulae. In: 9th International Software Product Lines Conference, pp. 7-20. Springer.
  2. Batory, D. S., 2005. Feature models, grammars, and propositional formulae. In: 9th International Software Product Lines Conference, pp. 7-20. Springer.
  3. Benavides, D., 2007. On the Automated Analysis of Software Product Lines Using Feature Models. A Framework for Developing Automated Tool Support. University of Seville, Spain, PhD Thesis.
  4. Benavides, D., 2007. On the Automated Analysis of Software Product Lines Using Feature Models. A Framework for Developing Automated Tool Support. University of Seville, Spain, PhD Thesis.
  5. Benavides, D., Ruiz-Cortés, A., Trinidad, P., 2005. Using constraint programming to reason on feature models. In: The Seventeenth International Conference on Software Engineering and Knowledge Engineering, SEKE 2005, pp. 677-682.
  6. Benavides, D., Ruiz-Cortés, A., Trinidad, P., 2005. Using constraint programming to reason on feature models. In: The Seventeenth International Conference on Software Engineering and Knowledge Engineering, SEKE 2005, pp. 677-682.
  7. Benavides D., Segura S., Ruiz-Cortés A., 2010. Automated Analysis of Feature Models 20 Years Later: A Literature Review. Information Systems. Elsevier.
  8. Benavides D., Segura S., Ruiz-Cortés A., 2010. Automated Analysis of Feature Models 20 Years Later: A Literature Review. Information Systems. Elsevier.
  9. Benavides, D., Trinidad, P., Ruiz-Cortés, A, 2005. Automated Reasoning on Feature Models. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 491-503. Springer, Heidelberg.
  10. Benavides, D., Trinidad, P., Ruiz-Cortés, A, 2005. Automated Reasoning on Feature Models. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 491-503. Springer, Heidelberg.
  11. Bessiere, Ch., 2006. Constraint propagation. In Francesca Rossi, Peter van Beek, and Toby Walsh, editors, Handbook of Constraint Programming, pages 29-83. Elsevier.
  12. Bessiere, Ch., 2006. Constraint propagation. In Francesca Rossi, Peter van Beek, and Toby Walsh, editors, Handbook of Constraint Programming, pages 29-83. Elsevier.
  13. Czarnecki, K., Helsen, S., Eisenecker, U., 2005. Formalizing cardinality-based feature models and their specialization. Software Process: Improvement and Practice, 10(1):7- 29.
  14. Czarnecki, K., Helsen, S., Eisenecker, U., 2005. Formalizing cardinality-based feature models and their specialization. Software Process: Improvement and Practice, 10(1):7- 29.
  15. Dhungana, D., Heymans, P., and Rabiser, R., 2010. A Formal Semantics for Decision-oriented Variability Modeling with DOPLER, Proc. of the 4th International Workshop on Variability Modelling of Software-intensive Systems (VaMoS 2010), Linz, Austria, ICB-Research Report No. 37, University of Duisburg Essen, pp. 29-35.
  16. Dhungana, D., Heymans, P., and Rabiser, R., 2010. A Formal Semantics for Decision-oriented Variability Modeling with DOPLER, Proc. of the 4th International Workshop on Variability Modelling of Software-intensive Systems (VaMoS 2010), Linz, Austria, ICB-Research Report No. 37, University of Duisburg Essen, pp. 29-35.
  17. Dhungana, D., Gruenbacher, P., Rabiser, R., 2007. DecisionKing: A Flexible and Extensible Tool for Integrated Variability Modeling. In: 1rst Int. Workshop VaMoS, pp120-128, Ireland.
  18. Dhungana, D., Gruenbacher, P., Rabiser, R., 2007. DecisionKing: A Flexible and Extensible Tool for Integrated Variability Modeling. In: 1rst Int. Workshop VaMoS, pp120-128, Ireland.
  19. Diaz, D., Codognet, P., 2001. Design and Implementation of the GNU Prolog System. Journal of Functional and Logic Programming. http://www.gprolog.org.
  20. Diaz, D., Codognet, P., 2001. Design and Implementation of the GNU Prolog System. Journal of Functional and Logic Programming. http://www.gprolog.org.
  21. Djebbi, O., Salinesi, C., 2007. RED-PL, a Method for Deriving Product Requirements from a Product Line Requirements Model. In: CAISE'07, Norway.
  22. Djebbi, O., Salinesi, C., 2007. RED-PL, a Method for Deriving Product Requirements from a Product Line Requirements Model. In: CAISE'07, Norway.
  23. Gurp, J. v., Bosch, J., Svahnberg, M., 2001. On the Notion of Variability in Software Product Lines. In Proceedings of the Working IEEE/IFIP Conference on Software Architecture (WICSA).
  24. Gurp, J. v., Bosch, J., Svahnberg, M., 2001. On the Notion of Variability in Software Product Lines. In Proceedings of the Working IEEE/IFIP Conference on Software Architecture (WICSA).
  25. Halmans, G., Pohl, K., 2003. Communicating the variability of a software-product family to customers. Softw Syst Model. 2: 15-36 / Digital Object Identifier (DOI) 10.1007/s10270-003-0019-9.
  26. Halmans, G., Pohl, K., 2003. Communicating the variability of a software-product family to customers. Softw Syst Model. 2: 15-36 / Digital Object Identifier (DOI) 10.1007/s10270-003-0019-9.
  27. Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S., 1990. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR21, SEI, Carnegie Mellon University.
  28. Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S., 1990. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR21, SEI, Carnegie Mellon University.
  29. Kang, K., Lee, K., Lee, J., 2002. FOPLE - Feature Oriented Product Line Software Engineering: Principles and Guidelines. Pohang University of Science and Technology.
  30. Kang, K., Lee, K., Lee, J., 2002. FOPLE - Feature Oriented Product Line Software Engineering: Principles and Guidelines. Pohang University of Science and Technology.
  31. Karatas A. S, Oguztüzün H., Dogru A., 2010. Mapping Extended Feature Models to Constraint Logic Programming over Finite Domains. SPLC, Korea.
  32. Karatas A. S, Oguztüzün H., Dogru A., 2010. Mapping Extended Feature Models to Constraint Logic Programming over Finite Domains. SPLC, Korea.
  33. Mazo, R., 2010. VariaMos Eclipse plug-in: https:// sites.google.com/site/raulmazo/
  34. Mazo, R., 2010. VariaMos Eclipse plug-in: https:// sites.google.com/site/raulmazo/
  35. Mazo, R., Grünbacher, P., Heider, W., Rabiser, R., Salinesi, C., Diaz, D., 2011. Using Constraint Programming to Verify DOPLER Variability Models. 5th ACM International Workshop on Variability Modelling of Software-intensive Systems (VaMos'11), Namur-Belgium.
  36. Mazo, R., Grünbacher, P., Heider, W., Rabiser, R., Salinesi, C., Diaz, D., 2011. Using Constraint Programming to Verify DOPLER Variability Models. 5th ACM International Workshop on Variability Modelling of Software-intensive Systems (VaMos'11), Namur-Belgium.
  37. Mazo R., Lopez-Herrejon R., Salinesi C., Diaz D., Egyed A., 2011. A Constraint Programming Approach for Checking Conformance in Feature Models. In 35th IEEE Annual International Computer Software and Applications Conference (Compsac'11). MunichGermany.
  38. Mazo R., Lopez-Herrejon R., Salinesi C., Diaz D., Egyed A., 2011. A Constraint Programming Approach for Checking Conformance in Feature Models. In 35th IEEE Annual International Computer Software and Applications Conference (Compsac'11). MunichGermany.
  39. Mendonça, M., Branco, M., Cowan, D., 2009. S.P.L.O.T.: software product lines online tools. In OOPSLA Companion. ACM, http://www.splot-research.org.
  40. Mendonça, M., Branco, M., Cowan, D., 2009. S.P.L.O.T.: software product lines online tools. In OOPSLA Companion. ACM, http://www.splot-research.org.
  41. Mendonça, M., Wasowski, A., Czarnecki, K., 2009. SATbased analysis of feature models is easy. In Proceedings of the Sofware Product Line Conference.
  42. Mendonça, M., Wasowski, A., Czarnecki, K., 2009. SATbased analysis of feature models is easy. In Proceedings of the Sofware Product Line Conference.
  43. Michel, R., Classen, A., Hubaux, A., Boucher, Q., 2011. A Formal Semantics for Feature Cardinalities in Feature Diagrams. 5th International Workshop on Variability Modelling of Software-intensive Systems (VaMos'11), Namur-Belgium.
  44. Michel, R., Classen, A., Hubaux, A., Boucher, Q., 2011. A Formal Semantics for Feature Cardinalities in Feature Diagrams. 5th International Workshop on Variability Modelling of Software-intensive Systems (VaMos'11), Namur-Belgium.
  45. Nuseibeh, B. Easterbrook, S., 2000. Requirements Engineering: A Roadmap, The Future of Software Engineering, 22nd Int. Conf. on Soft. Eng., 37-46, ACM, Washington.
  46. Nuseibeh, B. Easterbrook, S., 2000. Requirements Engineering: A Roadmap, The Future of Software Engineering, 22nd Int. Conf. on Soft. Eng., 37-46, ACM, Washington.
  47. Salinesi, C., Mazo, R., Diaz, D., 2010. Criteria for the verification of feature models, In 28th INFORSID Conference, Marseille, France.
  48. Salinesi, C., Mazo, R., Diaz, D., 2010. Criteria for the verification of feature models, In 28th INFORSID Conference, Marseille, France.
  49. Salinesi, C., Mazo, R., Diaz, D., Djebbi, O., 2010b. Solving Integer Constraint in Reuse Based Requirements Engineering. 18th IEEE International Conference on Requirements Engineering (RE'10). Sydney, Australia.
  50. Salinesi, C., Mazo, R., Diaz, D., Djebbi, O., 2010b. Solving Integer Constraint in Reuse Based Requirements Engineering. 18th IEEE International Conference on Requirements Engineering (RE'10). Sydney, Australia.
  51. Salinesi C., Mazo R., Djebbi O., Diaz D., Lora-Michiels A, 2011. Constraints: the Core of Product Line Engineering. Fifth IEEE International Conference on Research Challenges in Information Science (IEEE RCIS), Guadeloupe-French West Indies, France.
  52. Salinesi C., Mazo R., Djebbi O., Diaz D., Lora-Michiels A, 2011. Constraints: the Core of Product Line Engineering. Fifth IEEE International Conference on Research Challenges in Information Science (IEEE RCIS), Guadeloupe-French West Indies, France.
  53. Schobbens, P. Heymans, P. Trigaux, J. Bontemps, Y., 2007. Generic semantics of feature diagrams, Journal of Computer Networks, Vol 51, Number 2.
  54. Schobbens, P. Heymans, P. Trigaux, J. Bontemps, Y., 2007. Generic semantics of feature diagrams, Journal of Computer Networks, Vol 51, Number 2.
  55. Schulte, Ch., Stuckey., P. J., 2008. Efficient constraint propagation engines. ACM Trans. Program. Lang. Syst., 31(1).
  56. Schulte, Ch., Stuckey., P. J., 2008. Efficient constraint propagation engines. ACM Trans. Program. Lang. Syst., 31(1).
  57. Streitferdt, D., 2004. FORE Family-Oriented Requirements Engineering, PhD Thesis, Technical University Ilmenau.
  58. Streitferdt, D., 2004. FORE Family-Oriented Requirements Engineering, PhD Thesis, Technical University Ilmenau.
  59. Van Hentenryck, P., 1989. Constraint Satisfaction in Logic Programming. The MIT Press.
  60. Van Hentenryck, P., 1989. Constraint Satisfaction in Logic Programming. The MIT Press.
  61. Van Deursen, A., Klint, P., 2002. Domain-specific language design requires feature descriptions. Journal of Computing and Information Technology, Vol. 10, No. 1.
  62. Van Deursen, A., Klint, P., 2002. Domain-specific language design requires feature descriptions. Journal of Computing and Information Technology, Vol. 10, No. 1.
  63. Ziadi, T., Helouet, L., Jezequel, J.-M., 2003. Towards a UML Profile for Software Product Lines. In: Software Product- Family Engineering, 5th International Workshop, pages 129- 139. Springer.
  64. Ziadi, T., Helouet, L., Jezequel, J.-M., 2003. Towards a UML Profile for Software Product Lines. In: Software Product- Family Engineering, 5th International Workshop, pages 129- 139. Springer.
Download


Paper Citation


in Harvard Style

Mazo R., Salinesi C., Diaz D. and Lora-Michiels A. (2011). TRANSFORMING ATTRIBUTE AND CLONE-ENABLED FEATURE MODELS INTO CONSTRAINT PROGRAMS OVER FINITE DOMAINS . In Proceedings of the 6th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE, ISBN 978-989-8425-57-7, pages 188-199. DOI: 10.5220/0003509301880199


in Harvard Style

Mazo R., Salinesi C., Diaz D. and Lora-Michiels A. (2011). TRANSFORMING ATTRIBUTE AND CLONE-ENABLED FEATURE MODELS INTO CONSTRAINT PROGRAMS OVER FINITE DOMAINS . In Proceedings of the 6th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE, ISBN 978-989-8425-57-7, pages 188-199. DOI: 10.5220/0003509301880199


in Bibtex Style

@conference{enase11,
author={Raúl Mazo and Camille Salinesi and Daniel Diaz and Alberto Lora-Michiels},
title={TRANSFORMING ATTRIBUTE AND CLONE-ENABLED FEATURE MODELS INTO CONSTRAINT PROGRAMS OVER FINITE DOMAINS},
booktitle={Proceedings of the 6th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,},
year={2011},
pages={188-199},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0003509301880199},
isbn={978-989-8425-57-7},
}


in Bibtex Style

@conference{enase11,
author={Raúl Mazo and Camille Salinesi and Daniel Diaz and Alberto Lora-Michiels},
title={TRANSFORMING ATTRIBUTE AND CLONE-ENABLED FEATURE MODELS INTO CONSTRAINT PROGRAMS OVER FINITE DOMAINS},
booktitle={Proceedings of the 6th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,},
year={2011},
pages={188-199},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0003509301880199},
isbn={978-989-8425-57-7},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 6th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,
TI - TRANSFORMING ATTRIBUTE AND CLONE-ENABLED FEATURE MODELS INTO CONSTRAINT PROGRAMS OVER FINITE DOMAINS
SN - 978-989-8425-57-7
AU - Mazo R.
AU - Salinesi C.
AU - Diaz D.
AU - Lora-Michiels A.
PY - 2011
SP - 188
EP - 199
DO - 10.5220/0003509301880199


in EndNote Style

TY - CONF
JO - Proceedings of the 6th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,
TI - TRANSFORMING ATTRIBUTE AND CLONE-ENABLED FEATURE MODELS INTO CONSTRAINT PROGRAMS OVER FINITE DOMAINS
SN - 978-989-8425-57-7
AU - Mazo R.
AU - Salinesi C.
AU - Diaz D.
AU - Lora-Michiels A.
PY - 2011
SP - 188
EP - 199
DO - 10.5220/0003509301880199