19、利用信息检索模型处理非结构化软件仓库数据

利用信息检索模型处理非结构化软件仓库数据

在软件开发过程中,非结构化数据的处理对于解决许多软件工程任务具有重要意义。信息检索(IR)模型为处理这些非结构化数据提供了有效的方法,下面将详细介绍其在不同软件工程任务中的应用。

1. 概念/特性定位与面向方面编程(AOP)

概念定位(或特性定位)旨在识别实现软件系统特定特性的源代码部分。例如,若文件打印功能存在 bug,概念定位技术会尝试找出实现文件打印的源代码部分。

概念定位是 IR 模型在源代码上的直接应用,一般步骤如下:
1. 对源代码进行预处理。
2. 在预处理后的源代码上构建 IR 模型。
3. 接受开发者的查询,如“文件打印”。
4. 使用 IR 模型返回相关源代码文档列表。

许多 IR 模型都被应用于概念定位,包括向量空间模型(VSM)、潜在语义索引(LSI)、潜在狄利克雷分配(LDA)及其组合。目前,对于哪种 IR 模型在所有情况下表现最佳尚无定论。

与概念定位相关的是面向方面编程(AOP),它旨在为开发者提供轻松实现跨多个源代码文档的功能方面的工具。最近有理论提出,软件关注点等同于统计主题模型(特别是 LDA)发现的潜在主题,方面正是那些具有相对高分散度量值的主题。经过在大量开源系统上的测试,该理论大多时候成立。

2. 可追溯性恢复与错误定位

在软件开发中,常问的问题是“哪个源代码文档实现了需求 X?”可追溯性恢复旨在自动揭示软件工件对之间的链接,如源代码文档和需求文档之间的链接。这有助于项目涉众追踪需求的实现情况。错误定位是可追溯性恢复的特殊情况,开发者通过寻找错误报告和源代码之间的可追溯性链接

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值