一种结构化文档需求快速识别和条目化组织管理方法与流程



1.本发明属于软件开发与应用领域,特别是涉及质量管理部门规定的软件研发合同、软件研制任务书、软件需求文档等结构化文档软件需求快速识别和条目化组织管理方法。


背景技术:



2.随着越来越多的软件或系统研发公司引入了敏捷开发方法,敏捷研发与软件需求管理的关系也愈加紧密,传统的软件需求集约化管理模式难以快速实现对客户价值的精准交付。需求条目化是解决软件需求快速变更、精准定位和追踪的有效手段。然而,当前的需求条目化处理仍然以手工录入为主,难以应对软件需求的快速变化和动态组织管理。因此,对需求快速条目化生成及组织管理是目前需求管理要解决的一个重要问题。
3.需求的快速识别和条目化处理,需要对结构化软件需求文档进行恢复、段落文本识别和处理、需求条目组织等操作。因此,自然语言处理和知识图谱构建成为需求识别和关系构建的主要技术。在快速需求条目化处理时,需要解决以下问题:软件需求文档结构还原识别、需求文本的条目化、需求条目组织管理。其中需求条目化过程的重点在于软件需求文档的需求识别和分析,彭艺宇,曾凯等人提出一种文档结构识别方法、文档结构识别的模型训练方法和装置(彭艺宇, 曾凯,路华,陈永锋.文档结构识别方法、文档结构识别的模型训练方法和装置[p]. 北京市:cn111832403a,2020-10-27.),从所述文档图像中选取候选区域;对所述候选区域进行图像特征提取,得到图像特征;对所述候选区域中包含的字符进行语义识别,得到语义特征;再根据所述图像特征和所述语义特征进行分类,以确定所述候选区域所属的文档结构类型。陈辞提出一种基于语义分析的软件需求提取技术(陈辞.基于语义分析的软件需求提取技术研究[j].舰船电子工程,2020,40(06):118-123.),研究分析软件需求的表示和组织,构建基于语义分析的软件需求提取技术,实现对形式化、非形式化等多种软件需求文档的语义提取,辅助用户理解需求。然而,上述方法主要考虑的是如何对文档结构进行识别和需求语义识别,从精确提取需求;尚未对软件需求进行条目化处理和组织,且软件需求识别后分类归整和分类不明确。


技术实现要素:



[0004]
本发明的目的在于提出一种结构化软件需求文档需求快速识别和条目化组织管理方法,以解决传统软件需求描述不规范、人工软件需求分析效率低等问题;同时,解决频繁变更导致软件需求追踪混乱等问题。
[0005]
实现本发明目的的技术解决方案为:一种结构化文档需求快速识别和条目化组织管理方法,实现结构化软件需求文档(word文档)中需求的快速提取与条目化组织,具体操作步骤如下:
[0006]
(1)软件需求文档(word文档)通过文档识别和结构恢复方法进行识别恢复,基于jacob或apache poi处理方法,将软件需求文档中的文字要素和版面进行抽取输出,并按照
原始层次结构进行组织;
[0007]
(2)对于结构化软件需求文本,利用自然语言处理方法结合软件需求知识库对已电子化的软件需求文本进行语义识别和关键词抽取,获取软件需求要素;再根据软件需求要素位置、语句、语义以及上下文分析,进行软件需求条目整合;
[0008]
(3)对于非结构化软件需求文本,基于语义分析、句型分析等方法,将软件需求文本进行软件需求条目化拆分,并结合文档层次结构和上下文,对软件需求条目进行归类整理和属性设置;
[0009]
(4)根据软件需求条目内容和层次关系,丰富软件需求条目属性,进行软件需求条目层次划分、关系抽取、需求分类等,形成软件需求清单;
[0010]
(5)基于知识图谱构建技术,将软件需求条目进行消岐融合和组织关联,最后进行展示。
[0011]
本发明与现有技术相比,其显著优点为:(1)降低软件需求分析人员的工作量,能够基于软件需求文档、软件研制任务书等结构化文档快速识别需求,并做条目化、层次化组织管理,能够快速完成需求的确认,同时提高碎片化软件需求的管理能力。(2)降低专业需求分析人员人工识别分析软件需求的错误率,辅助非专业需求分析人员快速识别软件需求,辅助完成需求的确认、整理和入库。 (3)便于软件需求管理和追踪,解决软件需求变更频繁导致的软件需求追踪混乱的问题,根据软件需求条目组织管理,可以快速进行软件需求影响域分析,给出软件需求变更评价和建议,便于决策者决策。
附图说明
[0012]
图1是本发明的文档结构化识别恢复图。结构化或半结构化软件需求文档 (word)通过word结构文档识别分析工具,将文档中的文字元素(单字、文字块、行、表格)和版面格式抽离并按顺序输出,并按原文或者目标结构进行层次化组织管理。
[0013]
图2是本发明的需求条目化处理图。首先基于自然语言识别方法和关键字提取方法,结合软件需求知识库,对已经层次化的软件需求段落文本进行识别,获取软件需求语句;然后利用结构信息抽取出软件需求条目对应的属性候选,然后利用关联规则挖掘需求属性;最后基于实体注意力(attention)的深度神经网络实体关系抽取模型,来抽取软件需求实体的层次结构和关联关系。
[0014]
图3为本发明的需求条目知识图谱构建图。从各种类型的软件需求数据源中提取出软件需求实体、属性以及实体间的相互关系,在此基础上形成本体化的知识表达;结合软件需求条目,基于表达体系抽取实体数据和实体关系,完成软件需求数据消岐和融合;最后将构建好的软件需求知识库以图谱的形式进行部分展示。
[0015]
图4是本发明的总体流程图。软件需求文档(word)通过文档识别和结构恢复方法进行电子化处理,将软件需求文档中的文字要素和版面进行抽取输出,并按照原始层次结构进行组织;其次,利用自然语言处理方法结合软件需求知识库对已电子化的软件需求文本进行语义识别和关键词抽取,获取软件需求要素;再次,根据软件需求要素位置、语句、语义以及上下文分析,获取软件需求层次关系和关联关系;最后,基于知识图谱构建技术,构建软件需求知识库。
具体实施方式
[0016]
为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
[0017]
本发明一种结构化文档需求快速识别和条目化组织管理方法,基于语义分析的软件需求提取技术,实现对形式化、非形式化等多种软件需求文档的语义提取,基于知识图谱技术对提取的软件需求进行归类整合,形成软件需求条目化清单和组织关系网,便于软件需求快速定位、管理和跟踪,提升软件需求管理效能。具体操作步骤如下:
[0018]
步骤1,文档结构化抽取
[0019]
基于jacob或apache poi技术将软件需求文档(word)内容进行结构化抽取,对整个软件需求文档从上至下扫描,并对其中的文本和表格进行区分处理,记录文本和表格的位置顺序,其中文档内的标题形成标题条目,文档内的段落形成正文条目。
[0020]
首先将软件需求文档(word)另存为word xml文件,xml文件的结构如下所示,其中:
[0021][0022]
使用apache poi技术对xml文件中的字段进行解析,抽取出文件中的结构,并根据位置信息填充必要的结构信息。
[0023]
然后,基于xml文档的结构信息,根据文本和表格元素提取程序提取文档中的段落文本和表格,并按照顺序和一定的结构存储于数据库,便于后续的需求条目化处理。
[0024]
步骤2,需求条目化处理
[0025]
软件需求规格说明书、软件研制任务书、软件研制合同等word文档是遵照标准或格式来编制,其部分需求描述具有结构性。通过分段、分句的方式直接从这些结构化软件需求文本中获取软件需求实体,并构建初始软件需求知识库。结合软件需求实体,采用关键字识别技术和语义分析技术,与特定的软件需求知识库内容相匹配,对软件需求实体进行拆分,生成软件需求条目。具体包括以下几个步骤:
[0026]
(1)需求文本条目化
[0027]
基于自然语言处理语义分析技术,通过对软件需求文本进行语法、词法、语用、语境分析,将软件需求段落文本进行条目拆分;再结合关键字识别技术,对拆分的软件需求条目进行关键字提取,并结合软件需求知识库,最终完成软件需求条目的生成。
[0028]
(2)需求条目属性抽取
[0029]
需求属性抽取的目标是从多层次多角度的数据源中采集软件需求条目的属性信息,实现对软件需求条目知识的整体勾画,主要包括:所属项目、所属模块、需求内容、需求条目来源、对应的文档、需求版本、类型、状态、条目标识、采集人、采集时间、审批人等信息,为软件需求条目关系的抽取、需求知识的融合、表达提供基础和实现的载体。主要有以下两种方法:1)直接属性抽取;2)基于关联语义链的语义属性抽取。直接属性抽取是利用数据挖掘等技术,从不同来源的结构化、半结构化和非结构化的软件需求文本中抽取软件需求条目属性知识。基于关联语义链的语义属性抽取则主要利用实体的关联语义链,抽取与软件需求条目高度关联的语义词语作为属性。
[0030]
对于结构化、半结构化软件需求文本,利用结构信息抽取出软件需求条目对应的属性候选,然后利用关联规则挖掘apriori算法,选取置信度高的候选作为需求条目对应的属性。本发明中令i={i1,i2,i3……in
}是软件需求数据中所有属性项的集合,而t={t1,t2,t3…
tn}是所有事务的集合,每个事务ti包含的项集都是i的子集。从集合i中可以得知需求条目的全部k-项集。依据以下方法,计算每个 k-项集的支持计数:
[0031]
其中,符号|*|表示集合中元素的个数。
[0032]
利用置信度计算每个属性值的关联规则强度,计算方法如下:
[0033]
c(x

y)=σ(x∪y)/σ(x)其中,σ(x∪y)是(x∪y)的支持度计数,σ(x) 是x的支持度计数。
[0034]
最后,选择置信度高的作为该软件需求条目的属性。
[0035]
而,对于软件需求文档中非结构化软件需求文本,利用句法分析对软件需求文本进行处理,利用实体识别结果、句法分析结果和属性词典产生每个软件需求条目对应的属性候选,然后融合句法语义特征、候选属性本身的语义特征、候选属性与软件需求条目间的相对位置特征等多种特征来对每个候选属性进行打分,分值高的属性候选即为抽取结果。
[0036]
(3)需求条目关系抽取
[0037]
需求条目的关系包括:软件需求实体或属性的分类层次关系、部分-整体关系、相似关系等抽象关系以及属性关系等。其中属性关系可以直接通过属性抽取的方法得到,部分-整体关系和分类层次关系可以归纳为需求实体或属性的is-a 关系,而相似关系是软件需求条目文本的外形相似且具备搜索相关性。
[0038]
采用基于实体注意力(attention)的深度神经网络实体关系抽取模型,来抽取需求实体的关联关系。并借助语义信息分析技术,预测需求实体间语义关系的类别,从而达到抽取多源异构文本中实体和关系的目的。具体来说,首先采用双向lstm对需求实体所在的文本的上下文进行建模,随后利用实体注意力模型对辨别语义关系过程中起不同作用的语义特征分配不同权重,然后将不同需求实体相关特征的计算结果通过softmax归一化映射为每一类语义关系对应的概率,模型的参数通过梯度下降算法进行优化。本发明的软件需求文本注意力模型计算方法定义如下:
[0039]
m=tanh(h)
[0040]
a=softmax(w
t
m)
[0041]
r=ha
t
[0042]
文本注意力模型是核心算法,用于完成需求关系抽取。
[0043]
步骤3,需求条目组织(知识库)
[0044]
软件需求条目化后需要将软件需求条目进行组织关联,基于软件需求条目属性和软件需求关系构建需求知识图谱,形成软件需求知识库。具体包括以下几个主要步骤:
[0045]
(1)需求数据信息抽取:基于上述方法从各种类型的软件需求数据源中提取出需求实体、属性以及实体间的相互关系,在此基础上形成本体化的知识表达,包括需求分类、需求属性、需求关系表达;
[0046]
(2)需求数据消歧融合,基于表达体系抽取实体数据和实体关系,将软件需求条目属性与软件需求条目关系显示出来供用户核实(部分需要人工参与甄别),经确认后开始构建知识库,并在构建的整个过程中进行实体消歧、链接消歧和属性融合;
[0047]
(3)图谱展示与输出,将构建好的软件需求知识库以图谱的形式进行展示,并将知识库表达体系同样以图谱的形式展示,便于软件需求快速追踪。
[0048]
实施例
[0049]
为了验证本发明方案的有效性,进行如下实验。
[0050]
(1)软件需求文档(word)通过文档识别和结构恢复方法进行识别恢复,基于jacob或apache poi处理方法,将软件需求文档中的文本要素和版面进行抽取输出,并按照原始层次结构进行组织;
[0051]
(2)对于结构化软件需求文档,利用自然语言处理方法结合软件需求知识库对已电子化的软件需求文本进行语义识别和关键词抽取,获取需求要素;再根据需求要素位置、语句、语义以及上下文分析,进行软件需求条目整合;
[0052]
(3)对于非结构化的软件需求文本,基于语义分析、句型分析等方法,将需求文本进行软件需求条目化拆分,并结合文档层次结构和上下文,对软件需求条目进行归类整理和属性设置;
[0053]
(4)根据软件需求条目内容和层次关系,丰富软件需求条目属性,进行软件需求条目层次划分、关系抽取、需求分类等,形成软件需求清单;
[0054]
(5)基于知识图谱构建技术,将软件需求条目进行消岐融合和组织关联,最后进行展示。
[0055]
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0056]
以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。

技术特征:


1.一种结构化文档需求快速识别和条目化组织管理方法,其特征在于,包括如下步骤:步骤1,将结构化或半结构化软件需求文档中的文字元素和版面格式抽离,并按原文或者目标结构进行层次化组织管理;步骤2,基于自然语言识别方法和关键字提取方法,结合软件需求知识库,对已经层次化的软件需求段落文本进行识别,获取需求语句,利用结构信息抽取出需求条目对应的属性候选,利用关联规则挖掘需求属性,并基于实体注意力的深度神经网络实体关系抽取模型抽取需求实体的层次结构和关联关系;步骤3,从需求数据源中提取出需求实体、属性以及实体间的相互关系,形成本体化的知识表达,结合需求条目,基于表达体系抽取实体数据和实体关系,完成需求数据消岐和融合,并将构建好的软件需求知识库以图谱的形式进行展示。2.根据权利要求1所述的结构化文档需求快速识别和条目化组织管理方法,其特征在于,步骤1,将结构化或半结构化软件需求文档中的文字元素和版面格式抽离,并按原文或者目标结构进行层次化组织管理,具体为:基于jacob或apache poi技术将软件需求文档内容进行结构化抽取,对整个软件需求文档从上至下扫描,并对其中的文本和表格进行区分处理,记录文本和表格的位置顺序,其中文档内的标题形成标题条目,文档内的段落形成正文条目。3.根据权利要求1所述的结构化软件需求文档需求快速识别和条目化组织管理方法,其特征在于,步骤2,基于自然语言识别方法和关键字提取方法,结合软件需求知识库,对已经层次化的软件需求段落文本进行识别,获取需求语句,利用结构信息抽取出需求条目对应的属性候选,利用关联规则挖掘需求属性,并基于实体注意力的深度神经网络实体关系抽取模型抽取需求实体的层次结构和关联关系,具体为:(1)需求文本条目化基于自然语言处理语义分析技术,对软件需求文档中的需求文本进行语法、词法、语用、语境分析,将需求文本进行段落拆分;再结合关键字识别技术,对拆分的需求段落进行关键字提取,并结合软件需求知识库,拆分成不同的需求语句,并基于需求语句生成需求文本条目;(2)需求条目属性抽取基于直接属性抽取和基于关联语义链的语义属性抽方法,从多层次多角度的数据源中采集软件需求条目的属性信息,实现对需求条目知识的整体勾画,包括:所属项目、所属模块、需求内容、需求条目来源、对应的文档、需求版本、类型、状态、条目标识、采集人、采集时间、审批人,为需求条目关系的抽取、需求知识的融合、表达提供基础和实现的载体;其中直接属性抽取是利用数据挖掘,从不同来源的结构化、半结构化的软件需求文本中抽取需求条目属性知识,基于关联语义链的语义属性抽取利用实体的关联语义链,抽取与需求条目关联的语义词语作为属性;(3)需求条目关系抽取基于实体注意力的深度神经网络实体关系抽取模型抽取软件需求条目的关系,包括:软件需求条目的分类层次关系、部分-整体关系、相似关系以及属性关系,其中属性关系通过软件需求条目属性抽取的方法得到,部分-整体关系和分类层次关系为软件需求条目的is-a关系,而相似关系是软件需求条目文本的外形相似且具备搜索相关性。
4.根据权利要求3所述的结构化文档需求快速识别和条目化组织管理方法,其特征在于,所述需求条目属性抽取中,对于结构化、半结构化软件需求文本,首先利用结构信息抽取出需求条目对应的属性候选,然后利用关联规则挖掘apriori算法,选取置信度高的候选作为需求条目对应的属性。5.根据权利要求3所述的结构化文档需求快速识别和条目化组织管理方法,其特征在于,所述需求条目属性抽取中,对于软件需求文档中非结构化需求文本,首先利用句法分析对需求文本进行处理,利用实体识别结果、句法分析结果和属性词典产生每个需求条目对应的属性候选,然后融合句法语义特征、候选属性本身的语义特征、候选属性与需求条目间的相对位置特征来对每个候选属性进行打分,分值高的属性候选即为抽取结果。6.根据权利要求3所述的结构化文档需求快速识别和条目化组织管理方法,其特征在于,所述需求条目关系抽取中,基于实体注意力的深度神经网络实体关系抽取模型,首先采用双向lstm对需求实体所在的文本的上下文进行建模,随后利用实体注意力模型对辨别语义关系过程中起不同作用的语义特征分配不同权重,然后将不同需求实体相关特征的计算结果通过softmax归一化映射为每一类语义关系对应的概率。7.一种结构化文档需求快速识别和条目化组织管理系统,其特征在于,基于权利要求1-6任一项所述的结构化文档需求快速识别和条目化组织管理方法,实现结构化软件需求文档中需求的快速识别和条目化组织管理。8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时,基于权利要求1-6任一项所述的结构化文档需求快速识别和条目化组织管理方法,实现结构化软件需求文档)中需求的快速识别和条目化组织管理。9.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,基于权利要求1-6任一项所述的结构化文档需求快速识别和条目化组织管理方法,实现结构化软件需求文档中需求的快速识别和条目化组织管理。

技术总结


本发明提出了一种结构化文档需求快速识别和条目化组织管理方法,将结构化或半结构化软件需求文档中的文字元素和版面格式抽离,并按原文或者目标结构进行层次化组织管理;对已经层次化的需求段落文本进行识别,获取需求语句,利用结构信息抽取出需求条目对应的属性候选,利用关联规则挖掘需求属性,并基于实体注意力的深度神经网络实体关系抽取模型抽取需求实体的层次结构和关联关系;从需求数据源中提取出需求实体、属性以及实体间的相互关系,形成本体化的知识表达,结合需求条目,基于表达体系抽取实体数据和实体关系,完成需求数据消岐和融合,并将构建好的软件需求知识库以图谱的形式进行展示。本发明提高了软件需求分析的效率。的效率。的效率。


技术研发人员:

岳才杰 王洋 付琨 刘亮 陶家顺 许浩 李思宁 潘巧林 王琳 王龙

受保护的技术使用者:

苏州空天信息研究院

技术研发日:

2022.09.13

技术公布日:

2022/12/12

本文发布于:2024-09-24 19:13:38,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/37730.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:需求   条目   软件   语义
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议