讲座9软件项目监控

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

上海交通大学计算机集成技术开放实验室第9讲软件项目监控上海交通大学计算机集成技术开放实验室项目监控的内容监控项目的进展比较实际进度与计划的差别修改计划使项目能够返回预定“轨道”上海交通大学计算机集成技术开放实验室项目监控框架:过程上海交通大学计算机集成技术开放实验室项目监控框架:责任(1)项目指导委员会(ProjectSteeringCommittee,ProjectBoard)负责整个项目进度报告项目情况的组织结构上海交通大学计算机集成技术开放实验室项目监控框架:责任(2)项目情况报告的内容CategoriesofreportingReporttypeExamplesCommentOralformalregularWeeklyormonthlyprogressmeetingsWhilereportsmaybeoralformalwrittenminutesshouldbekeptOralformaladhocend-of-stagereviewmeetingswhilelargelyoral,likelytoreceiveandgeneratewrittenreportsWrittenformalregularJobsheets,progressreportsNormallyweeklyusingformsWrittenformaladhocExceptionreports,changereportsOralinformaladhocCanteendiscussion,socialinteractionOftenprovidesearlywarning;mustbebackedupbyformalreporting上海交通大学计算机集成技术开放实验室项目监控框架:进度评估基础:定期信息收集或者发生的特定事件这些信息必须是客观的和可度量的但是并非每一次都能够得到符合要求的信息,因而通常需要项目成员进行主观判断上海交通大学计算机集成技术开放实验室项目进度监控:检查点设置检查点(Checkpoints)包括:定期的(如一星期一次,一月一次)与特定的事件绑定的,如生成一份报告或者交付部分产品上海交通大学计算机集成技术开放实验室项目监控框架:监测频率监测的频率依赖于项目的大小和风险情况团队领导,可能需要每天都了解一下进度项目经理需要每星期或每月了解情况管理层次越高,频率越低,信息越抽象许多公司利用星期一早晨的短会来激励员工实现短期目标上海交通大学计算机集成技术开放实验室数据收集尽管整个过程被分成了容易管理的活动,但是项目执行中仍然需要在活动中对任务完成的比例进行评估,这种评估通常是困难的。思考:某一软件开发者完成了一个需要500行代码的软件的250行,请解释一下为什么不能认为他的工作已经完成了一半?上海交通大学计算机集成技术开放实验室答案许多因素决定了不能用完成的代码行的比例来衡量进度:对整个软件的代码行的估计可能不准确写完的代码可能相对容易,或者相对容易一个软件如果没有通过测试就不能算完成,因而即使代码全部写完了,如果没有测试也不能算完成。对所需完成内容的深入的了解有助于判断进度,如将整个工作细分为子任务,如设计,编码,单元测试等。上海交通大学计算机集成技术开放实验室部分完成报告许多组织采用财务系统中的每周时刻表来记录每个职员在每项工作中花费的时间,但是该表无法告诉项目经理目前产出了什么,进度是否满足要求。因而可以对每周时刻表进行扩展,以包含完成的工作内容上海交通大学计算机集成技术开放实验室风险报告询问小组成员完成计划的可能性交通灯方法:识别评价某项工作中的关键元素将这些关键元素分解为组成元素对于每一元素:如果符合计划要求:绿灯目前已经拖后,但是可以恢复,黄灯已经拖后,恢复很困难,红灯上海交通大学计算机集成技术开放实验室进度可视化Gantt图上海交通大学计算机集成技术开放实验室进度可视化滑动图(slipchart)弯曲的越厉害,说明偏离计划越明显上海交通大学计算机集成技术开放实验室进度可视化球图:计划开始,计划结束作为两个球,每次计划改变后,日期添加到球中,如果时间是按计划的,球被填为绿色,否则被填为红色。每次更新后,图不需重画。上海交通大学计算机集成技术开放实验室进度可视化前面的方法不能表示出项目生命周期中偏离计划的情况。对计划偏离的趋势分析能够避免将来的项目偏离。时间线图(timeline)上海交通大学计算机集成技术开放实验室进度可视化实际的时间计划的时间第二个星期评估时发现,任务2需要延期,其它任务也相应延期第四个星期评估时发现,任务4需要延期,任务5也相应延期第五个星期评估时发现,任务3需要延期上海交通大学计算机集成技术开放实验室成本监控监控的意义成本本身是项目中的重要元素成本监控也能展示已经花费了多少劳力简单的监控方法:累积消耗图不能说明项目进展情况上海交通大学计算机集成技术开放实验室累积消耗图对普通的累积消耗图上加上项目时间信息上海交通大学计算机集成技术开放实验室盈余量盈余量(EarnedValue):建立在对每个任务或工作包的消耗预测的基础上。对每一项内容的原始预算成本被称为预算基线或计划工作的预算成本(budgetedcostofworkscheduled,BCWS)。未开始的任务被赋予值0,当它被完成后,将被赋值。在项目中的一点上,全部的值将被成为盈余量或完成工作的预算成本(budgetedcostofworkperformed,BCWP)上海交通大学计算机集成技术开放实验室盈余量当任务未完成时,需要分配一个盈余量给该任务,方法为:0/100技术:任务被分配值0直到任务完成后,被分配预算值的100%50/50技术:任务一开始后,就赋予50%,直到项目结束后赋值100%里程碑方法:对任务中的一系列里程碑赋予特定值。建议用0/100方法,因为50/50方法由于活动开始后报告的值过高,容易给人一种错误的安全感,而里程碑方法最好将该任务细分为多个子任务。上海交通大学计算机集成技术开放实验室预算基线建立盈余量分析的第一步是为项目建立一个预算基线(baselinebudget)预算基线是建立在项目计划的基础上的,它是根据时间对盈余量值的预测。盈余量可以用货币单位来衡量,也可以用人员工作量来衡量。上海交通大学计算机集成技术开放实验室例子采用了0/100方法上海交通大学计算机集成技术开放实验室盈余量监控随着项目的进行,可以不断进行盈余量监控,判断项目的进度。?通过分析该图是否可以判定项目中发生的情况上海交通大学计算机集成技术开放实验室盈余量监控每一项任务的真正成本消耗为(ActualCostworkperformed,ACWP)预算变动TimenowActualcosttodate(ACWP)Baselinebudget(BCWS)budgetvarianceschedulevariancecostvariance成本变动EarnedValue(BCWP)schedulevariance(time)调度变动(时间)调度变动(成本)Cumulativecost(%)上海交通大学计算机集成技术开放实验室盈余量监控性能比例:成本性能指数:CPI=BCWP(盈余量)/ACWP(真正的成本消耗)调度性能指数:SPI=BCWP/BCWS(预算成本)值越大,工作完成得越好上海交通大学计算机集成技术开放实验室例子上海交通大学计算机集成技术开放实验室盈余量监控盈余量概念还没有被软件界全面接受,原因可能在于建了一半的房屋可以有反映人力和材料消耗的记录,而完成一半的软件项目却没有任何数据。这是对盈余量分析的误解。实际上盈余量分析是一项跟踪项目进度的方法。上海交通大学计算机集成技术开放实验室监控的优先级关键路径活动没有自由浮动的活动小自由浮动时间活动的监控高风险的活动使用关键资源的活动上海交通大学计算机集成技术开放实验室使项目回到正规几乎所有的项目都会遇到延误和意外事件。项目经理的一项任务就是识别这些事件发生的时间,在最小延迟时间和对项目团队有最小的影响的情况下,消除问题的影响。上海交通大学计算机集成技术开放实验室缩短关键路径要求项目组人员“Workharder”有一些效果,但是不能轻易使用。分配额外的资源可以加快进度,但是并不总是奏效,例如分配给某一人员的小模块,再增加一个人员并不一定能够缩短时间。将非关键路径上的资源调整到关键路径上注意:缩短关键路径可能使其它路径成为关键路径。上海交通大学计算机集成技术开放实验室重新考虑任务优先关系网络计划考虑的是理想情况和普通工作情况,因而在无法缩短关键路径时,可以重新考虑任务优先关系。另一种方法是将活动再进行划分,从而一部分可以与其它活动并行。重新考虑任务优先关系可能带来风险或者质量上的影响。上海交通大学计算机集成技术开放实验室变更控制(ChangeControl)用户的需求可能变化,项目内部可能变化……变更需要仔细考虑,因为一个部分的变化可能会对另外部分的造成影响问题:对程序描述的改变将引起软件的设计和代码的改变,还有什么其它产品可能需要修改?答案:测试数据,期待结果和用户手册等上海交通大学计算机集成技术开放实验室变更管理员角色ConfigurationLibrarian责任:识别所有需要变更控制的内容建立一个保存所有项目文档和代码的中央库建立一套管理变更的正式过程维护读取库中内容的记录和库中每一项的状态上海交通大学计算机集成技术开放实验室变更控制过程用户意识到需要对系统进行修改,考虑将修改请求提交给开发人员用户端的管理者考虑是否将该修改请求提交给项目承担者项目承担端的管理者将该任务指派给一个成员,该成员将判断该修改的成本以及修改的影响,并提交一个报告该报告被提交给用户,用户将考虑是否能够承受额外的成本上海交通大学计算机集成技术开放实验室变更控制过程用户同意后,一个获多个开发者被授权从主产品上取出要修改的部分的拷贝拷贝被修改。新版本开发出来后,将通知用户,用户进行接受测试当用户满意后,产品的配置项被新版本所代替。上海交通大学计算机集成技术开放实验室项目修复需要修复的项目没有人对项目何时结束有一点点概念产品满目疮痍。开发组人员工作超时,每周多于60小时管理层已经无法控制进度,而评估项目状态的准确性丧失殆尽客户对开发组能否按承诺交付软件不再抱有信心开发人员,市场人员,项目经理,客户之间关系紧张开发组士气低落……上海交通大学计算机集成技术开放实验室修复方案问题:如何挽救项目缩减项目规模,以便在计划的时间与工作量内完成项目把注意力放在短期的改善上,以提高过程的生产率面对现实,放弃计划有没有其它方法?重新获取控制权上海交通大学计算机集成技术开放实验室修复计划第一步评估你的处境应用W-理论分析作好修复项目的思想准备向开发组成员探问拯救项目的方法变得现实一些上海交通大学计算机集成技术开放实验室项目修复:人员采取一切措施恢复开发组的士气采取一个象征性的行动,如给他们特许的条件(允许他们上班晚些,提供更好的工作环境),也可以放一次假确保为开发组创造了条件如去掉了过多的进度压力,改善了恶劣的工作条件,剔除了管理上的不当做法消除重大的人员问题勇敢地面对问题,该调整的要调整上海交通大学计算机集成技术开放实验室项目修复:人员消除重大领导问题更换子项目经理为经理配备助手增加新手一定要慎重充分利用开发人员的时间减轻他们其它的负担为他们处理一些日常工作允许开发组人员各有不同绝不允许破坏士气观察开发人员的节奏不断根据修复的情况来调整安排上海交通大学计算机集成技术开放实验室项目修复:过程修正软件开发过程中出问题的环节出问题的环节必然是项目有意或无意忽略了软件开发的基本原则创建详细的小型里程碑小型的(一、两天规模的)二元性(要么完成,要么没有完成)彻底性(所有

1 / 44
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功