教学课件·软件项目管理.ppt

上传人(卖家):三亚风情 文档编号:3523615 上传时间:2022-09-11 格式:PPT 页数:520 大小:8.50MB
下载 相关 举报
教学课件·软件项目管理.ppt_第1页
第1页 / 共520页
教学课件·软件项目管理.ppt_第2页
第2页 / 共520页
教学课件·软件项目管理.ppt_第3页
第3页 / 共520页
教学课件·软件项目管理.ppt_第4页
第4页 / 共520页
教学课件·软件项目管理.ppt_第5页
第5页 / 共520页
点击查看更多>>
资源描述

1、12主要内容 软件项目管理的重要性软件项目管理的重要性 项目管理基本原理项目管理基本原理 软件项目管理分析软件项目管理分析31.1 软件项目中的常见问题 沟通问题沟通问题 用户描述需求问题用户描述需求问题 项目经理的指挥问题项目经理的指挥问题 分析人员的技术加工问题分析人员的技术加工问题 项目进度问题项目进度问题 项目成员估算问题项目成员估算问题 和项目相关小组关系问题和项目相关小组关系问题 项目文档问题项目文档问题41.2 软件项目管理现状(1994)5成功标准成功标准点数点数1.用户参与用户参与192.高层管理人员的支持高层管理人员的支持163.明确的要求陈述明确的要求陈述154.适当的计

2、划适当的计划115.现实的预期现实的预期106.细分的项目里程碑细分的项目里程碑97.有才能的参与人员有才能的参与人员88.项目团队所有权项目团队所有权69.明确的视野和目标明确的视野和目标310.全神贯注、努力工作的员工全神贯注、努力工作的员工3合计合计100IT成功标准(1994)Standish Group Chaos6年度成功项目()存在问题项目()失败项目()19941653311996273340199826462820002849232004295318200635461920093244241.3成功软件项目的十大要诀 清晰的愿景清晰的愿景 稳定的、完整的书面需求稳定的、完整的

3、书面需求 详细的用户界面原型详细的用户界面原型 有效的项目管理有效的项目管理 精确的估算精确的估算 重视质量重视质量 技术专家的意见技术专家的意见 积极的风险管理积极的风险管理 软件是人创造的软件是人创造的 两阶段预算两阶段预算72.1 项目的定义 以下哪些事件属于项目?以下哪些事件属于项目?开发一项新的产品或服务开发一项新的产品或服务 开发一种全新的或者是经修正过的信息系统开发一种全新的或者是经修正过的信息系统 主持一次会议主持一次会议 庆祝庆祝XX高校高校60年校庆年校庆 清洁工打扫办公楼清洁工打扫办公楼8项目定义 项目是为创造独特的产品、服务或成果项目是为创造独特的产品、服务或成果而进行

4、的临时性工作。而进行的临时性工作。(PMBOK2008)临时性临时性项目有明确的开始时间和结束项目有明确的开始时间和结束时间。时间。当项目目标已经实现,或因项目目标不能实现当项目目标已经实现,或因项目目标不能实现而项目被终止时,就意味着项目的结束。而项目被终止时,就意味着项目的结束。独特性独特性项目所创造的产品或服务与已有的项目所创造的产品或服务与已有的相似产品或服务相比较,在有些方面有明显的相似产品或服务相比较,在有些方面有明显的差别。项目要完成的是以前未曾作过的工作,差别。项目要完成的是以前未曾作过的工作,所以它是独特的。所以它是独特的。9项目延伸属性:目标的确定性目标的确定性 组织的临时

5、性和开放性组织的临时性和开放性 成果的不可挽回性成果的不可挽回性相互依赖和冲突属性相互依赖和冲突属性10项目管理定义 所谓项目管理就是将知识、技能、工具与所谓项目管理就是将知识、技能、工具与技术应用于项目活动,以满足项目的要求。技术应用于项目活动,以满足项目的要求。管理一个项目首先要识别需求;其次在规划和管理一个项目首先要识别需求;其次在规划和执行项目时,处理干系人的各种需要、关注和执行项目时,处理干系人的各种需要、关注和期望;并且要平衡相互竞争的项目制约因素,期望;并且要平衡相互竞争的项目制约因素,包括:范围、质量、进度、预算、资源、风险包括:范围、质量、进度、预算、资源、风险等。等。112

6、.2 项目管理的历史和发展 近代近代 萌芽:萌芽:公认为公认为2020世纪世纪4040年代,美国研制第一课原年代,美国研制第一课原子弹的任务采用项目来管理,称为子弹的任务采用项目来管理,称为 “曼哈顿计划曼哈顿计划”成熟:成熟:50年代,年代,关键路线法(关键路线法(CPMCPM)和计划评审技)和计划评审技术术 (PERT(PERT),),阿波罗登月计划阿波罗登月计划12n传播和现代化传播和现代化q20世纪世纪7080年代,面向市场,迎接竞争,初步形成现代项目管理年代,面向市场,迎接竞争,初步形成现代项目管理的框架的框架n古代:古代:长城、金字塔项目长城、金字塔项目n新发展新发展q20世纪世纪

7、90年代,年代,软件项目管理软件项目管理2.3国际项目管理组织和认证 美国项目管理协会美国项目管理协会(Project Management Institute,PMI)项目管理专业人员资格认证(项目管理专业人员资格认证(Project Management Professional,PMP)国际项目管理协会国际项目管理协会(International Project Management Association,IPMA)四级证书认证四级证书认证:A、B、C、D级级13国际项目管理知识体系 美国美国PMI项目管理的知识体系项目管理的知识体系 PMBOK (Project Management

8、 Body of Knowledge)九个知识领域九个知识领域 欧洲欧洲IPMA项目管理能力基础项目管理能力基础 ICB(IPMA Competence Baseline)1415PMBOK九大领域九大领域2.4 项目生命周期1617开始开始计划计划执行执行控制控制结束结束活动的强度活动的强度阶段结束阶段结束阶段开始阶段开始时间时间项目生命周期的重叠项目生命周期的重叠2.5 项目关键约束18项目约束19工作工作范围范围成本成本进度进度计划计划客户满客户满意度意度3.1软件分类 按软件的功能进行划分按软件的功能进行划分 按软件工作方式划分按软件工作方式划分 按软件服务对象的范围划分按软件服务对象

9、的范围划分 按软件的有偿性、无偿性划分按软件的有偿性、无偿性划分20功能划分软件 系统软件系统软件 操作系统操作系统 语言处理程序语言处理程序 服务性程序服务性程序 数据库管理系统数据库管理系统 计算机网络软件计算机网络软件 支撑软件支撑软件 应用软件应用软件21工作方式划分软件 实时处理软件实时处理软件 分时软件分时软件 交互式软件交互式软件 批处理软件批处理软件22软件服务对象的范围划分 项目软件项目软件 产品软件产品软件23生产商/开发商产品开发商项目/产品用户/客户用户/客户a:产品软件b:项目软件销售开发商c:混合软件半成品项目/产品用户/客户有偿和无偿划分 商业软件商业软件 共享软

10、件共享软件 免费软件免费软件 公有领域软件公有领域软件243.2软件项目管理知识内容25SWEBOK中软件工程管理子域263.3软件项目管理过程273.4软件项目管理基础28软件项目管理基础29 技术基础技术基础 需求管理需求管理 设计设计 构建构建 软件配置管理软件配置管理 过程管理基础过程管理基础n项目管理基础项目管理基础q项目估算和进度安排项目估算和进度安排q计划编制计划编制q软件项目监控软件项目监控q软件质量管理软件质量管理q软件度量管理软件度量管理n人员管理基础人员管理基础30主要内容 软件项目配置管理概述软件项目配置管理概述 软件项目配置管理过程软件项目配置管理过程 软件项目配置管

11、理计划软件项目配置管理计划311.1 软件开发常见问题32n开发人员使用错误的版本修改程序;开发人员使用错误的版本修改程序;n开发人员未经授权修改代码或文档,或修改的结开发人员未经授权修改代码或文档,或修改的结果不能及时反映到各个相关部分;果不能及时反映到各个相关部分;n人员流动,交接工作不彻底造成软件关键部件遗人员流动,交接工作不彻底造成软件关键部件遗失;失;n已修复的已修复的Bug在新版本中出现;在新版本中出现;n找不到某个文件的历史版本;找不到某个文件的历史版本;n无法重新编译某个历史版本,使维护工作十分困无法重新编译某个历史版本,使维护工作十分困难;难;n因协同开发中,或者异地开发,版

12、本变更混乱导因协同开发中,或者异地开发,版本变更混乱导致整个项目失败;致整个项目失败;软件配置管理定义和目的33n IEEE中定义为中定义为“软件配置管理是一门应用技术、管理和监督相结合的学科软件配置管理是一门应用技术、管理和监督相结合的学科,通过标识和文档来记录配置项的功能和物理特性,控制这些特性的变更,通过标识和文档来记录配置项的功能和物理特性,控制这些特性的变更,记录和报告变更的过程和状态,并验证它们与需求是否一致。,记录和报告变更的过程和状态,并验证它们与需求是否一致。”n软件配置管理的目的在于:软件配置管理的目的在于:q记录软件产品的演化过程;记录软件产品的演化过程;q确保软件开发者

13、在软件生命周期中的各个阶段都能得到精确的产品配置确保软件开发者在软件生命周期中的各个阶段都能得到精确的产品配置。q最终保证软件产品的完整性、一致性、追朔性、可控性。最终保证软件产品的完整性、一致性、追朔性、可控性。软件配置管理功能34n支持并行开发;支持并行开发;n修订版管理;修订版管理;n版本控制;版本控制;n产品发布管理;产品发布管理;n建立(建立(build)管理;)管理;n变更请求管理;变更请求管理;n代码共享。代码共享。351.2软件配置管理相关概念“配置配置”是在技术文档中明确说明最终组是在技术文档中明确说明最终组成软件产品的功能或物理属性,因此成软件产品的功能或物理属性,因此“配

14、配置置”包括了即将受控的所有产品特性、内包括了即将受控的所有产品特性、内容及相关文档,包括软件版本、变更文容及相关文档,包括软件版本、变更文档、软件运行的支持数据以及其他一切档、软件运行的支持数据以及其他一切保证软件一致性的组成要素。保证软件一致性的组成要素。配置项配置项:为了配置管理目的而作为一个为了配置管理目的而作为一个单位来看待的硬件和单位来看待的硬件和/或软件成分,满足或软件成分,满足最终应用功能并被指明用于配置管理的最终应用功能并被指明用于配置管理的硬件硬件/软件,或它们的集合体。软件,或它们的集合体。36配置项 一般来说,软件项目配置项主要有两大类:一般来说,软件项目配置项主要有两

15、大类:属于产品组成部分的工作成果;属于产品组成部分的工作成果;在管理过程中产生的文档。在管理过程中产生的文档。配置项也有不同的版本,配置项可以看成面向配置项也有不同的版本,配置项可以看成面向对象的类,而配置项的不同版本可以看成类的对象的类,而配置项的不同版本可以看成类的不同实例。不同实例。配置和配置项37n配置就是配置项的一个集合,下图中横方向是每个配配置就是配置项的一个集合,下图中横方向是每个配置项的版本演变,纵方向是不同的配置项组合构成了置项的版本演变,纵方向是不同的配置项组合构成了一个配置。一个配置。38基线 已经正式通过复审和批准的某规约和产品,它因已经正式通过复审和批准的某规约和产品

16、,它因此可以作为进一步开发的基础,并且只能通过正此可以作为进一步开发的基础,并且只能通过正式的变化控制过程改变。(式的变化控制过程改变。(IEEE)基线本质上是软件工程活动从一个环节转入另外基线本质上是软件工程活动从一个环节转入另外一个环节时对阶段产品或组件的标识。基线通常一个环节时对阶段产品或组件的标识。基线通常对应于开发过程中的里程碑,一个产品可以有多对应于开发过程中的里程碑,一个产品可以有多个基线,也可以只有一个基线。个基线,也可以只有一个基线。通常一个软件项目需要建立如下几种基线:通常一个软件项目需要建立如下几种基线:需求基线;设计基线;开发基线;测试基线;发布基需求基线;设计基线;开

17、发基线;测试基线;发布基线线 391.3软件配置管理角色 配置控制委员会(配置控制委员会(Configuration Control Board,CCB,),)项目经理;项目经理;配置管理员;配置管理员;开发人员;开发人员;系统集成员;系统集成员;质量保证人员。质量保证人员。402软件配置管理过程 配置项的标识配置项的标识 配置管理环境建立配置管理环境建立 版本控制版本控制 变更控制变更控制 配置审核配置审核 报告配置状态报告配置状态41国际项目管理 IPMA2.1配置项的标识配置项的标识n标识配置项首先是识别配置项,把项目中标识配置项首先是识别配置项,把项目中需要进行配置管理的产品识别出来,

18、然后需要进行配置管理的产品识别出来,然后按照一定的规范进行标识。按照一定的规范进行标识。42识别配置项n识别配置项的基本原则:识别配置项的基本原则:q交付给客户的产品或工作产品;交付给客户的产品或工作产品;q内部指定的工作产品;内部指定的工作产品;q对于产品质量起关键作用的工作产品;对于产品质量起关键作用的工作产品;q从外部获取的产品;从外部获取的产品;q工具;工具;q对于组间交互起重要作用的工作产品;对于组间交互起重要作用的工作产品;q被两个或多个组共同使用的工作产品;被两个或多个组共同使用的工作产品;q经过一段时间后会进行变更的工作产品,或者是因为错误或需求变更而经过一段时间后会进行变更的

19、工作产品,或者是因为错误或需求变更而产生变更的工作产品;产生变更的工作产品;q依赖性和制约性强的工作产品;依赖性和制约性强的工作产品;q对项目的成功或质量起关键作用的工作产品。对项目的成功或质量起关键作用的工作产品。配置项的可能构成43n文档:包括项目中产品文档、管理过程文文档:包括项目中产品文档、管理过程文档和质量保证过程文档。档和质量保证过程文档。n代码:包括源代码、目标代码、可执行程代码:包括源代码、目标代码、可执行程序等。序等。n数据文件:包括测试用例、测试脚本文件数据文件:包括测试用例、测试脚本文件和参数等。和参数等。n软件开发工具:包括编辑器、调试器、软件开发工具:包括编辑器、调试

20、器、CASE工具等,即包括项目组使用的自主开工具等,即包括项目组使用的自主开发的工具产品也包括第三方产品发的工具产品也包括第三方产品。标识配置项44n对配置项的命名应该遵循以下原则:对配置项的命名应该遵循以下原则:q唯一性:命名唯一确定一个配置项,即不允唯一性:命名唯一确定一个配置项,即不允许出现重名现象;许出现重名现象;q可追溯性:使命名能够反映命名对象间的关可追溯性:使命名能够反映命名对象间的关系,以便查询和跟踪;系,以便查询和跟踪;q可扩充性:命名应能够容纳所有的配置管理可扩充性:命名应能够容纳所有的配置管理项,不能因增加新的配置项而需要合并或删项,不能因增加新的配置项而需要合并或删除其

21、他配置项。除其他配置项。配置项标识45n常见配置项标识办法是分层命名,即多层次命常见配置项标识办法是分层命名,即多层次命名体现配置项相关内容。名体现配置项相关内容。q第一层体现项目名称;第一层体现项目名称;q第二层体现配置项所在子系统名称;第二层体现配置项所在子系统名称;q第三层指明配置项类型;第三层指明配置项类型;q第四层是根据配置类别,为了表达唯一性添第四层是根据配置类别,为了表达唯一性添加的补充内容。加的补充内容。462.2配置管理环境建立 开发库:也称为动态库,是指在软件生存周期的某一个阶开发库:也称为动态库,是指在软件生存周期的某一个阶段期间,存放与该阶段软件开发工作有关的计算机可读

22、信段期间,存放与该阶段软件开发工作有关的计算机可读信息和人工可读信息的库。软件配置管理就是对软件受控库息和人工可读信息的库。软件配置管理就是对软件受控库中的各软件项进行管理,因此软件受控库也叫做软件配置中的各软件项进行管理,因此软件受控库也叫做软件配置管理库。管理库。受控库:也称为配置库,指在软件生存周期的某一个阶段受控库:也称为配置库,指在软件生存周期的某一个阶段结束时,存放作为阶段产品而释放的、与软件开发工作有结束时,存放作为阶段产品而释放的、与软件开发工作有关的计算机可读信息和人工可读信息的库。关的计算机可读信息和人工可读信息的库。产品库:也称为静态库,是指在软件生存周期的组装与系产品库

23、:也称为静态库,是指在软件生存周期的组装与系统测试阶段结束后,存放最终产品而后交付给用户运行或统测试阶段结束后,存放最终产品而后交付给用户运行或在现场安装的软件的库。进入产品库以后的更改必须执行在现场安装的软件的库。进入产品库以后的更改必须执行严格的更改手续,并需要进行回归测试、系统测试等验证严格的更改手续,并需要进行回归测试、系统测试等验证性试验,通过后方能重新办理入库手续。性试验,通过后方能重新办理入库手续。47配置管理环境建立 软件软件“三库三库”是由配置管理员来建立的,只是开发库是由配置管理员来建立的,只是开发库是由开发人员来管理,受控库由配置管理员来管理,是由开发人员来管理,受控库由

24、配置管理员来管理,产品库由类似档案室的管理员来管理。产品库由类似档案室的管理员来管理。需要设置配置库的目录结构来合理存储项目产品。需要设置配置库的目录结构来合理存储项目产品。目录结构的第一层可以分为管理类和开发类;目录结构的第一层可以分为管理类和开发类;在管理类中可以按照在管理类中可以按照“项目管理项目管理”和和“质量保证质量保证”两大类两大类来划分第二级目录;在第二级目录下则可以按照项目管理来划分第二级目录;在第二级目录下则可以按照项目管理的阶段的阶段“启动启动规划规划执行和监控执行和监控收尾收尾”来化分第来化分第三级目录。三级目录。在开发类中,可以按照软件开发过程在开发类中,可以按照软件开

25、发过程“需求需求设计设计实实现现测试测试”来化分第二级目录,在此第二级中根据需要来化分第二级目录,在此第二级中根据需要再进行第三级的目录化分,比如再进行第三级的目录化分,比如“设计设计”可以分为可以分为“详细详细设计设计”和和“概要设计概要设计”;在实施目录下按照每个模块来划;在实施目录下按照每个模块来划分第三级目录。分第三级目录。482.3版本控制n版本控制的目的是按照一定的规则保存配置项版本控制的目的是按照一定的规则保存配置项的所有版本,避免发生版本丢失或混乱等现象。的所有版本,避免发生版本丢失或混乱等现象。n版本控制主要是针对软件配置管理中的版本控制主要是针对软件配置管理中的“受控受控库

26、库”。对受控库中的任何文件做出修改意味着。对受控库中的任何文件做出修改意味着创建文件的一个版本,所有关于文件和其内容创建文件的一个版本,所有关于文件和其内容的配置信息都保存在受控库中。通常有两种模的配置信息都保存在受控库中。通常有两种模式进行版本控制。式进行版本控制。49“锁定修改解锁”模式 同步控制模式同步控制模式:为了修改一个文件,经过批准,为了修改一个文件,经过批准,软件工程师从配置库中捡出(软件工程师从配置库中捡出(check out)特定版)特定版本的文件到他的工作目录;而同时配置管理员同本的文件到他的工作目录;而同时配置管理员同步锁定了配置库中的该对象,使得当前版本在没步锁定了配置

27、库中的该对象,使得当前版本在没有被置换前不能够再更新整个要变更的配置对象,有被置换前不能够再更新整个要变更的配置对象,但是整个对象还可以捡出另外的副本,只是不能但是整个对象还可以捡出另外的副本,只是不能够对副本进行更新;软件工程师完成变更,经过够对副本进行更新;软件工程师完成变更,经过质量保证和测试后,把对象检入(质量保证和测试后,把对象检入(check in)回受)回受控库,再解锁,这样就创建了文件的一个新版本。控库,再解锁,这样就创建了文件的一个新版本。不利于并行工作,而且如果忘记解锁会造成无法不利于并行工作,而且如果忘记解锁会造成无法修改。修改。50“复制修改合并”模式 这种模式下,多个

28、工程师可以并行修改同一个这种模式下,多个工程师可以并行修改同一个模块。假设现有甲和乙两个工程师同时检出了模块。假设现有甲和乙两个工程师同时检出了受控库中的模块受控库中的模块A进行修改,如果乙先完成修改进行修改,如果乙先完成修改得到得到A并检入受控库,当甲完成修改得到并检入受控库,当甲完成修改得到A模块模块并准备检入时,配置管理员通过审核提示甲原并准备检入时,配置管理员通过审核提示甲原始版本已发生变化,则始版本已发生变化,则A再检出目前受控库中的再检出目前受控库中的A到本地目录,和自己完成的到本地目录,和自己完成的A模块进行合并得模块进行合并得到到A*模块,使得变化都体现在模块,使得变化都体现在

29、A*中,然后再检中,然后再检入受控库。从而以后再检出的都是反映了所有入受控库。从而以后再检出的都是反映了所有变化的变化的A*模块。模块。有利于并行开发,有利于并行开发,但但如分支过多,合并容易出如分支过多,合并容易出现冲突问题。现冲突问题。51版本历史树n版本变化中,一个版本号码会自动与新版本关版本变化中,一个版本号码会自动与新版本关联。对最新版本的更改会产生新的版本,然而联。对最新版本的更改会产生新的版本,然而对老版本的修改会导致一个不同的版本。版本对老版本的修改会导致一个不同的版本。版本号方案和使用模式产生了文件的版本历史树,号方案和使用模式产生了文件的版本历史树,指出了版本的前任和后继。

30、指出了版本的前任和后继。52版本保存n受控库中并没有保存所有版本的完整代码,而受控库中并没有保存所有版本的完整代码,而只是保存了版本的区别,即基于增量的版本保只是保存了版本的区别,即基于增量的版本保存。存。n增量保存又分为前向增量和后向增量两种方法,增量保存又分为前向增量和后向增量两种方法,前者是保存最初版本的完整版本,之后变化的前者是保存最初版本的完整版本,之后变化的版本只保存区别;后者是保存最后一个版本的版本只保存区别;后者是保存最后一个版本的完成内容,向后每个版本则只保存差别。增量完成内容,向后每个版本则只保存差别。增量保存方法节省了存储空间和对最新版本的访问保存方法节省了存储空间和对最

31、新版本的访问时间。时间。53增量保存542.4变更控制 变更控制是通过创建产品基线,在产品的整个变更控制是通过创建产品基线,在产品的整个生存周期中控制它的发布和变更。主要工作包生存周期中控制它的发布和变更。主要工作包括:括:变更的提出;变更的提出;变更的评价,包括确定配置项的控制等级;变更的评价,包括确定配置项的控制等级;变更的处置;变更的处置;实施经批准的变更;实施经批准的变更;对变更进行验证和结束变更。对变更进行验证和结束变更。55变更控制流程562.5配置审核配置审核n配置审核环节是配置管理达到效果的重要手段。配置审核环节是配置管理达到效果的重要手段。n配置审核包括两方面的内容:配置审核

32、包括两方面的内容:“配置管理活动审配置管理活动审核核”、“基线审核基线审核”。“配置管理活动审核配置管理活动审核”用用于确保项目组成员的所有配置管理活动,遵循已于确保项目组成员的所有配置管理活动,遵循已批准的软件配置管理方针和规程。批准的软件配置管理方针和规程。“基线审核基线审核”是保证基线化软件工作产品的完整性和一致性,是保证基线化软件工作产品的完整性和一致性,并且满足其功能要求。并且满足其功能要求。57配置审核配置审核n在软件研发周期各阶段的评审和检查工作中,要在软件研发周期各阶段的评审和检查工作中,要对该阶段所进行的配置管理工作进行必要的评审对该阶段所进行的配置管理工作进行必要的评审和检

33、查。和检查。582.6配置状态报告配置状态报告n配置状态报告内容可以包含配置管理涉及的几大配置状态报告内容可以包含配置管理涉及的几大活动:版本管理活动:版本管理/基线情况基线情况/配置库管理配置库管理/权限管理权限管理/变更情况等。变更情况等。n主要包含两大内容:所有的配置项内容;所有提主要包含两大内容:所有的配置项内容;所有提交的变更请求交的变更请求/问题报告的状态。问题报告的状态。n一般来说,发生下列一般来说,发生下列4中情况时进行配置状态的中情况时进行配置状态的报告:报告:q每次有新配置项纳入基线时;每次有新配置项纳入基线时;q原有配置项更新为新版本时;原有配置项更新为新版本时;q每次变

34、更批准时;每次变更批准时;q每次基线库做出发布时。每次基线库做出发布时。3软件项目配置管理计划 在制定配置管理计划时,要完成以下工作:在制定配置管理计划时,要完成以下工作:评估开发团队当前配置管理现状;评估开发团队当前配置管理现状;定义实施的范围;定义实施的范围;计划资源要素;计划资源要素;制定配置管理计划。制定配置管理计划。59软件项目配置管理计划 配置管理计划的主要内容一般包括:配置管理计划的主要内容一般包括:定义配置项和其命名规范;定义配置项和其命名规范;明确配置管理角色及职责;明确配置管理角色及职责;给出配置管理环境方案;给出配置管理环境方案;制定配置管理活动计划和时间表;制定配置管理

35、活动计划和时间表;定义项目基线计划和管理;定义项目基线计划和管理;制定变更控制流程和规则;制定变更控制流程和规则;制定配置状态报告内容;制定配置状态报告内容;确定配置审核方法和审核内容;确定配置审核方法和审核内容;制定产品发布计划等。制定产品发布计划等。6061主要内容 软件项目进度管理概述软件项目进度管理概述 软件项目进度管理过程软件项目进度管理过程 软件项目进度估算软件项目进度估算 软件项目进度计划编制原理软件项目进度计划编制原理62631.1软件项目进度管理的意义 进度管理目的和意义进度管理目的和意义 保证在正确的时间有正确的资源可用保证在正确的时间有正确的资源可用 避免不同的活动在相同

36、的时间竞争相同的资源避免不同的活动在相同的时间竞争相同的资源 为每个人员分配任务,协调人员为每个人员分配任务,协调人员 实际的进度可以有标准进行衡量实际的进度可以有标准进行衡量 产生成本消耗计划产生成本消耗计划 根据实际情况,调整项目根据实际情况,调整项目641.2软件项目进度管理的术语 活动活动/认为认为 进度管理是基于进度管理是基于WBS的,的,WBS的最下层就是一的最下层就是一个活动,或者称为一个任务。完成了这些活个活动,或者称为一个任务。完成了这些活动意味着完成了动意味着完成了WBS结构中的项目细目和子细结构中的项目细目和子细目。目。里程碑里程碑 里程碑就是指一组活动的终点,是完成一个

37、里程碑就是指一组活动的终点,是完成一个阶段工作后可以看到部分结果的检查点。阶段工作后可以看到部分结果的检查点。65关于里程碑的建议 对于小的、一个人的项目(对于小的、一个人的项目(PSP):):每每4-5个小时的工作应该有个里程碑个小时的工作应该有个里程碑对于多个星期的工作至少每个星期对于多个星期的工作至少每个星期一个里程碑一个里程碑 对于团队项目:对于团队项目:里程碑往往和评审结合在一起里程碑往往和评审结合在一起1.3 软件项目进度管理定义66n进度是项目活动的一个列表进度是项目活动的一个列表n基本属性:基本属性:q按照时间顺序排列按照时间顺序排列q能够体现任务的依赖关系能够体现任务的依赖关

38、系q把任务和资源结合起来把任务和资源结合起来n进度中要包括所有的活动进度中要包括所有的活动67进度和工作量 在考虑进度安排时,要把工作量与花费时在考虑进度安排时,要把工作量与花费时间联系起来,合理分配工作量。间联系起来,合理分配工作量。进度和工进度和工作量之间不是简单的比例关系,根据工作作量之间不是简单的比例关系,根据工作量估算进度时必须考虑团队的效率和项目量估算进度时必须考虑团队的效率和项目最短时间的因素。最短时间的因素。68任务的确定与并行性 当参加同一软件工程项目的人数不止一人的当参加同一软件工程项目的人数不止一人的时候,开发工作就会出现并行情形。时候,开发工作就会出现并行情形。因为并行

39、任务是同时发生的,所以进度计划因为并行任务是同时发生的,所以进度计划表必须决定任务对资源的需求表必须决定任务对资源的需求69进度管理 在整个项目中,我们需要一份能清晰描在整个项目中,我们需要一份能清晰描述活动发生的时间和所需要的资源的计述活动发生的时间和所需要的资源的计划。划。仅仅考虑活动之间的顺序关系,我们称之为仅仅考虑活动之间的顺序关系,我们称之为活动排序(活动排序(Sequencing)Sequencing)逻辑设计逻辑设计 考虑资源约束,我们称为调度考虑资源约束,我们称为调度(Scheduling)Scheduling)物理设计物理设计1.4进度管理中活动间的关系70nFS(完成开始)

40、:(完成开始):B任务必须在任务必须在A任务完成任务完成之后才能够开始。之后才能够开始。nSS(开始开始)(开始开始):B任务只能够在任务只能够在A任务开任务开始之后才能够开始始之后才能够开始ABAB进度管理中活动间的关系(续)nFF(完成完成)(完成完成):B任务只能够在任务只能够在A任务完任务完成之后才能够完成成之后才能够完成nSF(开始完成开始完成):B任务只能够在任务只能够在A任务开始之任务开始之后才能够完成后才能够完成ABAB72活动之间关系的依据 强制性依赖关系强制性依赖关系/硬逻辑关系:是指各活动间固有硬逻辑关系:是指各活动间固有的依赖性,通常由客观条件限制造成的(例如软的依赖性

41、,通常由客观条件限制造成的(例如软件只有在原型完成后才能对它进行测试。)件只有在原型完成后才能对它进行测试。)软逻辑关系:是指由项目管理团队所确定的相关软逻辑关系:是指由项目管理团队所确定的相关性,是人为的,主观的。性,是人为的,主观的。外部依赖关系:是指本项目活动与外部活动间的外部依赖关系:是指本项目活动与外部活动间的相关性。例如,一个软件项目的测试活动依赖于相关性。例如,一个软件项目的测试活动依赖于外部硬件的运到。外部硬件的运到。731.5进度管理常见问题 项目范围定义不完整或者中途变更;项目范围定义不完整或者中途变更;对项目所涉及的资源、环境、工具等的成本分析对项目所涉及的资源、环境、工

42、具等的成本分析不够完善准确,致使项目实施过程中遇到资源、不够完善准确,致使项目实施过程中遇到资源、环境、工具的限制时,不得不以时间作代价环境、工具的限制时,不得不以时间作代价 对项目估算不准确对项目估算不准确 项目质量原因项目质量原因 人员因素人员因素 对项目的风险分析不够对项目的风险分析不够 项目进度管理力度不够项目进度管理力度不够 742.1PMBOK中进度管理过程 定义活动定义活动;排列活动顺序;排列活动顺序;估算活动资源;估算活动资源;估算活动持续时间;估算活动持续时间;制定进度计划;制定进度计划;控制进度。控制进度。2.2软件项目进度安排过程7576项目进度安排 软件项目的进度安排与

43、任一个工程项目的进度安排基本软件项目的进度安排与任一个工程项目的进度安排基本相同。基本过程:相同。基本过程:首先,识别一组项目任务,并建立任务之间的相互关首先,识别一组项目任务,并建立任务之间的相互关系系 其次,估算各个任务的工作量和完成任务所需要的资其次,估算各个任务的工作量和完成任务所需要的资源源 定义里程碑定义里程碑 然后分配人力和其它资源,制定进度时序然后分配人力和其它资源,制定进度时序 检查进度安排,确保任务之间没有冲突,并且包含了检查进度安排,确保任务之间没有冲突,并且包含了完成项目必需的所有任务。完成项目必需的所有任务。并行组织任务以最优利用资源并行组织任务以最优利用资源 使任务

44、依赖关系最小以避免等待时间。使任务依赖关系最小以避免等待时间。进度安排中应该包括一定的缓冲进度安排中应该包括一定的缓冲 进度安排也依赖于项目经理的经验。进度安排也依赖于项目经理的经验。77 为监控软件项目的进度计划和工作的为监控软件项目的进度计划和工作的实际进展情况,为表现各项任务之间实际进展情况,为表现各项任务之间进度的相互依赖关系,资源的使用状进度的相互依赖关系,资源的使用状况,需要采用图示的方法况,需要采用图示的方法 在图示方法中,需要明确标明:在图示方法中,需要明确标明:各个任务的计划开始时间,完成时各个任务的计划开始时间,完成时间;间;各个任务完成标志;各个任务完成标志;完成各个任务

45、所需的资源。完成各个任务所需的资源。2.3进度管理的图示78进度管理的图示 网络图网络图 PDM网络图网络图 ADM网络图网络图 CDM网络图网络图 甘特图甘特图 棒状图甘特图棒状图甘特图 三角形甘特图三角形甘特图 里程碑图里程碑图79甘特图 甘特图(甘特图(Gantt Chart)也称为横道图,)也称为横道图,是表示项目中完成每项活动所需要的时是表示项目中完成每项活动所需要的时间的条形图。间的条形图。80甘特图 优点:优点:易于理解,特别适合任务不多的项目;易于理解,特别适合任务不多的项目;有专业软件支持,无须担心复杂计算和分析。有专业软件支持,无须担心复杂计算和分析。局限局限:只关注进程(

46、时间),无法反映项目管理的只关注进程(时间),无法反映项目管理的其他两个约束(成本和范围);其他两个约束(成本和范围);软件的不足。尽管能够通过项目管理软件描软件的不足。尽管能够通过项目管理软件描绘出项目活动的内在关系,但是如果关系过绘出项目活动的内在关系,但是如果关系过多,纷繁芜杂的线图必将增加甘特图的阅读多,纷繁芜杂的线图必将增加甘特图的阅读难度;难度;它不能表现工程项目的主要矛盾之所在。它不能表现工程项目的主要矛盾之所在。因此,只适用于关系简单的项目。因此,只适用于关系简单的项目。81PDM网络图 Precedence Diagramming Method 节点法或单代号网络图或优先网络

47、。构节点法或单代号网络图或优先网络。构成单代号网络图的基本特点是节点,节成单代号网络图的基本特点是节点,节点表示任务(活动),箭头表示任务之点表示任务(活动),箭头表示任务之间的逻辑关系间的逻辑关系.AON(Activity on-Node)活动在节点法活动在节点法 82软件项目PDM网络图开开始始项目项目规划规划需求需求获取获取需求需求确认确认项目项目计划计划评审评审总体总体设计设计详细详细设计设计编编码码集集成成测测试试系系统统测测试试结结束束83ADM网络图 Arrow Diagramming Method 箭线法或者双代号网络图。图中箭线表示箭线法或者双代号网络图。图中箭线表示任务(活

48、动),节点表示前一个活动的结任务(活动),节点表示前一个活动的结束,同时也表示后一个活动的开始束,同时也表示后一个活动的开始.AOA(Activity on-Arrow)84软件项目ADM网络图134625987项目项目规划规划需求需求获取获取需求需求确认确认项目计项目计划评审划评审总体总体设计设计详细详细设计设计编码编码集成集成测试测试系统系统测试测试85CDM网络图 也称为条件箭线图法网络图。它允许活动也称为条件箭线图法网络图。它允许活动序列相互循环和反馈,诸如一个环或条件序列相互循环和反馈,诸如一个环或条件分支。分支。实际项目使用很少实际项目使用很少86里程碑图n里程碑图就是使用图表的方

49、式来直观的表里程碑图就是使用图表的方式来直观的表达项目里程碑的一种项目管理表格工具。达项目里程碑的一种项目管理表格工具。873项目进度估算 经验公式估算法经验公式估算法 参数估算法参数估算法 自上而下经验比例法自上而下经验比例法 进度表估算法进度表估算法 基于承诺的进度估算法基于承诺的进度估算法 Jones的一阶估算准则的一阶估算准则3.1经验公式估算法88n已知团队规模的估算法:已知团队规模的估算法:q估算公式为:估算公式为:DE/(S*P)qD表示任务的持续时间,即进度,可以表示任务的持续时间,即进度,可以用小时、日、周表示;用小时、日、周表示;E表示任务的工表示任务的工作量,可以用人月、

50、人天等表示;作量,可以用人月、人天等表示;S表表示团队规模,可以用人数表示;示团队规模,可以用人数表示;P表示表示开发效率,主要代表团队规模和个人开开发效率,主要代表团队规模和个人开发相比的效率,是一个无量钢的量,它发相比的效率,是一个无量钢的量,它体现了团队效率和个人效率的关系。体现了团队效率和个人效率的关系。q适用于规模比较小的项目,相对比较简适用于规模比较小的项目,相对比较简单和容易。单和容易。3.1经验公式估算法89n未知团队规模的估算法:未知团队规模的估算法:q基本公式:基本公式:Da*Ebq其中其中D表示月进度,表示月进度,E表示工作量,以人表示工作量,以人月为单位。月为单位。a是

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(教学课件·软件项目管理.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|