Tracking Objects to Detect Feature Dependencies

Tracking Objects to Detect Feature Dependencies
复制标题

跟踪对象以检测特征依赖性

DOI:
10.1109/icpc.2007.38
复制
发表时间:
2007
期刊:
15th IEEE International Conference on Program Comprehension (ICPC '07)
影响因子:
--
通讯作者:
Oscar Nierstrasz
Oscar Nierstrasz
中科院分区:
--
文献类型:
--
作者:
Adrian Lienhard;O. Greevy;Oscar Nierstrasz

文献摘要

被引文献

相似文献

软件系统的特定领域本体包括一组特征及其关系。虽然在面向对象程序中定位特征的问题已被广泛研究,但特征之间的运行时依赖关系却很少被理解。功能不能孤立地理解,因为它们的行为通常取决于先前使用的功能中创建和引用的对象。仅通过浏览源代码很难发现功能之​​间的运行时依赖关系。因此,针对一项功能的代码修改通常会无意中影响其他功能。在本文中,我们提出了一种基于细粒度动态分析来精确识别特征之间依赖关系的方法,该分析捕获有关在运行时如何引用对象的详细信息。两个案例研究的结果表明,我们的方法可以帮助软件维护人员理解关键功能的依赖关系。
The domain-specific ontology of a software system includes a set of features and their relationships. While the problem of locating features in object-oriented programs has been widely studied, runtime dependencies between features are less well understood. Features cannot be understood in isolation, since their behavior often depends on objects created and referenced in previously exercised features. It is difficult to spot runtime dependencies between features just by browsing source code. Hence, code modifications intended for one feature, often inadvertently affect other features. In this paper, we propose an approach to precisely identify dependencies between features based on a fine-grained dynamic analysis which captures details about how objects are referenced at runtime. The results of two case studies indicate that our approach helps software maintainers in understanding critical feature dependencies.