Software architecture degradation is a phenomenon that frequently occurs during software evolution. Source code anomalies are one of the several aspects that potentially contribute to software architecture degradation. Many techniques for automating the detection of such anomalies are based on source code metrics. It is, however, unclear how accurate these techniques are in identifying the architecturally relevant anomalies in a system. The objective of this paper is to shed light on the extent to which source code metrics on their own can be used to characterize classes contributing to software architecture degradation. We performed a multi-case study on three open-source systems for each of which we gathered the intended architecture and data for 49 different source code metrics taken from seven different code quality tools. This data was analyzed to explore the links between architectural inconsistencies, as detected by applying reflexion modeling, and metric values indicating potential design problems at the implementation level. The results show that there does not seem to be a direct correlation between metrics and architectural inconsistencies. For many metrics, however, classes more problematic as indicated by their metric value seem significantly more likely to contribute to inconsistencies than less problematic classes. In particular, the fan-in, a classes' public API, and method counts seem to be suitable indicators. The fan-in metric seems to be a particularly interesting indicator, as class size does not seem to have a confounding effect on this metric. This finding may be useful for focusing code restructuring efforts on architecturally relevant metrics in case the intended architecture is not explicitly specified and to further improve architecture recovery and consistency checking tool support.
Software testability refers to the characteristics of an artifact that impact ease to ful ll test objectives. In most of the research on software testability, functional correct-ness of the software has been the focus while the evidence regarding testability and non-functional properties such as performance is sporadic. The objective of this study is to present the current state-of-the-art related to issues of importance, types and domains of software under test, types of research, contribution types and design evaluation methods concerning testability and software performance. We have conducted a systematic mapping study on the topic by following the recommended guidelines. We nd that observability, controllability and testing e ort are the main testability issues while timeliness and response time (i.e., time constraints) are the main performance issues in focus. The primary studies in the area use diverse types of software un-der test within di erent domains, with real-time systems as being a dominant domain. The researchers have proposed many di erent methods in the area, however these methods lack implementation in practice as suggested by our gures for research type, contribution type and design evaluation methods. CCS ConceptsSoftware and its engineering ! Extra-functional prop-erties;
Theory suggests that software development may benefit from applying architecture consistency checking and hence, academics have focused on this area. In such circumstances it is important to characterize the overall focus of the field, in order to assess the actual impact of the research work carried out to date, identifying where researchers are placing their effort and which sub-topics are being neglected. In doing so a map is provided for researchers allowing them focus on relevant research gaps and avoiding saturated sub-topics, to deliver results relevant for academia and industrial practice.The goal of this paper is to shed some light on the current state of research in software architecture degradation and consistency checking, particularly focusing on empirical evidence. Preliminary, yet significant results from an ongoing mapping study, as a precursor to a more detailed literature review, are presented and discussed. These results show that solution-proposals constitute a large part of the body of work. In addition, they show that case studies, with potentially limited external validity, are prevalent in terms of empirical design. We argue that the proportion of empirical studies needs to be expanded and that existing case studies should be complemented by experiments and surveys, assessing its impact in practice.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2025 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.