版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件过程与项目管理软件过程与项目管理第五章第五章 软件过程的项目管理软件过程的项目管理软件过程与项目管理软件过程与项目管理5.1 5.1 软件配置管理软件配置管理l 开发人员在一种无法控制的状态下访问源代码l 修改过的错误再次出现l 产品升级和维护所必需的程序和文档非常混乱l 多项目、多版本的管理与开发l 同步和并行开发问题l 人员流动引起知识资产的流失l 项目开发状态不清楚l 软件生产达不到规模化l 集成过程拖延了产品投放市场的时间l 由于管理不善致使未经测试的软件加入到产品中软件过程与项目管理软件过程与项目管理5.1 5.1 软件配置管理软件配置管理软件过程与项目管理软件过程与项目管理软件
2、项目开发管理的新需求软件项目开发管理的新需求l 你在一家小公司做软件工程师,开始的时候,你只有一个人,配了2个助手。你们研究了一种算法(例如:图象压缩、数据加密等),编写了一个实现模块。有一天老板看到了你的演示,认为很有市场潜力,可以结合进公司正在给某行业用户正在准备开发的系统中,成为该系统的核心技术或一个别人没有的卖点。l 下一周,你的队伍增加到14,与你3个人的小组不同的是,公司从其他部门为你配备了系统分析师,还有文档编制员、测试员。你的核心模块已经被大量的用户功能所包装,成为一个行业应用系统,并开始给用户试用,这是你的系统的第一版。l 3个月后,公司决定把系统升级到第二版,除增加了许多新
3、的功能外,公司决定支持多平台,同时,为了提高系统的性能和效率,准备采用第三方厂家的中间件,取代自己做的接口。第一版的缺陷修改,也要反映到第二版中。软件过程与项目管理软件过程与项目管理软件项目开发管理的新需求软件项目开发管理的新需求l 第2版经过2个多月的开发,最终推向了市场。公司的这个产品不但被用户所欢迎,也被一家大公司所看中,你们的产品,正好可以填补这家大公司产品线的空缺,你所在的公司被这家公司买去了。l 公司为你的项目组派来了产品经理、项目经理。公司决定这个产品的测试,由公司总部独立的测试部门承担。同时,公司决定把项目组增加到50人,其中有20多人并不在你所在的城市。在新公司里,产品管理、
4、项目管理、测试、质量等等,都与你过去的环境和做法不同,特别不同的是,公司准备开发的第3版系统与公司原有的产品要进行融合,使他们看上去是一家出来的不同的兄弟和姐妹。软件过程与项目管理软件过程与项目管理5.1 5.1 软件配置管理软件配置管理没有配置管理没有配置管理有配置管理有配置管理软件过程与项目管理软件过程与项目管理5.1 5.1 软件配置管理软件配置管理软件过程与项目管理软件过程与项目管理5.1 5.1 软件配置管理软件配置管理软件过程与项目管理软件过程与项目管理软件配置的定义软件配置的定义l软件配置是由在软件工程过程中产生的所有信息项构成的,它可以看作该软件的具体形态(软件配置项)在某一时
5、刻的瞬间影像。软件过程与项目管理软件过程与项目管理软件配置管理中的基本概念软件配置管理中的基本概念l 配置l配置是在技术文档中明确说明最终组成软件产品的功能或物理属性。l 配置项l在软件生存周期内所产生的各种应纳入管理范围的系统构成成分。包括各种管理文档和技术文档,源程序与目标代码,以及运行所需的各种数据等(配置管理的资源对象)。 l 基线l基线是评审过的一个或多个软件配置项,每一个基线都是下一步开发的出发点和基础。软件过程与项目管理软件过程与项目管理软件配置管理中的基本概念软件配置管理中的基本概念l版本l表示一个配置项具有一组定义的功能的一种标识。随着功能的增加、修改或删除,配置项被赋予不同
6、的版本号。一般在配置标识方案中给出版本标识方法。软件过程与项目管理软件过程与项目管理软件配置管理中的基本概念软件配置管理中的基本概念l配置管理库l配置管理库也称受控库,用于存储软件配置项以及相关配置管理信息。软件过程与项目管理软件过程与项目管理5.1 5.1 软件配置管理软件配置管理l软件配置管理(Software Configuration Management,SCM)l对软件开发组所建立的软件的修改进行标识、组织和控制的艺术,其目标是减少错误,提高生产力;l能够系统地处理变更,从而使得软件系统可以随时保持其完整性,又可称为变更控制,可以用来评估提出的变更请求,跟踪变更,并保存系统在不同时
7、间的状态;软件过程与项目管理软件过程与项目管理5.1 5.1 软件配置管理软件配置管理l“软件配置管理过程是在整个软件生存期中实施管理和技术规程的过程,它标识、定义系统中的软件项并指定基线;控制软件项的修改和发行;记录和报告软件项的状态和修改申请;保证软件项的完整性、协调性和正确性以及控制软件的存储、处理和交付。”- ISO/IEC 12207软件过程与项目管理软件过程与项目管理软件配置管理的功能软件配置管理的功能l并行开发支持;l修订版本管理;l版本控制;l产品发布管理;l建立管理;l过程控制;l变更请求管理;l代码共享。软件过程与项目管理软件过程与项目管理软件配置管理流程软件配置管理流程软
8、件过程与项目管理软件过程与项目管理基线控制基线控制u 计划基线u 需求基线u 设计基线u 编码基线u 测试基线软件过程与项目管理软件过程与项目管理版本控制版本控制l 1. 版本的访问和同步控制软件过程与项目管理软件过程与项目管理Check-inCheck-in和和Check-outCheck-outl软件配置项通过检入(Check-in),进入配置库,开始“冻结”;l由于各种原因需要变更,从配置库中检出(Check-out)配置项;lcheck in和check out通过加锁协调多用户操作;l每次check in时,在配置库上都会生成新的版本。软件过程与项目管理软件过程与项目管理版本控制版本
9、控制l 2. 版本的分支软件过程与项目管理软件过程与项目管理版本控制版本控制l3. 版本的合并将需要保护的分支锁定,将需要保护的分支锁定,打上打上Release标签标签 。在以在以Release标签标签为基线的分支上开为基线的分支上开发发 1.1版本。版本。版本合并:版本合并:1.1版本开发完成,版本开发完成,希望合并到基线版本中作为以希望合并到基线版本中作为以后开发新版本的基础。后开发新版本的基础。软件过程与项目管理软件过程与项目管理变更控制变更控制软件过程与项目管理软件过程与项目管理微软的每日编译微软的每日编译l每日编译l每天都对所有的源代码进行一次完整的编译,生成一份可执行的产品程序;l
10、每日编译的目的l展示最新进展l测试的基础l产生新版本号l检查并发布编译结果l生成编译报告软件过程与项目管理软件过程与项目管理5.2 5.2 软件风险管理软件风险管理l软件开发的风险l用户要求是否能确切地被理解?l在项目最后结束之前要求实现的功能能否建立?l是否存在目前仍未发现的技术难题?l在项目出现严重误期时是否发生一些变更?l糟糕的计划与估算l人员流动l软件过程与项目管理软件过程与项目管理软件风险的类型软件风险的类型l项目风险:威胁到项目计划l进度、人力、资源、客户及需求等问题l技术风险:威胁到软件的质量及交付时间l设计、实现、接口、验证和维护等问题l商业风险:威胁到软件的生存能力l市场风险
11、l策略风险l销售风险l管理风险l预算风险软件过程与项目管理软件过程与项目管理5.2 5.2 软件风险管理软件风险管理l软件风险管理l对影响软件项目、过程或产品的风险进行评估和控制的实践过程。l软件风险管理是管理和开发软件系统必不可少的要素l软件风险是工作与生俱来的;l软件风险随着系统复杂程度的增加而增加;l软件风险阻碍人们实现目标。软件过程与项目管理软件过程与项目管理风险事件图风险事件图高高低低生命周期生命周期风险发生的概率处理风险事件的成本软件过程与项目管理软件过程与项目管理风险管理成熟度模型风险管理成熟度模型问题阶段问题阶段缓和阶段缓和阶段防范阶段防范阶段预知阶段预知阶段机会阶段机会阶段我
12、疲于救火!我疲于救火!我想知道哪里会出错!我想知道哪里会出错!我想采取行动不留遗憾!我想采取行动不留遗憾!我想知道成功的机会有多大!我想知道成功的机会有多大!我想超过期望!我想超过期望!软件过程与项目管理软件过程与项目管理常用的风险识别方法常用的风险识别方法l检查单l文件审核l头脑风暴l德尔菲法l访谈lSWOT分析l图表分析软件过程与项目管理软件过程与项目管理No.软件风险软件风险相应对策相应对策1人员不足录用优秀人才;人员应适应岗位需要;全面考虑团队建设;骨干人员工作要协调;实施培训;预先安排关键人员的使用计划2进度计划和预算不准确详细评估多种资源成本和进度;依成本进行设计;采用渐增式开发;
13、软件复用;纯净需求3开发了错误的软件功能进行组织分析;实施任务分析;进行用户调查;开发原型;及早编制用户手册4开发了不适用的用户接口开发原型;制作脚本;作业分析;弄清了用户特征(功能性、风格、工作负荷)5只追求表面效果,需求中含有一些不必要的功能(镀金)纯净需求;开发原型;成本效益分析;依成本进行设计6需求不断变更重大变更设限;信息隐蔽;渐进式开发7外供部件不足制定基准点;检验;参考基准检查;兼容性分析8外包任务问题参考基准检查;发包前审核;未发包合同;竞标设计或开发原型;建立团队9实时性能达不到要求模拟;制定基准;建模;开发原型;安装测量装置;调准10误解计算机科学能力技术分析;成本效益分析
14、;开发原型;参考基准检查1010种常见的软件风险种常见的软件风险软件过程与项目管理软件过程与项目管理定量的风险分析定量的风险分析l量化的风险分析通常需要对事实进行更详细的分析,较之主观的风险分析往往更为可靠。l主要的量化分析方法有: l 比率/范围分析 l 概率分析 l 敏感性分析 软件过程与项目管理软件过程与项目管理定量的风险分析定量的风险分析l可能性l定义为百分数、一个词组或一个相对数字软件过程与项目管理软件过程与项目管理定量的风险分析定量的风险分析l影响度l从性能、成本、进度和支持四个风险因素分析影响度。软件过程与项目管理软件过程与项目管理5.3 5.3 项目计划管理项目计划管理l什么:
15、工作的具体内容,一定时期的工作重点l怎样:如何完成这些工作和任务l谁:确定具体人员或部门l何时:各项工作需要多少时间l多少:每项工作需要多少经费l哪里:各项工作进行的环境软件过程与项目管理软件过程与项目管理常见错误常见错误l过于乐观的计划l在压力下放弃计划l在项目过程中不细化计划、不及时更新计划,不监控计划的执行l缺乏足够的风险管理l缺乏质量计划l项目估算时遗漏必要的任务l前期活动不合要求软件过程与项目管理软件过程与项目管理项目计划的重要性项目计划的重要性l体现了对客户需求的理解l为项目管理和运作提供可行的计划l是有条不紊地开展软件项目活动的基础l跟踪、监督和评审计划执行情况的依据l是项目相关
16、个人和组织的明确承诺软件过程与项目管理软件过程与项目管理项目计划项目计划软件过程与项目管理软件过程与项目管理工作分解结构表(工作分解结构表(WBSWBS)l工作分解结构(WBS,Work BreakdownStructure)l以工作为导向对项目要素进行的分组,它定义了项目的整个工作范围,每细分一层表示对项目工件更详细的描述。l工件(Artifact)l指软件开发过程的中间或最后工作产品,包括文档、模型和程序。软件过程与项目管理软件过程与项目管理WBS-WBS-工作分解结构工作分解结构l1 项目范围规划l 1.1确定项目范围l 1.2获得项目所需资金l 1.3定义预备资源l 1.4获得核心资源
17、l 1.5项目范围规划完成l2 分析/软件需求l 2.1行为需求分析l 2.2起草初步的软件规范l 2.3制定初步预算l 2.4工作组共同审阅软件规范/预算l 2.5根据反馈修改软件规范l 2.6确定交付期限l 2.7获得开展后续工作的批准(概念、期限和预算)l 2.8获得所需资源l 2.9分析工作完成l3 设计l 3.1审阅初步的软件规范l 3.2制定功能规范l 3.3根据功能规范开发原型l 3.4审阅功能规范l 3.5根据反馈修改功能规范l 3.6获得开展后续工作的批准l 3.7设计工作完成l4 开发l 4.1审阅功能规范l 4.2确定模块化/分层设计参数l 4.3分派任务给开发人员l 4
18、.4编写代码l 4.5开发人员测试(初步调试)l 4.6开发工作完毕l 软件过程与项目管理软件过程与项目管理创建创建WBSWBS的基本法则的基本法则l每个工作工作单元在WBS只能出现一次l概要任务是对其下所有任务的总结l每个WBS的条目都有单独的人员负责l与实际要做的工作情形保持一致l建立WBS时应让项目组员参予l每个WBS条目都应备案lWBS既要灵活又要不失控制软件过程与项目管理软件过程与项目管理任务安排任务安排l建立网络图,确定关键路径。l根据每个活动的工期估算值设置时间窗口l前向路径(forward pass)计算各个活动的最早结束时间l反向路径(backward pass)计算各个活动
19、的最晚开始时间l节假日等非工作日除外l考虑时间缓冲,按工期的百分比或固定时间。l对活动时序关系设定Lead和Lag。软件过程与项目管理软件过程与项目管理示例示例软件过程与项目管理软件过程与项目管理示例:前向路径计算示例:前向路径计算软件过程与项目管理软件过程与项目管理示例:后向路径计算示例:后向路径计算软件过程与项目管理软件过程与项目管理关键路径识别关键路径识别lSlack为0的事件为关键事件,将关键事件连接起来的最长路径为关键路径软件过程与项目管理软件过程与项目管理活动的浮动时间活动的浮动时间l具有slack事件的活动具有浮动时间。总浮动是活动的最早结束时间和最迟结束时间的差。软件过程与项目
20、管理软件过程与项目管理项目网络图项目网络图lPERT计划评审技术、CPM关键路径法,采用网络图来描述项目的进度安排。0 02 23 34 45 56 67 71 18 8起点A编码 A调试B编码A测试C理解测试C修改C调试C测试6 66 68 87 78 88 87 79 96 68 8BC组装测试5 5调试任务网络图软件过程与项目管理软件过程与项目管理练习练习l以嵌入式USB主机为例,建立工作分解结构,利用网络图技术分析项目的关键路径,合理分配嵌入式USB主机项目的设计开发时间,控制进度。l1.创建工作分解结构WBS;l2.制定项目活动表;l3.绘制前导图;l4.前向路径计算;l5.后向路径
21、计算;l6.确定关键活动及路径。软件过程与项目管理软件过程与项目管理创建创建WBSWBS软件过程与项目管理软件过程与项目管理制定项目活动表制定项目活动表活动活动活动内容活动内容持续时间持续时间(周)(周)先行活动先行活动A项目需求分析2B系统总体设计2AC系统硬件设计3BD初始化及用户交互界面软件设计3CE单片机与接口芯片通信软件设计3DFUSB主机系统软件设计5EGMS设备类协议软件设计3DHFAT文件系统软件设计3CI系统联调测试2F、G、HJ项目结题报告1I软件过程与项目管理软件过程与项目管理时间安排时间安排- -甘特图甘特图l 甘特图:用水平线段表示任务的工作阶段;线段的起点和终点分别表示任务的开始和完成时间,线段的长度表
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024柚子果树种植与养护技术培训合同3篇
- 2024年短期商业借款协议样本版
- 2024年版电脑硬件采购协议
- 2024年度房屋买卖合同范本:包含产权登记与过户税费6篇
- 2024年租房协议附加条款版B版
- 2024年餐饮连锁服务员提成及奖金合同3篇
- 2024年鱼塘资源综合利用合作合同范本3篇
- 2024年跨国劳动力引进协议版B版
- 2024年绿色环保石材幕墙施工合作协议3篇
- 2024年度数据中心建设与运维承包合同3篇
- 《CIS企业形象策划》课件
- 机器加盟协议合同范例
- 2024-2030年中国油田服务市场发展潜力与前景战略规划分析报告
- 黑龙江省哈尔滨市道里区2023-2024学年八年级上学期数学期末考试试卷
- 码头操作管理制度
- DL-T5704-2014火力发电厂热力设备及管道保温防腐施工质量验收规程
- 贵州省黔东南州2022-2023学年八年级上学期期末文化水平测试数学试卷(含答案)
- MSOP(测量标准作业规范)测量SOP
- 锚索试验总结(共11页)
- 移动脚手架安全交底
- 人教版“课标”教材《统计与概率》教学内容、具体目标和要求
评论
0/150
提交评论