Using artificial neural networks to provide guidance in extending PL/SQL programs

Title Using artificial neural networks to provide guidance in extending PL/SQL programs
Author Ersoy, E., Sözer, Hasan
Publication Date: 2022-12
Publication Place - Springer
Subject Architecture erosion, Artificial neural networks, Industrial case study, Software architecture, Software maintenance
Type Periodical
Language English
Digital Yes
Manuscript No
Library: Özyeğin University
Library Asset ID 0963-9314
Record ID 28ead14f-f943-4600-9f6d-1391696285eb
Library Location Computer Science
Date 2022-12
Sample Text 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.
DOI 10.1007/s11219-022-09586-1
Cilt 30
View in source Özyeğin University Özyeğin University - Historical works, archives, and periodicals search engine
Özyeğin University - Historical works, archives, and periodicals search engine Özyeğin University

Using artificial neural networks to provide guidance in extending PL/SQL programs

Author Ersoy, E., Sözer, Hasan
Publication Date 2022-12
Publication Place - Springer
Subject Architecture erosion, Artificial neural networks, Industrial case study, Software architecture, Software maintenance
Type Periodical
Language English
Digital Yes
Manuscript No
Library Özyeğin University
Library Asset ID 0963-9314
Record ID 28ead14f-f943-4600-9f6d-1391696285eb
Library Location Computer Science
Date 2022-12
Sample Text 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.
DOI 10.1007/s11219-022-09586-1
Cilt 30
Özyeğin University - Historical works, archives, and periodicals search engine
Özyeğin University You are being redirected...

Please wait