#APACHE ANT LOGO SOFTWARE#
However, it can be concluded that various aspects are still ambiguous and require further research on architectural erosion measures.Īlthough considered one of the most important decisions in the software development lifecycle, empirical evidence on how developers perform and perceive architectural changes remains scarce. The classification of metrics, which is the first of its kind, benefits researchers and practitioners. The metrics of architectural erosion provide strong evidence for identifying decay and a rapid enabler factor for the adoption of numerous metrics mechanisms to address architectural erosion. We proposed nine classifications to address architectural erosion challenges, based on adopted approaches in primary studies. Nearly 100 architectural erosion metrics were found. The final samples of this study were specified as a total of 43 included papers. Furthermore, no systematic attempts have been made on architectural erosion metrics. This work aims to conduct a systematic mapping to describe and analyze the architectural erosion metrics to provide an overview of erosion metrics and their current trends. Nevertheless, a comprehensive description of architectural erosion metrics remains unorganized and scattered. As a result, the metrics technique is the most prevalent solution for architectural erosion. Several studies have addressed architectural erosion based on different solutions. This phenomenon is known as architectural erosion. Typically, as a system evolves, software architecture deteriorates. Software architecture is crucial in determining success or failure in a variety of software development and design fields. More empirical studies are required to investigate the practices of detecting and addressing AEr in industrial settings. The results can provide researchers a comprehensive understanding of AEr and help practitioners handle AEr and improve the sustainability of their architecture. With 73 studies included, the main results are as follows: (1) AEr manifests not only through architectural violations and structural issues but also causing problems in software quality and during software evolution (2) non-technical reasons that cause AEr should receive the same attention as technical reasons, and practitioners should raise awareness of the grave consequences of AEr, thereby taking actions to tackle AEr-related issues (3) a spectrum of approaches, tools, and measures has been proposed and employed to detect and tackle AEr and (4) three categories of difficulties and five categories of lessons learned on tackling AEr were identified.
This work aims at systematically investigating, identifying, and analyzing the reasons, consequences, and ways of detecting and handling AEr. However, there is an absence of a comprehensive understanding of the state of research about the reasons and consequences of AEr, and the countermeasures to address AEr. Architecture erosion (AEr) can adversely affect software development and has received significant attention in the last decade.