Comprehensive Variability Analysis of Requirements and Testing Artifacts

  • Michal Steinberger
  • Iris Reinhartz-BergerEmail author
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9694)


Analyzing variability of software artifacts is important for increasing reuse and improving development of similar software products, as is the case in the area of Software Product Line Engineering (SPLE). Current approaches suggest analyzing the variability of certain types of artifacts, most notably requirements. However, as the specification of requirements may be incomplete or generalized, capturing the differences between the intended software behaviors may be limited, neglecting essential parts, such as behavior preconditions. Thus, we suggest in this paper utilizing testing artifacts in order to comprehensively analyze the variability of the corresponding requirements. The suggested approach, named SOVA R-TC, which is based on Bunge’s ontological model, uses the information stored and managed in Application Lifecycle Management (ALM) environments. It extracts the behavior transformations from the requirements and the test cases and presents them in the form of initial states (preconditions) and final states (post-conditions or expected results). It further compares the behavior transformations of different software products and proposes how to analyze their variability based on cross-phase artifacts.


Variability analysis Ontology Software reuse Software product lines Application lifecycle management 


  1. 1.
    Acher, M., Cleve, A., Collet, P., Merle, P., Duchien, L., Lahire, P.: Extraction and evolution of architectural variability models in plugin-based systems. Soft. Syst. Model. (SoSyM) 13(4), 1367–1394 (2013)CrossRefGoogle Scholar
  2. 2.
    Acher, M., Cleve, A., Perrouin, G., Heymans, P., Vanbeneden, C., Collet, P., Lahire, P.: On extracting feature models from product descriptions. In: Proceedings of the 6th International Workshop on Variability Modeling of Software-Intensive Systems, pp. 45–54 (2012)Google Scholar
  3. 3.
    Alves, V., Matos Jr., P., Cole, L., Borba, P., Ramalho, G.L.: Extracting and evolving mobile games product lines. In: Obbink, H., Pohl, K. (eds.) SPLC 2005. LNCS, vol. 3714, pp. 70–81. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  4. 4.
    Bakar, N.H., Kasirun, Z.M., Salleh, N.: Feature extraction approaches from natural language requirements for reuse in software product lines: a systematic literature review. J. Syst. Soft. 106, 132–149 (2015)CrossRefGoogle Scholar
  5. 5.
    Berger, T., Rublack, R., Nair, D., Atlee, J.M., Becker, M., Czarnecki, K., Wąsowski, A.: A survey of variability modeling in industrial practice. In: Proceedings of the Seventh International Workshop on Variability Modeling of Software-Intensive Systems, pp. 7:1–7:8. ACM (2013)‏Google Scholar
  6. 6.
    BigLever: The systems and software product line engineering lifecycle framework (2013).
  7. 7.
    Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer Science & Business Media, Heidelberg (2005). Pohl, K. (ed.)zbMATHGoogle Scholar
  8. 8.
    Bunge, M.: Treatise on Basic Philosophy, Ontology I: The Furniture of the World, vol. 3. Reidel, Boston (1977)CrossRefzbMATHGoogle Scholar
  9. 9.
    Bunge, M.: Treatise on Basic Philosophy, Ontology II: A World of Systems, vol. 4. Reidel, Boston (1979)CrossRefzbMATHGoogle Scholar
  10. 10.
    Chen, L., Ali Babar, M., Ali, N.: Variability management in software product lines: a systematic review. In: Proceedings of the 13th International Software Product Line Conference (SPLC 2009), pp. 81–90 (2009)Google Scholar
  11. 11.
    Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison Wesley, Boston (2001)Google Scholar
  12. 12.
    Davril, J.M., Delfosse, E., Hariri, N., Acher, M., Cleland-Huang, J., Heymans, P.: Feature model extraction from large collections of informal product descriptions. In: Proceedings of the 9th Joint Meeting on Foundations of Software Engineering, pp. 290–300 (2013)Google Scholar
  13. 13.
    Gildea, D., Jurafsky, D.: Automatic labeling of semantic roles. Comput. Linguist. 28(3), 245–288 (2002)CrossRefGoogle Scholar
  14. 14.
    Kang, K.C., Cohen, S.G., Hess, J.A., Novak, W.E., Peterson, A.S.: Feature-oriented domain analysis (FODA) feasibility study. Technical report (1990)Google Scholar
  15. 15.
    Kim, J.A., Choi, S.Y., Hwang, S.M.: Process & evidence enable to automate ALM (Application Lifecycle Management). In: 9th IEEE International Symposium on Parallel and Distributed Processing with Applications Workshops (ISPAW 2011), pp. 348–351 (2011)Google Scholar
  16. 16.
    Lacheiner, H., Ramler, R.: Application lifecycle management as infrastructure for software process improvement and evolution: experience and insights from industry. In: 37th EUROMICRO Conference on Software Engineering and Advanced Applications (SEAA 2011), pp. 286–293 (2011)Google Scholar
  17. 17.
    Losavio, F., Ordaz, O., Levy, N., Baiotto, A.: Graph modelling of a refactoring process for product line architecture design. In: Computing Conference (CLEI) XXXIX Latin American, pp. 1–12 (2013)Google Scholar
  18. 18.
    Mihalcea, R., Corley, C., Strapparava, C.: Corpus-based and knowledge-based measures of text semantic similarity. In: The 21st National Conference on Artificial Intelligence (AAAI 2006), vol. 1, pp. 775–780 (2006)‏Google Scholar
  19. 19.
    ISO/IEC/IEEE 29119-3: Software and systems engineering—software testing—part 3: test documentation. International Organization for Standardization (2013)Google Scholar
  20. 20.
    Itzik, N., Reinhartz-Berger, I., Wand, Y.: Variability analysis of requirements: considering behavioral differences and reflecting stakeholders perspectives. IEEE Trans. Soft. Eng. (2016). doi: 10.1109/TSE.2015.2512599
  21. 21.
    Pohl, K., Böckle, G., van der Linden, F.: Software Product-Line Engineering: Foundations, Principles, and Techniques. Springer, Heidelberg (2005)CrossRefzbMATHGoogle Scholar
  22. 22.
    Reinhartz-Berger, I., Itzik, N., Wand, Y.: Analyzing variability of software product lines using semantic and ontological considerations. In: Jarke, M., Mylopoulos, J., Quix, C., Rolland, C., Manolopoulos, Y., Mouratidis, H., Horkoff, J. (eds.) CAiSE 2014. LNCS, vol. 8484, pp. 150–164. Springer, Heidelberg (2014)Google Scholar
  23. 23.
    Reinhartz-Berger, I., Sturm, A., Wand, Y.: External variability of software: classification and ontological foundations. In: Jeusfeld, M., Delcambre, L., Ling, T.-W. (eds.) ER 2011. LNCS, vol. 6998, pp. 275–289. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  24. 24.
    Roy, C.K., Cordy, J.R.: A survey on software clone detection research (2007). Report.pdf
  25. 25.
    She, S., Lotufo, R., Berger, T., Wasowski, A., Czarnecki, K.: Reverse engineering feature models. In: Proceedings of the 33rd International Conference on Software Engineering (ICSE 2011), pp. 461–470 (2011)Google Scholar
  26. 26.
    Wand, Y., Weber, R.: On the deep structure of information systems. J. Inf. Syst. 5(3), 203–223 (1995)CrossRefGoogle Scholar
  27. 27.
    Wand, Y., Weber, R.: An ontological model of an information system. IEEE Trans. Soft. Eng. 16, 1282–1292 (1990)CrossRefGoogle Scholar
  28. 28.
    Weiss, D.M., Lai, C.T.R.: Software Product-Line Engineering: A Family-Based Software Development Process. Addison-Wesley, Boston (1999)Google Scholar
  29. 29.
    Wilson, N., Duggan, J., Murphy, T.E., Sobejana, M., Herschmann, J.: Magic quadrant for application development life cycle management. Gartner report (2015).

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  1. 1.Department of Information SystemsUniversity of HaifaHaifaIsrael

Personalised recommendations