项目管理1.项目调度2.风险管理郑州大学信息工程学院朱威1.项目调度项目调度包括把一个项目所有工作分解为若干独立活动,以及判断完成这些活动所需的时间。项目调度对软件管理者的要求是十分苛刻的。管理人员必须估算完成各项活动所需要的时间和资源,并按照一定的顺序把他们紧密组织起来。识别活动识别活动依赖关系估算活动的资源为活动分配人员创建项目图表软件需求活动图表及条形图图1项目调度过程活动分解及进度管理正常情况,各活动至少持续一周。对所有活动安排一个最高时限(8-10周),如一项活动持续时间超过限制,就应该再次细分。在估算进度时,管理者不能认为项目的每个阶段都不会出问题。除时间外,还必须估算完成每项任务所需的资源,包含人力资源和其他资源。估算进度的经验法则估算时先假定什么问题也没有,然后再把预计出现的问题加到估计中去(+30%)。还要考虑因偶然因素带来的意想不到的问题(+20%)。项目进度管理工具项目进度通常用一系列的图表表示。常用的项目进度表示法有:条形图(甘特图(Gantt))活动网络图(PERT)常用软件管理工具是:MS-Project进度管理实践—MSProject任务持续时间(天数)依赖关系T18T215T315T1(M1)T410T510T2,T4(M2)T65T1,T2(M3)T720T1(M1)T825T4(M5)T915T3,T6(M4)T1015T5,T7(M7)T117T9(M6)T1210T11(M8)表1:任务的持续时间及其依赖关系MSProject—活动网络图关键路径解释关键路径(CPM,CriticalPathMethod)从起点到终点,可以有许多条路径,我们把耗时最长的路径称作关键路径。关键路径耗时等于整个工程的耗时,因此,要想缩短工程时间,就必须找出关键路径,并研究如何减少关键路径的耗时。关键路径关键路径是指完成项目所需的最少时间。可以通过考察活动图中最长的路径(关键路径)来估算。项目总体安排进度时由关键路径决定的。任何关键活动与进度安排的偏离都会导致项目的延期交付。甘特图甘特图是一种条形图,表示了项目的日程安排和各项活动的开始和完成时间。从右往左读,条形图清晰地给出了活动的开始和结束。MSProject--甘特图资源分配问题除了考虑进度安排外,项目管理者还要考虑参加项目活动人员的分配。可以生成条形图。条形图是表示在哪些时间段雇佣哪些员工。人员分配及其时间表项目调度总结项目调度对管理者要求严格。项目调度就是把项目计划的某些部分用图形的情形给描述出来。项目调度包括项目活动之间相互关系的网络活动图和表示各个活动持续的条形图。2.风险管理风险管理要求管理者能够预见可影响项目进度或正在开发的软件产品质量的风险,并采取行动避免这些风险。是管理者的一项重要任务。有效的风险管理能使我们从容面对问题,避免这些风险带来无法承受的开支或进度失控。风险种类项目风险:项目进度或资源的风险。(如有经验的设计人员的流失)产品风险:开发的软件的质量或性能的风险。业务风险:软件开发机构和软件购买机构的风险。可能存在的风险风险风险类型描述职员跳槽项目有经验的职员将会未完成项目就跳槽管理层变更项目管理层结构发生变化,不同的管理者考虑和管理的事情不同硬件缺乏项目项目所需的硬件没有按时交付需求变更项目和产品软件需求与预期相比,变化很多描述延迟项目和产品主要接口的描述未能按时完成低估系统规模项目和产品过低估计了系统规模CASE工具性能较差产品支持项目的CASE工具达不到要求技术变更业务系统的基础技术被新技术的代替产品竞争业务系统还未交付,就已经有其他产品上市可能存在的风险表风险管理的必要性风险管理在项目管理中不可缺少,因为绝大多数项目都有不确定性。(不确定性包括过宽泛的需求,对开发时间和资源估算的困难,项目对个人的技术依赖以及客户需求发生变化)对项目管理者的要求:应该预见风险,及时制定应急计划。并采取措施规避这些风险。风险管理的过程风险识别风险分析风险规划风险监控潜在的风险列表优先级高的风险列表风险规避和应急计划风险评估图:风险管理过程风险管理的过程风险识别:识别可能的项目,产品和业务风险。风险分析:评估这些风险出现的可能性及其后果。风险规划:制定计划说明如何规避风险和降低风险对项目的影响。风险控制:不断的进行评估,并及时修改风险计划。风险识别风险识别是风险管理的第一阶段。风险识别过程需要列出可能的风险类型。包括:技术风险,人员风险,机构风险,工具风险,需求风险,估算风险。风险类型潜在存在的风险技术源于开发系统的软件和硬件的风险如数据库处理速度不快复用的软件组件有缺陷,限制项目功能。人员源于开发团队成员的风险如招聘不到符合要求的职员在项目关键时期,关键人员出现意外事情职员培训跟不上机构源于开发的机构环境的风险重新的机构调整,管理层的变更开发过程中财务出现问题工具源于CASE工具和其他支持软件的风险如CASE效率低CASE工具不能集成需求源于客户对需求变更的风险如需求发生变更,主题设计要返工,客户的不了解。估算源于系统特性和系统资源的风险如低估软件开发时间,规模,等等。风险及其风险类型风险分析进行风险分析时,要逐一考虑每个已经识别出的风险,并对风险出现的可能性和严重性做出判断。风险分析没有捷径,只靠项目管理者的实际经验做主观判断。风险分析评估的结果与实际工作有差距。风险出现的可能性后果开发机构财务出现问题,必须削减项目预算小(10%-25%)灾难招聘不到符合要求的员工大(50%-75%)灾难在项目关键时期,关键性员工生病中等(25%-50%)严重要复用的软件组件有缺陷,限制了项目功能中等严重需求发生变化,主题设计返工中等严重开发机构重新调整,新的管理层负责该项目大严重系统的数据库处理速度慢中等严重低估了开发软件的所需时间大严重CASE工具不能被集成大可容忍客户不了解需求变更对项目造成影响中等可容忍职员的培训跟不上中等可容忍低估缺陷的修补率中等可容忍低估了软件的规模大可容忍CASE工具产生的编码效率低中等可以忽略表:风险分析风险规划在风险过程中,项目管理者要考虑识别出的每一个重大风险,并确定处理这个风险的策略。制定风险管理计划没有捷径可走。靠的是项目管理者的经验和判断。风险管理策略分为三类:规避策略(降低风险的可能性),最低风险策略(减小风险的影响),应急计划(应用对策)。风险策略机构的财务问题拟简短报告,提交高级管理层,说明项目对业务有重大贡献职员招聘问题告诉客户项目潜在的苦难和延迟的可能性,检查要买进的组件职员生病问题重新组织团队,使更多工作有重叠,员工可以相互了解工作有缺陷的组件用买进的可靠性稳定的组件更换潜在有缺陷的组件需求变更可追溯信息来说明变更带来的影响,把隐藏在设计中的信息扩大。机构调整拟简短报告,提交高级管理层,说明项目对业务有重大贡献数据库的性能研究一下购买高性能的数据库的可能性低估开发时间对要买进的组件,程序生成器的效用进行检查风险管理策略表风险监控风险监控是对每个识别的风险定期进行评估,从而确定风险出现的可能性是变大还是变小,风险的影响后果是否有所改变。风险监控是个持续不断的过程,在对每一次风险管理进行评审时,每个重大的风险要单独评审并讨论。风险类型潜在的指证技术硬件或支持软件延期交付,暴露出来许多技术问题人员员工士气低糜,团队成员协调不好,工作分配不当机构机构内说三道四,缺乏资深管理工具团队成员不愿使用工具,抱怨CASE工具,需要更强大的工作站需求很多需求变更请求和客户怨言估算跟不上双方协商的进度,无法除掉暴露出来的缺陷表:风险因素风险管理总结在项目开发过程中的各种风险及时分析,及时采取相应的回避措施。风险分析一定要靠经验丰富的项目管理者对风险做出比较准备的估计。要制定出来应对和解决风险的计划。在项目管理中要专门开会讨论风险问题。谢谢