利用潜在语义索引补充软件文档
1. 背景与目标
在软件维护过程中,开发者需要探索系统源代码以找到并理解与变更任务相关的子集。然而,大多数系统的源代码有数百万行,因此需要一种高效有效的方法来识别与当前任务相关的源代码部分。本文介绍的方法基于潜在语义索引(LSI),旨在恢复软件中的隐性知识并补充现有文档。主要贡献包括:
- 对LSI方法进行全面深入的概述,并提供能执行该方法的参考实现。
- 研究该方法不同方面的有效性,以确定应用于飞利浦医疗保健源代码时哪种组合能提供最佳整体结果。
- 在工业环境中验证该方法,并描述两个案例研究。
2. 软件维护中的问题
软件维护过程可概括为三个步骤:理解现有软件、修改现有软件以及重新验证修改后的软件。在修改软件系统之前,开发者需探索系统源代码,找到并理解与变更任务相关的部分。但实际情况中,对应某个关注点的程序代码往往未得到良好封装,分散在代码的各个部分,这使得定位和理解分散的关注点变得困难。
3. 恢复关注点
许多程序理解和逆向工程方法已被开发出来帮助开发者发现与维护任务相关的代码。目前研究主要围绕三个主题:关注点定位、关注点文档化和关注点管理。本文方法属于关注点定位范畴。现有定位源代码中关注点的技术常依赖先验知识,如Unix实用工具“grep”,而分析运行系统的技术也不太适合关注点定位,因为它们往往无法区分重叠的关注点。本文采用的技术基于潜在语义索引(LSI),此前的研究取得了一些有前景的结果,但LSI存在复杂性问题,有许多因素会影响结果的可用性。
4. 方法概述
整个方法可分为以下步骤:
1. 输入
超级会员免费看
订阅专栏 解锁全文
1178

被折叠的 条评论
为什么被折叠?



