Evaluating software architecture erosion for PL/SQL programs

Metin Altınışık, Ersin Ersoy, Hasan Sözer · 2017

PL/SQL procedures are grouped into packages for providing modularity. These procedures are indirectly coupled due to their use of common database tables. We define a cohesion metric and cluster PL/SQL procedures based on this type of coupling. The metric and clustering results are used for evaluating divergence from modularity as a result of architecture erosion. A divergence is detected for each package by a combination of two criteria: i) calculated cohesion metric for the package and ii) the number of clusters that are associated with the package. Low cohesion and high number of clusters indicate low modularity. We performed an industrial case study with a large-scale legacy system from the telecommunications domain. The results turned out to be promising, where some procedures are identified to be misplaced in packages from the modularity perspective. We also observed that divergence from modularity is consistently represented by our metric.

Read the paper · More papers on PaperTik