CN115630146A - 基于人机交互的需求文档自动生成方法、装置和存储介质 - Google Patents

基于人机交互的需求文档自动生成方法、装置和存储介质 Download PDF

Info

Publication number
CN115630146A
CN115630146A CN202211235370.4A CN202211235370A CN115630146A CN 115630146 A CN115630146 A CN 115630146A CN 202211235370 A CN202211235370 A CN 202211235370A CN 115630146 A CN115630146 A CN 115630146A
Authority
CN
China
Prior art keywords
sub
requirement
template
conversation
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202211235370.4A
Other languages
English (en)
Inventor
黄翰
高延芳
袁中锦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
South China University of Technology SCUT
Original Assignee
South China University of Technology SCUT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by South China University of Technology SCUT filed Critical South China University of Technology SCUT
Priority to CN202211235370.4A priority Critical patent/CN115630146A/zh
Publication of CN115630146A publication Critical patent/CN115630146A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/34Browsing; Visualisation therefor
    • G06F16/345Summarisation for human users
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/237Lexical tools
    • G06F40/242Dictionaries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Machine Translation (AREA)

Abstract

本发明公开了一种基于人机交互的需求文档自动生成方法、装置和存储介质,其中方法包括:S1、基于预设标准构建与软件需求文档规范对应的对话模板;S2、根据对话模板向用户进行提问,并采集反馈信息;S3、根据反馈信息提取用户消息中的需求信息,并预测响应动作;S4、在响应动作中向对话模板填充需求信息,并根据需求信息构建应答消息;S5、重复步骤S2到S4,直到获得完整的软件描述后停止对话,或者在无法获得新信息时结束对话;S6、根据获取到的信息生成思维导图和符合预设标准的软件需求文档。本发明在模板中加入预设的需求获取问题,对话结束会生成一份格式化的软件需求文档,为需求获取节省人力和时间成本,可广泛应用于文档生成领域。

Description

基于人机交互的需求文档自动生成方法、装置和存储介质
技术领域
本发明涉及文档生成领域,尤其涉及一种基于人机交互的需求文档自动生成方法、装置和存储介质。
背景技术
对话机器人主要有闲聊型、问答型和任务导向型,任务导向型与前两种的主要区别是强调上下文相关,每一轮对话对下一次对话都有影响。按照所采用的技术类型可以将任务导向型人机交互分为基于规则,基于语义解析,数据驱动几种;基于规则的对话***有对话逻辑和对话管理高度耦合的直接实现方法、有基于状态转移的方法,这些方法容易理解、实现速度快,但是为各种场景定义专属的规则会使得***变得庞大,随着对话和任务数量的增加,数据维护和代码维护变得十分困难,复用性也很差。因为语言的多样性和复杂性,单纯依靠逻辑结构和逻辑条件构造的对话***并不能满足实际的对话需要。
随着深度学习的发展,数据驱动的任务导向型人机交互***渐渐被重视,这种类型的对话***采用端到端的方式,主要有四个大的组成部分:自然语言理解,对话状态追踪,对话策略学习,自然语言生成。健壮的对话***需要大量有效标注数据的支撑,随之出现的困难是对人工标注工作的依赖,但是因为理解偏差以及行业知识的缺乏,标注数据通常价格高且成效低。近年的研究大多对会话文本序列进行建模,利用序列模型预测下一时刻的对话,由于对话数据集的匮乏,大多研究被限制在体量较小的餐饮订购、航班查询***中。
尽管相关的自然语言技术和对话***发展已久,但对软件工程工作的回馈甚少。即使要获取软件最初的需求依然要求开发人员花费大量时间引导客户进行软件描述,这其中包括了解释行业名词、固定流程引导等重复的工作。
发明内容
为至少一定程度上解决现有技术中存在的技术问题之一,本发明的目的在于提供种基于人机交互的需求文档自动生成方法、装置和存储介质。
本发明所采用的技术方案是:
一种基于人机交互的需求文档自动生成方法,包括以下步骤:
S1、基于预设标准构建与软件需求文档规范对应的对话模板;
S2、根据对话模板向用户进行提问,并采集反馈信息;
S3、根据反馈信息提取用户消息中的需求信息,并预测响应动作;
S4、在响应动作中向对话模板填充需求信息,并根据需求信息构建应答消息;
S5、重复步骤S2到S4,直到获得完整的软件描述后停止对话,或者在无法获得新信息时结束对话;
S6、根据获取到的信息生成思维导图和符合预设标准的软件需求文档。
进一步地,所述对话模板由不同的子模块组成,每个子模块中对不同的需求标定有需求名称、优先级、获取状态、默认值、提问方式、无效提问次数,所有子模块的集合对应于完整的软件需求文档;
其中,每轮对话中,获取对话模板中的一个子模块进行提问。
进一步地,所述步骤S2,具体包括:
扫描对话模板,获取优先级最高的子模块,且该子模块的状态为未填充或正在填充;
根据获得的子模块对用户进行提问,并采集用户的反馈信息;
其中,完整的对话任务被分割为多个子任务,每个子任务的目标是填充一个对话模板子模块。
进一步地,所述提取用户消息中的需求信息这一步骤,包括构建需求关键词字典、提取需求关键词、提取消息主题三个步骤;
其中,构建需求关键词字典这一步骤包括:在需求文档中提取高频词,构建软件需求领域的关键词,根据软件需求领域文本特点构建关键词类别,根据关键词和关键词类别构建关键词字典;
提取需求关键词这一步骤包括:根据对话模板中缺失的需求信息的提示和需求关键词字典在反馈信息中提取关键词;
提取消息主题这一步骤包括:将消息主题分类为对话模板的不同子模块,根据关键词特征融合提取用户消息主题;
将用户消息主题、关键词的特征和句子文本的特征作为预测响应动作的输入,为用户消息获得准确的响应动作。
进一步地,所述步骤S4包括:
根据消息主题构建提问型应答或知识检索型应答。
进一步地,构建提问型应答这一步骤,包括:
扫描对话模板,获取需要填充的子模块,将需求信息填充到该子模块,并更新子模块的信息获取状态;
重新扫描对话模板,根据该子模块或下一个优先级的子模块构建应答文本,如果该子模块信息过短或仍有缺失,则对该子模块进行补充提问,否则查找下一优先级的子模块;
构建知识检索型应答这一步骤,包括:
根据关键词在构建的软件需求的知识数据库中检索用户请求的知识,将检索到的数据作为应答文本,并在构建完应答后要求对话状态回退到本轮对话之前。
进一步地,所述步骤S4还包括以下步骤:
设置对话模板中的询问次数阈值,当检测到无效提问次数达到询问次数阈值,判定用户无法回答需求,对话将跳过该子模块,查找下一优先级的子模块。
进一步地,所述步骤S5,包括:
将对话模板中每个子模块定义为一个子任务,在若干轮对话后完成一个子任务;
对于一个子任务,若多次无法获得有效的回答,则直接结束并跳过该子任务;
若对话模板扫描结束且无法获得新信息时,结束整个对话任务;
若对话过程中用户要求对话停止,结束整个对话任务。
本发明所采用的另一技术方案是:
一种基于人机交互的需求文档自动生成装置,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上所述方法。
本发明所采用的另一技术方案是:
一种计算机可读存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序在由处理器执行时用于执行如上所述方法。
本发明的有益效果是:本发明在模板中加入预设的需求获取问题,依据模板信息和模板中的需求获取状态向用户发出提问,解析用户意图和消息中的需求信息,对话结束会生成一份格式化的软件需求文档,为需求获取节省人力和时间成本。
附图说明
为了更清楚地说明本发明实施例或者现有技术中的技术方案,下面对本发明实施例或者现有技术中的相关技术方案附图作以下介绍,应当理解的是,下面介绍中的附图仅仅为了方便清晰表述本发明的技术方案中的部分实施例,对于本领域的技术人员而言,在无需付出创造性劳动的前提下,还可以根据这些附图获取到其他附图。
图1是本发明实施例中一种基于人机交互的需求文档自动生成方法的流程图;
图2是本发明实施例中基于对话模板的对话状态的定义的示意图;
图3是本发明实施例中需求获取的对话模板的示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
在本发明的描述中,需要理解的是,涉及到方位描述,例如上、下、前、后、左、右等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
在本发明的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。
本发明的描述中,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本发明中的具体含义。
针对现有技术的问题,本发明提供了一种基于人机交互进行软件需求获取并自动生成软件需求文档的方法。该方法包括根据软件需求文档设计针对需求获取的对话模板,并在模板中加入预设的需求获取问题,依据模板信息和模板中的需求获取状态向用户发出提问,通过上下文相关的多轮对话引导用户表述详细的、完整的软件需求,解析用户意图和消息中的需求信息,根据解析结果与当前对话状态预测应答方法,在应答方法中将需求信息填入对话模板的目标位置、更新需求的获取状态。对话引导在提问用户的同时可以回答用户上下文无关的闲聊,该方法还提供建模语言和思维导图形式的解析帮助用户梳理需求,对话结束会生成一份格式化的软件需求文档,为需求获取节省人力和时间成本。
如图1所示,本实施例提供一种基于人机交互的需求文档自动生成方法,包括以下步骤:
S101、基于预设标准构建与软件需求文档规范对应的对话模板。
在本实施例中,该预设标准为ISO标准,根据ISO做出的软件需求标准说明构建对话模板,在对话模板中对不同的需求标定明确的需求名称、优先级、获取状态、默认值、提问方式、无效提问次数,以固定格式存储在数据库,该标准对话模板对应于软件需求文档。完整的对话是一个任务,这个任务分割为多个子任务,没个子任务是一个多轮对话,每个子任务针对模板中的一个模块进行提问。
S102、根据对话模板向用户进行提问,并采集反馈信息。
作为可选的实施方式,使用思维导图给出对话提示,用前端组件将对话框架用思维导图的方式展示给用户,将对话逻辑转为图形便于用户理解。
针对对话模板中优先级最高的未获取需求向用户提问,扫描对话模板中所有子模块,选取优先级最高的状态为未填充或正在填充的子模块,人机交互围绕这个子模块的信息进行,按照子模块提供的问题样式对这个子模块中缺失的信息进行提问。完整的对话任务被分割为多个子任务,每个子任务的目标是填充一个对话模板子模块。
S103、根据反馈信息提取用户消息中的需求信息,并预测响应动作。
提取用户消息中的需求信息并预测响应动作,提取需求信息分为构建需求关键词字典、提取需求关键词、提取消息主题三个模块,响应动作依据提取的需求信息预测。构建需求关键词字典在大量需求文档中提取高频词构建软件需求领域的关键词,依据软件需求领域文本特点构建关键词类别,关键词和关键词类别共同构建关键词字典;提取需求关键词模块依据对话模板的需求空缺和需求关键词字典在消息中提取关键词;提取消息主题模块将消息主题分类为对话模板的不同子模块,根据关键词特征融合提取用户消息的主题。将用户消息主题、关键词特征和句子文本特征作为预测响应动作的输入,为用户消息获得准确的响应动作。
S104、在响应动作中向对话模板填充需求信息,并根据需求信息构建应答消息。
在响应动作中向对话模板填充需求信息并依据对话模板构建应答消息,有两种构建方式,一是依据消息主题构建提问型应答,二是构建知识检索型应答。依据消息主题构建提问型问答需要扫描对话模板获取需要填充的子模块,将需求信息填充到该子模块,并更新子模块的信息获取状态;重新扫描对话模板,从该子模块或下一个优先级的子模块构建应答文本,如果该子模块信息过短或仍有缺失则对该子模块进行补充提问,否则查找下一优先级的子模块。构建知识检索型应答需要依据关键词在提前构建好的软件需求知识数据库中检索用户请求的知识,将检索到的数据作为应答文本,并在构建完应答后要求对话状态回退到本轮对话之前。
S105、若用户多次无法应答消息,则跳过该需求询问。
若用户多次无法应答消息则跳过该需求询问,对话模板需要提问的需求都被设置询问次数阈值,如果用户的回答中没有提取到有效需求信息,那么这个提问属于无效提问,当无效提问次数达到该阈值,则认为用户无法回答该需求,对话将跳过该模块,查找下一优先级的子模块。
S106、重复步骤S102到S105直到获得完整的软件描述后停止对话,或者在无法获得新信息时结束对话。
将对话模板中每个子模块定义为一个子任务,如果用户在若干轮对话后完成一个子任务,则该子任务成功结束,如果用户多次答非所问则将直接结束并跳过该子任务;按照对话模板中设定的需求优先级依次完成各个子任务,对话模板扫描结束后结束整个对话任务,对话过程中用户要求对话停止也会使对话任务结束。
S107、根据获取到的信息生成思维导图和符合预设标准的软件需求文档。
将获取到的信息生成一份符合ISO标准的软件需求文档,根据ISO标准软件说明规格书的格式将对话模板中收集的信息生成为一份包含软件用户角色、约束、功能需求、非功能需求等信息的需求文档。结束对话后将该结果以思维导图的形式在前端详细展示出来,使对话过程和对话内容可视化,方便用户修改更新。
以下结合附图及具体实施例对上述方法进行详细解释说明。
如图1所示,本实施例提供一种基于人机交互的需求文档自动生成方法,本实施例中构建了管道方式的人机交互模型,将意图识别、实体抽取、策略选择在一个流程中依次实现,模块间信息共享,以此提高每个对话轮次的准确性。首先,为使得使用者更好的理解本发明实施例的操作方式,在对话前,本发明实施例使用思维导图的方式展示需要与用户交互的需求信息的提纲,给予简单的提示引导用户提出定制软件的需求。该方法具体包括以下步骤:
第一步,构建对话模板并展示。
根据ISO做出的软件需求标准说明构建对话模板,在对话模板中对不同的需求标定明确的需求名称、优先级、获取状态、默认值、提问方式、无效提问次数,如图2所示。对话模板以固定格式存储在数据库,该标准对话模板对应于软件需求文档。
获取对话模板前扫描模板以检查对话模板中各子模块的格式准确性和优先级准确性。扫描模板将依据需求优先级和需求状态获取当前任务需要关注的子模块内容和子模块位置,填充模板依据子模块路径填充更新的需求内容并更新需求获取状态。将对话模板的逻辑以思维导图的样式在前端展示。
第二步,扫描模板获取最高优先级的未获取或正在获取的需求。
遍历模板,同等级下优先级最高的需求选择为当前任务,返回子模块的路径和子模块信息,依据子模块中的预置问题和需求获取状态构建问题,向用户返回应答消息。
第三步,提取用户消息中的需求信息。
本发明实施例根据软件描述领域文本的特点,给出特定意图如定制软件、描述实体关系、描述功能、描述***用户、询问建模定义、描述兼容性、描述响应时间、描述安全性、描述稳定性等,以及辅助对话的意图如确认、否认等。用BERT的预训练模型对用户的消息文本构建词向量,生成话语嵌入,通过一个卷积神经网络后,将输出输入到一个全连接层,全连接层的输出经过Softmax获得预测到的用户意图。在识别用户意图时,本发明实施例设置了一个最低置信阈值,低于该阈值的意图将被归类为超出预测范围,在用户发送无关闲聊时,本发明会提示用户重新表达。
根据本实施例的应用领域,给出了一个目标实体,包括***用户、功能名称、软件名称等,提取关键需求信息和槽值通过抽取命名实体获得。使用BERT预训练模型构建用户消息的字向量,将字向量作为一个双向长短期记忆网络的输入,预测每个字的标签分类,经过条件随机场约束后去准确的实体标签,将获取到的槽值填充到槽。
如图3所示,依据软件需求领域文本的特点构建出的关键词元素表,抽取用户消息中的关键词,如“崩溃”、“权限”等,将关键词嵌入、话语嵌入、槽值、用户意图、上一个时间步的响应动作进行拼接构建为对话状态特征。其中关键实体特征并不表达具体的值,它只关注实体的类别和实体是否被获取到,以及实体存在的置信度。在首次对话时,上一个时间步的响应动作默认为等待用户消息的动作。本发明为每个用户动作创建一个追踪器,记录用户消息的文本、意图和实体等信息以及相关置信值,追踪器会在这个时间步里传递它记录的信息。
第四步,选择响应动作,填充模板,构建完整的回复。
本发明实施例将对话状态表示放入一个长短期记忆网络计算出当前的历史对话状态,在与动作掩码相乘后过滤掉不合法的动作,经过一个Softmax层后归一化为概率分布,概率最大的结果即为响应动作。选择正确的响应动作之后,先填充模板,然后构建详细的、完整的回复。扫描模板,获取需要填充的子模块,将获取到的信息填充到该子模块,更新状态,如果用户消息中没有有效的需求信息,无效提问次数将加一。如果机器人给用户的回复中涉及实体,将实体与设计好的回复模板结合生成完整的回复,该回复的模板依据由对话模板中缺失的信息决定;如果是不需要补充信息的响应动作,则直接回复对应的回复模板。
第五步,依次完成子任务。
重复第二步到第四步,直到获得完整的软件描述后停止或在无法获得新信息时结束对话,按照对话模板中设定好的需求优先级依次完成每个子任务,用户顺利完成一个多轮对话将结束本子任务,用户多次答非所问将跳过本子任务,用户要求对话停止时将结束整个对话任务,对话模板扫描结束且无法获得新信息时结束对话完成整个对话任务。
第六步,生成软件需求文档。
在完整的对话结束后,将会把收集到的信息以指定软件需求模板的格式生成一份文字为主的文档,本发明实施例使用ISO1998软件需求规格说明文档的标准,文档中将展示定制软件的必要信息,并包含相关的建模语言图片,并在需要人工添加信息的章节给出文字提示。最后,本发明实施例也会给出一份思维导图,将对话以可视化方式展现出来。
本实施例还提供一种基于人机交互的需求文档自动生成装置,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现图1所示方法。
本实施例的一种基于人机交互的需求文档自动生成装置,可执行本发明方法实施例所提供的一种基于人机交互的需求文档自动生成方法,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
本申请实施例还公开了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行图1所示的方法。
本实施例还提供了一种存储介质,存储有可执行本发明方法实施例所提供的一种基于人机交互的需求文档自动生成方法的指令或程序,当运行该指令或程序时,可执行方法实施例的任意组合实施步骤,具备该方法相应的功能和有益效果。
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或所述方框有时能以相反顺序被执行。此外,在本发明的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
此外,虽然在功能性模块的背景下描述了本发明,但应当理解的是,除非另有相反说明,所述的功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本发明是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本发明。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本发明的范围,本发明的范围由所附权利要求书及其等同方案的全部范围来决定。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行***、装置或设备(如基于计算机的***、包括处理器的***或其他可以从指令执行***、装置或设备取指令并执行指令的***)使用,或结合这些指令执行***、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行***、装置或设备或结合这些指令执行***、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的上述描述中,参考术语“一个实施方式/实施例”、“另一实施方式/实施例”或“某些实施方式/实施例”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施方式,本领域的普通技术人员可以理解:在不脱离本发明的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本发明的范围由权利要求及其等同物限定。
以上是对本发明的较佳实施进行了具体说明,但本发明并不限于上述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

Claims (10)

1.一种基于人机交互的需求文档自动生成方法,其特征在于,包括以下步骤:
S1、基于预设标准构建与软件需求文档规范对应的对话模板;
S2、根据对话模板向用户进行提问,并采集反馈信息;
S3、根据反馈信息提取用户消息中的需求信息,并预测响应动作;
S4、在响应动作中向对话模板填充需求信息,并根据需求信息构建应答消息;
S5、重复步骤S2到S4,直到获得完整的软件描述后停止对话,或者在无法获得新信息时结束对话;
S6、根据获取到的信息生成思维导图和符合预设标准的软件需求文档。
2.根据权利要求1所述的一种基于人机交互的需求文档自动生成方法,其特征在于,所述对话模板由不同的子模块组成,每个子模块中对不同的需求标定有需求名称、优先级、获取状态、默认值、提问方式、无效提问次数,所有子模块的集合对应于完整的软件需求文档;
其中,每轮对话中,获取对话模板中的一个子模块进行提问。
3.根据权利要求2所述的一种基于人机交互的需求文档自动生成方法,其特征在于,所述步骤S2,具体包括:
扫描对话模板,获取优先级最高的子模块,且该子模块的状态为未填充或正在填充;
根据获得的子模块对用户进行提问,并采集用户的反馈信息;
其中,完整的对话任务被分割为多个子任务,每个子任务的目标是填充一个对话模板子模块。
4.根据权利要求1所述的一种基于人机交互的需求文档自动生成方法,其特征在于,所述提取用户消息中的需求信息这一步骤,包括构建需求关键词字典、提取需求关键词、提取消息主题三个步骤;
其中,构建需求关键词字典这一步骤包括:在需求文档中提取高频词,构建软件需求领域的关键词,根据软件需求领域文本特点构建关键词类别,根据关键词和关键词类别构建关键词字典;
提取需求关键词这一步骤包括:根据对话模板中缺失的需求信息的提示和需求关键词字典在反馈信息中提取关键词;
提取消息主题这一步骤包括:将消息主题分类为对话模板的不同子模块,根据关键词特征融合提取用户消息主题;
将用户消息主题、关键词的特征和句子文本的特征作为预测响应动作的输入,为用户消息获得准确的响应动作。
5.根据权利要求4所述的一种基于人机交互的需求文档自动生成方法,其特征在于,所述步骤S4包括:
根据消息主题构建提问型应答或知识检索型应答。
6.根据权利要求5所述的一种基于人机交互的需求文档自动生成方法,其特征在于,构建提问型应答这一步骤,包括:
扫描对话模板,获取需要填充的子模块,将需求信息填充到该子模块,并更新子模块的信息获取状态;
重新扫描对话模板,根据该子模块或下一个优先级的子模块构建应答文本,如果该子模块信息过短,则对该子模块进行补充提问,否则查找下一优先级的子模块;
构建知识检索型应答这一步骤,包括:
根据关键词在构建的软件需求的知识数据库中检索用户请求的知识,将检索到的数据作为应答文本,并在构建完应答后要求对话状态回退到本轮对话之前。
7.根据权利要求1所述的一种基于人机交互的需求文档自动生成方法,其特征在于,所述步骤S4还包括以下步骤:
设置对话模板中的询问次数阈值,当检测到无效提问次数达到询问次数阈值,判定用户无法回答需求,对话将跳过该子模块,查找下一优先级的子模块。
8.根据权利要求1所述的一种基于人机交互的需求文档自动生成方法,其特征在于,所述步骤S5,包括:
将对话模板中每个子模块定义为一个子任务,在若干轮对话后完成一个子任务;
对于一个子任务,若多次无法获得有效的回答,则直接结束并跳过该子任务;
若对话模板扫描结束且无法获得新信息时,结束整个对话任务;
若对话过程中用户要求对话停止,结束整个对话任务。
9.一种基于人机交互的需求文档自动生成装置,其特征在于,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现权利要求1-8任一项所述方法。
10.一种计算机可读存储介质,其中存储有处理器可执行的程序,其特征在于,所述处理器可执行的程序在由处理器执行时用于执行如权利要求1-8任一项所述方法。
CN202211235370.4A 2022-10-10 2022-10-10 基于人机交互的需求文档自动生成方法、装置和存储介质 Pending CN115630146A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211235370.4A CN115630146A (zh) 2022-10-10 2022-10-10 基于人机交互的需求文档自动生成方法、装置和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211235370.4A CN115630146A (zh) 2022-10-10 2022-10-10 基于人机交互的需求文档自动生成方法、装置和存储介质

Publications (1)

Publication Number Publication Date
CN115630146A true CN115630146A (zh) 2023-01-20

Family

ID=84905370

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211235370.4A Pending CN115630146A (zh) 2022-10-10 2022-10-10 基于人机交互的需求文档自动生成方法、装置和存储介质

Country Status (1)

Country Link
CN (1) CN115630146A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117348922A (zh) * 2023-11-06 2024-01-05 中国海洋大学 一种物联网应用软件配置的对话交互式生成方法
CN117493530A (zh) * 2023-12-27 2024-02-02 苏州元脑智能科技有限公司 资源需求分析方法、装置、电子设备以及存储介质
CN117611205A (zh) * 2023-10-27 2024-02-27 北京七麦科技股份有限公司 基于大数据的数据分析方法、装置及存储介质
CN117725190A (zh) * 2024-02-18 2024-03-19 粤港澳大湾区数字经济研究院(福田) 基于大语言模型的多轮问答方法、***、终端及存储介质

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117611205A (zh) * 2023-10-27 2024-02-27 北京七麦科技股份有限公司 基于大数据的数据分析方法、装置及存储介质
CN117611205B (zh) * 2023-10-27 2024-05-14 北京七麦科技股份有限公司 基于大数据的数据分析方法、装置及存储介质
CN117348922A (zh) * 2023-11-06 2024-01-05 中国海洋大学 一种物联网应用软件配置的对话交互式生成方法
CN117493530A (zh) * 2023-12-27 2024-02-02 苏州元脑智能科技有限公司 资源需求分析方法、装置、电子设备以及存储介质
CN117493530B (zh) * 2023-12-27 2024-03-22 苏州元脑智能科技有限公司 资源需求分析方法、装置、电子设备以及存储介质
CN117725190A (zh) * 2024-02-18 2024-03-19 粤港澳大湾区数字经济研究院(福田) 基于大语言模型的多轮问答方法、***、终端及存储介质
CN117725190B (zh) * 2024-02-18 2024-06-04 粤港澳大湾区数字经济研究院(福田) 基于大语言模型的多轮问答方法、***、终端及存储介质

Similar Documents

Publication Publication Date Title
Uc-Cetina et al. Survey on reinforcement learning for language processing
CN111026842B (zh) 自然语言处理方法、自然语言处理装置及智能问答***
EP3507709B1 (en) Automating natural language task/dialog authoring by leveraging existing content
CN115630146A (zh) 基于人机交互的需求文档自动生成方法、装置和存储介质
US10747651B1 (en) System for optimizing system resources and runtime during a testing procedure
US7685082B1 (en) System and method for identifying, prioritizing and encapsulating errors in accounting data
US11281862B2 (en) Significant correlation framework for command translation
EP1672537A2 (en) Data semanticizer
López et al. From process models to chatbots
US10977155B1 (en) System for providing autonomous discovery of field or navigation constraints
KR20080107383A (ko) 사람과 기계 간의 직관적인 상호작용을 용이하게 해주는 시스템, 통계-기반 상호작용을 용이하게 해주는 컴퓨터 실행가능 시스템 및 사용자 입력에 반응하는 컴퓨터 구현 방법
Sonntag Ontologies and adaptivity in dialogue for question answering
CN116737908A (zh) 知识问答方法、装置、设备和存储介质
CN114547072A (zh) 自然语言查询转换sql方法、***、设备及存储介质
JP2022020543A (ja) 技能用語評定方法および装置、電子機器、コンピュータ読み取り可能な媒体
Zheng et al. BIM-GPT: a prompt-based virtual Assistant framework for BIM information retrieval
CN113239698A (zh) 基于rpa及ai的信息提取方法、装置、设备及介质
AU2019290658B2 (en) Systems and methods for identifying and linking events in structured proceedings
Allen et al. Conversational agents for complex collaborative tasks
Li et al. A new fuzzy ontology development methodology (FODM) proposal
CN116186219A (zh) 一种人机对话交互方法方法、***及存储介质
CN115905490A (zh) 人机交互对话方法、装置以及设备
Zamanirad Superimposition of natural language conversations over software enabled services
CN114691820A (zh) 一种基于知识图谱的问答实现方法及装置
WO2017059500A1 (en) Frameworks and methodologies configured to enable streamlined integration of natural language processing functionality with one or more user interface environments, including assisted learning process

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination