Tracing Requirements as a Problem of Machine Learning

Tracing Requirements as a Problem of Machine Learning
复制标题

将需求追踪为机器学习问题

DOI:
10.5121/ijsea.2018.9402
复制
发表时间:
2018
期刊:
International Journal of Software Engineering & Applications
影响因子:
--
通讯作者:
LiGuo Huang
LiGuo Huang
中科院分区:
--
文献类型:
--
作者:
Zeheng Li;LiGuo Huang

文献摘要

被引文献

相似文献

软件需求工程和演化是软件开发过程中必不可少的,它定义和阐述了项目中要构建的内容。需求主要以文本形式编写,随后将演变为细粒度和可操作的工件,其中包含有关系统配置,技术堆栈等的详细信息。跟踪需求的演变使利益相关者能够确定每个需求的起源,并了解软件的设计如何反映其需求。计算需求可追溯性不是一项简单的任务,机器学习方法用于对各种相关需求之间的可追溯性进行分类。特别是,一个2-学习者,本体为基础的,伪实例增强的方法,其中两个分类器被训练,分别利用两种类型的功能,词汇功能和功能来自手工构建的本体,调查这样的任务。手工构建的本体也被用来生成伪训练实例,以改善机器学习结果。与只使用词汇特征的监督基线系统相比,我们的方法产生了56.0%的相对误差减少。最有趣的是,当手工构建的本体被自动构建的本体替换时,结果不会恶化。
Software requirement engineering and evolution essential to software development process, which defines and elaborates what is to be built in a project. Requirements are mostly written in text and will later evolve to fine-grained and actionable artifacts with details about system configurations, technology stacks, etc. Tracing the evolution of requirements enables stakeholders to determine the origin of each requirement and understand how well the software’s design reflects to its requirements. Reckoning requirements traceability is not a trivial task, a machine learning approach is used to classify traceability between various associated requirements. In particular, a 2-learner, ontology-based, pseudo-instances-enhanced approach, where two classifiers are trained to separately exploit two types of features, lexical features and features derived from a hand-built ontology, is investigated for such task. The hand-built ontology is also leveraged to generate pseudo training instances to improve machine learning results. In comparison to a supervised baseline system that uses only lexical features, our approach yields a relative error reduction of 56.0%. Most interestingly, results do not deteriorate when the hand-built ontology is replaced with its automatically constructed counterpart.