Attribute-based variability in feature models
Tóm tắt
Extended feature models enable the expression of complex cross-tree constraints involving feature attributes. The inclusion of attributes in cross-tree relations not only enriches the constraints, but also engenders an extended type of variability that involves attributes. In this article, we elaborate on the effects of this new variability type on feature models. We start by analyzing the nature of the variability involving attributes and extend the definitions of the configuration and the product to suit the emerging requirements. Next, we propose classifications for the features, configurations, and products to identify and formalize the ramifications that arise due to the new type of variability. Then, we provide a semantic foundation grounded on constraint satisfaction for our proposal. We introduce an ordering relation between configurations and show that the set of all the configurations represented by a feature model forms a semilattice. This is followed by a demonstration of how the feature model analyses will be affected using illustrative examples selected from existing and novel analysis operations. Finally, we summarize our experiences, gained from a commercial research and development project that employs an extended feature model.
Tài liệu tham khảo
Asikainen T, Mannisto T, Soininen T (2007) Kumbang: a domain ontology for modelling variability in software product families. Adv Eng Inform 21:23–40
Bagheri E, Ensan F (2014) Dynamic decision models for staged software product line configuration. Requir Eng 19:187–212
Batory D (2005) Feature models, grammars, and propositional formulas. In: Proceedings of the 9th International software product line conference (SPLC’05), LNCS 3714, pp 7–20
Benavides D, Ruiz-Cortés A, Trinidad P (2004) Coping with automatic reasoning on software product lines. Second Groningen workshop on software variability management
Benavides D, Ruiz-Cortés A, Trinidad P (2005) Using constraint programming to reason on feature models. In: Proceedings of the 17th international conference on software engineering and knowledge engineering (SEKE’05), pp 677–682
Benavides D, Segura S, Ruiz-Cortés A (2010) Automated analysis of feature models 20 years later: A literature review. Inform Syst 35:615–636
Benavides D, Trinidad P, Ruiz-Cortés A (2005) Automated reasoning on feature models. In: Proceedings of the 17th international conference on advanced information systems engineering (CAISE’05), LNCS 3520, pp 491–503
Bosch J, Florijn G, Greefhorst D, Kuusela J, Obbink H, Pohl K (2001) Variability issues in software product lines. In: Proceedings of the 4th international workshop on product family engineering (PFE’01), pp 11–19
Botterweck G, Thiel S, Nestor D, Abid S, Cawley C (2008) Visual tool support for configuring and understanding software product lines. In: Proceedings of the 12th international software product line conference (SPLC’08), IEEE computer society, pp 77–86
Capilla R, Bosch J, Trinidad P, Ruiz-Cortés A, Hinchey M (2014) An overview of dynamic software product line architectures and techniques: observations from research and industry. J Syst Softw 91:3–23
Chen L, Babar MA (2011) A systematic review of evaluation of variability management approaches in software product lines. Inform Softw Tech 53:344–362
Cheng L, Wu C, Zhang Y, Wu H, Li M, Maple C (2012) A survey of localization in wireless sensor network. Int J Distrib Sens N 962523(1–962523):12
Czarnecki K, Bednasch T, Unger P, Eisenecker U (2002) Generative programming for embedded software: an industrial experience report. In: Proceedings of the ACM SIGPLAN/SIGSOFT conference on generative programming and component engineering (GPCE’02), LNCS 2487, pp 156–172
Czarnecki K, Grünbacher P, Rabiser R, Schmid K, Wasowski A (2012) Cool features and tough decisions: a comparison of variability modeling approaches. In: Proceedings of the 6th international workshop on variability modelling of software-intensive systems (VAMOS’12), pp 173–182
Czarnecki K, Helsen S, Eisenecker U (2005) Formalizing cardinality-based feature models and their specialization. Software Process Improv Pract 10:7–29
Davey BA, Priestley HA (2002) Introduction to lattices and order, 2nd edn. Cambridge University Press, Cambridge
Deursen A, Klint P (2002) Domain-specific language design requires feature descriptions. J Comput Inform Tech 10:1–17
Dumitru H, Gibiec M, Hariri N, Leland-Huang J, Mobasher B, Castro-Herrera C, Mirakhorli M (2011) On-demand feature recommendations derived from mining public product descriptions. In: Proceedings of the 33rd international conference on software engineering (ICSE’11), ACM, pp 181–190
Fernandez-Amoros D, Heradio R, Cerrada J (2009) Inferring information from feature diagrams to product line economic models. In: Proceedings of the 13th international software product line conference (SPLC’09), pp 41–50
Goldoni E, Savioli A, Risi M, Gamba P (2010) Experimental analysis of RSSI-based indoor localization with IEEE 802.15.4. In: Proceedings of the 16th European wireless conference (EW’10), pp 71–77
Griss M, Favaro J, d’Alessandro M (1998) Integrating feature modeling with the RSEB. In: Proceedings of the 5th international conference on software reuse (ICSR’98), pp. 76-85
Halmans G, Pohl K (2003) Communicating the variability of a software product family to customers. Softw Syst Model 2:15–36
Hartmann H, Trew T (2008) Using feature diagrams with context variability to model multiple product lines for software supply chains. In: Proceedings of the 12th international software product line conference (SPLC’08), IEEE computer society, pp 12–21
Höfner P, Khedri R, Möller B (2011) An algebra of product families. Softw Syst Model 10:161–182
ITU-R (2011) Impact of industrial, scientific and medical (ISM) equipment on radiocommunication services ITU-R SM.2180
Kang K, Cohen S, Hess J, Novak W, Peterson S (1990) Feature-oriented domain analyses (FODA) feasibility study. Technical Report CMU/SEI-90-TR-21, Software Eng. Inst., Carnegie Mellon Univ., Pittsburgh
Kang K, Kim S, Lee J, Kim K (1998) FORM: a feature-oriented reuse method with domain-specific reference architectures. Ann Soft Eng 5:143–168
Karataş AS, Oğuztüzün H, Doğru A (2010) Global constraints on feature models. In: Proceedings of the 16th international conference on principles and practices of constraint programming (CP’10), LNCS 6308, pp 537–551
Karataş AS, Oğuztüzün H, Doğru A (2010) Mapping extended feature models to constraint logic programming over finite domains. In: Proceedings of the 14th international software product line conference (SPLC’10), LNCS 6287, pp 286–299
Karataş AS, Oğuztüzün H, Doğru A (2011) Transforming cross-tree relations involving attributes into basic constraints in feature models, In: Proceedings of the 5th international conference on application of information and communication technologies (AICT’11), pp 157–161
Karataş AS, Oğuztüzün H, Doğru A (2013) From extended feature models to constraint logic programming. Sci Comput Program 78:2295–2312
Lee J, Kang, K (2006) A feature-oriented approach for developing dynamically reconfigurable products in product line engineering. In: Proceedings of the 10th international software product line conference (SPLC’06), IEEE CS Press, pp 131–140
Lee J, Kang K, Sawyer P, Lee H (2013) A holistic approach to feature modeling for product line requirements engineering. Requir Eng. doi:10.1007/s00766-013-0183-6
Loesch F, Ploedereder E (2007) Restructuring variability in software product lines using concept analysis of product configurations. In: Proceedings of the 11th European conference on software maintenance and reengineering (CSMR’07), IEEE computer society, pp 159–170
Lopez-Herrejon RE, Batory D (2001) A standard problem for evaluating product-line methodologies, In: Proceedings of the 3rd international conference on generative and component-based software engineering (GCSE’01), Springer, pp 10–24
Mannion M (2002) Using first-order logic for product line model validation. In: Proceedings of the 2nd software product line conference (SPLC’02), LNCS 2379, pp 176–187
Mao G, Fidan B, Anderson BDO (2007) Wireless sensor network localization techniques. Comput Netw 51:2529–2553
Niu N, Savolainen J, Yu Y (2010) Variability modeling for product line viewpoints integration. In: Proceedings of the IEEE 34th computer software and applications conference, pp 337–346
Peng R, Sichhitiu ML (2006) Angle of arrival localization for wireless sensor networks. In: Proceedings of the 3rd annual IEEE conference on sensor and ad hoc communications and networks, pp 374–382
Pohl K, Böckle G, Linden F (2005) Software product line engineering: foundations, principles, and techniques. Springer, Berlin
Riebisch M, Bollert K, Streitferdt D, Philippow I (2002) Extending feature diagrams with UML multiplicities. 6th conference on integrated design and process technology (IDPT’02), Pasadena, California
Ryssel U, Ploennigs J, Kabitzsch K (2011) Extraction of feature models from formal contexts. SPLC Workshops, ACM
Schobbens P, Trigaux JC, Heymans P, Bontemps Y (2007) Generic semantics of feature diagrams. Comput Netw 51:456–479
Simos M et al (1996) Software technology for adaptable reliable systems (STARS) organization domain modeling (ODM) guidebook version 2.0. STARS-VC-A025/001/00, Manassas, VA, lockheed martin tactical defense systems
Sinnema M, Deelstra S (2006) Classifying variability modeling techniques. Inform Softw Tech 49:717–739
Software Productivity Consortium Services Corporation (1993) Reuse-driven software processes guidebook version 02.00.03, Technical Report SPC-92019-CMC
Stoiber R, Glinz M (2010) Supporting stepwise, incremental product derivation in product line requirements engineering. In: Proceedings of the 4th international workshop on variability modeling of software-intensive systems (VaMoS’10), pp 77–84
Trinidad P, Ruiz-Cortés A (2009) Abductive reasoning and automated analysis of feature models: how are they connected? In: Proceedings of the 3rd international workshop on variability modelling of software-intensive systems (VAMOS’09), pp 145–153
Wang H, Li YF, Sun J, Zhang H, Pan J (2007) Verifying feature models using OWL. J Web Semant 5:117–129
Wang J, Ghosh RK, Das SK (2010) A survey on sensor localization. J Control Theory Appl 8:2–11
Webber DL, Gomaa H (2004) Modeling variability in software product lines with the variation point model. Sci Comput Program 53:305–331
White J, Doughtery B, Schmidt D, Benavides D (2009) Automated reasoning for multi-step software product-line configuration problems. In: Proceedings of the 13th software product line conference (SPLC’09), pp 11–20