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.
- 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 ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- 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 Scholar
- S. Bird, E. Klein, and E. Loper. 2009. Natural Language Processing with Python (1st ed.). O'Reilly Media, Inc. Google ScholarDigital Library
- D. Bogdanova. 2011. Extraction of High-Level Semantically Rich Features from Natural Language Text. In ADBIS'11. 262--271.Google Scholar
- E. Boutkova and F. Houdek. 2011. Semi-automatic identification of features in requirement specifications. In RE'11. IEEE, 313--318. Google ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- P. Clements and L. Northrop. 2001. Software Product Lines: Practices and Patterns. Addison-Wesley Professional. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- A. Ferrari, G. O. Spagnolo, and F. Dell'Orletta. 2013. Mining commonalities and variabilities from natural language documents. In SPLC '13. 116. Google ScholarDigital Library
- 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 ScholarDigital Library
- N. Itzik and I. Reinhartz-Berger. 2014. Generating Feature Models from Requirements: Structural vs. Functional Perspectives. In SPLC'14 Workshops. ACM, 44--51. Google ScholarDigital Library
- 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 Scholar
- T. Jo. 2003. Neural Based Approach to Keyword Extraction from Documents. In ICCSA'03. 456--461. Google ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- 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 ScholarCross Ref
- 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 Scholar
- 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 ScholarDigital Library
- 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 Scholar
- M. Mefteh, N. Bouassida, and H. Ben-Abdallah. 2016. Mining Feature Models from Functional Requirements. Comput. J. 59, 12 (2016), 1784--1804.Google ScholarCross Ref
- George A. Miller. 1995. WordNet: A Lexical Database for English. Commun. ACM 38, 11 (Nov. 1995), 39--41. Google ScholarDigital Library
- 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 ScholarDigital Library
- J. H. Paik. 2013. A Novel TF-IDF Weighting Scheme for Effective Ranking. In SIGIR'13. ACM, 343--352. Google ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- J. Wang, H. Peng, and J.-S. Hu. 2005. Automatic keyphrases extraction from document using backpropagation. In ICMLC'05, Vol. 6. 633--641. Google ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
Index Terms
- Extracting software product line feature models from natural language specifications
Recommendations
Validating Feature Models With Respect to Textual Product Line Specifications
VaMoS '21: Proceedings of the 15th International Working Conference on Variability Modelling of Software-Intensive SystemsFeature models (FM) are a valuable resource in the analysis of software product lines (SPL). They provide a visual abstraction of the variation points in a family of related software products. FMs can be manually created by domain experts or extracted (...
Feature and variability extraction from natural language software requirements specifications
SPLC '18: Proceedings of the 22nd International Systems and Software Product Line Conference - Volume 2Extracting feature and variability from requirement specifications is an indispensable activity to support systematic integration related single software systems into Software Product Line (SPL). Performing variability extraction is time-consuming and ...
Improving product configuration in software product line engineering
ACSC '13: Proceedings of the Thirty-Sixth Australasian Computer Science Conference - Volume 135Software Product Line Engineering (SPLE) is a emerging software reuse paradigm. SPLE focuses on systematic software reuse from requirement engineering to product derivation throughout the software development life-cycle. Feature model is one of the most ...
Comments