本发明涉及软件评估领域,尤其涉及一种软件工作量评估方法、装置、电子设备及计算机可读存储介质。
背景技术:
1、软件评估就是对软件的规模、软件项目工作量、软件项目开发成本、软件质量、软件有效收益、软件维护成本和升级能力等事项进行量化考核,给出一个数字化维度的评估结果。
2、随着企业数字化转型的推进,在现代企业的信息化架构中,基于云化、微服务化的中台架构越来越受青睐。特别是在软件开发行业中,软件的需求、质量、开发周期都存在一定不稳定性,很多软件系统开发不再仅仅是基于自身功能的开发完善,还有涉及跨系统业务流程的拉通、基于微服务能力提供或调用,缺少数字化、智能化的手段,较大程度依赖于人工对项目工作量进行评估,存在人为误差,造成软件工作量评估准确率不高的问题。
3、因此,如何提高软件工作量评估的准确率,是目前有待解决的技术问题。
技术实现思路
1、本发明提供一种软件工作量评估方法、装置、电子设备及计算机可读存储介质,以至少解决相关技术中由于对软件评估缺少数字化、智能化的手段,需要依赖人对项目进行评估,存在人为误差,导致软件工作量评估准确率较低的问题。本发明的技术方案如下:
2、根据本发明实施例的第一方面,提供一种软件工作量评估方法,所述软件工作量评估方法包括:
3、获取当前计划建设项目中所有功能点的清单;
4、基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量;其中,所述历史项目评估智能知识库,是基于工作量评估标准对获取的历史项目功能点评估信息进行向量化处理,并对向量化处理后得到项目语料数据进行训练得到的;
5、汇总所有功能点对应的工作量,得到所述当前计划建设项目的工作量。
6、可选的,所述基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量,包括:
7、从历史项目功能点评估信息是否查找到与所述清单中每个功能点的功能点描述、功能点类型和功能操作子类相关的历史项目功能点评估信息;
8、若查找到相关内容,则将查找到的相关内容与对应功能点的内容进行功能相似度判断;
9、在相似度判断结果满足预设阈值时,逐项估算满足预设阈值的功能点对应的工作量;
10、将所有功能点对应的工作量进行汇总,得到所述当前计划建设项目的工作量。
11、可选的,所述基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量,还包括:
12、若没有查找到相关内容,则继续判断每个功能点的功能点类型、功能点子类和复杂度等级是否均与功能点评估标准字典相匹配;
13、如果均相匹配,则对功能点描述和复杂度等级相匹配进行分析,继续判断每个功能点的功能点描述、复杂度说明、复杂度等级是否均一致;
14、若一致,则逐项估算一致的功能点对应的工作量;
15、将所有功能点对应的工作量进行汇总,得到所述当前计划建设项目的工作量。
16、可选的,在基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量之前,所述方法还包括:按照下述方式预先建立工作量评估模型,制定工作量评估标准:
17、对所述各功能点工作量评估的影响因素进特征分析;
18、根据特征分析结果,建立各功能点的工作量评估模型;
19、基于所述工作量评估模型,按照各功能点类型,分别对界面类、业务逻辑类、接口类、流程类、报表类、数据处理类、实施类和推广类制定对应的工作量评估标准。
20、可选的,所述根据特征分析结果,建立各功能点的工作量评估模型,包括:
21、利用改进后的功能点fpa分析法,根据特征分析结果,建立各功能点的工作量评估模型,所述工作量评估模型包括:功能模块名称,功能描述,功能点类型,功能点子类,复杂度等级和工作量标准评定。
22、可选的,在基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量之前,所述方法还包括:按照下述方式预先建立历史项目评估智能知识库:
23、获取历史项目功能点评估信息;
24、基于工作量评估标准,对所述历史项目功能点信息进行向量化处理,得到项目语料数据;
25、对所述项目语料数据进行训练,得到历史项目评估智能知识库。
26、可选的,基于所述工作量评估模型,对所述历史项目功能点信息进行向量化处理,得到项目语料数据,包括:
27、基于所述工作量评估模型,对所述历史项目功能点信息进行预处理;
28、对预处理后的所述历史项目功能点评估信息进行向量化处理,得到项目语料数据。
29、可选的,对所述项目语料数据进行训练,得到历史项目评估智能知识库,包括:
30、对所述项目语料数据进行训练,生成训练数据文件;
31、对所述训练数据文件进行文本分割和文本向量化,得到历史项目评估智能知识库。
32、可选的,对所述项目语料数据进行训练,生成训练数据文件,包括:
33、按照设定规则,将所述项目语料数据中的每一列的数据进行字符串拼接,并拼接成问题和答案作为输出;
34、将所述问题拼接上提示词和已知信息组装成输入,其中,所述提示词是固定值,所述已知信息是依据所述问题去向量库中查询得到的结果;
35、将所述输入和所述输出转成字典对象,并添加到数组中;
36、将所述数组写入到文件中,生成训练数据文件,其中,所述训练数据文件包括:多个字典对象组成的数组,每个字典对象都包括问题输入和答案输出。
37、可选的,所述获取当前计划建设项目中所有功能点的清单包括:
38、获取当前计划建设项目的所有功能点的清单;
39、读取所述清单中所有功能点的内容;
40、对所述清单中所有功能点的内容进行文本分割和文本向量化,生成所述当前计划建设项目中所有功能点的查询向量库。
41、根据本发明实施例的第二方面,提供一种软件工作量评估装置,所述软件工作量评估装置包括:
42、获取模块,用于获取当前计划建设项目中所有功能点的清单;
43、预估模块,用于基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量;其中,所述历史项目评估智能知识库,是基于工作量评估标准对获取的历史项目功能点评估信息进行向量化处理,并对向量化处理后得到项目语料数据进行训练得到的;
44、统计模块,用于汇总所有功能点对应的工作量,得到所述当前计划建设项目的工作量。
45、可选的,所述预估模块包括:
46、第一判断模块,用于判断从历史项目功能点评估信息是否查找到与所述清单中每个功能点的功能点描述、功能点类型和功能操作子类相关的历史项目功能点评估信息;
47、第二判断模块,用于在所述第一判断模块判断查找到与所述清单中每个功能点的功能点描述、功能点类型和功能操作子类相关的历史项目功能点评估信息时,则将查找到的所述历史项目功能点评估信息与向量库中对应功能点的内容进行功能相似度判断;
48、第一逐项估算模块,用于在第二判断模块判定相似度判断结果满足预设阈值时,逐项估算满足预设阈值的功能点对应的工作量;
49、第一汇总模块,用于将所有功能点对应的工作量进行汇总,得到所述当前计划建设项目的工作量。
50、可选的,所述预估模块还包括:
51、第三判断模块,用于在所述第一判断判定从历史项目功能点评估信息没有查找到与所述清单中每个功能点的功能点描述、功能点类型和功能操作子类相关的历史项目功能点评估信息,则继续判断每个功能点的功能点类型、功能点子类和复杂度等级是否均与功能点评估标准字典相匹配;
52、分析模块,用于在所述第三判断模块判断均相匹配时,对功能点描述和复杂度等级相匹配进行分析;
53、第四判断模块,用于根据所述分析模块的分析结果,继续判断每个功能点的功能点描述、复杂度说明、复杂度等级是否均一致;
54、第二逐项估算模块,用于在第四判断模块判定一致时,逐项估算一致的功能点对应的工作量;
55、第二汇总模块,用于将所有功能点对应的工作量进行汇总,得到所述当前计划建设项目的工作量。
56、可选的,所述装置还包括:第一建立模块,用于在所述评估模块基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量之前,按照下述方式预先建立工作量评估模型,制定工作量评估标准。
57、可选的,所述第一建立模块包括:
58、特征分析模块,用于对各功能点工作量评估的影响因素进特征分析;
59、评估模型建立模块,根据特征分析结果,建立各功能点的工作量评估模型;
60、评估标准制定模块,用于基于所述工作量评估模型,按照各功能点类型,分别对界面类、业务逻辑类、接口类、流程类、报表类、数据处理类、实施类和推广类制定对应的工作量评估标准。
61、可选的,所述评估模型建立模块,具体用于利用改进后的功能点fpa分析法,根据特征分析结果,建立各功能点的工作量评估模型,所述工作量评估模型包括:功能模块名称,功能描述,功能点类型,功能点子类,复杂度等级和工作量标准评定。
62、可选的,所述装置还包括:第二建立模块,用于在所述评估模块基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量之前,预先建立历史项目评估智能知识库。
63、可选的,所述第二建立模块,包括:
64、信息获取模块,用于获取历史项目功能点评估信息;
65、向量化处理模块,用于基于工作量评估标准,对所述历史项目功能点信息进行向量化处理,得到项目语料数据;
66、训练模块,用于对所述项目语料数据进行训练,得到历史项目评估智能知识库。
67、可选的,所述向量化处理模块,包括:
68、预处理模块,用于基于所述工作量评估模型,对所述历史项目功能点信息进行预处理;
69、向量化处理子模块,用于对预处理后的所述历史项目功能点评估信息进行向量化处理,得到项目语料数据。
70、可选的,所述训练模块,包括:
71、文件生成模块,用于对所述项目语料数据进行训练,生成训练数据文件;
72、分割向量化模块,用于对所述训练数据文件进行文本分割和文本向量化,得到历史项目评估智能知识库。
73、可选的,所述文件生成模块包括:
74、拼接模块,用于按照设定规则,将所述项目语料数据中的每一列的数据进行字符串拼接,并拼接成问题和答案作为输出;
75、组装模块,用于将所述问题拼接上提示词和已知信息组装成输入,其中,所述提示词是固定值,所述已知信息是依据所述问题去向量库中查询得到的结果;
76、添加模块,用于将所述输入和所述输出转成字典对象,并添加到数组中;
77、训练文件生成模块,用于将所述数组写入到文件中,生成训练数据文件,其中,所述训练数据文件包括:多个字典对象组成的数组,每个字典对象都包括问题输入和答案输出。
78、可选的,所述获取模块包括:
79、清单获取模块,用于获取当前计划建设项目的所有功能点的清单;
80、内容读取模块,用于读取所述清单中所有功能点的内容;
81、向量库生成模块,用于对所述清单中所有功能点的内容进行文本分割和文本向量化,生成所述当前计划建设项目中所有功能点的查询向量库。
82、根据本发明实施例的第三方面,提供一种电子设备,包括:
83、处理器;
84、用于存储所述处理器可执行指令的存储器;
85、其中,所述处理器被配置为执行所述指令,以实现如上所述的软件工作量评估方法。
86、根据本发明实施例的第四方面,提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如上所述的软件工作量评估方法。
87、根据本发明实施例的第五方面,提供一种计算机程序产品,包括计算机程序或指令,所述计算机程序或指令被电子设备的处理器执行时实现如上所述的软件工作量评估方法。
88、本发明的实施例提供的技术方案至少带来以下有益效果:
89、本发明实施例中,获取当前计划建设项目中所有功能点的清单;基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量;所述历史项目评估智能知识库,是基于工作量评估标准对获取的历史项目功能点评估信息进行向量化处理,并对向量化处理后得到项目语料数据进行训练得到的;汇总所有功能点对应的工作量,得到所述当前计划建设项目的工作量。本发明基于建立的历史项目评估智能知识库,对所述清单中每个功能点的内容进行智能查重和匹配分析,逐项估算出每个功能点对应的工作量,提高了软件工作量评估准确率。
90、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
1.一种软件工作量评估方法,其特征在于,所述软件工作量评估方法包括:
2.根据权利要求1所述的软件工作量评估方法,其特征在于,所述基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量,包括:
3.根据权利要求1或2所述的软件工作量评估方法,其特征在于,所述基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量,还包括:
4.根据权利要求1所述的软件工作量评估方法,其特征在于,在基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量之前,所述方法还包括:按照下述方式预先建立工作量评估模型,制定工作量评估标准:
5.根据权利要求4所述的软件工作量评估方法,其特征在于,所述根据特征分析结果,建立各功能点的工作量评估模型,包括:
6.根据权利要求1或4所述的软件工作量评估方法,其特征在于,在基于历史项目评估智能知识库,对所述清单中每个功能点的内容进行查重和匹配分析,逐项估算出每个功能点对应的工作量之前,所述方法还包括:按照下述方式预先建立历史项目评估智能知识库:
7.根据权利要求6所述的软件工作量评估方法,其特征在于,基于所述工作量评估模型,对所述历史项目功能点信息进行向量化处理,得到项目语料数据,包括:
8.根据权利要求6所述的软件工作量评估方法,其特征在于,对所述项目语料数据进行训练,得到历史项目评估智能知识库,包括:
9.根据权利要求8所述的软件工作量评估方法,其特征在于,对所述项目语料数据进行训练,生成训练数据文件,包括:
10.根据权利要求1所述的软件工作量评估方法,其特征在于,所述获取当前计划建设项目中所有功能点的清单包括:
11.一种软件工作量评估装置,其特征在于,所述软件工作量评估装置包括:
12.一种电子设备,其特征在于,包括:
13.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至10中任一项所述的软件工作量评估方法。