项目管理课程2.ppt
软件开发项目管理软件开发项目管理江西师范大学软件学院江西师范大学软件学院雷刚雷刚Leigang_Leigang_601245360124530 chapter_5范围计划范围计划 配配置管置管 理理计划计划 合合同同 计计划划 风风险险 计计划划 沟沟通通 计计划划 质质量量计计划划 成成本本 计计划划 时时间间计计划划 集成集成 计划计划 范范围围计计划划 项项目目结结束束 项项目目执执 行行控控制制 项项目目 计计划划 项项目目初初始始 人人力力 计计划划 1 chapter_5核心三计划核心三计划q范围计划q进度计划q成本计划成本基准,进度基准2 chapter_5软件项目管理软件项目管理第第2 2章章软件项目范围计划软件项目范围计划3 chapter_5本章要点本章要点q一、软件需求管理过程q二、任务分解定义q三、任务分解的类型q四、任务分解的过程q五、案例分析4 chapter_5软件需求软件需求q需求是指用户对软件的功能和性能的要求,就是用户希望软件能做什么事情,完成什么样的功能,达到什么性能。5 chapter_5软件需求的层次软件需求的层次业 务 需求用 户 需求功 能 需求软件需求规格非功能性需求质 量 特性约束和假设系 统 需求6 chapter_5需求管理的重要性需求管理的重要性7 chapter_5项目项目失败的原因分析失败的原因分析No.Top 10 Factors 平均值平均值 1 Inadequate requirements specification 不充分的需求规范不充分的需求规范 4.5 2 Changes in requirements 需求的改变需求的改变 4.3 3 Shortage of systems engineers 缺乏系统工程师缺乏系统工程师 4.2 4 Shortage of software managers 缺乏了解软件特性的经理人缺乏了解软件特性的经理人 4.1 5 Shortage of qualified project managers 缺乏合格的缺乏合格的项目经理项目经理 4.1 6 Shortage of software engineers 缺乏软件工程师缺乏软件工程师 3.9 7 Fixed-price contract 固定价合同固定价合同 3.8 8 Inadequate communications for system integration 系统集成阶段系统集成阶段,交流与沟通不充分交流与沟通不充分 3.8 9 Insufficient experience as team团队缺乏经验团队缺乏经验 3.6 10 Shortage of application domain experts 缺乏应用领域专家缺乏应用领域专家 3.6 Scale:5=Very Serious 3=Serious 1=No Serious Source:Carnegie-Mellon University,Software Engineering Institute8 chapter_5软件需求管理过程软件需求管理过程软件需求管理的过程软件需求管理的过程需求分析需求分析编写需求规格编写需求规格需求验证需求验证需求获取需求获取需求变更需求变更需求确认需求变更10 chapter_5需求工程基本任务需求工程基本任务需求工程需求工程需求管理需求管理需求开发需求开发需求获取需求获取需求分析需求分析需求规格说明需求规格说明需求验证需求验证变更管理变更管理11 chapter_5需求获取图示需求获取图示12 chapter_5需求获取需求获取用户要求扩展需求基线需求软 件 需求13 chapter_5需求分析定义需求分析定义q需求分析是为最终用户所看到的系统建立一个概念模型,是对需求的抽象描述。14 chapter_5需求分析模型需求分析模型15 chapter_5需求规格需求规格q需求分析工作完成的一个基本标志是形成了一份完整的、规范的需求规格说明书q需求规格说明书的编制是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解,使之成为整个开发工作的基础。16 chapter_5软件需求规格说明的原则软件需求规格说明的原则qq从现实中分离功能,即描述要从现实中分离功能,即描述要“做什做什么么”而不是而不是“怎样实现怎样实现”qq采用一定的规格说明语言采用一定的规格说明语言qq如果被开发软件只是一个大系统中的如果被开发软件只是一个大系统中的一个元素,那么整个大系统也包括在一个元素,那么整个大系统也包括在规格说明的描述之中规格说明的描述之中17 chapter_5qq规格说明应该包括系统运行环境规格说明应该包括系统运行环境qq规格说明应该是一个认识模型规格说明应该是一个认识模型qq规格说明应该容许不完备性并允许扩规格说明应该容许不完备性并允许扩充充18 chapter_5规格文档参考规格文档参考1.引言2.系统定义 3.应用环境4.功能规格 5.性能需求6.产品提交7.实现约束8.质量描述9.其它10.签字认证19 chapter_5需求验证需求验证q需求是正确的吗?q需求是一致的吗?q需求是完全的吗?q需求是实际可行的吗?q需求是必要的吗?q需求是可检验的吗?q需求是可跟踪的吗?q最后的签字20 chapter_5需求总在变化需求总在变化21 chapter_522 chapter_5需求变更管理需求变更管理1.1.确定需求变更控制过程确定需求变更控制过程2.2.建立变更控制委员会建立变更控制委员会(SCCB)SCCB)3.3.进行需求变更影响分析进行需求变更影响分析4.4.跟踪所有受需求变更影响的工作产品跟踪所有受需求变更影响的工作产品5.5.建立需求基准版本和需求控制版本文档建立需求基准版本和需求控制版本文档6.6.维护需求变更的历史记录维护需求变更的历史记录7.7.跟踪每项需求的状态跟踪每项需求的状态8.8.衡量需求稳定性衡量需求稳定性23 chapter_5需求变更管理需求变更管理q管理和控制需求基线的过程q需求变更控制系统q一个正式的文档,说明如何控制需求变更q建立变更审批系统24 chapter_5变更申请需求方开发方忽略选择变更方式SCCB评估项目经理自行决定根据评估结果拒绝接受本次修改下个版本再修改修改合同相关信息修改相关需求修改相应的项目计划25 chapter_5表4-3 需求变更提交单软件基线产品修改提交单软件基线产品修改提交单申请人韩万江申请日期2002。1011项目名称项目管理系统阶段名称系统设计文件名称RCR-PM-01.doc,RCR-PM-02.doc,变更简述如下修改内容1 1)修改测试流程控制:将)修改测试流程控制:将2 2个角色,个角色,3 3个渠道流,改为个渠道流,改为3 3个角色,个角色,4 4个渠道流,详见个渠道流,详见RCR-PM-01.doc2 2)增加开发人员技能信息库管理,详见增加开发人员技能信息库管理,详见RCR-PM-02.doc验证意见同意RCR-PM-01.doc变更。RCR-PM-02.doc的变更可以推迟到下一个版本实施验证人杨炎泰验证日期20021011SCCB韩万江,姜岳尊,孙泉 填表人韩万江26 chapter_5本章要点本章要点q一、软件需求管理过程q二、任务分解定义q三、任务分解的类型q四、任务分解的方法q五、案例分析27 chapter_5WBS(Work Breakdown WBS(Work Breakdown Structure)Structure)q任务分解的过程q将一个项目分解为更多的工作细目或者子项目,使项目变得更小、更易管理、更易操作。q任务分解的结果qWBS(任务分解结构)。qWBSq面向可交付成果的。qWork packages(工作包)qWBS的最低层次的可交付成果28 chapter_5WBSWBS实例实例系统子系统子系统子系统模块模块模块模块模块模块模块模块模块29 chapter_5PMI defines WBSPMI defines WBSq是面向可交付成果的对项目元素的分组,它组织并定义了整个项目范围.不在WBS中包括的工作就不是该项目的工作q它是一个分级的树型结构,是对项目由粗到细的分解过程。工作结构每细分一个层次表示对项目元素更细致的描述30 chapter_5PMI defines Work packagesPMI defines Work packagesqWBS的最低层次的可交付成果q工作包应当由唯一主体负责q这一交付成果可以分配给另外一位项目经理进行计划和执行,或者通过子项目的方式完成31 chapter_5本章要点本章要点q一、软件需求管理过程q二、任务分解定义q三、任务分解的类型q四、任务分解的方法q五、案例分析32 chapter_5类型类型q清单q图表33 chapter_5图表类型图表类型“变化计数器”系统文件比较预处理增加代码结果处理统计总行标记修改记录修改版本比较找出增删行统计增删行删除代码增加行数删除行数34 chapter_5清单类型清单类型1.变化计数器1.1比较两个版本的程序1.1.1预处理1.1.2文件比较1.1.3结果处理1.2找出修改后的程序中增加和删除的代码行1.2.1找出增加的代码行1.2.2找出删除的代码行1.3统计修改后的程序中增加和删除的代码行数1.3.1统计增加代码行数1.3.2统计删除代码行数1.4统计总的代码行数 1.5设定标记以指示修改的次数1.6在程序的头部增加修改记录35 chapter_5本章要点本章要点q一、软件需求管理过程q二、任务分解定义q三、任务分解的类型q四、任务分解的方法q五、案例分析36 chapter_5任务分解过程任务分解过程输入分解WBS37 chapter_5分解方法分解方法p类比p模版p自上而下p自下而上38 chapter_5WBS模板举例模板举例39 chapter_5分解方法分解方法-自上而下自上而下“变化计数器”系统文件比较预处理增加代码结果处理统计总行标记修改记录修改版本比较找出增删行统计增删行删除代码增加行数删除行数40 chapter_5分解方法分解方法-自下而上自下而上“变化计数器”系统文件比较预处理增加代码结果处理统计总行标记修改记录修改版本比较找出增删行统计增删行删除代码增加行数删除行数41 chapter_5任务结构分解任务结构分解(WBS)(WBS)步骤步骤1.确认并分解项目的组成要素2.确定分解标准3.确定分解是否详细4.确定项目交付成果5.验证分解的正确性(建立编号)42 chapter_5WBSWBS编号系统编号系统功能1:11软件产品:1功能2-子功能2:122功能2:12功能3:13功能2-子功能1:121功能2-子功能3:12343 chapter_5分解标准分解标准1.生存期2.功能组成44 chapter_5分解标准应统一分解标准应统一学生管理q按照生命期分解q规划q需求q设计q编码q测试q提交q按照产品组成分解q1.1招生管理q1.2分班管理q1.3学生档案管理q1.4学生成绩管理 45 chapter_5分解标准应统一(分解标准应统一(续)续)q不能同时使用两种标准进行分解1.招生管理2.分班管理3.学生档案管理4.学生成绩管理 5.规划6.需求7.设计8.编码9.测试10.提交46 chapter_5检验分解结果的标准检验分解结果的标准1.最底层的要素是否是实现目标的充分必要条件2.最底层要素是否有重复的3.每个要素是否清晰完整定义4.最底层要素是否有定义清晰的责任人,是否可以进行成本估算和进度安排47 chapter_5WBSWBS的指南的指南(1)(1)qWBS分解的规模和数量因项目而异、因项目经理而异q收集与项目相关的所有信息q参看一下类似的项目的WBS,与相关人员讨论q可以参照模板q最低层是可控的和可管理的,但是避免不必要的过细,最好不要超过7层,q软件项目推荐分解到40小时(一周)的任务48 chapter_5WBSWBS的指南(的指南(2 2)q每个Work package必须有一个提交物q定义任务完成的标准q每个WBS必须有利于责任分配q可以准备WBS的字典q最后与相关人员进行评审49 chapter_5WBSWBS字典内容字典内容WBS表示号名称主题目标描述完成的任务责任者完成的标识备注1.50 chapter_5WBS字典字典WBS字典实例P60表2-151 chapter_5WBSWBS意义意义q提供了项目范围基线,是范围变更的重要输入q为评估和分配任务提供具体的工作包q进行估算和编制项目进度的基础q对整个项目成功的集成和控制起到非常重要的作用52 chapter_5清单式任务分解实例清单式任务分解实例电信运营信息查询系统分解一例53 chapter_5网管系统(图表)分解实例网管系统(图表)分解实例FF1配置管理F2故障管理F3安全管理F4性能管理F3.2F3.3F3.1F3.4F4.2F4.3F4.5F4.6F4.7F4.4F4.1F4.7.1F4.7.254 chapter_5网管系统(图表)分解实例网管系统(图表)分解实例F1F1.1F1.2F1.3F1.4F1.5F1.6F1.7F1.8F1.9F1.10F1.11F1.4.1F1.4.255 chapter_5网管系统(图表)分解实例网管系统(图表)分解实例F2F2.1F2.2F2.3F2.4F2.5F2.6F2.7F2.8F2.9F2.6.1F2.6.2F2.9.2F2.9.4F2.9.3F2.9.1F2.9.5F2.9.656 chapter_5标识项 功能名F1.1获取网络资源数据F1.2将资源数据存入数据库F1.3获取网络资源信息F1.4观察网络资源F1.4.1依类型分类观察网络资源F1.4.2依状态分类观察网络资源F1.5观察逻辑网F1.6观察资源状态F1.7修改网络资源的状态F1.8依条件检验网络使用情况F1.9显示拓扑图F1.10建立通道57 chapter_5WBSWBS实例实例nGeorge and Marthas picnic58 chapter_5George and MarthaGeorge and Martha一次野餐会一次野餐会qGeorge and Martha计划与家人和朋友举行一次特殊的野餐活动,以庆祝Martha的升职和他们35周年的结婚纪念.Martha是工程师,George是会计.他们有两个非常活泼的确孩子,Mary 13岁,Thomas 17岁.经过过去几年的发展,家里不断壮大,无论是时间和金钱上的需要都在增加,所以他们已经逐渐成为非常好的计划能手,最近他们又通过了PMP的认证考试,所以他们非常清楚对于这样野餐活动也需要开发一个WBS.59 chapter_5野餐准备活动任务分解野餐准备活动任务分解序号任务持续时间工作人员1开始02做冰茶15George3准备三明治10Martha4准备水果2Martha5准备篮子2Martha6收拾毛毯2George7收拾运动服3Martha8装车4George9加油6George10开车去野餐营地20Martha11结束060 chapter_5本章要点本章要点q一、软件需求管理过程q二、任务分解定义q三、任务分解的类型q四、任务分解的方法q五、案例分析61 chapter_5案例分析案例分析“校务通系统”项目任务分解q需求确认q需求变更控制qWBS结果62 chapter_5小结小结qWBS的分解类型qWBS的分解步骤q范围基准的形成63 chapter_5课程设计课程设计q目标:本学期工作室项目或上学期工作室项目(本周末之前定题分组清单发我邮箱)q内容:项目管理文档(初始、计划、执行控制、结束)q模版:依据教材上各章案例q过程:q分小组q每周上机讨论各章项目文档内容q不定期课堂汇报q学期末提交q评分:按讨论、汇报及最后提交文档的完整性打小组分,然后小组内部自行个人评分(个人评分平均分不超过小组分)64 chapter_5