Classifying and resolving software product line redundancies using an ontological first-order logic rule based method

Software product line engineering improves software quality and diminishes development cost and time by efficiently developing software products. Its success lies in identifying the commonalities and variabilities of a set of software products which are generally modeled using feature models. The su...

Descripción completa

Detalles Bibliográficos
Autores: Bhushan, Megha, Galindo Duarte, José Ángel, Samant, Piyush, Kumar, Ashok, Negi, Arun
Tipo de recurso: artículo
Estado:Versión enviada para evaluación y publicación
Fecha de publicación:2021
País:España
Institución:Universidad de Sevilla (US)
Repositorio:idUS. Depósito de Investigación de la Universidad de Sevilla
OAI Identifier:oai:idus.us.es:11441/139784
Acceso en línea:https://hdl.handle.net/11441/139784
https://doi.org/10.1016/j.eswa.2020.114167
Access Level:acceso abierto
Palabra clave:Feature model
First-order logic
Ontologies
Quality
Redundancy
Software product line
Descripción
Sumario:Software product line engineering improves software quality and diminishes development cost and time by efficiently developing software products. Its success lies in identifying the commonalities and variabilities of a set of software products which are generally modeled using feature models. The success of software product lines heavily relies upon the quality of feature models to derive high quality products. However, there are various defects that reduce profits of software product line. One of such defect is redundancy. While the majority of research work focuses on the identification of redundancies, their causes and corrections have been poorly explored. Causes and corrections must be as accurate and comprehensible as possible in order to support the developer in resolving the cause of a redundancy. This research work classified redundancies in the form of a typology. An ontological first-order logic rule based method is proposed to deal with redundancies. A two-step process is presented for mapping model to ontology based on predicate logic. First-order logic based rules are developed and applied to the generated ontology for identifying redundancies, their causes and corrections to resolve redundancies. The proposed method is illustrated using a case study from software product lines online tools repository. The results of experiments performed on 35 models with varied sizes of real world models as well as automatically generated models from the Software Product Line Online Tools repository and models created via FeatureIDE tool conclude that the method is accurate, efficient and scalable with FM up to 30,000 features. Thus, enables deriving redundancy free end products from the product line and ultimately, improves its quality.