浅论系统动力学的软件项目进度管理_第1页
浅论系统动力学的软件项目进度管理_第2页
浅论系统动力学的软件项目进度管理_第3页
浅论系统动力学的软件项目进度管理_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、浅论系统动力学的软件项目进度管理                 论文摘要:软件项目管理中存在复杂的不确定性和非线性性,特别在进度管理当中。文章采用系统动力学的方法模拟了两阶段软件项目的实施过程,该模型可以对项目的完成时间进行有效的预测,同时还讨论了人员的分配对项目进度的影响。论文关键词:软件项目管理;进度管理;系统动力学;预测;人员分配为解决“软件危机”,学术界和业界将项目管理理论借鉴到软件开发中,诞生了软件项目管理。众所周知进度管理

2、、质量管理和成本管理为软件项目管理主要内容。在进度管理中,一般都采用传统项目管理方法,如甘特图、关键路径法和计划评审技术,它们都建立在项目可以分解为独立的工序上,而在实际软件项目管理中,各个阶段(工序)之间是相互联系的,如前一阶段未发现的错误会影响到后一阶段的实施,同时当后一阶段发现前一阶段有错误时需要前一阶段返工,等等如此现象很多,这种相互影响往往是非线性的,这在传统的网络图中难以表达,也超出了管理者头脑能达到的理解范围。20世纪50年代麻省理工学院的Forrester教授创立的系统动力学为解决动态复杂问题提供了一种可行的理论、观点、方法与工具。1系统动力学概述20世纪50年代Forrest

3、er教授将计算机科学和反馈控制理论应用于社会、经济等系统的研究。20世纪纪70年代,系统动力学逐渐发展成为一种了解和认识人类动态复杂系统的研究方法。2O多年来王其藩教授等学者参与了系统动力学在中国的应用研究工作提 (,。),并做出了重要贡献。系统动力学在软件项目管理中应用比较少见,用系统动力学的方法讨论了时间和成本估算,用系统动力学方法研究了项目目标进度的设定对项目表现的影响。讨论了系统动力学方法在项目风险管理中的运用,特别是在管理项目风险动态复杂性方向的特色和优势。系统动力学强调以闭环的观点方法来认识和解决问题,这也决定了它采用反馈环路式的建模方法,即通过分析行为模式背后的反馈环路结构,改变

4、结构中相关变量的值,了解不同策略下的不同行为模式,来完成策略的优化。系统动力学强调反馈环路的结构关系、时间延迟、信息放大对系统行为的影响,其中结构关系表示系统各组成结构之间的相互关系,时间延迟表示决策行动落后于信息的获得,信息放大表示随着流程与时间的推移,某些信息会被放大,它对决策行为的影响会随之被放大。2模型的建立软件项目管理往往包括多个阶段,这些阶段之间是相互联系的,彼此构成网络。但是两阶段间的关系是问题的基础,故以2阶段软件项目开发为例。模型基于如下假设:每个阶段开发都存在一定的错误,这些错误一部分在本阶段被改正,一部分需要到下一阶段才能发现。在每个阶段发现错误的机率与从事调试的人员多少

5、有关。上一阶段遗留的错误影响下一阶段的开发以及调试。每个阶段的人员是固定的,开发人数多必然导致调试人数少。项目的进度为第一阶段开发,调试,第二阶段开发,第一阶段返工、第二阶段调试。其中第一阶段返工与第二阶段调试是并行的。21状态变量以及之间的衔接模型中的状态变量共有5个,“毛开发量1”,“已更改项目1”,“返工项目”,“毛开发量2”,已“更改项目2”分别表示第一阶段的开发、调试、返工,第二阶段的开发,调试,其关系如图1。     只有上述5个工序都完成,该项目才算完成,图2用辅助变量“整个项目进度”表示了研究关心的项目进度情况。22速率变量的设定模型中共

6、有5个速率变量,其设置分别为:实际开发速率1=剩余工作量影响1×开发速率1×开发人效率×开发人数1。调试1一调试人数1×调试效率×剩余错误影响1×时间衔接1。实际开发速率2一开发人效率×开发2×剩余工作量影响2×时间衔接2。调试2一调试人数2×调试效率×剩余错误影响2×上阶段错误×时间衔接3返工=调试人数1×调试效率×剩余遗留错误影响。需要说明的是:“剩余工作量影响”、“剩余错误影响”、“剩余遗留错误影响”。这三个影响主要采用了如图3的参考模式。

7、其中“剩余工作量(错误)影响”说明当工作开始时工作速率比较低,当工作解决尾声时速率也比较低,中间速率最快;“剩余遗留错误影响”表示当第一阶段遗留的错误越多,第二阶段的速率越慢;这符合实际情况。其它辅助变量的设置不再赘述,该模型的整体流图如图4所示。         3项目进度的估算建立好模型后,通过设置常量和决策变量可以对系统进行模拟。这里令第一阶段和第二阶段的人员都为20人,第一阶段和第二阶段的预计工作量都为1000,错误率为02,第一阶段开发人员为10,调试人员为10,第二阶段开发人员为7,调试人员为13,模拟

8、得到的项目进度如图5所示。从图5可以看出在整个工程160(天)完成,并且在第35(天)第一阶段初次完成开发,在70天完成调试,在125天完成第二阶段初次开发,在160天完成第一阶段的返工和第二阶段的调试。4人员分配对项目进度的影响从模型流图(图4)可看出,问题的决策变量是每个阶段人员的分配以及人员的工作效率。提高工作效率自然会加快进度,这不需要讨论,这里主要研究人员分配,特别是第一阶段的人员分配对整个项目进度的影响。模型假设第一阶段遗留给第二阶段的错误的多少取决于第一阶段从事调试人数,即:阶段1遗留错误一错误一(错误×调试人数1作用)。其中“调试人数1作用”采用了“S型曲线”参考模式

9、,表示调试人数很少时发现错误的概率小,随着人数增加发现错误概率迅速提升,到人数趋于饱和时概率趋于稳定。在第一阶段遗留错误对第二阶段的影响上,以对第二阶段的调试工序的影响为例来说明,模型假设第二阶段的调试中能逐步发现第一阶段的遗留错误,故而交给第一阶段返工,同时第二阶段的调试继续进行,并且调试的速度受到第一阶段剩余遗留错误的影响,即:调试2一调试人数2×调试效率×剩余错误影响2×上阶段错误×时间衔接3。图6分别模拟了总人员为20人的前提下第一阶段开发人员为5、10、15、18共四种情况对应的整个项目的进度。从图中可以看出开发人员为15时进度最快,开发人员过

10、多(18人)和过少(5人)都会导致项目进度的增加,这符合现实情况。导致这样的原理在于:当开发人员过少,则延长了开发过程;当开发人员过多,必然导致调试人员过少,虽然第一阶段的开发过程时间缩短了,但是势必增加调试过程的时间,以及增加遗留错误进而影响下一阶段的进度。故而有一个 欢迎您访问浅论系统动力学的软件项目进度管理(3) 适中的人员分配方案。5结束语软件项目管理系统是一个动态的复杂系统。采用系统动力学的方法有助于分析系统的变化行为,文中的模型主要分析了在总人员不变的情况下人员分配在两阶段项目管理当中的影响。由于实际当中人员可能是变动的,如除了正常的人员流动外,管理者可能通过观察项目的进度人为的调整人数。还有在实际中影响进度的因素很多,如人员更替、工作效率、经济资源等,同时这些因素是互相藕合的,如何更细致考虑这些影响因素从

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论