一种软件开发进度预警方法及系统与流程

allin2026-07-13  24


本发明涉及软件开发,具体为一种软件开发进度预警方法及系统。


背景技术:

1、软件一般是用某种程序设计语言来实现的。通常采用软件开发工具可以进行开发。软件分为系统软件和应用软件,并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分;随着经济全球化以及软件技术的不断提高,市场上的软件种类越来越多。软件也从原来简单的、功能单调的、技术单一的发展成融合了多种技术、功能多样化、市场需求多样化;软件开发是根据客户要求建造出软件系统或者系统中的软件部分的过程。软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。

2、现有申请公布号为cn107679683b,名称为软件开发进度预警方法和装置的中国发明专利中指出获取当前版本对应的story总点数和所述当前版本对应的预设开发周期;根据所述预设开发周期和所述story总点数得到预设监控周期内应交付的story点数;获取所述预设监控周期内实际交付的story点数,根据所述实际交付的story点数和所述应交付的story点数得到实际交付率;从数据库中读取预设的交付率阈值,将所述实际交付率与所述交付率阈值进行比对,根据比对结果生成与版本交付进度对应的预警信息;将所述与版本交付进度对应的预警信息发送至终端。提高了软件开发效率。

3、然而,根据上述内容结合现有技术而言,上述专利记载的方案起到的效果十分有限,上述采用的方案主要是判断客户的需求,直接根据客户的需求数据预测软件开发的进程,然后将预测的开发进程与实际的开发进程进行比较,根据比较的结果判断开发进度是否过慢,但是实际在软件开发过程中,需求难度不一,而且存在多个需求时,多个需求之间结合时会对应变复杂,而且在软件开发不同的阶段,受到经验影响,开发同样难度需求所用时间也不一样,因此,软件开发过程中并不是简单的根据需求直接划分时间,上述专利记载的方案的准确性比较差,预测的结果不准确,不满足人们的使用要求,为此,我们研发了一种软件开发进度预警方法及系统。


技术实现思路

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

2、针对现有技术的不足,本发明提供了一种软件开发进度预警方法及系统,其在使用时基于现有软件开发项目的分类,获取分支项目的数据,并且对分支项目进行项目评级,根据项目评级的结果预测项目所用时间,整体预测的精度比较高,并且根据实际进度与预测进度的差值实现项目的预警,并且能够预测出软件开发完成时间,并且根据客户要求时间动态的调整相应的策略,从而保证软件开发能够按照时间顺利的完成,有效避免现有软件开发进度预警系统仅具备警示,不能根据警示生成相应策略,避免出现软件开发出现进度缓慢而无法快速调整导致软件开发无法顺利完成的缺陷,使用效果好,具有良好的使用前景。

3、(二)技术方案

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

5、一种软件开发进度预警系统,包括数据获取模块、项目评级模块、异常预警模块、进度分析模块和综合调控模块:

6、数据获取模块,用于获取软件开发项目的数据,软件开发项目的数据包括构成该项目的各个分支项目的数据;

7、项目评级模块,用于对获取的分支项目数据进行处理,计算出分支项目的难度等级,并从数据库中获取距离当前时间最近的相同难度等级的分支项目数据,并根据获取的数据计算出对应分支项目的标准时间;

8、异常预警模块,用于获取软件开发人员反馈的分支项目的实际进度sjjd,根据对应分支项目的标准时间计算出标准进度bzjd,并计算实际进度sjjd与标准进度bzjd的差值,将差值与设定的阈值区间进行比对,根据比对结果执行相应的预警策略;

9、进度分析模块,用于获取该次软件开发中实际完成部分分支项目的时间,计算整个软件开发项目所花费的剩余时长,并且根据剩余时长预测出软件开发完成时间;

10、综合调控模块,用于获取客户要求时间,将时间要求与软件开发完成时间进行对比,根据对比的结果执行相应的策略调整。

11、优选的,所述分支项目难度等级的计算公式如下:

12、

13、式中,nddj为分支项目难度等级,a为常数系数,n为分支项目中客户的需求数量,fzxdi为第i个客户需求的复杂程度,djxs为客户需求对应的等级系数;

14、计算出对应分支项目标准时间bzsj的公式如下:

15、

16、式中,ceil()为向上取整函数,rs为距离当前时间最近的相同难度等级的分支项目工作人员数量,sysj为距离当前时间最近的相同难度等级的分支项目完成所用时长,rsdq为当前分支项目工作人员数量,为第i个工作人员经验对其个人开发分支项目速度的加成比例;

17、α为常数系数,8<α<10,β为前分支项目工作人员做过分支项目的次数。

18、优选的,根据对应分支项目的标准时间计算出标准进度bzjd的计算公式如下:

19、

20、式中,dqsj为软件开发人员反馈完成分支项目实际进度sjjd所用时长,bzsj为计算出的分支项目的标准时间。

21、优选的,设定的阈值区间为[0-fdz,0+fdz],浮动值fdz的计算公式如下:

22、

23、式中,int()为向下取整函数;

24、根据比对结果执行相应的预警策略如下:

25、当sjjd-bzjd位于阈值区间[0-fdz,0+fdz]内,不做任何调整;

26、当sjjd-bzjd位于阈值区间[0-fdz,0+fdz]外,且sjjd-bzjd<0-fdz,进行进度异常预警;

27、进度异常预警过程中,0-fdz-(sjjd-bzjd)∈(0,3),一级预警,予以警示;

28、进度异常预警过程中,0-fdz-(sjjd-bzjd)∈(3,8),二级预警,增加软件开发人员数量;

29、进度异常预警过程中,0-fdz-(sjjd-bzjd)∈(8,100),三级预警,更换软件开发团队,并且增加软件开发人员数量;

30、当sjjd-bzjd位于阈值区间[0-fdz,0+fdz]外,且sjjd-bzjd>0+fdz,复核软件开发过程中已经开发的数据。

31、优选的,所述计算整个软件开发项目所花费剩余时长sysc的公式如下:

32、

33、式中,b为获取的该次软件开发中实际完成部分分支项目的数量,c为获取的该次软件开发中所有分支项目的数量,d为剩余未完成分支项目的数量,sjsci为已经完成的第i个分支项目的使用时长,nddji为已经完成的第i个分支项目的难度等级,为剩余未完成分支项目的总难度等级,为第i个剩余未完成项目启动的时间。

34、优选的,根据剩余时长预测出软件开发完成时间的计算公式如下:

35、

36、其中,wcsj为预测的软件开发完成的时间,kfsc为软件开发至今所用天数,dqrq为当前日期。

37、优选的,将客户要求时间与软件开发完成时间进行对比时比对客户要求时间sjyq与软件开发完成时间wcsj的先后顺序;

38、若软件开发完成时间wcsj位于客户要求时间sjyq的前方或者处于同一天,不做任何调整;

39、若软件开发完成时间wcsj位于客户要求时间sjyq的后方,发出预警,并调整策略为增加软件开发人员数量。

40、优选的,增加软件开发人员数量的计算公式如下:

41、

42、式中,zjsl为增加的软件开发人员数量,syxs为新增加软件开发人员的适应系数。

43、优选的,新增加软件开发人员适应系数的计算公式如下:

44、

45、式中,δ和η为常数系数,-0.1<δ<0,η>2。

46、优选的,一种软件开发进度预警方法,包括如下步骤:

47、获取软件开发项目的数据,软件开发项目的数据包括构成该项目的各个分支项目的数据;

48、对获取的分支项目数据进行处理,计算出分支项目的难度等级,并从数据库中获取距离当前时间最近的相同难度等级的分支项目数据,并根据获取的数据计算出对应分支项目的标准时间;

49、获取软件开发人员反馈的分支项目的实际进度sjjd,根据对应分支项目的标准时间计算出标准进度bzjd,并计算实际进度sjjd与标准进度bzjd的差值,将差值与设定的阈值区间进行比对,根据比对结果执行相应的预警策略;

50、获取该次软件开发中实际完成部分分支项目的时间,计算整个软件开发项目所花费的剩余时长,并且根据剩余时长预测出软件开发完成时间;

51、获取客户要求时间,将时间要求与软件开发完成时间进行对比,根据对比的结果执行相应的策略调整。

52、(三)有益效果

53、本发明提供了一种软件开发进度预警方法及系统,具备以下有益效果:

54、1、本发明记载了一种软件开发进度预警系统,其在使用时基于现有软件开发项目的分类,获取分支项目的数据,并且对分支项目进行项目评级,根据项目评级的结果预测项目所用时间,整体预测的精度比较高,并且根据实际进度与预测进度的差值实现项目的预警,并且能够预测出软件开发完成时间,并且根据客户要求时间动态的调整相应的策略,从而保证软件开发能够按照时间顺利的完成,有效避免现有软件开发进度预警系统仅具备警示,不能根据警示生成相应策略,避免出现软件开发出现进度缓慢而无法快速调整导致软件开发无法顺利完成的缺陷,使用效果好,具有良好的使用前景;

55、2、本发明记载了一种软件开发进度预警系统,其在难度等级计算时,充分的考虑了客户的需求数量以及客户需求复杂程度以及需求整体结合难度,进行难度等级计算的结果更加具有代表性,同时,在进行分支项目的标准时间的预测时,充分考虑软件开发人员经验以及团队人数的影响,使得计算出的对应分支项目的标准时间比较精确,因此,采用其与实际进度比较方案会更加的合理且准确,而且后续基于该数据的计算的准确度也相应提高,预警效果好,具有良好的使用前景。

56、3、本发明记载了一种软件开发进度预警系统,其能够预测出软件开发完成时间,根据预测的软件开发完成时间判断能够在客户要求时间内完成,并且在不同的情况下执行对应的策略,无需管理人员单独了解软件开发进度并制定对应的方案,能够大大减轻管理人员的工作量,而且其策略方案比较合理,能够有效避免出现多次调整的情况,同时缩短了调整时间,提高了软件开发的效率,整体使用效果好,具有良好的使用前景。


技术特征:

1.一种软件开发进度预警系统,其特征在于,包括:

2.根据权利要求1所述的一种软件开发进度预警系统,其特征在于:所述分支项目难度等级的计算公式如下:

3.根据权利要求2所述的一种软件开发进度预警系统,其特征在于:根据对应分支项目的标准时间计算出标准进度bzjd的计算公式如下:

4.根据权利要求3所述的一种软件开发进度预警系统,其特征在于:设定的阈值区间为[0-fdz,0+fdz],浮动值fdz的计算公式如下:

5.根据权利要求4所述的一种软件开发进度预警系统,其特征在于:所述计算整个软件开发项目所花费剩余时长sysc的公式如下:

6.根据权利要求5所述的一种软件开发进度预警系统,其特征在于:根据剩余时长预测出软件开发完成时间的计算公式如下:

7.根据权利要求6所述的一种软件开发进度预警系统,其特征在于:将客户要求时间与软件开发完成时间进行对比时比对客户要求时间sjyq与软件开发完成时间wcsj的先后顺序;

8.根据权利要求7所述的一种软件开发进度预警系统,其特征在于:增加软件开发人员数量的计算公式如下:

9.根据权利要求8所述的一种软件开发进度预警系统,其特征在于:新增加软件开发人员适应系数的计算公式如下:

10.一种软件开发进度预警方法,使用所述权利要求1至9中的任一种所述系统,其特征在于,包括如下步骤:


技术总结
本发明公开了一种软件开发进度预警方法及系统,涉及软件开发技术领域,包括数据获取模块、项目评级模块、异常预警模块、进度分析模块和综合调控模块:数据获取模块,用于获取软件开发项目的数据,软件开发项目的数据包括构成该项目的各个分支项目的数据;其技术要点为:基于现有软件开发项目的分类,获取分支项目的数据,并且对分支项目进行项目评级,根据项目评级的结果预测项目所用时间,整体预测的精度比较高,并且根据实际进度与预测进度的差值实现项目的预警,并且能够预测出软件开发完成时间,并且根据客户要求时间动态的调整相应的策略,从而保证软件开发能够按照时间顺利的完成使用效果好。

技术研发人员:柯贤英,高永英,乔志东,侯国庆
受保护的技术使用者:西藏信浩科技有限责任公司
技术研发日:
技术公布日:2024/10/31
转载请注明原文地址: https://www.8miu.com/read-29269.html

最新回复(0)