M. L. a. de Jesus Souza, A. R. Santos, and E. S. de Almeida, “Towards the selection of modeling techniques for dynamic software product lines,” in Proceedings of the Fifth International Workshop on Product LinE Approaches in Software Engineering, ser. PLEASE, 2015, pp. 19–22.
Figure 1 shows the main steps of the process used to identify and rank the Variability Modeling Techniques (VMTs). In step 1, we manually looked into the main proceedings of the research venues related to Dynamic Software Product Lines (DSPL) area. In this sense, we investigated some conferences, workshops and journals in order to select studies, which could fulfill the initial search parameters. From this investigation, we found twenty four papers that attended the criteria. Table 1 shows the studies distributed by publication source. Not surprisingly, the venue with the highest number of studies was the DSPL Workshop.
Figure 1 Steps for selection and ranking of DSPL-VMT
First, a full and careful reading in the initial set of studies was performed. Next, we could identify ten different VMTs (Step 2), which are described in Table 2. In Step 3, we defined a set of twelve criteria based on the main DSPL properties in literature [1] [2]. The set of criteria was divided in two groups: basic criteria, which evaluated the techniques in a more general way and specific criteria, which are more focused on dynamic aspects. Criteria and their evaluation aspects (values and scores) are described in Table 3.
In Step 4, we assigned different values (weights) to the criteria according to their degree of significance to evaluation. To support this process and to reduce bias, we used the pairwise evaluation [13]. This method determines the degree of importance analyzing all criteria in pairs and verifying the significance of a criterion related to another one.
All criteria were arranged in one matrix, where each criterion was compared with all the others ones. The pairwise evaluation result is showed in Table 4. It is worth mentioning that such pairwise evaluation should cope with the domain engineer needs, which may vary according to each project or policies of a company. In our case, we aimed to identify the most suitable techniques to deal with complex DSPL domains.
In Step 5, the final score of each technique was calculated multiplying the score value of each technique by the weight of each criterion. The final score of each technique is showed in Table 5.
Based on this evaluation, T09 is the most suitable VMT for our goal, because it covers a larger range of criteria. T02 and T06 obtained the lowest grades, both covers only context information criteria. We cannot state based on these results that techniques in the bottom of the ranking list are bad options. However, we believe that they are options focused on more specific purposes.
References
[1] S. Hallsteinsen, M. Hinchey, Sooyong Park, and K. Schmid, “Dynamic Software Product Lines,” Computer (Long. Beach. Calif)., vol. 41, no. 4, pp. 93–95, Apr. 2008.
[2] R. Capilla, J. Bosch, P. Trinidad, A. Ruiz-cortés, and M. Hinchey, “An overview of Dynamic Software Product Line architectures and techniques: Observations from research and industry,” J. Syst. Softw., 2014.
[3] I. Montero, J. Peña, and A. Ruiz Cortés, “Business Family Engineering - Managing the Evolution of Business Driven Systems,” 1st Int. Work. Dyn. Softw. Prod. Lines (DSPL 2007), pp. 33–40, 2007.
[4] P. and Fernandes and C. Werner, “UbiFEX: Modeling Context-Aware Software Product Lines,” in Software Product Lines, 12th International Conference, {SPLC} 2008, Limerick, Ireland, September 8-12, 2008, Proceedings. Second Volume (Workshops), 2008, vol. 2, pp. 3–8.
[5] A. Helleboogh, D. Weyns, K. Schmid, T. Holvoet, K. Schelfthout, W. Van Betsbrugge, and W. Van Betsbrugge, “Adding Variants on-the-fly : Modeling Meta-Variability in Dynamic Software Product Lines,” Proc. Third Int. Work. Dyn. Softw. Prod. Lines (DSPL@ SPLC 2009), pp. 18–27, 2009.
[6] R. Ali, R. Chitchyan, and P. Giogini, “Context for Goal-level Product Line Derivation,” Third Int. Work. Dyn. Softw. Prod. Lines, pp. 24–28, 2009.
[7] T. Dinkelaker, R. Mitschke, K. Fetzer, and T. U. Darmstadt, “A Dynamic Software Product Line Approach using Aspect Models at Runtime.”
[8] G. H. Alferez and V. Pelechano, “Context-Aware Autonomous Web Services in Software Product Lines,” in 2011 15th International Software Product Line Conference, 2011, pp. 100–109.
[9] L. Shen, X. Peng, J. Liu, and W. Zhao, “Towards Feature-Oriented Variability Reconfiguration in Dynamic Software Product Lines,” pp. 52–68, 2011.
[10] A. Murguzur, R. Capilla, S. Trujillo, Ó. Ortiz, and R. E. Lopez-Herrejon, “Context Variability Modeling for Runtime Configuration of Service-based Dynamic Software Product Lines,” Proc. 18th Int. Softw. Prod. Line Conf. co-located Work., no. SEPTEMBER 2014, pp. 2–9, 2014.
[11] K. Saller, M. Lochau, and I. Reimund, “Context-aware DSPLs: model-based runtime adaptation for resource-constrained systems,” Proc. 17th Int. Softw. Prod. Line Conf. co-located Work., pp. 106–113, 2013.
[12] J. Bürdek, M. Berens, S. Lity, U. Goltz, E. Ag, and A. Schürr, “Staged Configuration of Dynamic Software Product Lines with Complex Binding Time Constraints Categories and Subject Descriptors.”
[13] W. W. Koczkodaj, M. W. Herman, and M. Orłowski, “Using consistency-driven pairwise comparisons in knowledge-based systems,” Proc. sixth Int. Conf. Inf. Knowl. Manag. - CIKM ’97, pp. 91–96, 1997.