一种基于微服务化架构的项目协调方法、装置以及存储介质与流程

文档序号:19741057发布日期:2020-01-18 05:13阅读:184来源:国知局
一种基于微服务化架构的项目协调方法、装置以及存储介质与流程

本申请涉及计算机技术领域,尤其涉及一种基于微服务化架构的项目协调方法、装置以及存储介质。



背景技术:

传统的软件研发过程追求软件系统内部功能的大而全,不同软件系统间相互独立,导致软件系统扩展性差、软件功能重复开发、研发周期长以及系统维护成本高等问题。

为了解决上述问题,现有技术提供了一种基于微服务化架构的软件开发方式,这种开发方式提倡基于微服务进行软件开发,其中微服务是可以独立开发和部署的最小功能集合,以微服务架构进行软件开发就是利用一组已有和新开发的微服务进行组合和相互调用,来快速构建完成一个应用或服务。

在传统的软件研发部门中开发、测试和运维工作分别由不同的职能组织负责,各个部门彼此独立,沟通协作效率低,问题反馈链条长且不透明,造成软件和服务的交付周期漫长,问题响应缓慢,且这一问题在微服务架构研发应用的背景下将变得尤为严重。由于在微服务化框架下,传统的软件系统被拆分为众多微服务,新的应用和服务也由众多微服务组合而成,每个微服务都单独作为一个项目进行开发部署,这就使得研发部门的项目数量大幅增长,项目的增加也就导致了部门的增加,且由于项目之间的关联关系是根据应用需求的变化而变化的,也就导致部门之间沟通协调的复杂度大幅上升,极大地影响了软件的开发效率。

由此可见,在微服务软件开发框架下,如何协调各项目进行协作开发,以保证软件开发的高效性,成为现有技术亟待解决的问题。



技术实现要素:

本申请实施例提供一种基于微服务化架构的项目协调方法,用以解决在微服务架构下研发软件存在的项目间协调效率低,软件开发周期长以及开发期间问题响应缓慢的问题。

本申请实施例还提供一种基于微服务化架构的项目协调系统,用以解决在微服务架构下研发软件存在的项目间协调效率低,软件开发周期长以及开发期间问题响应缓慢的问题。

本申请实施例还提供一种基于微服务化架构的项目协调装置,用以解决在微服务架构下研发软件存在的项目间协调效率低,软件开发周期长以及开发期间问题响应缓慢的问题。

本申请实施例还提供一种计算机可读存储介质,用以解决在微服务架构下研发软件存在的项目间协调效率低,软件开发周期长以及开发期间问题响应缓慢的问题。

本申请实施例采用下述技术方案:

一种基于微服务化架构的项目协调方法,包括:根据接收到的研发需求信息,确定研发所需调用的微服务以及所述微服务之间的调用关系;根据获取到的所述微服务的相关信息确定所述微服务对应的项目组,其中,所述微服务的相关信息包括所述微服务的唯一标识、所述微服务对应的项目组以及所述微服务的服务内容;根据所述微服务所对应的项目组,创建研发项目集,在所述研发项目集中记录各项目组所对应的项目任务,并根据所述微服务之间的调用关系,确定所述项目任务的触发条件;获取所述研发项目集中第一项目组的项目任务进度,并根据所述微服务之间的调用关系,判断所述第一项目组的项目任务进度是否满足与所述第一项目组存在调用关系的第二项目组所对应的项目任务的触发条件;当判断结果为是时,向所述第二项目组发送提示信息,启动所述第二项目组对应的项目任务,并更新所述项目集中各项目组的项目进度。

一种基于微服务化架构的项目协调系统,包括:

需求分析单元,根据接收到的研发需求信息,确定研发所需调用的微服务以及所述微服务之间的调用关系;项目组确定单元,用于根据获取到的所述微服务的相关信息确定所述微服务对应的项目组,其中,所述微服务的相关信息包括所述微服务的唯一标识、所述微服务对应的项目组以及所述微服务的服务内容;项目集创建单元,用于根据所述微服务所对应的项目组,创建研发项目集,在所述研发项目集中记录各项目组所对应的项目任务,并根据所述微服务之间的调用关系,确定所述项目任务的触发条件;任务触发单元,用于获取所述研发项目集中第一项目组的项目任务进度,并根据所述微服务之间的调用关系,判断所述第一项目组的项目任务进度是否满足与所述第一项目组存在调用关系的第二项目组所对应的项目任务的触发条件;任务启动单元,用于当任务触发单元判断结果为是时,向所述第二项目组发送提示信息,启动所述第二项目组对应的项目任务,并更新所述项目集中各项目组的项目进度。

一种基于微服务化架构的项目协调装置,包括:

处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:根据接收到的研发需求信息,确定研发所需调用的微服务以及所述微服务之间的调用关系;根据获取到的所述微服务的相关信息确定所述微服务对应的项目组,其中,所述微服务的相关信息包括所述微服务的唯一标识、所述微服务对应的项目组以及所述微服务的服务内容;根据所述微服务所对应的项目组,创建研发项目集,在所述研发项目集中记录各项目组所对应的项目任务,并根据所述微服务之间的调用关系,确定所述项目任务的触发条件;获取所述研发项目集中第一项目组的项目任务进度,并根据所述微服务之间的调用关系,判断所述第一项目组的项目任务进度是否满足与所述第一项目组存在调用关系的第二项目组所对应的项目任务的触发条件;当判断结果为是时,向所述第二项目组发送提示信息,启动所述第二项目组对应的项目任务,并更新所述项目集中各项目组的项目进度。

一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:根据接收到的研发需求信息,确定研发所需调用的微服务以及所述微服务之间的调用关系;根据获取到的所述微服务的相关信息确定所述微服务对应的项目组,其中,所述微服务的相关信息包括所述微服务的唯一标识、所述微服务对应的项目组以及所述微服务的服务内容;根据所述微服务所对应的项目组,创建研发项目集,在所述研发项目集中记录各项目组所对应的项目任务,并根据所述微服务之间的调用关系,确定所述项目任务的触发条件;获取所述研发项目集中第一项目组的项目任务进度,并根据所述微服务之间的调用关系,判断所述第一项目组的项目任务进度是否满足与所述第一项目组存在调用关系的第二项目组所对应的项目任务的触发条件;当判断结果为是时,向所述第二项目组发送提示信息,启动所述第二项目组对应的项目任务,并更新所述项目集中各项目组的项目进度。

本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:

采用本申请实施例提供的基于微服务化架构的项目协调方法,根据研发需求信息,可以确定出研发所需调用的微服务以及微服务之间的调用关系,并确定各个微服务所对应的项目组,从而可以根据微服务所对应的项目组,创建研发项目集,通过研发项目集可以记录各项目组所对应的项目任务,并确定各个项目任务的触发条件,进而通过获取研发项目集中各个项目组的项目任务进度,根据微服务之间的调用关系,判断存在调用关系的项目组所对应的项目任务是否满足触发条件,并可以在判断满足触发条件的情况下,自动启动关联项目组的项目任务,从而可以通过该项目集协调管理各个项目组的任务进度,以实现在微服务化架构下,多项目组的高效协同研发。

附图说明

此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1为本申请实施例提供的一种基于微服务化架构的项目协调方法的具体流程示意图;

图2为本申请实施例提供的一种基于微服务化架构的项目协调系统的具体结构示意图;

图3为本申请实施例提供的一种基于微服务化架构的项目协调装置的具体结构示意图。

具体实施方式

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

以下结合附图,详细说明本申请各实施例提供的技术方案。

本申请实施例提供的一种基于微服务化架构的项目协调方法,用以解决在微服务架构下研发软件存在的项目间协调效率低,软件开发周期长以及开发期间问题响应缓慢的问题。

本申请实施例所提供的基于微服务化架构的项目协调方法,该方法的执行主体,可以是服务器,比如,用于进行软件开发的服务器以及用于进行项目管理的服务器等;或者,该方法的执行主体也可以是运行在服务器上的软件开发系统;此外该方法的执行主体也可以是软件研发人员所使用的终端设备,甚至可以是终端设备上安装的开发程序等。所述的执行主体并不构成对本申请的限定,为了便于描述,本发明实施例均以执行主体为软件开发系统为例进行说明。

该方法的具体实现流程示意图如图1所示,主要包括下述步骤:

步骤11,根据接收到的研发需求信息,确定研发所需调用的微服务以及所述微服务之间的调用关系;

其中,该研发需求信息可以是研发人员在软件开发系统上编写提交的需求信息,该研发需求信息可以包括:软件功能需求以及各功能需求间的层级关系。

在本方案中,研发人员可以根据待开发软件所要求具备的功能,编写软件功能需求,比如,软件设计人员希望研发出的软件具备有:“历史保单查看”、“优质保险推荐”、“缴费查询”以及“保额查询”等功能,则在需求编写阶段,研发人员需要将该些功能作为研发需求在软件开发系统上编写提交该些软件功能需求信息。

此外,在软件设计阶段,软件设计人员会根据用户使用习惯,对软件的操作界面进行优化。例如,针对音乐app,用户习惯在点击“推荐歌单”按键后,可以唤起“我的歌单”、“排行榜”、“今日推荐”以及“猜你喜欢”这四个功能所对应的操作界面,因而在设计音乐软件时,软件开发人员会根据用户使用习惯,设置软件各功能之间的上下级关系:一级功能:“推荐歌单”;二级功能:“我的歌单”、“排行榜”、“今日推荐”、“猜你喜欢”。则研发人员可以根据软件的设计要求,在软件开发系统上编写提交各功能需求之间的层级关系。

软件开发系统在接收到研发人员上传的该些研发需求信息后,通过对该些需求信息进行分析,可以确定需求信息中的功能需求,进而软件开发系统可以根据预先登记的已有微服务所能提供的服务内容,确定本次软件研发所需要调用的已有微服务、新增微服务以及各微服务之间的调用关系。

在一种实施方式中,本申请所提供的确定需要调用微服务的方法可以包括:根据所述研发需求信息中的功能需求,确定研发所需调用的已有微服务;根据所述研发需求信息中的功能需求,确定研发所需调用的新增微服务;根据所述各功能需求间的层级关系,确定与所述功能需求对应的微服务之间的调用关系。

在本申请实施例中,研发人员可以将目前已经开发出的微服务登记在软件开发系统中,登记信息包括微服务的唯一标识(id)、微服务的服务内容以及维护该微服务的项目组(包括项目组联系人员姓名和联络方式)。进而当软件开发系统接收到研发需求信息后,软件开发系统首先可以根据研发需求信息中的功能需求,在已登记的微服务中查找所提供服务内容与功能需求相匹配的微服务,并查找到的微服务确定为本次研发所需要调用的微服务。而当在已登记的微服务中未查找到与功能需求相匹配的微服务时,则软件开发系统可以新建一个微服务,将未匹配的功能需求作为该微服务所能提供的服务内容,并保存为该微服务分配研发项目组以及唯一标识。具体地,当根据研发需求信息中的功能需求,确定研发所需调用的新增微服务后,本方案提供的方法可以包括:记录并保存所述新增微服务的唯一标识、服务内容以及所对应的项目组。

步骤12,根据获取到的微服务的相关信息确定微服务对应的项目组;

由于软件开发系统中预先保存了已有微服务以及新增微服务的相关信息,且服务的相关信息包括所述微服务的唯一标识、所述微服务对应的项目组以及所述微服务的服务内容,则当软件开发系统确定本次研发所需要代用的微服务后,软件开发系统可以进一步地根据该些微服务的相关信息,确定该些微服务所对应的项目组。

步骤13,根据所述微服务所对应的项目组,创建研发项目集,在所述研发项目集中记录各项目组所对应的项目任务,并根据所述微服务之间的调用关系,确定所述项目任务的触发条件;

在本方案中,软件开发系统可以根据通过执行步骤12确定的参加本次研发工作的项目组,创建研发项目集。

其中,根据项目管理协会(pmi)的定义,项目集为“经过协调管理以便获取单独管理这些项目时无法取得的收益和控制的一组相关联的项目”,即通过创建的该项目集可以对软件开发过程中的多个相关的项目组进行协调管理,以实现对该些项目更高效的控制与协调。在本方案中,软件开发系统创建的项目集除了可以包括项目集中各单个项目所对应的工作任务外,还可以包括单个项目范围之外的相关工作(比如项目集的管理工作)。

软件开发系统在创建研发项目集后,会根据研发项目集中各个项目组所对应的微服务,为项目集中各个项目组分配项目任务,并记录在项目集中。例如,软件开发系统创建的研发项目集中包含:项目组a、项目组b以及项目组c,且通过执行步骤11~步骤12,确定项目组a负责对已有微服务1进行调整,项目组b负责将已有微服务2复用至本次软件研发中,项目组c负责新增微服务3的开发,则软件开发系统可以据此在研发项目集中为这三个项目组分配项目任务,分别为:

项目组a对应项目任务:微服务1的调整;则微服务1的调整进度即为项目组a对应项目任务的任务进度。

项目组b对应项目任务:微服务2的复用;则微服务2的复用进度即为项目组b对应项目任务的任务进度。

项目组c对应项目任务:微服务3的开发;则微服务3的开发进度即为项目组a对应项目任务的任务进度。

由于在微服务架构下进行软件开发,待研发的软件虽然被拆分为了一个个可独立开发的微服务,但是由于在软件设计阶段已经预先设计好了软件各个功能之间的层级关系,因而在开发过程中各个微服务之间也同样存在调用关系,即存在调用关系的两个微服务所对应的项目组之间项目进行会相互影响。例如,通过执行步骤11确定的微服务1与微服务2之间存在调用关系,且调用关系为微服务2需要调用微服务1的服务结果来实现,微服务1对应项目组a,微服务2对应项目组b,因而项目组b需要在项目组a的项目进度完成后,才可以启动自己所对应的项目任务,则可以将项目组a对应的项目任务称为项目组b对应项目任务的前置任务,且在一种实施方式中,软件开发系统可以将项目组a对应项目任务的任务进度作为项目组b对应项目任务的触发条件。

在本申请实施例中,软件开发系统可以通过根据微服务之间的调用关系确定项目任务的触发条件,具体可以包括:根据与所述项目组对应的微服务的服务内容,确定并记录与所述项目组对应的项目任务;根据与所述项目组对应的微服务之间的调用关系,确定与项目组对应的各项目任务之间的前后依赖关系,根据各项目任务之间的前后依赖关系分别确定各项目任务的前置任务,并将所述前置任务的完成作为所述项目任务的触发条件。

步骤14,获取研发项目集中第一项目组的项目任务进度,并根据微服务之间的调用关系,判断所述第一项目组的项目任务进度是否满足与所述第一项目组存在调用关系的第二项目组所对应的项目任务的触发条件;当判断结果为是时,则执行步骤15;当判断结果为否时,则执行步骤16;

在研发过程中,软件开发系统会对研发项目集中的各个项目组的项目任务进行监控,并根据监到的某项目组的项目任务进度,判断与该项目组存在调用关系的其他项目组的项目任务是否满足启动条件。

在一种实施方式中,一个项目组可能会与多个项目组存在调用关系,该项目组的项目任务可以划分为多个阶段,每个阶段分别与不同项目组所对应项目任务的触发条件相关。

例如,项目组a分别与项目组b以及项目组c存在调用关系,项目组a对应的项目任务可以划分为阶段a以及阶段b这两个阶段,当项目组a对应项目任务完成阶段a时,可以触发项目组b启动对应的项目任务,而当项目组a对应项目任务完成阶段b时,可以触发项目组c启动对应的项目任务。在这种情况下,在研发过程中,软件开发系统会对项目组a的项目任务进行监控,以确定项目组a是否完成阶段a以及阶段b这两个阶段的任务,进而据此判断项目组b以及项目组c是否可以启动各自对应的项目任务。

步骤15,当通过执行步骤14得到的判断结果为是时,软件开发系统向第二项目组发送提示信息,启动第二项目组对应的项目任务,并更新所述项目集中各项目组的项目进度;

当软件开发系统检测到某一项目组项目任务的前置任务完成时,当该项目组对应的项目任务为自动化任务时,软件开发系统可以自动启动该项目组的项目任务,同时向该项目组的负责人发送提示信息;而当该项目组对应的项目任务为非自动化任务,软件开发系统可以向该项目组的负责人发送提醒信息,以提醒该项目组可以启动该项目组对应的项目任务。

在一种实施方式中,软件开发系统可以根据监测到的研发项目集中各项目组的项目任务进展,实时对项目集中的各项目组的项目进行更新。同时,软件开发系统可以根据项目任务状态的变化,对项目任务所涉及的系统资源状态进行更新。例如,当涉及资源占用的项目任务的状态更新为开始时,则软件开发系统可以实时将相关资源的状态标识为正在使用;当涉及资源释放的任务的状态更新为完成时,则软件开发系统可以实时将相关资源的状态标识为未使用。

另外,由于项目组对应项目任务在各个阶段所需要的系统资源是相同的,则软件开发系统可以根据系统资源的使用状况,以及项目集内各个项目组当前的项目任务状态,判断项目组的任务状态与项目组的资源使用状态是否向匹配,判断结果为否时,则说明此时项目组的项目任务出现异常,进而软件开发系统可以向该项目组负责人发送告警信息,以提醒该项目组负责人对该项目任务进行问题处理。

步骤16,当通过执行步骤14得到的判断结果为否时,获取第一项目组项目任务的开始时间,并获取第一项目组项目任务的运行时间以及第二项目组项目任务的计划开始时间;根据第一项目组项目任务的开始时间、第一项目组项目任务的运行时间以及第二项目组项目任务的计划开始时间,判断第一项目组的项目任务进度是否会延迟第二项目组项目任务的启动;并在判断结果为是时,向第一项目组以及第二项目组发送告警信息。

假设项目组a的项目任务为项目组b项目任务的前置任务,项目组a项目任务的开始时间为7:00,当前运行时间为10小时,而软件开发系统中预先登记的项目组b项目任务的计划开始时间为16:50,而此时由于项目组b项目任务的前置任务仍未完成,则项目组b仍然无法启动对应的项目任务,导致项目组b的项目任务启动出现延迟,则在这种情况下,软件开发系统可以向项目组a以及项目组b发送告警信息,以提示项目组a以及项目组b对任务故障进行处理,以避免对整个研发项目集的研发进度造成影响。采用本申请实施例提供的基于微服务化架构的项目协调方法,根据研发需求信息,可以确定出研发所需调用的微服务以及微服务之间的调用关系,并确定各个微服务所对应的项目组,从而可以根据微服务所对应的项目组,创建研发项目集,通过研发项目集可以记录各项目组所对应的项目任务,并确定各个项目任务的触发条件,进而通过获取研发项目集中各个项目组的项目任务进度,根据微服务之间的调用关系,判断存在调用关系的项目组所对应的项目任务是否满足触发条件,并可以在判断满足触发条件的情况下,自动启动关联项目组的项目任务,从而可以通过该项目集协调管理各个项目组的任务进度,以实现在微服务化架构下,多项目组的高效协同研发。

此外,本申请实施例还提供的一种基于微服务化架构的项目协调系统,用以解决在微服务架构下研发软件存在的项目间协调效率低,软件开发周期长以及开发期间问题响应缓慢的问题。该系统的具体结构示意图如图2所示,包括:需求分析单元21、项目组确定单元22、项目集创建单元23、任务触发单元24以及任务启动单元25。

其中,需求分析单元21,用于根据接收到的研发需求信息,确定研发所需调用的微服务以及所述微服务之间的调用关系;

项目组确定单元22,用于根据获取到的所述微服务的相关信息确定所述微服务对应的项目组,其中,所述微服务的相关信息包括所述微服务的唯一标识、所述微服务对应的项目组以及所述微服务的服务内容;

项目集创建单元23,用于根据所述微服务所对应的项目组,创建研发项目集,在所述研发项目集中记录各项目组所对应的项目任务,并根据所述微服务之间的调用关系,确定所述项目任务的触发条件;

任务触发单元24,用于获取所述研发项目集中第一项目组的项目任务进度,并根据所述微服务之间的调用关系,判断所述第一项目组的项目任务进度是否满足与所述第一项目组存在调用关系的第二项目组所对应的项目任务的触发条件;

任务启动单元25,用于当任务触发单元24判断结果为是时,向所述第二项目组发送提示信息,启动所述第二项目组对应的项目任务,并更新所述项目集中各项目组的项目进度。

在一种实施方式中,还包括业务vpn路由表生成单元,具体用于:接收集中控制服务器转发的所述其他路由设备的唯一标识符与ip地址的映射关系数据;根据接收到的所述其他路由设备的唯一标识符与ip地址的映射关系,生成所述业务vpn路由表。

在一种实施方式中,本方案所提供的基于微服务化架构的项目协调系统还包括告警单元,具体用于:当任务触发单元判断结果为否时,获取所述第一项目组项目任务的开始时间,并获取所述第一项目组项目任务的运行时间;获取所述第二项目组项目任务的计划开始时间;根据所述第一项目组项目任务的开始时间、第一项目组项目任务的运行时间以及所述第二项目组项目任务的计划开始时间,判断所述第一项目组的项目任务进度是否会延迟所述第二项目组项目任务的启动;当判断结果为是时,向所述第一项目组以及所述第二项目组发送告警信息。

在一种实施方式中,研发需求信息包括功能需求以及各功能需求间的层级关系;则需求分析单元21,具体用于:根据所述研发需求信息中的功能需求,确定研发所需调用的已有微服务;根据所述研发需求信息中的功能需求,确定研发所需调用的新增微服务;根据所述各功能需求间的层级关系,确定与所述功能需求对应的微服务之间的调用关系

在一种实施方式中,需求分析单元21,还用于:记录并保存所述新增微服务的唯一标识、服务内容以及所对应的项目组。

在一种实施方式中,任务触发单元24具体用于:根据与所述项目组对应的微服务的服务内容,确定并记录与所述项目组对应的项目任务;根据与所述项目组对应的微服务之间的调用关系,确定与项目组对应的各项目任务之间的前后依赖关系,根据各项目任务之间的前后依赖关系分别确定各项目任务的前置任务,并将所述前置任务的完成作为所述项目任务的触发条件。

在一种实施方式中,本方案所提供的基于微服务化架构的项目协调系统还包括状态更新单元,具体用于:获取研发过程中,所述项目集内各个项目组当前资源使用状态;获取所述项目集内各个项目组当前的项目任务状态;判断所述项目组的任务状态与所述项目组的资源使用状态是否向匹配;当判断结果为否时,向所述项目组发送告警信息。

采用本申请实施例提供的基于微服务化架构的项目协调系统,根据研发需求信息,可以确定出研发所需调用的微服务以及微服务之间的调用关系,并确定各个微服务所对应的项目组,从而可以根据微服务所对应的项目组,创建研发项目集,通过研发项目集可以记录各项目组所对应的项目任务,并确定各个项目任务的触发条件,进而通过获取研发项目集中各个项目组的项目任务进度,根据微服务之间的调用关系,判断存在调用关系的项目组所对应的项目任务是否满足触发条件,并可以在判断满足触发条件的情况下,自动启动关联项目组的项目任务,从而可以通过该项目集协调管理各个项目组的任务进度,以实现在微服务化架构下,多项目组的高效协同研发。

图3是本申请的一个实施例电子设备的结构示意图。请参考图3,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(random-accessmemory,ram),也可能还包括非易失性存储器(non-volatilememory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。

处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是isa(industrystandardarchitecture,工业标准体系结构)总线、pci(peripheralcomponentinterconnect,外设部件互连标准)总线或eisa(extendedindustrystandardarchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图3中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。

处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成数据同步装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:

根据接收到的研发需求信息,确定研发所需调用的微服务以及所述微服务之间的调用关系;

根据获取到的所述微服务的相关信息确定所述微服务对应的项目组,其中,所述微服务的相关信息包括所述微服务的唯一标识、所述微服务对应的项目组以及所述微服务的服务内容;

根据所述微服务所对应的项目组,创建研发项目集,在所述研发项目集中记录各项目组所对应的项目任务,并根据所述微服务之间的调用关系,确定所述项目任务的触发条件;

获取所述研发项目集中第一项目组的项目任务进度,并根据所述微服务之间的调用关系,判断所述第一项目组的项目任务进度是否满足与所述第一项目组存在调用关系的第二项目组所对应的项目任务的触发条件;

当判断结果为是时,向所述第二项目组发送提示信息,启动所述第二项目组对应的项目任务,并更新所述项目集中各项目组的项目进度。

上述如本申请图3所示实施例揭示的基于虚拟网络的通信装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(centralprocessingunit,cpu)、网络处理器(networkprocessor,np)等;还可以是数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现场可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。

当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。

本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图3所示实施例的方法,并具体用于执行以下操作:

根据接收到的研发需求信息,确定研发所需调用的微服务以及所述微服务之间的调用关系;

根据获取到的所述微服务的相关信息确定所述微服务对应的项目组,其中,所述微服务的相关信息包括所述微服务的唯一标识、所述微服务对应的项目组以及所述微服务的服务内容;

根据所述微服务所对应的项目组,创建研发项目集,在所述研发项目集中记录各项目组所对应的项目任务,并根据所述微服务之间的调用关系,确定所述项目任务的触发条件;

获取所述研发项目集中第一项目组的项目任务进度,并根据所述微服务之间的调用关系,判断所述第一项目组的项目任务进度是否满足与所述第一项目组存在调用关系的第二项目组所对应的项目任务的触发条件;

当判断结果为是时,向所述第二项目组发送提示信息,启动所述第二项目组对应的项目任务,并更新所述项目集中各项目组的项目进度。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

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