Extracting Dependencies from Software Changes: An Industry Experience Report

Extracting Dependencies from Software Changes: An Industry Experience Report
复制标题

从软件变更中提取依赖关系:行业经验报告

DOI:
10.1109/iwsm.mensura.2014.12
复制
发表时间:
2014
期刊:
2014 Joint Conference of the International Workshop on Software Measurement and the International Conference on Software Process and Product Measurement
影响因子:
--
通讯作者:
Rudolf Ramler
Rudolf Ramler
中科院分区:
--
文献类型:
--
作者:
Thomas Wetzlmaier;Claus Klammer;Rudolf Ramler

文献摘要

被引文献

相似文献

从软件库中检索和分析信息以及检测依赖关系是支持软件演化的重要任务。相关信息用于变更影响分析、缺陷预测以及内聚性和耦合性度量。在本文中,我们报告我们的经验,从商业软件系统的变化历史中提取依赖信息。我们分析了软件系统从开发开始到产品发布和维护的大约六年的演变。分析软件工件的共同进化允许检测用异构技术实现的系统部件之间以及不同类型的开发工件(例如源代码、数据模型或文档)之间的逻辑依赖性。然而,所提取的依赖关系的质量依赖于已建立的开发实践和对已定义的变更过程的一致性。在本文中,我们指出由此产生的限制,并建议进一步处理和过滤步骤,以准备后续的分析和测量活动的依赖数据。
Retrieving and analyzing information from software repositories and detecting dependencies are important tasks supporting software evolution. Dependency information is used for change impact analysis, defect prediction as well as cohesion and coupling measurement. In this paper we report our experience from extracting dependency information from the change history of a commercial software system. We analyzed the software system's evolution of about six years, from the start of development to the transition to product releases and maintenance. Analyzing the co-evolution of software artifacts allows detecting logical dependencies between system parts implemented with heterogeneous technologies as well as between different types of development artifacts such as source code, data models or documentation. However, the quality of the extracted dependencies relies on established development practices and conformance to a defined change process. In this paper we indicate resulting limitations and recommend further processing and filtering steps to prepare the dependency data for subsequent analysis and measurement activities.