skip to main content
10.1145/3233027.3233029acmotherconferencesArticle/Chapter ViewAbstractPublication PagessplcConference Proceedingsconference-collections
research-article

Extracting software product line feature models from natural language specifications

Authors Info & Claims
Published:10 September 2018Publication History

ABSTRACT

The specification of a family of software products may include documents written in natural language. Automatically extracting knowledge from these documents is a challenging problem that requires using Natural Language Processing (NLP) techniques. This knowledge can be formalized as a Feature Model (FM), a diagram capturing the key features and the relationships among them.

In this paper, we first review previous works that have presented tools for extracting FMs from textual specifications and compare their strengths and limitations. Then, we propose a framework for feature and relationship extraction, which overcomes the identified limitations and is built upon state-of-the-art open-source NLP tools. This framework is evaluated against previous works using several case studies, showing improved results.

References

  1. V. Alves, C. Schwanninger, L. Barbosa, A. Rashid, P. Sawyer, P. Rayson, C. Pohl, and A. Rummler. 2008. An Exploratory Study of Information Retrieval Techniques in Domain Analysis. In SPLC'08. 67--76. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. C. Arora, M. Sabetzadeh, L. Briand, and F. Zimmer. 2016. Automated Extraction and Clustering of Requirements Glossary Terms. IEEE Transactions on Software Engineering 99 (2016), 918--945.Google ScholarGoogle Scholar
  3. C. Arora, M. Sabetzadeh, L. Briand, and F. Zimmer. 2016. Extracting Domain Models from Natural-language Requirements: Approach and Industrial Evaluation. In MODELS'16. ACM, 250--260. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. N. Bakar. 2015. Latent Semantic Analysis and Particle Swarm Optimization for Requirements Reuse in Software Product Line : A Research Plan.. In SPLC'2013 Doctoral Symposium. 0--9.Google ScholarGoogle Scholar
  5. N. H. Bakar, Z. M. Kasirun, and N. Salleh. 2015. Feature Extraction Approaches from Natural Language Requirements for Reuse in Software Product Lines. J. Syst. Softw. 106, C (Aug. 2015), 132--149. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. M. P. S. Bhatia, A. Kumar, and R. Beniwal. 2016. Ontology based framework for detecting ambiguities in software requirements specification. In INDIACom'16. 3572--3575.Google ScholarGoogle Scholar
  7. S. Bird, E. Klein, and E. Loper. 2009. Natural Language Processing with Python (1st ed.). O'Reilly Media, Inc. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. D. Bogdanova. 2011. Extraction of High-Level Semantically Rich Features from Natural Language Text. In ADBIS'11. 262--271.Google ScholarGoogle Scholar
  9. E. Boutkova and F. Houdek. 2011. Semi-automatic identification of features in requirement specifications. In RE'11. IEEE, 313--318. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. A. Capozucca, B. H. C. Cheng, G. Georg, N. Guelfi, P. Istoan, G. Mussbacher, S. P. Mandalaparty, and A. Moreira. 2012. Requirements Definition Document for a Software Product Line of Car Crash Management Systems. Technical Report. U. of Nice Sophia Antipolis, I3S CNRS.Google ScholarGoogle Scholar
  11. K. Chen, W. Zhang, H. Zhao, and H. Mei. 2005. An approach to constructing feature models based on requirements clustering. In RE'05. IEEE, 31--40. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. P. Clements and L. Northrop. 2001. Software Product Lines: Practices and Patterns. Addison-Wesley Professional. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. J.-M. Davril, E. Delfosse, N. Hariri, M. Acher, J. Cleland-Huang, and P. Heymans. 2013. Feature Model Extraction from Large Collections of Informal Product Descriptions. In ESEC/FSE'2013. ACM, 290--300. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. T. De Smedt and W. Daelemans. 2012. Pattern for Python. J. Mach. Learn. Res. 13 (June 2012), 2063--2067. http://dl.acm.org/citation.cfm?id=2188385.2343710 Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. H. Dumitru, M. Gibiec, N. Hariri, J. Cleland-Huang, B. Mobasher, C. Castro-Herrera, and M. Mirakhorli. 2011. On-demand Feature Recommendations Derived from Mining Public Product Descriptions. In ICSE'11. ACM, 181--190. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. A. Ferrari, G. O. Spagnolo, and F. Dell'Orletta. 2013. Mining commonalities and variabilities from natural language documents. In SPLC '13. 116. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. M. Hamza and R. J. Walker. 2015. Recommending Features and Feature Relationships from Requirements Documents for Software Product Lines. In RAISE'15. IEEE Press, 25--31. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. N. Itzik and I. Reinhartz-Berger. 2014. Generating Feature Models from Requirements: Structural vs. Functional Perspectives. In SPLC'14 Workshops. ACM, 44--51. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. N. Itzik and I. Reinhartz-berger. 2014. SOVA-A tool for Semantic and Ontological Variability Analysis. In CAISE-Forum'14 (CEUR), Vol. 1164. 177--184.Google ScholarGoogle Scholar
  20. T. Jo. 2003. Neural Based Approach to Keyword Extraction from Documents. In ICCSA'03. 456--461. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. K. Kang, S. Cohen, J. Hess, W. Novak, and A. Peterson. 1990. Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical Report CMU/SEI-90-TR-021. Software Engineering Institute, Carnegie Mellon University.Google ScholarGoogle Scholar
  22. C. Kästner, T. Thüm, G. Saake, J. Feigenspan, T. Leich, F. Wielgorz, and S. Apel. 2009. FeatureIDE: A Tool Framework for Feature-oriented Software Development. In ICSE'09. IEEE CS, 611--614. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. C. Kelly, B. Devereux, and A. Korhonen. 2014. Automatic extraction of property norm-like data from large text corpora. Cognitive Science 38 (2014), 638--682.Google ScholarGoogle ScholarCross RefCross Ref
  24. A. Khtira, A. Benlarabi, and B. E. Asri. 2015. A Tool Support for Automatic Detection of Duplicate Features during Software Product Lines Evolution. IJCSI International Journal of Computer Science 12, 4 (2015), 1--10.Google ScholarGoogle Scholar
  25. N. Loughran, A. Sampaio, and A. Rashid. 2006. From requirements documents to feature models for aspect oriented product line implementation. In MDD for Product Lines @ MODELS'06 (LNCS), Vol. 3844. 262--271. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. S. G. MacDonell, K. Min, and A. M. Connor. 2005. Autonomous requirements specification processing using Natural Language Processing. In IASSE'05. ISCA, 266--270.Google ScholarGoogle Scholar
  27. M. Mefteh, N. Bouassida, and H. Ben-Abdallah. 2016. Mining Feature Models from Functional Requirements. Comput. J. 59, 12 (2016), 1784--1804.Google ScholarGoogle ScholarCross RefCross Ref
  28. George A. Miller. 1995. WordNet: A Lexical Database for English. Commun. ACM 38, 11 (Nov. 1995), 39--41. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. S. Ben Nasr, G. Bécan, M. Acher, J. Bosco Ferreira Filho, N. Sannier, B. Baudry, and J.-M. Davril. 2017. Automated extraction of product comparison matrices from informal product descriptions. J. Syst. Softw. 124 (2017), 82 -- 103. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. J. H. Paik. 2013. A Novel TF-IDF Weighting Scheme for Effective Ranking. In SIGIR'13. ACM, 343--352. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. T. Quirchmayr, B. Paech, R. Kohl, and H. Karey. 2017. Semi-automatic Software Feature-Relevant Information Extraction from Natural Language User Manuals. In Requirements Engineering: Foundation for Software Quality. Springer, 255--272.Google ScholarGoogle Scholar
  32. R. Salay, M. Famelis, J. Rubin, A. Di Sandro, and M. Chechik. 2014. Lifting Model Transformations to Product Lines. In ICSE'14. ACM, 117--128. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. A. Sampaio, A. Rashid, R. Chitchyan, and P. Rayson. 2007. EA-Miner: Towards Automation in Aspect-Oriented Requirements Engineering. LNCS, Vol. 4620. Springer, 4--39. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. C. Vicient, D. Sánchez, and A. Moreno. 2013. An Automatic Approach for Ontology-based Feature Extraction from Heterogeneous Textual Resources. Eng. Appl. Artif. Intell. 26, 3 (March 2013), 1092--1106. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. J. Wang, H. Peng, and J.-S. Hu. 2005. Automatic keyphrases extraction from document using backpropagation. In ICMLC'05, Vol. 6. 633--641. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. N. Weston, R. Chitchyan, and A. Rashid. 2009. A Framework for Constructing Semantically Composable Feature Models from Natural Language Requirements. In SPLC'09. Carnegie Mellon University, 211--220. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. L. Yi, W. Zhang, H. Zhao, Z. Jin, and H. Mei. 2012. Mining binary constraints in the construction of feature models. In RE'12. 141--150. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. J. Zhang, B. Ahmad, D. Vera, and R. Harrison. 2016. Ontology based semantic-predictive model for reconfigurable automation systems. In INDIN'16. 1094--1099.Google ScholarGoogle Scholar

Index Terms

  1. Extracting software product line feature models from natural language specifications

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Other conferences
          SPLC '18: Proceedings of the 22nd International Systems and Software Product Line Conference - Volume 1
          September 2018
          324 pages
          ISBN:9781450364645
          DOI:10.1145/3233027

          Copyright © 2018 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 10 September 2018

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

          Acceptance Rates

          Overall Acceptance Rate167of463submissions,36%

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader