SATT: Tailoring Code Metric Thresholds for Different Software Architectures

Mauricio Aniche, Christoph Treude, Andy Zaidman, Arie van Deursen, Marco Aurélio Gerosa

Research output: Chapter in Book/Conference proceedings/Edited volumeConference contributionScientificpeer-review

28 Citations (Scopus)
554 Downloads (Pure)

Abstract

Code metric analysis is a well-known approach for assessing the quality of a software system. However, current tools and techniques do not take the system architecture (e.g., MVC, Android) into account. This means that all classes are assessed similarly, regardless of their specific responsibilities. In this paper, we propose SATT (Software Architecture Tailored Thresholds), an approach that detects whether an architectural role is considerably different from others in the system in terms of code metrics, and provides a specific threshold for that role. We evaluated our approach on 2 different architectures (MVC and Android) in more than 400 projects. We also interviewed 6 experts in order to explain why some architectural roles are different from others. Our results shows that SATT can overcome issues that traditional approaches have, especially when some architectural role presents very different metric values than others.
Original languageEnglish
Title of host publication16th International Working Conference on Source Code Analysis and Manipulation (SCAM)
PublisherIEEE
Pages41-50
Number of pages10
ISBN (Electronic) 978-1-5090-3848-0
ISBN (Print)978-1-5090-3848-0
DOIs
Publication statusPublished - 2016
Event2016 IEEE 16th International Working Conference on Source Code Analysis and Manipulation (Scam 2016) - Raleigh, NC, United States
Duration: 2 Oct 20163 Oct 2016
http://www.ieee-scam.org/2016/

Conference

Conference2016 IEEE 16th International Working Conference on Source Code Analysis and Manipulation (Scam 2016)
Abbreviated titleSCAM 2016
Country/TerritoryUnited States
CityRaleigh, NC
Period2/10/163/10/16
Internet address

Fingerprint

Dive into the research topics of 'SATT: Tailoring Code Metric Thresholds for Different Software Architectures'. Together they form a unique fingerprint.

Cite this