Abstract
Variability is the ability of a software system or artifacts to be changed, customized, or configured for reuse in the product members of a software product line. As the amount of variability increases in software product lines the complexity of managing changes and evolutions of such variability becomes a main concern these days. In this context a high-degree of traceability can support the complexity of variability change management. However, in software product line establishing appropriate traceability is often difficult due to many-to-many relations in different levels of abstraction and across development given two separated and closely related development life cycles called domain and application. This paper proposes an approach tracing variability based on explicit variation points defined in orthogonal variability model and domain artifacts. And we validate the proposed approach through the Calculator product line. As the results of validation we found that our approach supports the defined variability change scenarios well, but has a disadvantage that many derived variation points are additionally defined and managed.
Similar content being viewed by others
Notes
The definition of trace artifacts is the same with that of the single software and system traceability. Variability models may be one of trace artifacts, but we define variation points and variants consisting of variability models as distinct trace elements because they have the key roles in our product line traceability approach.
References
Bosch, J. (2004). Software product families and populations. In Proceedings of the 2nd Groningen workshop on software variability management (SVM2004).
Mohan, K., & Ramesh, B. (2002). Managing variability with traceability in product and service families. In Proceedings of the 35th annual Hawaii international conference on system sciences (pp. 1309–1317).
Pohl, K., Böckle, G., & van der Linden, F. (2005). Software product line engineering: Foundations, principles, and techniques. Berlin: Springer.
Berg, K., Bishop, J., & Muthig, D. (2005). Tracing software product line variability—From problem to solution space. In Proceedings of the 2005 annual research conference of the South African institute of computer scientists and information technologists on IT research in developing countries (pp. 182–191).
Mohan, K., & Ramesh, B. (2007). Tracing variations in software product families. Communications of the ACM, 50(2), 68–73.
Sousa, A. (2008). Traceability support in software product lines. Master Thesis, Department of Information system and Computer Science, New University of Lisbon.
Kim, J. G., Kang, S. W., & Lee, J. H. (2014). A comparison of software product line traceability approaches from end-to-end traceability perspectives. International Journal of Software Engineering and Knowledge Engineering, 24(4), 677–714.
Gotel, O., Cleland-Huang, J., Huffman Hayes, J., Zisman, A., Egyed, A., Grünbacher, P., et al. (2012). Traceability fundamentals. In J. Maletic, P. Mäder, J. Cleland-Huang, O. Gotel, & A. Zisman (Eds.), Software and systems traceability (pp. 3–22). Berlin: Springer.
Alagheband, M. R., & Aref, M. R. (2014). Simulation-based traceability analysis of RFID authentication protocols. Wireless Personal Communications, 77(2), 1019–1038.
Alavi, S. M., Baghery, K., Abdolmaleki, B., & Aref, M. R. (2015). Traceability analysis of recent RFID authentication protocols. Wireless Personal Communications, 83(3), 1663–1682.
Panis, M. (2010). Successful deployment of requirements traceability in a commercial engineering organization…really. In Proceedings of the 18th IEEE international requirements engineering conference (RE) (pp. 303–307).
Cleland-Huang, J., Gotel, O. C. Z., Hayes, J. H., Mäder, P., & Zisman, A. (2014). Software traceability: Trends and future directions. In Proceeding of future of software engineering (FOSE 2014) (pp. 55–69).
Clements, P., & Northrop, L. (2002). Software product lines. Boston: Addison-Wesley.
Wicha, S. (2014). PBL framework with industrial participation the empirical study of improving software design and development skills. Wireless Personal Communications, 76(3), 615–626.
Kang, S. (2016). A theory of systematic software product line development (Korean). Korea: Hongrung Publishing Company.
Lee, J., & Hwang, S. (2014). A review on variability mechanisms for product lines. International Journal Advanced Media and Communication, 5(2/3), 172–181.
Hellebrand, R., Silva, A., Becker, M., Zhang, B., & Sierszecki, K. (2014). Coevolution of variability models and code: An industrial case study. In Proceedings of the 18th international software product line conference (pp. 274–283).
Jirapanthong, W., & Zisman, A. (2009). XTraQue, traceability for product line systems. International Journal on Software Systems Modeling, 8, 117–144.
Heider, W., Grünbacher, P., Rabiser, R., & Lehofer, M. (2012). Evolution-driven trace acquisition in eclipse-based product line workspaces. In J. Maletic, P. Mäder, J. Cleland-Huang, O. Gotel, & A. Zisman (Eds.), Software and systems traceability (pp. 195–214). Berlin: Springer.
Kang, K., Cohen, S., Hess, J., Novak, W., & Peterson, A. (1990). Feature-oriented domain analysis (FODA) feasibility study. Technical Report CMU/SEI-90-TR-021, Software Engineering Institute, Carnegie Mellon University, Pittsburgh.
Riebisch, M. (2004). Supporting evolutionary development by feature models and traceability links. In Proceedings of the 11th annual IEEE international conference and workshop on the engineering of computer based systems (ECBS 2004) (pp. 370–377).
Mohalik, S., Ramesh, S., Millo, J.-V., Krishna, S. N., & Narwane, S. K. (2012). Tracing SPLs precisely and efficiently. In Proceedings of the 16th international software product line conference (pp. 186–195).
Ji, W., Berger, T., Antkiewicz, M., & Czarnecki, K. (2015). Maintaining feature traceability with embedded annotations. In Proceedings of the 19th international software product line conference (pp. 61–70).
Shen, L., Peng, X., & Zhao, W. (2009). A comprehensive feature-oriented traceability model for software product line development. In Proceedings of Australian Software Engineering Conference (ASWEC 2009) (pp. 210–219).
Baek, S.-J., Han, J.-S., & Chung, K.-Y. (2013). Dynamic reconfiguration based on goal-scenario by adaptation strategy. Wireless Personal Communications, 73(2), 309–318.
Cavalcanti, Y., Machado, I., Neto, P., Lobato, L., Almeida, E., & Meira, S. (2011). Towards metamodel support for variability and traceability in software product lines. In Proceedings of VaMos’11 (pp. 49–57).
Cleland-Huang, J., Settimi, R., & BenKhadra, O. (2005). Goal-centric traceability for managing non-functional requirements. In Proceedings of the 27th international conference on software engineering (pp. 362–371).
Mirakhorli, M., Shin, Y., Cleland-Huang, J., & Cinar, M. (2012). A tactic-centric approach for automating traceability of quality concerns. In Proceedings of the 34th international conference software engineering (pp. 639–649).
Mirakhorli, M., & Cleland-Huang, J. (2012). Tracing non-functional requirements. In J. Maletic, P. Mäder, J. Cleland-Huang, O. Gotel, & A. Zisman (Eds.), Software and systems traceability (pp. 299–320). Berlin: Springer.
Acknowledgments
This research was supported by the Daejeon University fund (2015).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Lee, J., Hwang, S. Variability Change Management Using the Orthogonal Variability Model-Based Traceability. Wireless Pers Commun 89, 729–745 (2016). https://doi.org/10.1007/s11277-016-3195-y
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11277-016-3195-y