一种软件开发相关进度管理方法及系统与流程

allin2026-02-06  8


本发明涉及软件开发,特别涉及一种软件开发相关进度管理方法及系统。


背景技术:

1、软件开发指的是依据客户需求建造出软件系统或者系统中的软件部分的过程,然而,无论是软件开发或是其他程序的成功,都离不开程序管理,目前,国内的软件开发程序发展如火如荼,却在程序管理上存在一定的硬伤:程序管理一般都由程序经理来统一管理,程序经理通常会凭借自己的主观来判断技术人员能力,分配不同的任务给他们,往往会造成人力资源分配不均匀的现象,导致缺乏技术人员时程序经理需要亲自上手维护开发软件,从而忽略了其它方面的管理,拖慢了整个软件开发程序的实施进度。

2、目前,现有专利申请号:“cn202010943221.8”的中国专利中公开了一种优化软件开发中程序管理的方法及系统,包括:步骤m1:录入程序迭代涉及的功能点及对应的开发需求;步骤m2:使用apriori算法检测开发需求中遗漏的代码变动点并智能提醒;步骤m3:使用k-means算法将关联度达到预设状态的开发需求聚类输出开发计划安排;步骤m4:确认开发计划安排并实施,对开发计划安排及遗漏的代码变动点作出评价;步骤m5:根据对开发计划安排及遗漏的代码变动点作出的评价对apriori算法和k-means算法参数作出调整。虽然通过算法将所需开发软件与历史数据进行结合,再给出开发数据,但是在实际使用的过程中,这也只是起到方法也只是起到参考的作用,整个软件开发还是以项目人员重新编码为主,所以该方式对整个软件开发所起到的作用微乎其微,无法有效提升系统开发的效率;另外,现有专利申请号:“cn202210248898.9”的中国专利中公开了一种基于软件开发的程序管理系统,包括:客户终端、核心需求调研模块、人力资源分配模块、需求变更预测模块、软件开发交互模块和变更应急处理模块,通过核心需求调研模块提取客户在终端描述的需求关键词,通过人力资源分配模块依据开发程序难度系数和参与人员的技术能力系数综合分配合适的技术人员参与到软件开发程序的对应阶段中,依据历史成功案例预测客户会在后期变更或新增的需求内容,提取关联需求关键词并制定相关实施方案,确认用户是否需要新增需求,若需要,将新增需求关键词和关联需求关键词依据词移距离进行匹配,将匹配成功的关联需求关键词的制定方案实施到当前程序中,虽然在软件开发的过程中起到一定的作用,但是其侧重点还是在于软件开发过程中遇到的状况,例如,需求调整、需求增加等,所以无法针对软件开发过程中的人员管理、进度管理以及开发效率等进行优化,导致任务安排不合理。

3、但在上述技术方案实施的过程中,发现至少存在如下技术问题:

4、现有的软件开发管理系统在使用时,主要针对的是如何研发过程中的情况进行调整(例如,当客户的需求调整或者增加时,需要临时组件项目人员制定调整策略),而对于原始程序的分配以及程序分配时的影响情况,只能依靠程序经理自身的经验调整以及对所属项目组人员的了解进行制定方案,但是由于所开发程序的不确定性、项目人员的不确定性以及项目人员的不确定性,导致安排时会出现各种问题,例如,任务分配不合理,效率低的项目人员却分配到完成难度较高的程序,或是能力较强的项目人员却分到难度较低的程序等,这就导致光是在任务安排上就需要花费大量的时间和精力进行调整,且严重影响任务安排的合理性以及有效性,其次,由于程序前期的分配不合理(影响工资结算的认定),且被拆分后的程序之间存在相互联系,导致后续组合调整时,需要所有相关项目人员逐一排查,又由于软件开发的人员不同,且编程的方式不同,这些都会导致后续组合难度的增大,所以系统开发的前期规划至关重要,为此,我们提出一种软件开发相关进度管理方法及系统。


技术实现思路

1、(一)解决的技术问题

2、针对现有技术的不足,本发明提供了一种软件开发相关进度管理方法及系统,本发明通过在软件开发前将程序按照需求和类型分割成开发项目集以及开发项目集内部的开发项目子集,从而“化整为零”,方便将开发程序按照个人所能完成的工作量进行分配,同时在后续程序检验的过程中,也能逐一排查各个程序之间的适配情况,方便根据情况给出相应的调整方案,其次,通过结合现有项目人员的开发能力以及分化后程序在整个程序的影响情况,生成一个能够直观判断软件开发影响系数的开发影响系数wdygz,由此为后续项目人员的分配提供依据,以确保将任务安排给能够处理相应开发情况的项目人员手上,在提高任务安排合理性的同时方便后续根据人员劳动量分配薪资,解决现有的软件开发管理系统在使用时,无法针对软件开发前期程序进行合理分配与管理的技术问题。

3、(二)技术方案

4、为实现以上目的,本发明通过以下技术方案予以实现:

5、一种软件开发相关进度管理系统,该管理系统包括:

6、任务分化模块,将采集到的软件开发信息拆分为开发项目集qda={l1,l2,l3,…,li},将开发项目集qda中的每一个项目再次拆分,得到开发项目子集li={li1,li2,li3,…,lij},根据开发影响系数依次对开发项目子集中需要开发的程序以及开发项目子集进行排序;

7、开发优化模块:从数据库中调取与开发项目子集li需求相同的程序数据,并依据需求的重合率生成程序调整难度预估值,再由程序调整难度预估值与预设的难度阈值区间比对,调整开发方案;

8、当程序调整难度预估值小于预设的难度阈值区间时,则发出修正指令,并标记所需开发项数据与数据库中历史程序数据的误差范围;

9、当程序调整难度预估值位于预设的难度阈值区间内时,则发出拓展指令,保留数据库中历史程序数据与所需开发程序数据一致的部分,该部分记为基础数据,再将基础数据与对应的所需开发程序数据结合,作为程序数据发送至开发人员;

10、当程序调整难度预估值大于预设的难度阈值区间时,则发出研发指令,将所需开发程序数据直接发送至开发人员;

11、任务分配模块,依据完成程序开发的需要调取相应的项目人员,该部分项目人员记为主项目组,剩余项目人员记为分项目组,在开发项目子集li中调取与当前开发程序直接关联的关联程序,将关联程序发送至分项目组中;

12、项目组合模块,将主项目组和分项目组的开发数据整合,检测主项目组开发程序与其关联程序的适配度,当适配度大于预设的阈值时,则发出合格指令;反之,则将结果反馈至对应的项目组进行调试,直至适配度大于预设的阈值;

13、程序检测模块,依据软件开发信息对组合后的数据进行检验,再根据检验结果调取出现误差的开发项目子集li以及完成该程序的项目组,由项目组提供解决方案,直至组合后的数据符合软件开发信息的需求。

14、进一步的,开发影响系数所依据的步骤如下:

15、s101、将开发项目子集qdc={li1,li2,li3,…,lij}中程序依次与数据库中的历史程序数据进行比对,计算重合率,之后根据最大重合率由小到大排序,得到需求重合率子集;

16、s102、将需求重合率子集中的程序依次代入表达式计算开发项目子集中各程序的开发影响系数wdygz,式中lij表示为第i个开发项目子集中的第j个程序数据量,maxl′表示为历史开发项目子集中与lij重合率最大的程序数据量,tl′表示为与maxl′对应的开发时长,e为自然常数,ear表示为lij程序的人为影响指数,dex表示为lij程序对开发项目子集li的影响系数,k1、k2分别表示lij程序的人为影响系数和lij程序对开发项目子集li的影响系数的权重因子,k1+k2=1;

17、s103、将开发项目子集li按照开发影响系数wdygz的大小排序,同一个开发项目子集li中所有程序lij的开发影响系数wdygz之和记为开发项目子集li的开发影响系数,同理,再根据开发项目子集li的开发影响系数对开发项目集qda中的开发项目子集li进行排序,并预测程序开发所需时长。

18、进一步的,生成人为影响系数ear所依据的公式如下:

19、

20、式中,qsdn表示为第n个项目人员的历史平均错误率,qdln表示为第n个项目人员的平均错误处理率,pdsy表示为误差校正系数,m表示为对应项目人员的数量,scsd表示为项目人员的历史平均效率,tcsd表示为类似程序的平均完成时长,d1、d2分别表示为项目人员历史的平均效率、类似程序的平均完成时长的权重因子,d1+d2=1,且d1>0,d2>0;

21、将人为影响系数ear与设定的影响阈值区间进行比较,设定的影响阈值区间为

22、当人为影响系数ear位于影响阈值区间内时,则不作响应;

23、当人为影响系数ear<阈值下限时,则发出预警,并下调对应项目人员的数量,每次下调幅度为1,直至人为影响系数ear位于影响阈值区间停止;同理,当ear>阈值上限earδ时,则发出预警,并上调对应项目人员的数量,每次上调幅度为1,直至ear位于影响阈值区间停止;

24、其中,在对应项目人员的数量达到项目人员总数时,则发出人员警报,并以项目人员总数为对应项目人员的数量,计算人为影响系数ear;

25、项目人员下调时,根据项目人员的历史平均效率scsd,由大到小对项目人员进行排序,并依次下调;同理,项目人员下调时,根据项目人员历史的平均效率scsd,由小到大对项目人员进行排序,并依次上调。

26、进一步的,生成lij程序对开发项目子集li的影响系数dex所依据的公式如下:

27、

28、式中,y表示为开发项目子集中程序的数量,tlij表示为与第lij程序重合率最大的程序的开发时长,表示为第i个开发项目子集li的完成预估时间,表示为开发项目子集li中与lij直接关联的程序数量,γ、δ分别表示为完成开发项目子集li的时间、开发项目子集li中与lij关联的程序数量的权重因子,γ>δ>0,且γ+δ=1,g表示为修正系数。

29、进一步的,预测程序开发所需时长所依据的公式如下:

30、

31、式中,t表示为完成程序开发所需时长,x表示为开发项目集中开发项目子集的数量。

32、进一步的,所述重合率的具体分析过程为:

33、s201、将数据库中历史程序数据与lij程序需求的程序数据重合部分记为lij程序需求的程序数据记为

34、s202、通过分析公式得到lij程序在数据库中历史程序数据的重合率当重合率大于80%时,则代入程序调整难度预估值计算公式中,反之,则记为0%。

35、进一步的,获取与lij程序对应的开发影响系数wdygz、数据库中历史程序数据与lij程序需求的程序数据之间的误差数量uit以及重合率生成程序调整难度预估值所依据的公式如下:

36、

37、式中,表示为程序调整难度预估值,ω表示预设的程序调整难度预估值的修正因子,e为自然常数,k1、k2、k3分别表示预设的重合率、误差数量和开发影响系数的权值,k1+k2+k3=1,αδt表示为预设的开发项目子集li预估时间的影响因子。

38、进一步的,关联程序指能够辅助主项目组所开发程序运行的程序,检测主项目组开发程序与其关联程序的适配度的具体分析过程为:

39、s301、分别调取主项目组开发程序和关联程序,在主项目组开发程序中设定所有关联程序为表示为第z个关联程序的虚拟端口,其中,z表示为相关程序的数量,得到主程序检验单元;

40、s302、向主程序检验单元中输入检测信号,检测的响应情况,并将的相应情况与软件开发信息所需的响应端口进行比对;

41、当软件开发信息所需的响应端口与的响应情况不一致时,则将结果反馈至相应的主项目组,制定调整方案;反之,则不作响应,执行之后的检测;

42、s303、将与对应的真实关联程序代入主项目组开发的程序中,重新输入检测信号,检测真实关联程序的相应情况,并将真实关联程序的响应情况与程序开发的需求对比;当真实关联程序的响应情况与程序开发的需求不一致时,则将结果反馈至相应的分项目组,制定调整方案;反之,则不作响应。

43、进一步的,该管理系统还包括:

44、审批核算模块,将符合软件开发信息需求的组合数据,在数据库中备份,并根据软件开发完成情况,调整项目人员的平均效率和平均错误率。

45、进一步的,一种软件开发相关进度管理方法,该管理方法包括:

46、将采集到的软件开发信息拆分为开发项目集qda=l1,l2,l3,…,li},将开发项目集qda中的每一个项目再次拆分,得到开发项目子集li={li1,li2,li3,…,lij},根据开发影响系数依次对开发项目子集中需要开发的程序以及开发项目子集进行排序;

47、从数据库中调取与开发项目子集li需求相同的程序数据,并依据需求的重合率生成程序调整难度预估值,再由程序调整难度预估值与预设的难度阈值区间比对,调整开发方案;

48、当程序调整难度预估值小于预设的难度阈值区间时,则发出修正指令,并标记所需开发项数据与数据库中历史程序数据的误差范围;

49、当程序调整难度预估值位于预设的难度阈值区间内时,则发出拓展指令,保留数据库中历史程序数据与所需开发程序数据一致的部分,该部分记为基础数据,再将基础数据与对应的所需开发程序数据结合,作为程序数据发送至开发人员;

50、当程序调整难度预估值大于预设的难度阈值区间时,则发出研发指令,将所需开发程序数据直接发送至开发人员;

51、依据完成程序开发的需要调取相应的项目人员,该部分项目人员记为主项目组,剩余项目人员记为分项目组,在开发项目子集li中调取与当前开发程序直接关联的关联程序,将关联程序发送至分项目组中;

52、将主项目组和分项目组的开发数据整合,检测主项目组开发程序与其关联程序的适配度,当适配度大于预设的阈值时,则发出合格指令;反之,则将结果反馈至对应的项目组进行调试,直至适配度大于预设的阈值;

53、依据软件开发信息对组合后的数据进行检验,再根据检验结果调取出现误差的开发项目子集li以及完成该程序的项目组,由项目组提供解决方案,直至组合后的数据符合软件开发信息的需求。

54、(三)有益效果

55、本发明通过在软件开发前将程序按照需求和类型分割成开发项目集以及开发项目集内部的开发项目子集,从而“化整为零”,方便将开发程序按照个人所能完成的工作量进行分配,同时在后续程序检验的过程中,也能逐一排查各个程序之间的适配情况,方便根据情况给出相应的调整方案,其次,通过结合现有项目人员的开发能力以及分化后程序在整个程序的影响情况,生成一个能够直观判断软件开发影响系数的开发影响系数wdygz,由此为后续项目人员的分配提供依据,以确保将任务安排给能够处理相应开发情况的项目人员手上,在提高任务安排合理性的同时方便后续根据人员劳动量分配薪资。

56、本发明通过将“化整为零”后的程序数据与历史程序数据之间进行比对,确定两者之间的重合程度,再根据重合程度制定对应的研发策略,从而提高工作效率的同时避免重复性工作,其次,结合程序的重合率计算程序调整难度预估值再将程序调整难度预估值与预设的难度阈值区间比对,对所开发的软件进行一个评估,以方便程序开发人员对所要开发的程序有一个清楚的了解,即确定项目人员之后要做的工作是研发还是调整,由此提高项目人员的工作效率。


技术特征:

1.一种软件开发相关进度管理系统,其特征在于,该管理系统包括:

2.如权利要求1所述的一种软件开发相关进度管理系统,其特征在于:开发影响系数所依据的步骤如下:

3.如权利要求2所述的一种软件开发相关进度管理系统,其特征在于:生成人为影响系数ear所依据的公式如下:

4.如权利要求2所述的一种软件开发相关进度管理系统,其特征在于:生成lij程序对开发项目子集li的影响系数dex所依据的公式如下:

5.如权利要求4所述的一种软件开发相关进度管理系统,其特征在于:预测程序开发所需时长所依据的公式如下:

6.如权利要求1所述的一种软件开发相关进度管理系统,其特征在于:所述重合率的具体分析过程为:

7.如权利要求1所述的一种软件开发相关进度管理系统,其特征在于:获取与lij程序对应的开发影响系数wdygz、数据库中历史程序数据与lij程序需求的程序数据之间的误差数量uit以及重合率生成程序调整难度预估值所依据的公式如下:

8.如权利要求1所述的一种软件开发相关进度管理系统,其特征在于:关联程序指能够辅助主项目组所开发程序运行的程序,检测主项目组开发程序与其关联程序的适配度的具体分析过程为:

9.如权利要求1所述的一种软件开发相关进度管理系统,其特征在于:该管理系统还包括:

10.一种软件开发相关进度管理方法,使用权利要求1至9中的任一种所述系统,其特征在于,该管理方法包括:


技术总结
本发明公开了一种软件开发相关进度管理方法及系统,涉及程序开发技术领域,该系统包括任务分化模块、开发优化模块、任务分配模块、项目组合模块、程序检测模块;本发明所述的系统,通过在软件开发前将程序按照需求和类型分割成若干程序,从而“化整为零”,方便根据情况给出相应的调整方案,其次,结合项目人员的开发能力以及分化后程序对整个程序的影响情况,生成一个能够直观判断软件开发影响系数的开发影响系数Wdyg<supgt;z</supgt;,以确保将任务安排给能够处理相应开发情况的项目人员手上,同时方便后续根据人员劳动量分配薪资,解决现有的软件开发管理系统在使用时,无法针对软件开发前期程序进行合理分配与管理的技术问题。

技术研发人员:姜立华,王霞,黄海平
受保护的技术使用者:西藏达岸信息科技有限公司
技术研发日:
技术公布日:2024/10/31
转载请注明原文地址: https://www.8miu.com/read-26263.html

最新回复(0)