软件开发人员配置方法、系统、电子设备和存储介质与流程

文档序号:18902591发布日期:2019-10-18 22:08阅读:246来源:国知局
软件开发人员配置方法、系统、电子设备和存储介质与流程

本申请涉及互联网产品领域,更具体的,涉及一种软件开发人员配置方法、系统、电子设备和存储介质。



背景技术:

随着计算机及互联网技术的快速发展,人工智能、机器学习、云计算等领域的发展前景越来越广阔,使用这些技术开发的应用系统越来越广泛,同时也在不断地改变人们的生活方式。软件系统规模不断扩大,其功能也变得越来越复杂。目前较为常见的复杂度度量方式有:代码行数方式、复杂度方式和halstead复杂度方式。上述方式存在计算复杂,应用场景局限等缺点。



技术实现要素:

为了解决上述不足的至少一个,本申请一个方面实施例提供一种软件产品的开发人员配置方法,包括:

获取待开发软件产品的功能需求信息,所述功能需求信息包括至少一个功能单元的需求信息;每个功能单元具有反映开发的复杂程度的评价特征;

统计每个功能单元的需求信息中各评价特征的特征值;

将每个功能单元各自的评价特征的特征值输入预设的复杂度分级模型,生成每个功能单元的复杂度级别;其中所述复杂度分级模型包括每个功能单元各自的评价特征的特征值与复杂度的对应关系;

根据每个功能单元的复杂度级别以及预存的开发人员信息,对所述待开发软件产品的开发人员进行配置。

在某些实施例中,还包括:

建立所述复杂度分级模型。

在某些实施例中,所述建立所述复杂度分级模型,包括:

配置各功能单元的评价特征;

建立每个功能单元各自的评价特征的特征值与复杂度的对应关系;

建立每个功能单元的复杂度的分布和/或总和与复杂度级别的对应关系。

在某些实施例中,所述开发人员信息包括每个开发人员对应各功能单元各自的开发级别以及针对每个功能单元的每个复杂度的开发时长;

所述根据每个功能单元的复杂度级别以及预存的开发人员信息,对所述待开发软件产品的开发人员进行配置,包括:

针对每个功能单元各自统计符合对应功能单元开发要求的开发人员信息;其中符合开发要求的开发人员的开发级别大于等于对应功能单元的复杂度级别;

根据统计的开发人员信息估计每个功能单元的最低开发时长和最高开发时长,并生成最低开发时长与最高开发时长的平均开发时长;

配置每个功能单元的开发人员,使得每个功能单元的实际开发时长与对应的平均开发时长之间的差值处于设定范围,同时生成对应的开发人员配置表;

根据所述开发人员配置表对所述待开发软件产品的开发人员进行配置。

在某些实施例中,所述软件产品为前端页面,所述评价特征包括如下的至少一个:

交互规则数量、前端页面的动静态属性、后台联调接口数量、功能交互逻辑判数量、接口的安全加密属性、接口元素数量。

本申请另一方面实施例提供一种软件产品的开发人员配置系统,包括:

获取模块,获取待开发软件产品的功能需求信息,所述功能需求信息包括至少一个功能单元的需求信息;每个功能单元具有反映开发的复杂程度的评价特征;

特征值统计模块,统计每个功能单元的需求信息中各评价特征的特征值;

复杂度分级模块,将每个功能单元各自的评价特征的特征值输入预设的复杂度分级模型,生成每个功能单元的复杂度级别;其中所述复杂度分级模型包括每个功能单元各自的评价特征的特征值与复杂度的对应关系;

开发人员配置模块,根据每个功能单元的复杂度级别以及预存的开发人员信息,对所述待开发软件产品的开发人员进行配置。

在某些实施例中,还包括:

模型建立模块,建立所述复杂度分级模型。

在某些实施例中,所述模型建立模块,包括:

评价特征配置单元,配置各功能单元的评价特征;

第一对应关系建立单元,建立每个功能单元各自的评价特征的特征值与复杂度的对应关系;

第二对应关系建立单元,建立每个功能单元的复杂度的分布和/或总和与复杂度级别的对应关系。

在某些实施例中,所述开发人员信息包括每个开发人员对应各功能单元各自的开发级别以及针对每个功能单元的每个复杂度的开发时长;

所述开发人员配置模块,包括:

统计单元,针对每个功能单元各自统计符合对应功能单元开发要求的开发人员信息;其中符合开发要求的开发人员的开发级别大于等于对应功能单元的复杂度级别;

平均开发时长生成单元,根据统计的开发人员信息估计每个功能单元的最低开发时长和最高开发时长,并生成最低开发时长与最高开发时长的平均开发时长;

配置表生成单元,配置每个功能单元的开发人员,使得每个功能单元的实际开发时长与对应的平均开发时长之间的差值处于设定范围,同时生成对应的开发人员配置表;

配置单元,根据所述开发人员配置表对所述待开发软件产品的开发人员进行配置。

在某些实施例中,所述软件产品为前端页面,所述评价特征包括如下的至少一个:

交互规则数量、前端页面的动静态属性、后台联调接口数量、功能交互逻辑判数量、接口的安全加密属性、接口元素数量。

本申请又一方面实施例提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述所述的软件产品的开发人员配置方法的步骤。

本申请又一方面实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述所述的软件产品的开发人员配置方法的步骤。

本申请的有益效果如下:

本申请提供一种软件产品的开发人员配置方法、系统,通过统计每个功能单元的需求信息中各评价特征的特征值,然后将每个功能单元各自的评价特征的特征值输入预设的复杂度分级模型,生成每个功能单元的复杂度级别,然后对待开发软件产品的开发人员进行配置,根据需求复杂度,预判所需要的合理开发人员(开发人员级别、开发人员数量、开发周期),提高研发效率。另外,通过本发明的软件产品,能够通过计算机计算功能单元的复杂度级别并进而更有效的配置开发人员,从而摆脱了行业中通过管理人员人为印象或经验进行判断配置的主观性,使用这样的产品,能够大大降低对管理人员岗位的需求,节约了公司成本。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出了本申请实施例中一种软件产品的开发人员配置方法的流程示意图。

图2示出了本申请实施例中一种软件产品的开发人员配置系统的结构示意图。

图3示出适于用来实现本申请实施例的电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1示出了本申请一个方面实施例中的软件产品的开发人员配置方法,具体包括:

s1:获取待开发软件产品的功能需求信息,所述功能需求信息包括至少一个功能单元的需求信息;每个功能单元具有反映开发的复杂程度的评价特征;

s2:统计每个功能单元的需求信息中各评价特征的特征值;

s3:将每个功能单元各自的评价特征的特征值输入预设的复杂度分级模型,生成每个功能单元的复杂度级别;其中所述复杂度分级模型包括每个功能单元各自的评价特征的特征值与复杂度的对应关系;

s4:根据每个功能单元的复杂度级别以及预存的开发人员信息,对所述待开发软件产品的开发人员进行配置。

本方面提供一种软件产品的开发人员配置方法,通过统计每个功能单元的需求信息中各评价特征的特征值,然后将每个功能单元各自的评价特征的特征值输入预设的复杂度分级模型,生成每个功能单元的复杂度级别,然后对待开发软件产品的开发人员进行配置,根据需求复杂度,预判所需要的合理开发人员(开发人员级别、开发人员数量、开发周期),提高研发效率。另外,通过本发明的软件产品,能够通过计算机计算功能单元的复杂度级别并进而更有效的配置开发人员,从而摆脱了行业中通过管理人员人为印象或经验进行判断配置的主观性,使用这样的产品,能够大大降低对管理人员岗位的需求,节约了公司成本。

本申请中,复杂度分级模型包括了各功能单元的评价特征、每个功能单元各自的评价特征的特征值与复杂度的对应关系以及每个功能单元的复杂度的分布和/或总和与复杂度级别的对应关系。

功能单元是某一具体功能分类的最小单元,即为某一类功能需求的集合。例如以某一软件产品为例,功能单元包括:前端页面单元、页面服务单元、后台进程单元、报表单元、交互设计单元、视觉设计单元、外部输入接口单元、产品配置类单元、外部输出接口单元、技术研究单元、后台脚本单元、产品研究与分析单元、数据处理单元。以前端页面单元为例,其具体包括有web、wap、h5、客户端(ios、android)、短信、语音、微信应用、ui等前端交互开发。

评价特征是能够反映开发的复杂程度的特征,例如对于前端页面的开发,交互规则数量、前端页面的动静态属性、后台联调接口数量、功能交互逻辑判数量、接口的安全加密属性、接口元素数量均能够反映开发的复杂程度,以交互规则数量为例,交互规则的数量越多,则复杂程度越高。

评价特征的特征值即为上述的数量值,或者是0和1的值,例如以前端页面的动静态属性为例,静态页面为0,动态页面为1。当然,上述的数值仅仅作为举例,在具体实施时可以根据需要设置。

在一些实施例中,上述的复杂度分级模型可以通过数据表的形式存储在数据库中。

复杂度分级模型可以在线建立或者离线建立,本申请对此不做限制。

一些实施例种,本申请可以通过在线建立复杂度分级模型,即上述的方法还包括建立所述复杂度分级模型的步骤。

建立所述复杂度分级模型的具体步骤包括:

s10:配置各功能单元的评价特征;

s11:建立每个功能单元各自的评价特征的特征值与复杂度的对应关系;

s12:建立每个功能单元的复杂度的分布和/或总和与复杂度级别的对应关系。

上述的对应关系,均可以通过对应关系查找表的形式存在,例如下表示出了前端页面的评价特征的特征值与复杂度的对应关系表。

在一些实施例中,复杂度分级模型中包括了每个功能单元的复杂度总和与复杂度级别的对应关系。

例如在具体实施时,复杂度总和与复杂度级别的对应关系具体为:微小(1分)、简单(3分)、普通(5分)、复杂(7分)。

则表1中可以知晓下述内容:

简单:1、新开发的静态页面,与后台无交互

2、ui交易页面

普通:1、与后台有交易联调,联调接口数量(0,3]

2、与后台无交易联调,前端页面交互规则数量[2,3]

复杂:1、与后台有交易联调,联调接口数量大于等于4

2、与后台无交易联调,前端页面交互规则数量大于等于4

表1-前端页面的评价特征的特征值与复杂度的对应关系表

所述开发人员信息包括每个开发人员对应各功能单元各自的开发级别以及针对每个功能单元的每个复杂度的开发时长。

一些实施例中,步骤s4具体包括:

s41:针对每个功能单元各自统计符合对应功能单元开发要求的开发人员信息;其中符合开发要求的开发人员的开发级别大于等于对应功能单元的复杂度级别;

s42:根据统计的开发人员信息估计每个功能单元的最低开发时长和最高开发时长,并生成最低开发时长与最高开发时长的平均开发时长;

s43:配置每个功能单元的开发人员,使得每个功能单元的实际开发时长与对应的平均开发时长之间的差值处于设定范围,同时生成对应的开发人员配置表;

s44:根据所述开发人员配置表对所述待开发软件产品的开发人员进行配置。

该实施例中,针对每个功能单元统计符合对应功能单元开发要求的开发人员信息,然后利用预估平均开发时长的方式,进而平衡每个功能单元的开发时长,通过设定范围的设置,使得配置开发人员可以动态调节,进而有利于开发人员配置的平衡。

例如,对于前端页面单元的开发,符合该功能单元的开发人员为a、b、c、d、e,各自具有对于的开发等级(1、2、3、4级)。其中确定前端页面的复杂度分级为简单(2级),如果由a、b开发是最长时长为2天,如果由c、d和e开发,仅需要0.5天。则平均时开发时长为1.25天。而如果设置该功能单元的设定范围为-0.25+1.25至0.25+1.25,例如配置a、c、e的方式可以达到1天,则属于该设定范围内,因此生成的开发人员配置表包含a、c、e,即配置a、c、e开发前端页面单元。

可以理解,从上述实施例可以知晓,本申请的软件产品的开发人员配置方法,可以自动配置开发人员,使员工工作效率更加高效合理,同时预判复杂度更加客观、合理。

图2示出了本申请另一方面实施例提供的一种软件产品的开发人员配置系统,具体包括:获取模块100,获取待开发软件产品的功能需求信息,所述功能需求信息包括至少一个功能单元的需求信息;每个功能单元具有反映开发的复杂程度的评价特征;特征值统计模块200,统计每个功能单元的需求信息中各评价特征的特征值;复杂度分级模块300,将每个功能单元各自的评价特征的特征值输入预设的复杂度分级模型,生成每个功能单元的复杂度级别;其中所述复杂度分级模型包括每个功能单元各自的评价特征的特征值与复杂度的对应关系;开发人员配置模块400,根据每个功能单元的复杂度级别以及预存的开发人员信息,对所述待开发软件产品的开发人员进行配置。

基于相同的发明构思,一些实施例中,所述系统还包括:模型建立模块,建立所述复杂度分级模型。

基于相同的发明构思,一些实施例中,所述模型建立模块,包括:评价特征配置单元,配置各功能单元的评价特征;第一对应关系建立单元,建立每个功能单元各自的评价特征的特征值与复杂度的对应关系;第二对应关系建立单元,建立每个功能单元的复杂度的分布和/或总和与复杂度级别的对应关系。

基于相同的发明构思,一些实施例中,所述开发人员信息包括每个开发人员对应各功能单元各自的开发级别以及针对每个功能单元的每个复杂度的开发时长;

所述开发人员配置模块,包括:统计单元,针对每个功能单元各自统计符合对应功能单元开发要求的开发人员信息;其中符合开发要求的开发人员的开发级别大于等于对应功能单元的复杂度级别;平均开发时长生成单元,根据统计的开发人员信息估计每个功能单元的最低开发时长和最高开发时长,并生成最低开发时长与最高开发时长的平均开发时长;配置表生成单元,配置每个功能单元的开发人员,使得每个功能单元的实际开发时长与对应的平均开发时长之间的差值处于设定范围,同时生成对应的开发人员配置表;配置单元,根据所述开发人员配置表对所述待开发软件产品的开发人员进行配置。

基于相同的发明构思,一些实施例中,所述软件产品为前端页面,所述评价特征包括如下的至少一个:交互规则数量、前端页面的动静态属性、后台联调接口数量、功能交互逻辑判数量、接口的安全加密属性、接口元素数量。

本申请的实施例还提供能够实现上述实施例中的方法中全部步骤的一种电子设备的具体实施方式,参见图3,所述电子设备具体包括如下内容:

处理器(processor)601、存储器(memory)602、通信接口(communicationsinterface)603和总线604;

其中,所述处理器601、存储器602、通信接口603通过所述总线604完成相互间的通信;

所述处理器601用于调用所述存储器602中的计算机程序,所述处理器执行所述计算机程序时实现上述实施例中的方法中的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:

s1:获取待开发软件产品的功能需求信息,所述功能需求信息包括至少一个功能单元的需求信息;每个功能单元具有反映开发的复杂程度的评价特征;

s2:统计每个功能单元的需求信息中各评价特征的特征值;

s3:将每个功能单元各自的评价特征的特征值输入预设的复杂度分级模型,生成每个功能单元的复杂度级别;其中所述复杂度分级模型包括每个功能单元各自的评价特征的特征值与复杂度的对应关系;

s4:根据每个功能单元的复杂度级别以及预存的开发人员信息,对所述待开发软件产品的开发人员进行配置。

从上述描述可知,本申请提供的电子设备,可以自动配置开发人员,使员工工作效率更加高效合理,同时预判复杂度更加客观、合理。

本申请的实施例还提供能够实现上述实施例中的方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:

s1:获取待开发软件产品的功能需求信息,所述功能需求信息包括至少一个功能单元的需求信息;每个功能单元具有反映开发的复杂程度的评价特征;

s2:统计每个功能单元的需求信息中各评价特征的特征值;

s3:将每个功能单元各自的评价特征的特征值输入预设的复杂度分级模型,生成每个功能单元的复杂度级别;其中所述复杂度分级模型包括每个功能单元各自的评价特征的特征值与复杂度的对应关系;

s4:根据每个功能单元的复杂度级别以及预存的开发人员信息,对所述待开发软件产品的开发人员进行配置。

从上述描述可知,本申请提供的计算机可读存储介质,可以自动配置开发人员,使员工工作效率更加高效合理,同时预判复杂度更加客观、合理。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。虽然本说明书实施例提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。以上所述仅为本说明书实施例的实施例而已,并不用于限制本说明书实施例。对于本领域技术人员来说,本说明书实施例可以有各种更改和变化。凡在本说明书实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书实施例的权利要求范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1