掌桥专利:专业的专利平台
掌桥专利
首页

软件协同开发方法

文献发布时间:2023-06-19 19:33:46


软件协同开发方法

技术领域

本发明涉及软件开发技术领域,特别涉及软件协同开发方法。

背景技术

随着软件技术的发展,软件开发过程中的分工越来越明细。从ASP(应用服务提供商)、JSP(Java服务器页面)到如今的前后端分离,意味着软件团队需要不同的角色来承担对应的职责,单兵作战在复杂的系统面前尤其乏力。

如今协同开发已经普及,但是开发效率并没有随着团队人数的增多而提升。如同木桶理论,多人协同开发若没有好的方法和规范,反而会降低软件开发效率,拉低开发的软件质量。因此,急需提供一种软件协同开发方法,以提升软件开发效率。

发明内容

本发明提供了软件协同开发方法,能够提升软件开发效率。

为了达到上述目的,本发明的基础方案如下:

软件协同开发方法,包括以下步骤:

S100,拆分开发任务,生成若干子任务;

S200,将子任务分别下发至各开发人员;

S300,获取并合并各开发人员完成的代码,生成项目结果。

进一步,S100包括:

S101,构建软件开发共享云平台;

S102,在软件开发共享云平台上进行建模,按照预设拆分规则对开发任务进行拆分,并生成若干子任务。

进一步,S200包括:

S201,将子任务分别下发至各开发人员;

S202,分析各开发人员是否需要协助,若是,则对下发至所述开发人员的子任务进行拆分,并分发至其他开发人员。

进一步,S300包括:

S301,获取各开发人员提交的代码;

S302,分析各开发人员完成的代码是否符合对应子任务的要求,若否,则执行S303,若是,则执行S304;

S303,将代码退回至开发人员,并生成重新上传提示;

S304,合并各开发人员完成的代码,并生成项目结果;

S202中,若否,则执行S302。

进一步,S201包括:

S2011,获取各开发人员的历史任务分配记录,所述历史任务分配记录包括历史任务的任务类型、难易程度和完成时间;

S2012,分析各子任务的任务类型,将各子任务的任务类型与各开发人员历史任务的任务类型进行比对,并生成比对结果;

S2013,若比对结果为相同,则根据所述历史任务的难易程度和开发人员的完成时间,生成任务完成效率;

S2014,根据各开发人员的任务完成效率,筛选一开发人员完成所述子任务,并将子任务下发至相应的开发人员。

进一步,S303包括:

S3031,分析代码的功能,根据代码的功能对开发人员提交的代码进行拆分,并生成拆分代码;

S3032,分析各拆分代码是否能够成功运行,并生成代码的成功运行率;

S3033,分析所述代码的成功运行率是否大于预设运行率,若是,则将代码退回至提交代码的开发人员,若否,则将代码及所述代码对应的子任务下发至其他开发人员。

本发明的原理及优点在于:

1、按照预设拆分规则对开发任务进行拆分,再分别下发至各开发人员进行代码的编写,相对于让所有开发人员直接参与全部代码的编写而言,本方案通过拆分和分别下发实现了任务的调度,提升了软件开发过程中的有序性,从而提升了软件开发效率。且可以通过预设拆分规则将拆分后的子任务分别下发给擅长该类代码编写的开发人员,进一步提升软件开发的效率。

2、构建软件开发共享云平台,便于开发任务的统一管理,且可以通过实时获取各开发人员的代码编写进度,及时掌握当前的软件开发状态,有利于管理者及时做出应对措施,合理调配资源,从而在实现开发团队任务的合理分配和组织资源优化的同时,有效的监控开发过程,避免了木桶理论中短板的出现。

3、若子任务的任务类型与开发人员历史任务的任务类型相同,则说明开发人员曾编写过类似的代码,其经验值较高。根据所述历史任务的难易程度和开发人员的完成时间,生成任务完成效率,再筛选一名开发人员作为子任务的负责人,可以将各子任务下发给经验值更高,效率更高,对于相应子任务更加专业的开发人员,从而缩短软件开发时间,提升开发任务的完成效率。

4、若代码的成功运行率大于预设运行率,则说明开发人员对于相应子任务的完成度较高,可能因编写失误造成了部分代码无法成功运行,故此时仍将子任务退回给相应的开发人员,可以避免将子任务划分至其他开发人员导致其对该子任务不了解从而花费更多的时间进行编写;若代码的成功运行率较低,则说明该开发人员对于相应代码的编写存在困难,可能无法完成子任务或完成子任务需要耗费的时间较长,此时为了提升子任务的完成效率和完成度,将代码及所述代码对应的子任务下发至其他开发人员,其他开发人员可在已编写的代码上直接进行修改,进一步提升代码编写效率。

附图说明

图1为本发明实施例软件协同开发方法的流程图。

具体实施方式

下面通过具体实施方式进一步详细说明:

实施例1:

实施例1基本如附图1所示:

软件协同开发方法,包括以下步骤:

S100,拆分开发任务,生成若干子任务;

S100包括:

S101,构建软件开发共享云平台;

S102,在软件开发共享云平台上进行建模,将开发任务输入模型,并按照预设拆分规则对开发任务进行拆分,生成若干子任务。具体的,本实施例中的预设拆分规则为:根据实现的功能对开发任务进行拆分,实现同一个功能的部分为一个子任务,具体功能根据实际需求进行设定,在本申请的其他实施例中,还可以根据不同开发任务在模型中输入不同的预设拆分规则。

S200,将子任务分别下发至各开发人员;

S200包括:

S201,将子任务分别下发至各开发人员;

S201包括:

S2011,获取各开发人员的历史任务分配记录,所述历史任务分配记录包括历史任务的任务类型、难易程度和完成时间;本实施例中,各任务类型对应不同的功能需求,包括机票模块类、酒店模块类和汽车模块类;

S2012,分析各子任务的任务类型,将各子任务的任务类型与各开发人员历史任务的任务类型进行比对,并生成比对结果;

S2013,若比对结果为相同,则根据所述历史任务的难易程度和开发人员的完成时间,生成任务完成效率,本实施例中,任务完成效率由高至低包括高、中、低;本实施例中,历史任务的难易程度由高至低包括困难、一般、简单,由管理者判定并记录在历史任务分配记录中;若历史任务的难易程度为困难,则加三分,若历史任务的难易程度为一般,则加两分,若历史任务的难易程度为简单,则加一分;若开发人员的完成时间小于5个工作日,则加三分,若开发人员的完成时间大于等于五个工作日,且小于十个工作日,则加两分,若开发人员的完成时间大于等于十个工作日,则加一分。最后进行加分统计,若分数小于三分,则判定任务完成效率为低,若分数大于等于三分,且小于五分,则判定任务完成效率为中,若分数大于等于五分,则判定任务完成效率为高;

S2014,根据各开发人员的任务完成效率,筛选一开发人员完成所述子任务,并将子任务下发至相应的开发人员;具体的,筛选任务完成效率最高的开发人员完成所述子任务,若有多个开发人员的任务完成效率相同,则获取各开发人员的从业时间,筛选从业时间最短的开发人员完成所述子任务;

S202,分析各开发人员是否需要协助,若是,则对下发至所述开发人员的子任务进行拆分,并分发至其他开发人员,若否,则执行S302。本实施例中,获取开发人员的任务协助需求,若任务协助需求为需要协助,则根据任务协助需求中具体的协助内容,对子任务进行拆分,并将需要协助的部分分发至其他开发人员进行编写。

S300,获取并合并各开发人员完成的代码,生成项目结果。

S300包括:

S301,获取各开发人员提交的代码;

S302,分析各开发人员完成的代码是否符合对应子任务的要求,若否,则执行S303,若是,则执行S304;本实施例中,预存有测试数据,将测试数据输入开发人员完成的代码,若能正常运行并输出正确数据,则判定开发人员完成的代码符合对应子任务的要求,否则不符合对应子任务的要求;

S303,将代码退回至开发人员,并生成重新上传提示;

S303包括:

S3031,分析代码的功能,根据代码的功能对开发人员提交的代码进行拆分,并生成拆分代码;本实施例中,开发人员的代码每输出一个结果,判定其实现一个单独的功能,提取每段能够实现单独功能的代码,并命其为拆分代码;

S3032,分析各拆分代码是否能够成功运行,并生成代码的成功运行率;

S3033,分析所述代码的成功运行率是否大于预设运行率,若是,则将代码退回至提交代码的开发人员,若否,则将代码及所述代码对应的子任务下发至其他开发人员;本实施例中,预设运行率为80%;

S304,合并各开发人员完成的代码,并生成项目结果。

以上的仅是本发明的实施例,方案中公知的具体结构及特性等常识在此未作过多描述,所属领域普通技术人员知晓申请日或者优先权日之前发明所属技术领域所有的普通技术知识,能够获知该领域中所有的现有技术,并且具有应用该日期之前常规实验手段的能力,所属领域普通技术人员可以在本申请给出的启示下,结合自身能力完善并实施本方案,一些典型的公知结构或者公知方法不应当成为所属领域普通技术人员实施本申请的障碍。应当指出,对于本领域的技术人员来说,在不脱离本发明结构的前提下,还可以作出若干变形和改进,这些也应该视为本发明的保护范围,这些都不会影响本发明实施的效果和专利的实用性。本申请要求的保护范围应当以其权利要求的内容为准,说明书中的具体实施方式等记载可以用于解释权利要求的内容。

技术分类

06120115957990