Mostrar el registro sencillo del ítem
dc.contributor.author
Tommasel, Antonela
dc.contributor.author
Diaz Pace, Jorge Andres
dc.date.available
2023-09-20T16:12:58Z
dc.date.issued
2022-10
dc.identifier.citation
Tommasel, Antonela; Diaz Pace, Jorge Andres; Identifying emerging smells in software designs based on predicting package dependencies; Pergamon-Elsevier Science Ltd; Engineering Applications Of Artificial Intelligence; 115; 10-2022; 1-17
dc.identifier.issn
0952-1976
dc.identifier.uri
http://hdl.handle.net/11336/212353
dc.description.abstract
Software systems naturally evolve, and this evolution often brings design problems that contribute to system degradation. Architectural smells are typical symptoms of such problems, and several of these smells are related to undesired dependencies among packages. The early detection of smells is essential for software engineers to plan ahead for maintenance or refactoring efforts. Although tools for identifying smells exist, they detect the smells once they already exist in the source code when their undesired dependencies are already created. In this work, we explore a forward-looking approach for identifying smells that can emerge in the next system version based on inferring package dependencies that are likely to appear in the system. Our approach takes the current design structure of the system as a network, along with information from previous versions, and applies link prediction techniques from the field of social network analysis. In particular, we consider a group of smells known as instability smells (cyclic dependency, hub-like dependency, and unstable dependency), which fit well with the link prediction model. The approach includes a feedback mechanism to progressively reduce false positives in predictions. An evaluation based on six open-source projects showed that, under certain considerations, the proposed approach can satisfactorily predict missing dependencies and smell configurations thereof. The feedback mechanism led to improvements of up to three times the initial precision values. Furthermore, we have developed a tool for practitioners to apply the approach in their projects.
dc.format
application/pdf
dc.language.iso
eng
dc.publisher
Pergamon-Elsevier Science Ltd
dc.rights
info:eu-repo/semantics/restrictedAccess
dc.rights.uri
https://creativecommons.org/licenses/by-nc-sa/2.5/ar/
dc.subject
ARCHITECTURAL SMELLS
dc.subject
CYCLES
dc.subject
LINK PREDICTION
dc.subject
MACHINE LEARNING
dc.subject
PACKAGE DEPENDENCIES
dc.subject.classification
Otras Ciencias de la Computación e Información
dc.subject.classification
Ciencias de la Computación e Información
dc.subject.classification
CIENCIAS NATURALES Y EXACTAS
dc.title
Identifying emerging smells in software designs based on predicting package dependencies
dc.type
info:eu-repo/semantics/article
dc.type
info:ar-repo/semantics/artículo
dc.type
info:eu-repo/semantics/publishedVersion
dc.date.updated
2023-07-31T15:16:16Z
dc.journal.volume
115
dc.journal.pagination
1-17
dc.journal.pais
Estados Unidos
dc.description.fil
Fil: Tommasel, Antonela. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina
dc.description.fil
Fil: Diaz Pace, Jorge Andres. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina
dc.journal.title
Engineering Applications Of Artificial Intelligence
dc.relation.alternativeid
info:eu-repo/semantics/altIdentifier/url/https://www.sciencedirect.com/science/article/pii/S0952197622002998
dc.relation.alternativeid
info:eu-repo/semantics/altIdentifier/doi/http://dx.doi.org/10.1016/j.engappai.2022.105209
Archivos asociados