【技术实现步骤摘要】
一种软件开发知识库构建与应用方法
[0001]本专利技术涉及软件开发领域,尤其涉及一种软件开发知识库构建与应用方法。
技术介绍
[0002]软件开发(Software development)是根据用户要求建造出软件系统或者系统中的软件部分的过程。它是一项包括需求获取、开发规划、需求分析和设计、编程实现、软件测试、版本控制的系统工程。
[0003]软件开发包括研究、修改、复用、重新设计(再工程)、维护等活动,通常采用软件开发工具进行开发。
[0004]软件程序开发一项工作量、压力都很大的工作,不同开发人员在每个阶段都可能遇到诸多问题,例如:1. 工程师难以有效记录遇到的问题和寻找解决方案;2. 项目沟通成本较高;3. 企业历史项目的源代码及文档无法有效在新的项目中复用;4. 大量的重复性工作;5. 软件开发知识的蒸发和侵蚀;在专利CN201910288422.6公开的用于软件快速开发的检索、复用、环境搭建的系统及方法中,智能化地实现了在软件开发过程中所需的代码检索、代码复用、工具安装、环境搭建、文档检索、文档 ...
【技术保护点】
【技术特征摘要】
1.一种软件开发知识库构建与应用方法,其特征在于,包括:构建软件开发知识库的步骤和应用软件开发知识库得到策略的步骤;所述构建软件开发知识库具体为:步骤1:软件开发知识分类:分析历史问题与解决方案,对企业内部软件开发过程中出现过的历史问题进行分类;步骤2:软件开发知识问答对构建:对企业内部软件开发历史问题及解决方案进行收集,形成标准问答对并长期进行更新维护;步骤3:软件开发知识问答对扩展:总结或基于规则对标准问题进行扩展,从而覆盖问题检索范围;步骤4:软件开发知识问答对标注:对问答对进行意图的标注,每个问答对可以有一个或多个意图标签;步骤5:问题句向量计算:使用Bert计算每个问答对中问题的句向量并记录;步骤6:软件开发知识问答对入库:将步骤4标注完成的问答对以及步骤5计算出的句向量入库到Elasticsearch,自动构建倒排索引;所述应用软件开发知识库得到策略具体为:步骤7:Query预处理:对输入的问题进行预处理;步骤8:Query分析:提取问题中的关键词,并进行拓展分析;步骤9:意图分类,对问题进行分类,得到意图;按照意图标签进行筛选;步骤10:文本召回:对问题进行全文检索,得到文本相关度评分,找到文本相似度前5的问题;步骤11:语义召回:计算当前问题的句向量,对计算得到的句向量和相似度最高的问题的对应句向量分别进行语义相似度计算;步骤12:结果返回:综合文本相关度评分和语义相似度结果,进行加权求和得到相似度前5的问题的最终评分,取最终评分最高的问题作为即将返回的结果。2.根据权利要求1所述的一种软件开发知识库构建与应用方法,其特征在于,所述步骤7具体包括以下子步骤:步骤701:使用常用自然语言处理方式对软件开发工程师输入的问题进行标准化;步骤702:使用jieba分词组件将输入问题进行分词;步骤703:使用pycorrector中文文本纠错工具对问题可能出现的错误进行纠错。3.根据权利要求1所述的一种软件开发知识库构建与应用方法,其特征在于,所述步骤8具体包括以下子步骤:步骤801:使用命名实体识别提取问题中的领域关键字;步骤802:对问...
【专利技术属性】
技术研发人员:张云超,曹亮,王亚强,
申请(专利权)人:成都淞幸科技有限责任公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。