动态关键路径分析方法、装置及电子设备与流程

文档序号:23471100发布日期:2020-12-29 13:15阅读:101来源:国知局
动态关键路径分析方法、装置及电子设备与流程
本申请涉及网络计划
技术领域
,特别是涉及动态关键路径分析方法、装置及电子设备。
背景技术
:关键路径法被广泛应用在各类网络计划软件中,包括以横道图为主要显示方式的网络计划软件,以双代号网络图为主要显示方式的网络计划软件,还有其他显示形式的计划软件,等等。在这些计划软件中,针对一份确定的网络计划,均能够根据关键路径法分析得出确定的关键路径及关键活动。关键路径法为项目计划管理提供了重要的帮助,特别是为项目及其主要活动提供了图形化的显示,这些量化信息为识别潜在的项目延迟风险提供极其重要的依据。但现有的关键路径法在项目计划管理的实际应用中也存在着不足,其中重要的一点是关键路径法仅能针对计划的总工期目标进行关键路径分析。比如以一个建筑建设项目为例,其施工组织计划就是一个典型的网络计划,除了完工交付这个总目标之外,施工计划中往往存在一些阶段性目标,比如基础施工阶段的阶段目标为主体结构出正负零,主体结构施工阶段为结构封顶等,如何识别出针对某个阶段目标的关键路径以帮助进行特定的优化决策也是施工管理人员经常面临的问题;又例如在工程建设项目中往往有大量的专业分包商参与,特定的专业分包商仅负责项目计划中该专业相关的活动,他们往往需要识别其负责专业活动部分的关键路径以帮助进行有效的资源分配。这些使用场景,传统的关键路径法不能发挥有效作用。技术实现要素:本申请提供了动态关键路径分析方法、装置及电子设备,能够帮助网络计划的不同参与者更加个性化对其实际所需的目标进行关键路径分析。本申请提供了如下方案:一种动态关键路径分析方法,包括:确定当前分析所针对的计划管理目标;其中,所述计划管理目标通过关联的网络计划中的指定活动进行表达;分别确定所述网络计划中多个活动的总浮动时间以及目标浮动时间;其中,所述目标浮动时间根据当前活动在所述计划管理目标下所影响的活动的相关参数进行确定;将总浮动时间不大于目标浮动时间或者总浮动时间不为正的活动确定为针对所述计划管理目标的关键活动,并根据所述关键活动确定针对所述计划管理目标的关键路径。一种动态关键路径分析装置,包括:计划管理目标确定单元,用于确定当前分析所针对的计划管理目标;其中,所述计划管理目标通过关联的网络计划中的指定活动进行表达;计算单元,用于分别确定所述网络计划中多个活动的总浮动时间以及目标浮动时间;其中,所述目标浮动时间根据当前活动在所述计划管理目标下所影响的活动的相关参数进行确定;关键活动及路径确定单元,用于将总浮动时间不大于目标浮动时间或者总浮动时间不为正的活动确定为针对所述计划管理目标的关键活动,并根据所述关键活动确定针对所述计划管理目标的关键路径。根据本申请提供的具体实施例,本申请公开了以下技术效果:通过本申请实施例,可以使得用户可以根据自己的需求来指定具体的计划管理目标,该目标可以由网络计划中的0个或1个或多个活动来进行表达。另外,还新增了目标浮动时间这一指标,目标浮动时间的含义为该活动所能够影响到的目标活动集合中的各活动的总浮动时间的最大值。另外,还对具体关键活动的判断方式进行了更新。具体的,在进行关键路径分析时,可以计算出网络计划中多个活动分别对应的总浮动时间以及目标浮动时间;之后,可以对多个活动进行判断,如果某活动的总浮动时间不大于其目标浮动时间时,或者总浮动时间不为正时,则意味着该活动的任何延迟都将影响至少一个目标活动所具有的总浮动时间,即会对设定的目标会产生影响,因此,可以确定为关键活动。在确定出多个关键活动后,可以根据关键活动的紧前紧后活动关系等信息确定出具体的关键路径。通过该方案,使得具体在进行关键路径分析时,不仅可以以总工期为目标,还可以以网络计划中某个阶段性的活动为目标,或者,根据将某个项目参与者所需完成的特定计划目标为目标,等等。因此,扩展了关键路径法的应用范围,能够帮助网络计划的不同参与者更加个性化对其实际所需的目标进行关键路径分析,明确其当前的工作重点。另外,由于本申请实施例中分析出的关键活动是指其活动的延时完成会影响指定目标中至少一个目标活动的浮时,因此,使得关键路径与关键活动的定义比传统的关键路径法中的定义更具有管理上的明确业务含义。当然,实施本申请的任一产品并不一定需要同时达到以上所述的所有优点。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本申请实施例提供的方法的流程图;图2是网络计划示意图;图3是本申请实施例提供的系统的示意图;图4是本申请实施例提供的电子设备的示意图。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本申请保护的范围。在本申请实施例中,考虑到一个网络计划中,在计划的不同阶段可能存在着不同的管理需要,在不同的阶段,由于目标不同,因此,对应的关键活动以及关键路径会有所不同;另外,不同的项目参与者可能只需要完成一个完整计划中的一部分特定计划目标,此时,该项目参与者可能只需要关心该特定计划目标下的关键活动以及关键路径,等等。而现有技术中由于只能以网络计划的总工期为目标进行关键活动以及关键路径分析,因此,无法满足上述需求。针对上述需求,本申请实施例提供了对应的解决方案。在该解决方案中,首先可以允许用户输入具体的计划管理目标,该目标可以通过网络计划中的0个或1个或多个活动来进行表达。也就是说,在本申请实施例中,可以允许用户输入或者选择具体需要进行关键路径分析的目标,该目标可以是整个网络计划的总工期目标,或者,还可以以网络计划中的某个阶段性活动为目标,或者,某个项目参与者所需完成的特定计划目标为目标,另外,还可以选择0个活动作为目标,此时,相对于无特定目标,具体都可以由具体的用户根据实际的需求进行设定。另外,本申请实施例中还提出目标浮动时间的概念,并对具体计算活动的最迟开始时间、最迟结束时间、总浮动时间等参数的方式进行了更新。对于网络计划中的各个活动,可以分别计算出总浮动时间以及目标浮动时间,最终可以根据计算出的总浮动时间及其与目标浮动时间之间的大小关系,来确定出关键活动,进而确定出关键路径。其中,目标浮动时间的含义为该活动所能够影响到的活动的总浮动时间的最大值。其中,根据具体情况的不同,不同的活动影响到的活动是不一样的。例如,如果某网络计划关联有wbs(网络计划的树状活动分解结构)层级关系,且当前活动存在紧后活动,则该当前活动所影响的活动包括:当前活动及其在所述wbs中的上级父活动中属于所述计划管理目标的目标活动,以及所述当前活动的紧后活动。如果某网络计划未关联wbs层级关系,当前活动属于所述计划管理目标,且当前活动存在紧后活动,则所述当前活动所影响的活动包括:当前活动以及所述当前活动的紧后活动,等等。一旦该活动的总浮动时间不大于其目标浮动时间时,或者总浮动时间不为正时,意味着该活动的任何延迟都将影响至少一个目标活动所具有的总浮动时间,即会对设定的目标会产生影响,因此,可以确定为关键活动。在确定出多个关键活动后,可以根据关键活动之间的紧前紧后关系等,确定出具体的关键路径。具体的,本申请实施例可以应用于各类网络计划软件中,通过对现有的网络计划软件进行改进,或者开发全新的网络计划软件,在其中实现本申请实施例所提供的功能模块,则可以为用户提供面向阶段性目标或者项目参与者所需负责的目标的关键路径分析功能。下面对本申请实施例提供的方案进行详细介绍。具体的,本申请实施例提供了一种动态关键路径分析方法,该方法的各个步骤的执行主体可以是网络计划软件。参见图1,该方法具体可以包括:s101:确定当前分析所针对的计划管理目标;其中,所述计划管理目标通过关联的网络计划中的指定活动进行表达;s102:分别确定所述网络计划中多个活动的总浮动时间以及目标浮动时间;其中,所述目标浮动时间根据当前活动在所述计划管理目标下所影响的活动的相关参数进行确定;s103:将总浮动时间不大于目标浮动时间或者总浮动时间不为正的活动确定为针对所述计划管理目标的关键活动,并根据所述关键活动确定针对所述计划管理目标的关键路径。为便于理解,下面对关键路径分析中涉及到的一些基本的概念进行介绍:网络计划由活动及活动之间的关系组成,根据网络计划中有关活动之间的相互关系,可以将活动划分为:紧前活动、紧后活动。用“i”代表当前活动,则“i-1”代表“i”的紧前活动,“i+1”代表“i”的紧后活动。其中,紧前活动,是指紧接在该活动之前的活动。紧前活动不结束,则该活动不能开始。紧后活动,是指紧接在该活动之后的活动。该活动不结束,紧后活动不能开始。一项具体的网络计划可以通过多种方式对各个活动进行描述。例如,其中可以包括平铺的方式,或者,对于一些相对复杂的网络计划,还可以通过带有父子层级的树状结构对各活动之间的层级关系进行描述,这种树状结构一般称为工作分解结构(wbs,workbreakdownstructure)。wbs结构通常以项目的可交付成果为导向对项目要素进行的分组,归纳和定义了项目的整个工作(活动)范围,每下降一层代表对项目工作(活动)的更详细定义。在wbs中的根工作(活动)代表了整个计划活动。例如,假设存在一个房间刷漆的网络计划,包含表1所示的活动:表1活动持续时间du紧前活动a准备2-b刷门框2ac刷屋顶3ad刷墙4ae第二遍墙2df结束2b、c、e则其网络图可以如图2所示,可以看出,该网络计划首先需要完成a活动,完成a节点的准备工作后,b、c、d三项活动可以并行进行;e活动需要在d活动完成之后进行;b、c、e都完成之后,进入f活动。其中,具体的网络图的结构可以预先由整个网络计划的制定者等用户来提供。需要说明的是,在图2所示的例子中并不存在wbs层级关系,如果在a节点之前再加入一个“r”节点,对应“房间刷漆”活动,则可以组成简单的wbs层级关系,该wbs层级关系中,r节点对应的“房间刷漆”活动为根活动,此时,该r节点也成为其他各节点在wbs层级关系中的上级父活动。另外,关键路径法的分析计算涉及到以下概念:最早开始时间(es,earlieststart):是指某项活动能够开始的最早时间,只决定于项目计划,只要计划的条件满足了就可以开始的时间。最早结束时间(ef,earliestfinish),是指某项活动能够完成的最早时间。最迟结束时间(lf,latestfinish),是指某项活动必须完成的最迟时间。最迟开始时间(ls,lateststart),是指某项活动必须开始的最迟时间。总浮动时间(tf,totalfloat),在任一网络路径上,进度活动可以从最早开始日期推迟或拖延的时间,而不至于延误项目完成日期或违反进度制约因素,就是总浮动时间或进度灵活性。活动持续时间(du,duration),是指某项活动的工期。传统的关键路径法的分析计算步骤如下:1、顺推法计算最早时间:顺推法从没有紧前活动的活动开始,按照活动的紧前紧后关系自前向后依次计算活动的最早时间,直至计算完全部活动。esi=max(efi-1),当前活动的最早开始时间=其紧前工作的最早结束时间的最大值;没有紧前工作时esi=0或计划指定的开始时间。最早结束时间efi=esi+dui。2、逆推法计算最迟时间:逆推法从没有紧后活动的活动开始,按照活动的紧前紧后关系自后向前依次计算活动的最迟时间、总浮动时间等指标,直至计算完全部活动。lfi=min(lsi+1),也即,当前活动的最迟结束时间=其紧后工作的最迟开始时间的最小值;没有紧后工作时lfi=计划根活动的最早结束时间(即所有活动的最早结束时间的最大值),或计划的要求完成时间。最迟开始时间lsi=lfi-dui;总浮动时间tfi=lfi-efi=lsi-esi。3、判定活动是否为关键活动,确定关键路径。所有活动中总浮动时间最小或者小于等于0的活动均为关键活动,关键活动组成关键路径,关键路径也是网络计划中总工期最长的一条或多条路径。而在本申请实施例中,在传统的关键路径法的基础上,增加和改进了以下内容:1、在分析计算关键路径之前,增加了设定计划的当前管理目标的步骤,让用户可以明确其管理需求。2、改进了关键路径法的逆推法计算最迟时间的算法,考虑了计划目标对计算工作最迟完成时间、总浮动时间的影响,并增加了新指标:目标浮动时间。3、根据内容2中的计算结果使用了新判定标准来判断针对当前目标的关键活动及分析关键路径。这样,基于同一份网络计划,根据管理需求的不同,也可以分析针对特定目标的关键路径,更好满足实际管理的需要。具体实现时,为了能够确定当前分析所针对的计划管理目标,可以在网络计划软件的用户界面中提供用于输入具体计划管理目标的操作选项,由用户进行输入。其中,输入的信息具体可以是网络计划中某个或者某几个具体活动的名称等标识信息。或者,另一种方式下,在存在wbs结构的情况下,也可以对整个网络计划的wbs结构进行展示,并将其中包含的各个节点置为可操作状态,使得用户可以通过选择其中某个或者某几个节点的方式,对其所需的计划管理目标进行选择。这样使得用户可以更直观地完成对计划管理目标的设定操作。其中,具体实现时,具体输入或者选择的活动也可以为0个,此时,相当于无特定目标。当然,还可以存在其他的设置计划管理目标的方式,例如,可以在活动的属性中增加是否为目标的相关属性,逐个对目标活动的属性进行设置(确认或取消),等等。另外,用户还可以对每个目标活动单独设置其在管理上的要求结束时间信息,如果不设置,则默认以该活动的最早结束时间作为要求结束时间。具体的目标活动,也就是具体被设置为管理计划目标的活动。在确定出计划管理目标后,可以分别确定所述网络计划中各个活动的总浮动时间以及目标浮动时间信息。其中,具体在计算目标浮动时间时,可以有多种方式。例如,一种方式下,可以利用逆推法依次计算所述多个活动的目标浮动时间;其中,对于当前活动,首先可以确定出其在当前的计划管理目标下,影响到哪些活动,然后再根据这些活动的相关参数(最早时间,最迟时间等)确定其目标浮动时间。具体的,如果所述网络计划关联有树状活动分解结构wbs层级关系,且所述当前活动存在紧后活动,则所述当前活动在所述计划管理目标下所影响的活动包括:当前活动及其在所述wbs中的全部上级父活动(一个当前活动可能有多个上级父活动)中属于所述计划管理目标的目标活动,以及所述当前活动的紧后活动。此时,具体在确定当前活动的目标浮动时间时,可以首先根据所述目标活动的要求结束时间的最小值,确定所述当前活动的要求结束时间,再根据所述当前活动的要求结束时间与最早结束时间之间的差值,确定所述当前活动的目标浮动时间计算值;然后,确定所述紧后活动的目标浮动时间计算值的最大值,再将该最大值与该当前活动的目标浮动时间计算值进行比较,将其中的较大者确定为所述当前活动的目标浮动时间的最终结果。如果所述网络计划未关联wbs层级关系,当前活动属于所述计划管理目标,且当前活动存在紧后活动,则所述当前活动在所述计划管理目标下所影响的活动包括:所述当前活动以及所述当前活动的紧后活动。此时,在利用逆推法依次计算所述多个活动的目标浮动时间时,对于当前活动,可以根据所述当前活动的要求结束时间与最早结束时间之间的差值,确定所述当前活动的目标浮动时间计算值;然后,确定所述当前活动的紧后活动的所述目标浮动时间计算值的最大值,并将该最大值与该当前活动的目标浮动时间计算值进行比较,将较大者确定为所述当前活动的目标浮动时间的最终结果。另外,如果当前活动关联有关联wbs层级关系,但所述当前活动以及其在所述wbs中的全部上级父活动均不属于所述计划管理目标;或者,如果所述网络计划未关联wbs层级关系且当前活动不属于所述计划管理目标,则此时当前活动的目标浮动时间计算值可以为空值。此时,当前活动在所述计划管理目标下所影响的活动就可以仅包括:所述当前活动的紧后活动。在确定当前活动的目标浮动时间的最终结果时,当前活动的目标浮动时间计算值由于为空值,因此,不再参与计算,可以直接将所述当前活动的紧后活动的所述目标浮动时间计算值的非空最大值,确定为所述当前活动的目标浮动时间的最终结果。当然,在当前活动的目标浮动时间的计算值为空值的情况下,如果当前活动不存在紧后活动,或者其全部紧后活动的目标浮动时间计算值也全部都为空值,那么当前活动的目标浮动时间的最终结果也为空值。另外,在目标浮动时间为空时,当前活动的要求结束时间是空值,且它要么没紧后活动,要么所有紧后活动的目标浮动时间也是空值,因此,最迟时间(包括最迟开始时间以及最迟结束时间)也就是空值了。也就是说,在本申请实施例中,允许存在“空值”的状态(在传统关键路径法中,最迟时间不允许出现空值的状态)。对于上述各种情况,如果当前活动不存在紧后活动,则可以直接将所述当前活动的目标浮动时间计算值确定为所述当前活动的目标浮动时间的最终结果。另外,在确定总浮动时间时,首先可以利用顺推法依次计算所述多个活动的最早开始时间以及最早结束时间(该过程可以与传统的关键路径法中的方式相同);然后,利用逆推法依次计算所述多个活动的最迟开始时间、最迟结束时间以及总浮动时间;其中,对于当前活动,在确定其最迟结束时间时,可以首先确定所述当前活动的紧后活动的最迟开始时间的最小值,并与所述当前活动的要求结束时间进行比较,将其中的较小者,确定为所述当前活动的最迟结束时间;然后再根据当前活动的最迟结束时间与工期之间的差值,确定所述当前活动的最迟开始时间,并根据最迟结束时间与最早结束时间之间的差值,确定所述当前获得的总浮动时间。其中,如果所述当前活动不存在紧后活动,则将所述当前活动的要求结束时间确定为所述当前活动的最迟结束时间。其中,关于目标活动的要求结束时间根据预先配置的信息进行确定,如果无配置信息,则将该目标活动的最早结束时间确定为所述要求结束时间。也就是说,在本申请实施例中,可以由用户根据具体的需求设定分析所针对的计划管理目标,该目标可以由0个或者1个至多个计划中的活动组成,其中每个目标活动可以单独设置其在管理上的要求结束时间,如果不设置,则可以默认以该活动的最早结束时间作为要求结束时间。换言之,如果一个目标是目标活动,则可以由用户指定该目标活动的要求结束时间,如果用户不特别指定要求结束时间,那么就用理论上的最早时间作为要求结束时间。在确定出具体的总浮动时间以及目标浮动时间后,可以将总浮动时间不大于目标浮动时间或者总浮动时间不为正的活动确定为针对所述计划管理目标的关键活动,并根据所述关键活动确定针对所述计划管理目标的关键路径。其中,具体实现时,可以根据关键活动在网络计划中的紧前紧后活动关系等信息确定出具体的关键路径。例如,在一种具体的实现方式下,假设当前网络计划关联有wbs层级关系,则本申请实施例提供的具体的关键路径分析过程可以如下:1、确定分析所针对的计划管理目标,目标可以由0个或者1个至多个计划中的活动组成,其中每个目标活动可以单独设置其在管理上的要求结束时间,如果不设置,则默认以该活动的最早结束时间作为要求结束时间。2、以关键路径法中的顺推法依次计算所有活动的最早开始时间以及最早结束时间。3、以改进的逆推法依次计算所有活动的最迟开始时间、最迟结束时间、总浮动时间、目标浮动时间。a)检查当前活动及其在wbs中所有上级父活动是否在目标中,选出符合条件的目标活动集合,例如,在图2所示的例子中,假设预先设定的目标是活动b、c,当前活动是a,由于其展示了一种平铺的网络计划结构,不存在上级父节点,并且,该活动a也不是预先设定的目标,因此,该当前活动对应的目标活动集合为空。如果当前活动是b,则该活动对应的目标活动集合为{b},等等。当前活动的要求结束时间rfi=集合中目标活动的要求结束时间最小值,目标浮动时间afi=rfi-efi(活动i的要求结束时间-该活动i的最早结束时间)。如果集合中没有活动则rfi=空值,相应的,afi=空值(空值代表没有相应时间值)。b)如果该活动有紧后活动,则最迟结束时间lfi=min(lsi+1,rfi),即活动的最迟结束时间为其紧后活动的最迟开始时间的最小值,并与该活动在a步骤中计算出的要求结束时间比较取小值;afi=max(afi+1,afi)活动的目标浮动时间为其紧后活动的目标浮动时间的最大值,并于该活动在a步骤中计算出的目标浮动时间比较取大值;上述计算过程中如果有空值的情况,则该空值均不参与比较计算,如果全部为空值,则结果也为空值。如果没有紧后活动,lfi=rfi,afi保持不变。c)该活动的最迟开始时间lsi=lfi-dui(最迟结束时间-工期),总浮动时间tfi=lfi-efi(最迟结束时间-最早结束时间)=lsi-esi(最迟开始时间-最早开始时间),如果最迟时间为空值,则总浮动时间也为空值4、判定活动是否为关键活动,确定关键路径。在动态关键路径方法中,关键活动的判定标准为活动的延迟会对目标活动产生影响(tfi<=afi)(总浮动时间<=目标浮动时间)或者无法实际满足目标要求结束时间(tfi<=0)(总浮动时间<=0),符合该条件的活动为关键活动,否则不是,tfi为空值时均不是关键活动。为了更好的理解本申请实施例提供的技术方案,下面以图2所示的网络计划及网络图为例,对传统的关键路径分析方案与本申请实施例提供的方案进行对比介绍。首先,该网络计划以传统关键路径法分析计算的结果如下表2所示:表2之后,可以将总浮动时间不为正的活动确定为关键活动,也即具体可以为:a、d、e、f。传统的关键路径分析方法由于只能以总工期作为目标进行分析,因此,只能给出上述一种分析结果。而在本申请实施例中,可以由用户根据具体的需求灵活设置具体的分析管理目标,下面通过多种场景分别进行举例介绍。场景1:以f为目标时按本申请实施例所提出的技术方案可以如下进行分析:1、将活动f设为目标(也就是说,本申请实施例中也可以以总工期为目标进行关键路径分析),其要求结束时间不设置,默认为活动f的最早结束时间ef。2、顺推法计算最早时间,依次记录活动计算结果如下表3所示:表3活动最早开始时间es最早结束时间efa准备02b刷门框24c刷屋顶25d刷墙26e第二遍墙68f结束8103、逆推法计算最迟时间、总浮动时间、目标浮动时间,依次记录活动计算结果如下表4所示:表44、按tf<=af或者tf<=0判定关键活动,关键活动为a、d、e、f。可见,该场景与传统关键路径法的结果是一致的场景2:目标为空按本申请实施例所提出的技术方案,可以如下进行:1、将目标设置为空2、顺推法计算最早时间,依次记录活动计算结果,其结果与场景1顺推法计算结果相同3、逆推法计算最迟时间、总浮动时间、目标浮动时间,依次记录活动计算结果如下表5所示,“-”代表空值:表54、按tf<=af或者tf<=0判定关键活动,结果为无关键活动该场景是没有为计划设定任何目标,其含义为计划活动可以无限期推迟,这样不会有任何关键活动和关键路径。场景3:目标为活动b、c按本申请实施例所提出的技术方案,可以如下进行:1、将目标设置为b、c,其中给活动b设置要求结束时间为5。2、顺推法计算最早时间,依次记录活动计算结果,其结果与场景1顺推法计算结果相同。3、逆推法计算最迟时间、总浮动时间、目标浮动时间,依次记录活动计算结果如下表6所示,“-”代表空值:表64、按tf<=af或者tf<=0判定关键活动,关键活动为a、b、c通过上述对比可见,传统关键路径法不能很好地体现出项目管理目标对关键路径的影响,而本申请实施例能够让参与计划的不同管理人员等用户提出其个性化管理目标并有针对性地进行相关分析。另外,本申请实施例扩展了关键路径法的应用范围,传统关键路径法计算得出的关键路径可以成为本申请实施例中的一个特例,即以wbs的根活动(或者所有无紧后活动的活动集合)为目标时的关键路径。本申请实施例还允许设置空目标,代表无管理目标要求,所有工作可以无限延后完成,这时的最迟时间、目标浮动时间参数也均为空值。也允许用户根据不同的管理需要对同一份计划设置不同的目标。本申请实施例中的关键路径与关键活动的定义比传统的关键路径法中的定义更具有管理上的明确业务含义:关键活动是指其活动的延时完成会影响指定目标中至少一个目标活动的浮时。而传统的关键路径与关键活动仅能代表会影响总工期。再者,本申请实施例能够让计划的不同参与者可以针对其个性化的管理目标来分析影响该目标的关键路径和关键活动,并可以提供相应的最早时间、最迟时间、目标浮动时间、总浮动时间等重要指标,帮助用户为完成其特定目标对计划进行有效优化。在执行过程中,可以帮助计划的不同参与者更加个性化的明确其当前的工作重点。需要说明的是,本申请实施例提供的动态关键路径分析方法可以应用于上述例子中比较简单的网络计划,也可以应用于更复杂的网络计划。例如,搭接网络计划或其他形式的网络计划,等等。其中,搭接网络计划定义了更为复杂的搭接关系(通常有4种搭接关系:完成-开始/完成-完成/开始-开始/开始完成),并且搭接关系可以设置特定提前或延迟时间(不一定为0)等,这些会影响网络计划中活动的最早时间、最晚时间的计算,但仍然可以利用本申请实施例提供的方案进行动态关键路径的分析。也即,无论是简单的网络计划还是复杂的网络计划,都可以用本申请实施例提供的方案进行计划管理目标的动态设定,以及目标浮动时间的计算,关键活动的确定,等等,不同之处仅在于网络计划中活动的最早时间、最晚时间等各项参数的计算上。关于不同网络结构中具体最早时间、最晚时间等各项参数的计算,由于并不属于本申请实施例关注的重点,也不存在相关的改进点,因此,可以参照已有技术中的相关记载,这里不再详述。与前述方法实施例相对应,本申请实施例还提供了一种动态关键路径分析装置,参见图3,该装置可以包括:计划管理目标确定单元301,用于确定当前分析所针对的计划管理目标;其中,所述计划管理目标通过关联的网络计划中的指定活动进行表达;计算单元302,用于分别确定所述网络计划中多个活动的总浮动时间以及目标浮动时间;其中,所述目标浮动时间根据当前活动在所述计划管理目标下所影响的活动的相关参数进行确定;关键活动及路径确定单元303,用于将总浮动时间不大于目标浮动时间或者总浮动时间不为正的活动确定为针对所述计划管理目标的关键活动,并根据所述关键活动确定针对所述计划管理目标的关键路径。其中,计划管理目标确定单元具体可以用于:提供用于输入计划管理目标的操作选项,以便通过所述操作选项接收指定的活动信息,并确定为所述计划管理目标。或者,计划管理目标确定单元具体可以用于:如果所述网络计划关联有树状活动分解结构wbs层级关系,则对所述网络计划关联的wbs进行展示,并将其中的节点置为可选择状态,以便通过接收对所述节点的选择操作,确定所述计划管理目标;所述wbs层级关系用于记录所述网络计划关联的多个活动之间的层级关系。其中,如果所述网络计划关联有树状活动分解结构wbs层级关系,且所述当前活动存在紧后活动,则所述当前活动在所述计划管理目标下所影响的活动包括:当前活动及其在所述wbs中的上级父活动中属于所述计划管理目标的目标活动,以及所述当前活动的紧后活动;此时,所述计算单元具体可以用于:利用逆推法依次计算所述多个活动的目标浮动时间;其中,对于当前活动,根据所述目标活动的要求结束时间的最小值,确定所述当前活动的要求结束时间,再根据所述当前活动的要求结束时间与最早结束时间之间的差值,确定所述当前活动的目标浮动时间计算值;确定所述当前活动的紧后活动的所述目标浮动时间计算值的最大值,并将该最大值与该当前活动的目标浮动时间计算值进行比较,将较大者确定为所述当前活动的目标浮动时间的最终结果。如果所述网络计划未关联wbs层级关系,当前活动属于所述计划管理目标,且当前活动存在紧后活动,则所述当前活动在所述计划管理目标下所影响的活动包括:所述当前活动以及所述当前活动的紧后活动;此时,所述计算单元具体可以用于:利用逆推法依次计算所述多个活动的目标浮动时间;其中,对于当前活动,根据所述当前活动的要求结束时间与最早结束时间之间的差值,确定所述当前活动的目标浮动时间计算值;确定所述当前活动的紧后活动的所述目标浮动时间计算值的最大值,并将该最大值与该当前活动的目标浮动时间计算值进行比较,将较大者确定为所述当前活动的目标浮动时间的最终结果。另外,所述计算单元还可以用于:如果当前活动不存在紧后活动,则将所述当前活动的目标浮动时间计算值确定为所述当前活动的目标浮动时间的最终结果。再者,如果所述网络计划未关联wbs层级关系,且当前活动不属于所述计划管理目标,所述当前活动的目标浮动时间的最终结果为空值。具体实现时,该装置还可以包括:第一计算单元,用于利用顺推法依次计算所述多个活动的最早开始时间以及最早结束时间;第二计算单元,用于利用逆推法依次计算所述多个活动的最迟开始时间、最迟结束时间以及总浮动时间;其中,对于当前活动,所述第二计算单元具体可以用于:在确定其最迟结束时间时,确定所述当前活动的紧后活动的最迟开始时间的最小值,并与所述当前活动的要求结束时间进行比较,将其中的较小者,确定为所述当前活动的最迟结束时间;根据当前活动的最迟结束时间与工期之间的差值,确定所述当前活动的最迟开始时间,并根据最迟结束时间与最早结束时间之间的差值,确定所述当前获得的总浮动时间。另外,所述第二计算单元还可以用于:如果所述当前活动不存在紧后活动,则将所述当前活动的要求结束时间确定为所述当前活动的最迟结束时间。其中,所述目标活动的要求结束时间根据预先配置的信息进行确定,如果无配置信息,则默认为空值,且与该要求结束时间相关的其他参数也为空值。所述当前分析所针对的计划管理目标可以包括:所述网络计划中的阶段性目标,或者,所述网络计划中的具体项目参与者所需负责的部分对应的特定计划目标。另外,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现前述方法实施例中任一项所述的方法的步骤。以及一种计算机系统,包括:一个或多个处理器;以及与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行前述方法实施例中任一项所述的方法的步骤。其中,图4示例性的展示出了电子设备的架构,具体可以包括处理器410,视频显示适配器411,磁盘驱动器412,输入/输出接口413,网络接口414,以及存储器420。上述处理器410、视频显示适配器411、磁盘驱动器412、输入/输出接口413、网络接口414,与存储器420之间可以通过通信总线430进行通信连接。其中,处理器410可以采用通用的cpu(centralprocessingunit,中央处理器)、微处理器、应用专用集成电路(applicationspecificintegratedcircuit,asic)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请所提供的技术方案。存储器420可以采用rom(readonlymemory,只读存储器)、ram(randomaccessmemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器420可以存储用于控制电子设备400运行的操作系统421,用于控制电子设备400的低级别操作的基本输入输出系统(bios)。另外,还可以存储网页浏览器423,数据存储管理系统424,以及关键路径分析处理系统425等等。上述关键路径分析处理系统425就可以是本申请实施例中具体实现前述各步骤操作的应用程序。总之,在通过软件或者固件来实现本申请所提供的技术方案时,相关的程序代码保存在存储器420中,并由处理器410来调用执行。输入/输出接口413用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。网络接口414用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如usb、网线等)实现通信,也可以通过无线方式(例如移动网络、wifi、蓝牙等)实现通信。总线430包括一通路,在设备的各个组件(例如处理器410、视频显示适配器411、磁盘驱动器412、输入/输出接口413、网络接口414,与存储器420)之间传输信息。需要说明的是,尽管上述设备仅示出了处理器410、视频显示适配器411、磁盘驱动器412、输入/输出接口413、网络接口414,存储器420,总线430等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。以上对本申请所提供的动态关键路径分析方法、装置及电子设备,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1