{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,12]],"date-time":"2025-10-12T04:25:14Z","timestamp":1760243114669,"version":"build-2065373602"},"reference-count":37,"publisher":"MDPI AG","issue":"4","license":[{"start":{"date-parts":[[2015,10,7]],"date-time":"2015-10-07T00:00:00Z","timestamp":1444176000000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/creativecommons.org\/licenses\/by\/4.0\/"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Information"],"abstract":"<jats:p>After the derivation of specific applications from a software product line, the applications keep evolving with respect to new customer\u2019s requirements. In general, evolutions in most industrial projects are expressed using natural language, because it is the easiest and the most flexible way for customers to express their needs. However, the use of this means of communication has shown its limits in detecting defects, such as inconsistency and duplication, when evolving the existing models of the software product line. The aim of this paper is to transform the natural language specifications of new evolutions into a more formal representation using natural language processing. Then, an algorithm is proposed to automatically detect duplication between these specifications and the existing product line feature models. In order to instantiate the proposed solution, a tool is developed to automatize the two operations.<\/jats:p>","DOI":"10.3390\/info6040592","type":"journal-article","created":{"date-parts":[[2015,10,7]],"date-time":"2015-10-07T10:39:13Z","timestamp":1444214353000},"page":"592-612","update-policy":"https:\/\/doi.org\/10.3390\/mdpi_crossmark_policy","source":"Crossref","is-referenced-by-count":2,"title":["Duplication Detection When Evolving Feature Models of Software Product Lines"],"prefix":"10.3390","volume":"6","author":[{"given":"Amal","family":"Khtira","sequence":"first","affiliation":[{"name":"IMS Team, SIME Laboratory, ENSIAS, Mohammed V University, Rabat 10000, Morocco"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Anissa","family":"Benlarabi","sequence":"additional","affiliation":[{"name":"IMS Team, SIME Laboratory, ENSIAS, Mohammed V University, Rabat 10000, Morocco"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Bouchra","family":"Asri","sequence":"additional","affiliation":[{"name":"IMS Team, SIME Laboratory, ENSIAS, Mohammed V University, Rabat 10000, Morocco"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"1968","published-online":{"date-parts":[[2015,10,7]]},"reference":[{"key":"ref_1","unstructured":"Clements, P., and Northop, L. (2002). Software Product Lines\u2014Practices and Patterns, Addison-Wesley."},{"key":"ref_2","doi-asserted-by":"crossref","first-page":"49","DOI":"10.5381\/jot.2009.8.5.c5","article-title":"An overview of feature-oriented software development","volume":"8","author":"Apel","year":"2009","journal-title":"J. Object Technol."},{"key":"ref_3","doi-asserted-by":"crossref","unstructured":"Kang, K., Cohen, S., Hess, J., Novak, W., and Peterson, S. (1990). Feature-Oriented Domain Analysis (FODA) Feasibility Study, Software Engineering Institute. Technical Report CMU\/SEI-90-TR-21.","DOI":"10.21236\/ADA235785"},{"key":"ref_4","doi-asserted-by":"crossref","unstructured":"Romero, D., Urli, S., Quinton, C., Blay-Fornarino, M., Collet, P., Duchien, L., and Mosser, S. (2013, January 26\u201330). SPLEMMA: A generic framework for controlled-evolution of software product lines. Proceedings of the 17th International Software Product Line Conference Co-located Workshops, Tokyo, Japan.","DOI":"10.1145\/2499777.2500709"},{"key":"ref_5","doi-asserted-by":"crossref","first-page":"763","DOI":"10.1016\/j.infsof.2004.03.003","article-title":"On the interplay between consistency, completeness, and correctness in requirements evolution","volume":"46","author":"Zowghi","year":"2004","journal-title":"Inf. Softw. Technol."},{"key":"ref_6","unstructured":"Khtira, A., Benlarabi, A., and El Asri, B. (2014, January 12\u201316). Towards duplication-free feature models when evolving software product lines. Proceedings of the 9th International Conference on Software Engineering Advances, Nice, France."},{"key":"ref_7","doi-asserted-by":"crossref","unstructured":"Pohl, K., B\u00f6ckle, G., and van der Linden, F. (2005). Software Product Line Engineering Foundations, Principles, and Techniques, Springer.","DOI":"10.1007\/3-540-28901-1"},{"key":"ref_8","doi-asserted-by":"crossref","first-page":"427","DOI":"10.1007\/s10270-009-0120-9","article-title":"A model-driven traceability framework for software product lines","volume":"9","author":"Anquetil","year":"2010","journal-title":"Softw. Syst. Model."},{"key":"ref_9","doi-asserted-by":"crossref","first-page":"2261","DOI":"10.1016\/j.jss.2011.08.008","article-title":"Model-driven support for product line evolution on feature level","volume":"85","author":"Pleuss","year":"2010","journal-title":"J. Syst. Softw."},{"key":"ref_10","doi-asserted-by":"crossref","unstructured":"Benlarabi, A., El Asri, B., and Khtira, A. (2014, January 10\u201312). A co-evolution model for software product lines: An approach based on evolutionary trees. Proceedins of the IEEE Second World Conference on Complex Systems, Agadir, Morocco.","DOI":"10.1109\/ICoCS.2014.7060991"},{"key":"ref_11","doi-asserted-by":"crossref","unstructured":"Seidl, C., Heidenreich, F., and Assmann, U. (2012, January 2\u20137). Co-evolution of models and feature mapping in software product lines. Proceedings of the 16th International Software Product Line Conference, Salvador, Brazil.","DOI":"10.1145\/2362536.2362550"},{"key":"ref_12","doi-asserted-by":"crossref","first-page":"121","DOI":"10.1016\/j.infsof.2010.08.007","article-title":"Components meet aspects: Assessing design stability of a software product line","volume":"53","author":"Tizzei","year":"2011","journal-title":"Inf. Softw. Technol."},{"key":"ref_13","unstructured":"Nuseibeh, B. (1996, January 22\u201323). To be and not to be: On managing inconsistency in software development. Proceedings of the 8th International Workshop on Software Specification and Design, Schloss Velen, Germany."},{"key":"ref_14","unstructured":"Easterbrook, S., and Nuseibeh, B. (1995, January 27\u201329). Managing inconsistencies in an evolving specification. Proceedings of the IEEE Second IEEE International Symposium on Requirements Engineering, York, UK."},{"key":"ref_15","first-page":"53","article-title":"An automatic tool for the analysis of natural language requirements","volume":"20","author":"Lami","year":"2005","journal-title":"Comput. Syst. Eng."},{"key":"ref_16","unstructured":"Mazo, R. (2011). A Generic Approach for Automated Verification of Product Line Models. [Ph.D. Thesis, Pantheon-Sorbonne University]."},{"key":"ref_17","unstructured":"Hunt, A., and Thomas, D. (2000). The Pragmatic Programmer: From Journeyman to Master, Addison-Wesley."},{"key":"ref_18","doi-asserted-by":"crossref","first-page":"33","DOI":"10.1145\/2189751.2047869","article-title":"Investigating the safe evolution of software product lines","volume":"47","author":"Neves","year":"2012","journal-title":"ACM SIGPLAN Not."},{"key":"ref_19","doi-asserted-by":"crossref","unstructured":"Aversano, L., Cerulo, L., and Di Penta, M. (2007, January 21\u201323). How clones are maintained: An empirical study. Proceedings of the IEEE 11th European Conference on Software Maintenance and Reengineering, Amsterdam, The Netherlands.","DOI":"10.1109\/CSMR.2007.26"},{"key":"ref_20","doi-asserted-by":"crossref","unstructured":"Salinesi, C., Mazo, R., Djebbi, O., Diaz, D., and Lora-Michiels, A. (2011, January 19\u201321). Constraints: The core of product line engineering. Proceedings of the IEEE 5th International Conference on Research Challenges in Information Science, Gosier, France.","DOI":"10.1109\/RCIS.2011.6006825"},{"key":"ref_21","doi-asserted-by":"crossref","first-page":"143","DOI":"10.1023\/A:1018980625587","article-title":"FORM: A feature-oriented reuse method with domain-specific reference architectures","volume":"5","author":"Kang","year":"1998","journal-title":"Ann. Softw. Eng."},{"key":"ref_22","unstructured":"Bosch, J. (2000). Design and Use of Software Architectures: Adopting and Evolving a Product-Line Approach, Addison-Wesley."},{"key":"ref_23","doi-asserted-by":"crossref","unstructured":"K\u00e4stner, C., Th\u00fcm, T., Saake, G., Feigenspan, J., Leich, T., Wielgorz, F., and Apel, S. (2009, January 16\u201327). FeatureIDE: A tool framework for feature-oriented software development. Proceedings of the IEEE 31st International Conference on Software Engineering, Vancouver, BC, Canada.","DOI":"10.1109\/ICSE.2009.5070568"},{"key":"ref_24","doi-asserted-by":"crossref","first-page":"6","DOI":"10.1109\/MS.1985.229776","article-title":"On formalism in specifications","volume":"2","author":"Meyer","year":"1985","journal-title":"IEEE softw."},{"key":"ref_25","doi-asserted-by":"crossref","unstructured":"Holtmann, J., Meyer, J., and von Detten, M. (2011, January 21\u201325). Automatic validation and correction of formalized, textual requirements. Proceedings of the IEEE 4th International Conference on Software Testing, Verification and Validation Workshops, Berlin, Germany.","DOI":"10.1109\/ICSTW.2011.17"},{"key":"ref_26","doi-asserted-by":"crossref","unstructured":"Fatwanto, A. (2013, January 25\u201328). Software requirements specification analysis using natural language processing technique. Proceedings of the IEEE International Conference on QiR (Quality in Research), Yogyakarta, Indonesia.","DOI":"10.1109\/QiR.2013.6632546"},{"key":"ref_27","unstructured":"Ilieva, M.G., and Ormandjieva, O. (2005). Natural Language Processing and Information Systems, Springer."},{"key":"ref_28","unstructured":"Khtira, A., Benlarabi, A., and El Asri, B. (2015, January 7\u20139). An approach to detect duplication in software product lines using natural language processing. Proceedings of the Mediterranean Conference on Information and Communication Technologies, Saidia, Morocco. in press."},{"key":"ref_29","unstructured":"The Apache Software Foundation OpenNLP. Available online: http:\/\/opennlp.apache.org\/."},{"key":"ref_30","doi-asserted-by":"crossref","unstructured":"Khtira, A., Benlarabi, A., and El Asri, B. (2015, January 29\u201330). Detecting feature duplication in natural language specifications when evolving software product lines. Proceedings of the 10th International Conference on Evaluation of Novel Approaches to Software Engineering, Barcelona, Spain.","DOI":"10.5220\/0005459802570262"},{"key":"ref_31","unstructured":"Khtira, A. (2015, January 8\u201312). Towards a framework for feature deduplication during software product lines evolution. Proceedings of the 27th International Conference on Advanced Information Systems Engineering, Stockholm, Sweden."},{"key":"ref_32","unstructured":"Ambriola, V., and Gervasi, V. (1997, January 1\u20135). Processing natural language requirements. Proceedings of the 12th IEEE International Conference on Automated Software Engineering, Incline Village, NV, USA."},{"key":"ref_33","unstructured":"Guo, J., and Wang, Y. (2010). Software Product Lines: Going Beyond, Springer."},{"key":"ref_34","doi-asserted-by":"crossref","unstructured":"Yu, D., Geng, P., and Wu, W. (2012, January 4\u20137). Constructing traceability between features and requirements for software product line engineering. Proceedings of the 19th Asia-Pacific Software Engineering Conference, Hong Kong, China.","DOI":"10.1109\/APSEC.2012.135"},{"key":"ref_35","unstructured":"Schulze, S. (2012). Analysis and Removal of Code Clones in Software Product Lines. [Ph.D. Thesis, Magdeburg University]."},{"key":"ref_36","doi-asserted-by":"crossref","unstructured":"Dubinsky, Y., Rubin, J., Berger, T., Duszynski, S., Becker, M., and Czarnecki, K. (2013, January 5\u20138). An exploratory study of cloning in industrial software product lines. Proceedings of the IEEE 17th European Conference on Software Maintenance and Reengineering, Genova, Switzerland.","DOI":"10.1109\/CSMR.2013.13"},{"key":"ref_37","doi-asserted-by":"crossref","unstructured":"Mende, T., Beckwermert, F., Koschke, R., and Meier, G. (2008, January 1\u20134). Supporting the grow-and-prune model in software product lines evolution using clone detection. Proceedings of the IEEE 12th European Conference on Software Maintenance and Reengineering, Athens, Greece.","DOI":"10.1109\/CSMR.2008.4493311"}],"container-title":["Information"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/www.mdpi.com\/2078-2489\/6\/4\/592\/pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,10,11]],"date-time":"2025-10-11T20:49:44Z","timestamp":1760215784000},"score":1,"resource":{"primary":{"URL":"https:\/\/www.mdpi.com\/2078-2489\/6\/4\/592"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2015,10,7]]},"references-count":37,"journal-issue":{"issue":"4","published-online":{"date-parts":[[2015,12]]}},"alternative-id":["info6040592"],"URL":"https:\/\/doi.org\/10.3390\/info6040592","relation":{},"ISSN":["2078-2489"],"issn-type":[{"type":"electronic","value":"2078-2489"}],"subject":[],"published":{"date-parts":[[2015,10,7]]}}}