项目管理-生存期模型-2015

上传人:小** 文档编号:39825258 上传时间:2018-05-20 格式:PPT 页数:32 大小:815.50KB
返回 下载 相关 举报
项目管理-生存期模型-2015_第1页
第1页 / 共32页
项目管理-生存期模型-2015_第2页
第2页 / 共32页
项目管理-生存期模型-2015_第3页
第3页 / 共32页
项目管理-生存期模型-2015_第4页
第4页 / 共32页
项目管理-生存期模型-2015_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《项目管理-生存期模型-2015》由会员分享,可在线阅读,更多相关《项目管理-生存期模型-2015(32页珍藏版)》请在金锄头文库上搜索。

1、项目管理之 生存期及开发模型Page 2课程安排n生存期模型定义n常用生存期模型n户联网时代的软件特点chapter_33建筑工程类项目典型生存期模型chapter_34软件生存期模型q软件开发的一种框架。q说明了软件的活动和进行软件开发的过程q这个模型可以是以活动为中心,可以以产品为中心的5软件的生存周期问题定义可行性研究需求分析概要设计详细设计编码和单元测试综合测试运行维护软件定义软件开发运行维护系统分析系统设计系统实现chapter_36软件生存期模型特征q描述了开发的主要阶段q定义了每一个阶段要完成的主要过程和活动q规范了每一个阶段的输入和输出q提供了一个框架,可以将必要的活动映射到该

2、框架中q软件的生存期与开发模型有关不同模型:开发阶段划分、评审次数、基线标准开发项目:选模型生存期裁剪开发计划开发软件7瀑布模型1、瀑布模型(Waterfall Model)(流水式过程模型)生存周期由需求分析、规格说明、设计、编程、测试、发布、维护组成每个阶段是瀑布中的一个台阶,软件生存过程在这些台阶中由上向下地奔流。开发人员按照阶段开发,管理人员按照阶段管理。2、特点:(1) 里程碑或基线驱动,或者说文档驱动;(2) 过程逆转性很差,或者说不可逆转 传统的瀑布模型83 3、选择模型的、选择模型的条件条件:(1 1)在开发时间内需求没有或)在开发时间内需求没有或很少变化很少变化。(2 2)分

3、析设计人员对应用)分析设计人员对应用领域很熟悉领域很熟悉。(3 3)低风险项目低风险项目(对目标、环境很熟悉)。(对目标、环境很熟悉)。(4 4)用户使用环境很)用户使用环境很稳定稳定。(5 5)用户用户除提出需求以外,除提出需求以外,很少参与开发很少参与开发。瀑布模型(续)9瀑布模型(续)4 4、优点模型的优点模型的优点优点:阶段清晰:阶段清晰5 5、模型的、模型的缺点缺点:(1)(1)由于逆转性很差,所以返工会造成重大由于逆转性很差,所以返工会造成重大损失。损失。(2)(2)错误的传递,会采取发散扩大的方式。错误的传递,会采取发散扩大的方式。 改进改进微软:严格的里程碑管理制度微软:严格的

4、里程碑管理制度CMMCMM:阶段评审和不符合:阶段评审和不符合项项的动态跟踪制度,只有前一阶段的不符合项全部改正后,才允许开发人员进入后一阶段的工作。实际瀑布模型chapter_310V模型chapter_311V模型模型适合的项目q 项目的需求在项目开始前很明确q 解决方案在项目开始前也很明确q 对系统的性能安全很严格的项目q 类似的项目如:q航天飞机等q公司的财务系统12增量模型1、模型本意 软件产品看作一组增量构件,每次设计、实现、集成、测试和交付一块构件,直到所有构件全部实现为止。 先开发其中的一个核心模块,再开发其他模块,这样一个个模块地增加上去,直至整个系统开发完毕为止。第1次 集

5、成第1块 积木第2次 集成第1块 积木第2块 积木第3次 集成第1块 积木第2块 积木第3块 积木第4次 集成第1块 积木第2块 积木第3块 积木第4块 积木第N次 集成第1块 积木第2块 积木第3块 积木第4块 积木第N块 积木132、特点:(1) 任务或功能模块驱动,可以分阶段提交产品;(2) 有多个任务单,这些多个任务单的集合,构成项目的一个总任务书(总用户需求报告/需求规格说明书)。3、选择模型的条件:(1)在项目开发过程中,客户接受分阶段交付。(2)开发人员对应用领域不熟悉,难以一步到位。(3)工期过紧的中等或高风险项目。(4)用户可参与到整个软件开发过程中。(5)使用面向对象语言。

6、(6)软件公司自己有较好的类库、构件库。增量模型(续)14增量模型(续)4、优点:大系统分解为小系统,降低开发难度5、缺点: 不适合组装和拆卸性不强的软件系统 开发人员全局把握水平不高(没有数据库设计专家进行系统集成) 客户不同意分阶段提交产品15原型模型 1、模型本意 以某个软件原型为参照模型的开发方法,叫做原型法。 在初步需求分析之后,马上向客户展示一个软件产品原型,对客户进行培训,让客户试用,在试用中收集客户意见,修改原型,再让客户试用,反复循环几次,直到客户确认为止。2、特点 原型驱动 开发者必须先有一个原型,至少要有一个原型的核心。16原型模型(续)3、选择模型的条件:(1)已有产品

7、或产品的原型,只需客户化的项目。(2)简单而熟悉的行业或领域。(3)有快速原型开发工具。(4)进行产品移植或升级。4、优点 开发速度快 实时反馈用户意见5、模型的缺点:不利于开发人员的创新部署交付和 反馈构建原型交流快速设计方式 建模快速计划17快速原型法(没有原型的原型法) 基本思路:面向数据的方法,用Power Designer等数据库分析和设计工具,快速建立信息系统的概念数据模型CDM和物理数据模型PDM面向对象的编程工具,在软件企业强大的类库、构件库的支撑下,快速地实现需求分析中确认的流程、功能、性能和接口交付给用户试用,反复循环几次,直到客户确认满意为止。18快速原型法(续) 选择条

8、件项目组中有数据库分析和设计的专家有面向对象编程的专家文档制作有成熟的模板系统或项目又不是非常大 规规划分析设计设计构建测试测试规规划后置传统传统开发发快速应应用 开发发后置压缩压缩19迭代模型 1、模型本意 为使项目能够比较顺利地进行,一种较灵活的方法:多次执行各个开发工作流程,达到更好地理解需求,设计出更为强壮的软件构架,逐步提高开发组织能力,最终交付一系列逐步完善的实施成果。 2、特点 迭代循环驱动,每一次迭代循环,均要走完初始(先启)、精化、构建、移交4个阶段。 开发人员应对迭代的开发方式比较熟悉,并具有丰富的软件工程知识和实施经验。 开发人员应对软件工程的核心过程:系统建模、需求分析

9、、系统设计、系统实现、项目管理、配置管理、测试等比较熟悉。 面向对象技术比较适合采用迭代的开发方式来进行20迭代模型(续)3、迭代式分为以下4个阶段 初始阶段:确定系统的业务用例(Use Case)和定义项目的范围 精化阶段:分析问题域,细化产品定义,定义系统的构架并建立基线,为构建阶段的设计和实施工作提供一个稳定的基础 构建阶段:反复开发,完善产品,达到用户的要求 移交阶段:产品交付,包括安装、培训、交付、维护等21迭代模型(续)3、选择模型的条件:(1)项目开发早期需求可能有所变化(2)分析、设计人员熟悉行业或领域(3)高风险项目(4)用户参与整个项目的开发过程(5)使用面向对象的语言或U

10、ML(6)使用CASE工具4、优点 初期不要求有一个相近的原型。几乎适用于所有的项目开发 实时反馈用户意见5、要求项目组成员具有很高的水平并掌握先进的开发工具22XP模型 1模型的本意 XP模型,即极限编程模型,它本来是敏捷企业文化现象,但是不少人将它当作一种软件开发模型。 XP模型属于轻量级开发模型,它由一组简单规则(需求、实现、重构、测试、发布)组成,既保持开发人员的自由创造性,又保持对需求变动的适应性,即使在开发的后期,也不怕用户需求的变更。XP模型的迭代开发过程,如下图所示。 2324 2模型的特点 在需求、实现、重构、测试、发布的迭代过程中,XP模型有四条核心原则:“交流” 、“简单

11、” 、“反馈” 和“进取” 。 XP开发小组不仅包括开发人员,还包括管理人员和客户。 XP模型强调小组内成员之间要经常进行“交流”,结对编程,在尽量保证质量的前提下力求过程和代码的“简单”化。 来自客户、开发人员和最终用户的具体“反馈”意见,可以提供更多的机会来调整设计,保证把握正确的开发方向。 在XP模型中,采取讲“用户场景故事”的方法,来代替传统模型中的需求分析。 XP模型(续) 25 3选择模型的条件 XP模型克服了传统模型不灵活机动的缺陷,是一种面向客户场景的轻量级模型。它只适合于中小型开发小组。实践表明,XP模型特别适合于情投意合的青年人群的小项目。 4模型的优点 (1).由于采用简

12、单策略,不需要长期计划和复杂管理,因而开发周期短; (2).由于采用迭代增量开发、反馈修正和反复测试的方法,因而软件质量有保证; (3).由于适应用户需求的变化,因而与用户关系和谐。 XP模型(续) 26 5模型的缺点 XP模型作为一种新的模型,在实际应用中还存在着一些问题,引起了许多争议。 它只适用于小型项目、小型项目组,不大适用于大型项目、大型项目组。 同时,它与ISO9001、CMMI的精神也存在冲突。 XP模型(续) 27序号模 型 名 称优 点缺 点适 用 范 围1瀑布模型 简单好学逆转性差 面向过程开发2增量模型 可以分阶段 提交有时用户不同意 系统可拆卸和组装3迭代模型 需求可变

13、风险大 有高素质软件团队4原型模型 开发速度快不利于创新 已有产品的原型5螺旋模型需求可变建设周期长庞大、复杂、高风险项 目6喷泉模型提高开发效率不利于项目的管理面向对象开发7XP模型提高开发效率不适合大团队、大 项目小团队,小项目各种模型比较 28户联网时代的软件开发29户联网时代的软件开发特点:(1)以快吃慢,如微信和米聊(2)迭代发布,1-2周发布一个小版本(3)关注用户行为和体验(4)需求变化快(5)小步快跑30户联网时代的软件开发开发模型:迭代 大多数采用敏捷开发,将项目分成了若干个迭代周期,每个迭代周期结束都能立即反馈。 研发快速迭代、快速试错 版本碎片化 客户端逻辑尽可能灵活 团

14、队成员的市场敏感度31本章小结1.进入IT企业参与软件开发或软件管理时,首先要明确:当前的项目或产品开发到底采用什么开发模型,由此确定软件的生存周期和当前的软件开发进度;合理安排项目组成员的工作。迅速适应IT企业文化,并很快进入角色。2.瀑布模型、增量模型、原型模型。因为3个模型各有所长,所以它们有各自的生存空间。因为它们各有所短,所示才会产生相互竞争,共同构成一个丰富多彩的多个模型竞争的世界。3.一个成熟的软件组织,通过裁减逐渐形成适合本单位的生存周期模型。4. 从根基上看,目前各种开发模型都是瀑布模型和迭代模型的变种,或者是两者的混合Page 32Thank you for your time.

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号