DSpace Repository

Using artificial neural networks to provide guidance in extending pl/sql programs

Show simple item record

dc.contributor.author Ersoy, E.
dc.contributor.author Sözer, H.
dc.date.accessioned 2022-10-06T12:55:01Z
dc.date.available 2022-10-06T12:55:01Z
dc.date.issued 2022
dc.identifier.issn 09639314 (ISSN)
dc.identifier.uri http://hdl.handle.net/11616/72556
dc.description.abstract Extending legacy systems with new objects for contemporary functionality or technology can lead to architecture erosion. Misplacement of these objects gradually hampers the modular structure, of which documentation is usually missing or outdated. In this work, we aim at addressing this problem for PL/SQL programs, which are highly coupled with databases. We propose a novel approach that employs artificial neural networks to automatically predict the correct placement of a new object among architectural modules. We train a network based on features extracted from the initial version of the source code that is assumed to represent the intended architecture. We use dependencies among the software and database objects as features for this training. Then, given a new object and the list of other objects it uses, the network can predict the architectural module, where the object should be included. We performed two industrial case studies with applications from the telecommunications domain, each of which involves thousands of procedures and database tables. We showed that the accuracy of our approach is 86.7% and 89% for these two applications. The baseline approach that uses coupling and cohesion metrics reaches 55.5% and 57.4% accuracy for the same applications, respectively. © 2022, The Author(s), under exclusive licence to Springer Science+Business Media, LLC, part of Springer Nature.
dc.source Software Quality Journal
dc.title Using artificial neural networks to provide guidance in extending pl/sql programs


Files in this item

Files Size Format View

There are no files associated with this item.

This item appears in the following Collection(s)

Show simple item record