标题 | 改进关键链挣值技术在软件工程及集成项目进度控制中运用探讨 |
范文 | 胡维涛 邓雅尹 马成前 摘 要: 软件工程及集成项目由于既包含软件开发又涵盖硬件施工等工序,其进度控制一直是施工单位、业主面临的主要问题之一。关键链项目管理通过设置缓冲区将进度的风险降到最低,同时对此类项目的软、硬件工序进行分层分类管理,相较于传统的进度管理方法有天然的优势。在借鉴关键链管理方法的基础上,结合挣值法,提出改进的关键链挣值技术。该方法借鉴PERT法,采用未消耗緩冲区、完全消耗缓冲区和最可能消耗缓冲区三种情况确定计划工期,将关键链项目工期转化为传统挣值法可以应用的工期,同时对缓冲区消耗监控方法加以改进,在外部和内部两个层面上对项目进度进行控制,提高了工期监控的准确性和灵活性,并进行了实例验证。 关键词: 软件工程;集成项目;关键链;挣值;进度控制 中图分类号: TB????? 文献标识码: A????? doi:10.19311/j.cnki.1672-3198.2019.13.088 1 引言 随着科技的飞速发展,信息技术逐步渗透到了社会生活的方方面面,极大地促进了社会生产力的提高,IT产业已经成为国民经济重要的支柱产业,根据工业和信息化部的资料,2018年国内IT项目总产值已达到3万亿元人民币,国务院制订了中国制造2025计划,到2025年,IT产业总产值有望突破10万亿元。随着软件工程及集成项目的广泛开展,软件工程的返工率高、软硬件施工难配合等问题将成为此类项目管理的重要制约因素。 项目管理实践中,相较于关键路径法,关键链法很好的克服了资源约束、帕金森定律以及学生综合症等问题,并能够节省不必要的安全时间,同时用缓冲区作为项目风险的缓释机制,可最大程度保证项目顺利完成。但该方法也有其局限性,比如同样是缓冲消耗比例为30%,但两个任务分别完成80%和20%,其所对应的风险等级是完全不同的,再加上缓冲时间的大小设定本来就不够精确,使得该监控方法不能准确把握项目进行过程中的风险,因此单纯利用缓冲区监控来进行项目进度管理会带来很多问题。 项目管理挣值技术,广泛应用于国防军工、工程和制造等行业,对项目进度和成本管理比较成熟和有效,但也有其局限性,挣值法的偏差指标不能说明成本和进度是否在项目可控范围内,若发生重大偏差则不具备控制意义。本文考虑将挣值技术运用于关键链项目,通过挣值分析,定性分析进度是否延误,同时利用关键链理论,对缓冲区监控方法进行改进,定量分析进度延误的程度,通过定性和定量两方面对软件工程及集成项目进度进行控制。 2 软件工程及集成项目进度管理特点 软件工程及集成项目由于既包括软件开发又包含硬件施工、安装等工序,其进度管理以及工期安排有不同于传统项目的特点,具体来说有如下几点。 2.1 软件高返工率的影响 软件系统越来越复杂,需求变动快,返工频繁,对整个项目的完工期限构成了潜在的威胁。有关资料表明,70%的软件开发项目超出预定周期,90%项目超过计划成本,充分反映软件高返工率对进度和成本的巨大影响。 2.2 与主体工程衔接的影响 软件工程及集成项目与建筑施工有衔接,比如楼宇数字系统就要等大楼基础施工结束后才能进行,隧道监控系统要等到隧道洞穿后才能与基础施工一起进行预埋件安装等作业,如果衔接不紧,将导致时间资源浪费甚至工期延误等情况发生。 2.3 工序工期和重要性程度不匹配的影响 在施工过程中,初期就要把类似于传感器等预埋件安装到位,然后建筑施工才能进行,虽然看起来延续的时间很长,因为要等建筑施工完毕才能安装、上线系统,但实际工作量很小,花费也很少,必须全部完工才能验收,合格后才能收到项目款。而项目中有的工作,比如研发软件,研发的周期与前者工期一样,但工序复杂且返工频繁,费用很高,重要性程度明显高于前者,中途因为出错导致的返工将严重影响项目进度。 3 改进的关键链挣值管理方法 缓冲区的设置方法,已经有很多学者进行了研究,本文主要采取根方差法对缓冲区进行设置。基于对此类项目进度管理特点的分析,为更好地解决不同工序工期长短与风险重要度的错配问题,提出改进的关键链挣值方法,其要点如下: 一是基于项目各工序对整体项目风险影响程度不同提出风险影响度系数的概念,进而得到对项目风险影响最大的工序链路,定义该链路为项目风险链,一个项目风险链可能是该项目关键链,也可能是该项目非关键链。 二是对项目关键链建立基准工期,运用挣值技术和缓冲区监控两种方法监控项目执行情况。 三是对项目风险链(当风险链与关键链不同时)进行监控,防止因风险链路中工序延误导致风险链被动成为项目关键链的情况发生。 对于风险链处理如下: 如果风险链不是关键链,那么必须重点监控,防止因该链路工序延误导致变成项目关键链,先确定期望工期,计算出接驳缓冲剩余缓冲量,然后监控风险链上工序执行情况,若缓冲消耗量小于工序进度,则不采取行动,若缓冲消耗量大于工序进度,则立即查找原因,采取赶工等措施,防止风险链转变为关键链。 对于关键链处理如下: 按照工序重要性程度将缓冲区分配至各个工序,根据风险高低来决定分配量大小,而不是根据工期长短搞平均分配,同时借鉴PERT三值法,对缓冲区消耗情况按照未消耗缓冲区、完全消耗缓冲区、最可能消耗缓冲区这三种情况进行取值,得到缓冲区计划消耗的期望值,进而得到工序期望工期,以此数值作为BCWS取值的依据,再进行挣值处理,使得传统挣值法能够运用到关键链项目,同时对各个工序的重要性程度进行定量加权取值,反映到期望工期中,使得进度管理具有针对性,进而得出相对可靠的结论。 3.1 确定工序期望工期 关键链项目中存在项目缓冲,求BCWS具体以解决缓冲区消耗期望值为主,设未消耗缓冲区、最可能消耗缓冲区、完全消耗缓冲区这三种情况工序工期分别为a、b、c,借鉴PERT三值法,则期望工期n=(a+4b+c)/6。根据工序重要性系数Pi将整个项目缓冲虚拟分配至各个工序中,将关键链挣值问题转化为普通项目挣值,下面主要說明如何求解工序重要性系数Pi,从而得到工序期望工期。 3.1.1 建立层次结构模型 按照决策的目标、准则及对象三者之间的相互关系分为目标层、准则层和方案层,绘出层次结构图,层次结构模型如图1。 3.1.2 构造判断矩阵 判断矩阵是表示本层所有因素针对上一层某一个因素的相对重要性的比较。根据一致矩阵法,采用相对尺度将所有因素两两比较,得到判断矩阵。 3.1.3 一致性检验 为了克服对各类因素两两比较时造成的主观误差,需要对矩阵的一致性进行设定,一般项目实践中对判断矩阵的一致性值控制在0.1以内。 3.1.4 计算缓冲监控量 设工序1、工序2、…、工序n的重要性系数分别为P1、P2、…、Pn,其中∑ n i=1 Pi=1,且[email protected]@1,那么工序i缓冲监控量Mi=Pi×PB。 3.1.5 最可能缓冲区消耗比例 假设采用项目经理、专家、问卷调查法三种方法所占权重相同,设三种方法所得到缓冲区消耗比例分别为e1、e2、e3,最可能缓冲区消耗比例为e,则e=(e1+e2+e3)/3。 3.2 缓冲区监控与挣值分析综合应用 针对缓冲区监控未能按项目进度区分临界点的局限,在软件工程及集成项目中,将项目缓冲虚拟分配至关键链上各个工序中,按照前述理论得到期望工期和各工序剩余缓冲,缓冲区监控基准线按照进度与缓冲区消耗比例1 ∶ 1进行设置,假设项目在检查点关键链进度达到3%,若缓冲消耗5%则消耗过快,需要采取行动,若进度达到10%,消耗也是10%则表明进度与消耗比例协调,不需要采取行动。针对软件工程及集成项目涵盖软件和硬件等工序的情况,以工序重要性序数Pi来衡量哪些工序虽然工期短,但是风险程度更高,哪些工序工期长,但是风险程度更低,以此来界定风险重要程度,缓冲区监控步骤如下: 步骤1:在项目执行之前确定该项目网络的关键链以及缓冲总量的大小。 步骤2:根据层次分析法计算工序重要性系数Pi进而确定各个工序的缓冲分配量大小。 步骤3:对项目进行监控,对工序i进行跟踪,按照临界线进行预警并采取必要行动。 步骤4:工序i结束后提取该监控点处缓冲剩余量到项目缓冲中作为库存缓冲。 步骤5:若某一工序实际消耗缓冲量超出虚拟分配量则用项目缓冲中库存缓冲进行补充,并查找原因采取行动。 步骤6:重复步骤3至5,直至项目完成。 以上是监控缓冲区消耗情况,结合改进后的挣值监控法,综合应用步骤如下: 选取项目监控点,根据前述理论计算项目挣值BCWP和BCWS,设项目总的进度偏差为SV、关键链路进度偏差为SVC。 情况一:SVC>0,SV>0。此时重点观察当前缓冲区消耗情况,若此时所有前序工序总的缓冲消耗量与关键链进度的比值小于1,则表明项目进度超前或者按计划;若比值大于1,则说明缓冲区消耗过量,此时应密切注意此工序缓冲消耗率,比值继续扩大时应果断采取措施。 情况二:SVC<0。此时项目进度拖延,应观察当前缓冲消耗情况,若缓冲区消耗量与关键链进度比值在正常范围内,则不必采取行动,若比值大于1,则应立刻采取行动。 情况三:当SVC>0,SV<0时,此时项目由于风险链路缓冲区消耗过多而出现延误,导致关键链路被动消耗项目缓冲区。此时先查看工序i的缓冲消耗情况,若还有富余,则整个工程的工期还未被延误,应重点监控接驳缓冲FB,对风险链工序采取赶工措施,防止影响关键链进度。 4 案例分析 某软件工程及集成项目主要由设计、实施、调试、收尾四个任务组成,该项目工作分解结构如图2所示。 项目实施的计划信息表如表1所示。 根据项目计划信息表画出项目网络计划图如图3所示。 4.1 传统挣值法分析 通过图3可知项目关键路径为:A-C-F-G-J-K-L-M。按照传统进度计划安排和挣值法,项目进行到第56天时,根据各工序完成情况,计算得到BCWP=41.8,BCWS=41.8,BCWPC=23.3,BCWSC=22.3,因此SV=41.8-41.8=0,SVC=23.3-22.3=1。 通过项目总挣值和关键路径挣值综合分析,项目关键路径提前,第56天按照原计划项目关键路径正好完成工序G工作,但是现在工序J工作也完成了。但是实际情况是,非关键路径由于工序E程序开发出现返工,导致工序E工期延误,进而导致整个工程工期延误,此时工序A-C-E-I-K-L-M转变为关键路径。 以上分析说明,按照传统挣值法进行项目管理,无法及时监控计划的不合理,对出现的偏差不能及时处理,使项目的管理效果不佳。而且挣值是采用成本的方法来对偏差情况进行分析,无法对偏差的程度进行量化,只能判断是否延误,程度如何、是否在可控范围内,都无法给出结论。 4.2 改进的关键链挣值分析 通过对该项目的分析,确定出工序工期的最乐观时间,将原计划时间作为安全时间。根据图3,可知关键链为A-C-F-G-J-K-L-M,非关键链有3条,分别为:B;D-H;E-I,根据根方差法,可计算出项目缓冲PB=7天,根据层次分析法,计算出关键链工序A、C、F、G、J、K、L、M重要性系数以及各工序对应的完全消耗工期如表3,经过计算,项目经理、专家、问卷调查所得到缓冲区消耗比例分别为65% 、55%、70%,则最可能消耗比例e=(65%+55%+70%)/3=63.3%,得到关键链项目期望工期。 按照期望工期公式得出结果如表2,其中工序J、K、L、M均少于1天,为便于安排工期,取最乐观工期值为期望工期。通过上表可以看出关键链法相较于传统工期安排方法,大大减少了总的项目工期,同时对于过程监控更加精确。选定工序G期望工期的最后一天,即项目第47天进行分析,测算得到,工序G完成了该工序工作量的95%,运用挣值法,经过计算得到BCWS=5*0.28+3*0.67+13*1.15+26*0.14=22,BCWP=21.27,SV=BCWS-BCWP=-0.76<0,可以判断出关键链工期延误,根据关键链完成情况测得,整个关键链任务已完成93%,通过计算得到目前消耗缓冲区1.3天,则已经消耗缓冲比例为1.3/3=43.3%<93%,说明工序G延误仍然在可控范围内,只需要保持工程按照原来进度即可。 下面对项目风险链进行分析,通过层次分析法对项目整个工序风险程度进行加权计算,得到工序风险程度系数如表3。 通过图3可知,该项目共有三条工序链路,分别是A-C-D-H-K-L-M、A-C-E-I-K-L-M和A-C-F-G-J-K-L-M。通过各工序风险程度系数计算得到三条链路加权工期分别为4.187、5.478和3.6755。由结果得到第二条链路(E-I)为该项目风险链,且该项目关键链与风险链不是同一条,该链路应引起高度重视。该风险链为项目的非关键链,按照前述理论,计算得到接驳缓冲FB=5,非关键链重要性系数为(0.8,0.2),得到非关键链缓冲区数据如上表所示。分析可知,项目第47天,工序E完成该工序95%工作量,整个风险链(即非关键链E-I)完成93.3%工作量,所消耗接驳缓冲区比例为0.9/2=45%,说明缓冲消耗正常,工序E在正常进度范围内,且按照目前进度风险链不会转化成关键链。 5 结语 关键链项目中,缓冲区消耗一直存在缓冲区监控不够准确、临界点不易设置等问题。采取传统挣值法能简单、直观地对项目进度进行评判和控制,但由于关键链项目中存在缓冲区,导致采用挣值法时BCWS无法确定。本文借鉴PERT三值法,提出期望工期的概念,以此为基础,将关键链项目转化为传统项目,并在此基础上运用挣值理论进行进度分析。同时,本文提出风险链的概念,针对软件工程及集成项目中软硬件工序对于工期与风险不匹配的问题,提出用工序风险程度系数衡量重点工序的风险程度,防止出现工期长但技术含量低的工序占用大量管理资源,有些技术含量高、返工率高但工期较短的工序却得不到重视的问题。挣值法在整体上对关键链项目进度进行分析,工序缓冲区消耗监控在内部对挣值结论进行确认和验证,二者从两个角度对项目进度进行分析和控制,保证了关键链项目的顺利进行。 参考文献 [1] 尹利波主编.世界信息技术产业发展报告2017-2018[M].北京:社会科学文献出版社,2018. [2]艾利·高德拉特.关键链[M].北京:电子工业出版社,2006. [3]昆延·弗莱明.挣值项目管理(第三版)[M].北京:电子工业出版社,2007. [4]徐小琴,韩文民.关键链汇入缓冲区的设置方法[J].工業工程与管理,2007,(5):51-55. [5]董晖.关键链理论缓冲估计优化方法[A].全国项目管理教育论文集[C].项目管理技术,2009:424-427. [6]Oya I.Tukel,Walter O.Rom,Sandra Duni Eksioglu.An investigation of buffer sizing techniques in critical chain scheduling[J].European Journal of Operational Research,2006,172(2):401-416. [7]Shou.Y.Y,Yao.K.T.Estimation of buffers in critical chain project management [A].Proceedings of the 2000 IEEE international conference on management of innovation and technology[C].2000. [8]刘士新,宋健海,唐加福.资源受限项目调度中缓冲区的设定方法[J].系统工程学报,2006,21(4):381-386. |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。