Publication: Automated procedure clustering for reverse engineering PL/SQL programs
Institution Authors
SÖZER, Hasan
Authors
Journal Title
Journal ISSN
Volume Title
Type
conferenceObject
Sub Type
Conference paper
Access
restrictedAccess
Publication Status
published
Abstract
PL/SQL programs are mainly composed of procedures that interact with a database. These procedures are grouped into packages at the architecture design level for increasing modularity and maintainability. However, the intended modular structure is subject to architectural drift especially for large scale programs that are maintained for a long duration. Existing reverse engineering and refactoring techniques cannot be directly applied for these programs. Unlike other programs, PL/SQL programs involve procedures that are in most cases indirectly coupled due to their database operations. In this paper, we provide an approach and a tool that support reverse engineering and refactoring of PL/SQL programs. We analyze dependencies among PL/SQL procedures based on the accessed database elements. We represent these dependencies in the form of a design structure matrix. Then, we cluster the procedures and propose a packaging structure to the designer. We performed an industrial case study from the telecommunications domain. We observed promising results in which several unexisted packages were proposed by our tool and the accuracy of the results were approved by domain experts.
Date
2016
Publisher
ACM
Description
Due to copyright restrictions, the access to the full text of this article is only available via subscription.