一句话:通过8个工业项目验证自动化架构分析工具套件DV8,表明架构度量与缺陷检测能有效支持重构决策。
论文报告在大型企业8个工业项目中应用DV8工具套件的经验。DV8集成解耦度、传播成本两项架构级可维护性度量,以及架构缺陷与根因检测工具。作者收集开发过程数据作为输入,向实践者反馈结果,并通过电话会议和访谈跟踪。结果显示,度量分数、量化债务分析和缺陷可视化能在管理与开发之间架起桥梁,帮助判断是否、何时及何处重构;与行业基准比较,分数能反映实践者对可维护性的直觉。自动检测的缺陷和根因可精确定位、可视化并量化高维护成本“热点”。除两个最小项目外,其余项目均计划或已开始重构。作者正进一步自动化工具链并将分析套件转化为可部署服务。
In this paper, we report our experiences of applying three complementary automated software architecture analysis techniques, supported by a tool suite, called DV8, to 8 industrial projects within a large company. DV8 includes two state-of-the-art architecture-level maintainability metrics—Decoupling Level and Propagation Cost, an architecture flaw detection tool, and an architecture root detection tool. We collected development process data from the project teams as input to these tools, reported the results back to the practitioners, and followed up with telephone conferences and interviews. Our experiences revealed that the metrics scores, quantitative debt analysis, and architecture flaw visualization can effectively bridge the gap between management and development, help them decide if, when, and where to refactor. In particular, the metrics scores, compared against industrial benchmarks, faithfully reflected the practitioners’ intuitions about the maintainability of their projects, and enabled them to better understand the maintainability relative to other projects internal to their company, and to other industrial products. The automatically detected architecture flaws and roots enabled the practitioners to precisely pinpoint, visualize, and quantify the “hotspots" within the systems that are responsible for high maintenance costs. Except for the two smallest projects for which both architecture metrics indicated high maintainability, all other projects are planning or have already begun refactorings to address the problems detected by our analyses. We are working on further automating the tool chain, and transforming the analysis suite into deployable services accessible by all projects within the company.
DOI 原文 ·
@inproceedings{paperbot4711,
title = {Experiences applying automated architecture analysis tool suites},
author = {Ran Mo and Will Snipes and Yuanfang Cai and Srini Ramaswamy and Rick Kazman and Martin Naedele},
booktitle = {ASE},
year = {2018},
doi = {10.1145/3238147.3240467}
}