(推荐)第3章-统一过程.ppt

上传人:rrsccc 文档编号:10255026 上传时间:2021-05-03 格式:PPT 页数:34 大小:268KB
返回 下载 相关 举报
(推荐)第3章-统一过程.ppt_第1页
第1页 / 共34页
(推荐)第3章-统一过程.ppt_第2页
第2页 / 共34页
(推荐)第3章-统一过程.ppt_第3页
第3页 / 共34页
(推荐)第3章-统一过程.ppt_第4页
第4页 / 共34页
(推荐)第3章-统一过程.ppt_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《(推荐)第3章-统一过程.ppt》由会员分享,可在线阅读,更多相关《(推荐)第3章-统一过程.ppt(34页珍藏版)》请在三一文库上搜索。

1、1,第3章 统一过程,3.1 一维与二维生命周期模型 3.2 统一过程的五个核心工作流 需求流 分析流 设计流 实现流 测试流 3.3 统一过程的四个阶段 开始阶段 细化阶段 构建阶段 转换阶段 3.4软件能力成熟度模型,2,3.1 一维与二维生命周期模型,图3-1:一维生命周期模型 图3-2:二维生命周期模型,3,3.2 统一过程的五个核心工作流,3.2.1 需求流 3.2.2 分析流 3.2.3 设计流 3.2.4 实现流 3.2.5 测试流,4,3.2.1 需求流,目标:确定客户的需求 开发小组的任务 准确确定客户的需求并从客户的角度找出存在的限制条件 (1)最终期限 (2)可靠性 (3

2、)成本 需求流经常完成得不好,原因如下: (1)客户可能不真正了解在他的组织内部正在进行的事情。 (2)客户常常提出错误的产品需求,产生这种情况的主要原因是软件的复杂性。,用自然语言描述系统的功能,不用专业术语,5,3.2.2 分析流,目标:分析和提取需求,以获得正确开发一个软件产品和易于维护它所必需的需求。 当使用统一过程的时候,没有通常意义上的规格说明文档。而是向客户展示一组UML图表 在分析流阶段,客户批准了规格说明文档之后,就开始准备制定软件项目管理计划,用更精确的语言,以确保设计流和实现流正确地完成。加入更多的技术细节,细节不必让用户知道。,6,软件项目管理计划的主要内容,计划内容

3、可交付的东西(客户将要得到什么); 交付的时间(客户什么时候可以得到它们); 预算(它要花费多少钱)。 计划尽可能详细地描述整个软件过程 要使用的生命周期模型; 开发组织的组织结构,项目职责,管理目标和优先权; 使用的技术和CASE工具; 详细时间表,预算和资源分配。,7,3.2.3 设计流,目标:细化分析流的制品,直至材料处于程序员可实现的形式 方法:结构化方法和面向对象方法 传统的结构化设计:设计小组确定产品的内部结构。设计人员将产品分解成模块,它是与产品其他部分有明确定义的接口的独立代码段。 概要设计:每个模块的接口(即传递给模块的参数和从模块返回的参数)必须详细定义; 详细设计:为每个

4、模块选择相应的算法和数据结构。 面向对象方法:该方法的基础是类 分析流:提取类 设计流:对分析流期间得到的类进行细化,添加类的属性、方法、类之间的消息传递,指示产品如何做,8,详细记录所做的每个设计决定,(1) 在进行产品设计时,有时会走到死胡同,这样设计小组需要原路返回重新进行设计。 (2) 以便将来的修改,可修改性是指将来可通过添加新的类或取代已存在的类来提高产品的性能(交付后维护),同时在整体上不影响设计。,9,3.2.4 实现流,目标:用选择的实现语言实现目标软件产品 小型软件产品有时由设计者实现。而大型软件产品被划分为较小的子系统,它们由多个编码小组并行实现。 结构化方法: 交给程序

5、员的是要实现的模块的详细设计。详细设计通常提供程序员实现代码制品所需的详细信息。 面向对象方法: 分析制品包含详细的类图和类之间的关系图,程序员需要按照详细设计来编码实现并测试自己所编的部分。 程序员应注重编写规范,应对变量定义和重要的代码段添加注释,遵守变量定义约定。,编程序,10,3.2.5 测试流,对实现流产品进行测试的主要步骤如下: 单元测试集成测试产品测试验收测试 (1)单元测试 每个组件在实现之后要对它们运行测试用例,程序员做测试,11,3.2.5 测试流(续),(2)集成测试 将组件与其他编码后的组件组合起来,以便能够确定该部分产品整体上功能是否正确 组件集成的方式 一次全部集成

6、 一次一个集成 集成顺序 自顶向下:底层组件通常不会像在自底向上方式中那样得到完全测试 自底向上:查找出顶层的设计错误比较晚,这样造成的重新设计会付出比较昂贵的代价 对组件接口的测试要考察形参的数量、顺序和类型是否与实参的数量、顺序和类型相匹配,12,(3)产品测试,依照规格说明对产品功能进行整体测试 要对规格说明中列出的约束条件进行测试:响应时间 还需要测试产品的健壮性 新产品对客户计算机已有软件是否有不良影响 检查源代码和所有其他类型的文档是否全部完成,并且是否具有内在一致性,13,(4)验收测试,软件交付给客户,客户使用与测试数据不同的真实数据,在实际的硬件上对产品进行测试,14,知识点

7、3-1:比较五个工作流分别需要做什么,15,3.3 统一过程的四个阶段,(1)开始阶段 (2) 细化阶段 (3) 构建阶段 (4) 转换阶段,16,(1)开始阶段,目标:确定目标产品是否值得去开发,即开发该软件经济上是否可行 以需求流的工作为主,有少量的分析、设计和测试工作 需求流有三方面的任务: 获得要开发的软件的领域知识; 在清楚理解客户时如何工作的基础上,画出个要开发系统的商业模型(用例图等); 限定提出项目的范围,17,开始阶段可交付的文档,领域模型的初始版本; 商业模型的初始版本; 需求制品的初始版本; 分析制品的初始版本; 体系结构的初始版本; 风险的初始清单; 初始用例; 对细化

8、阶段的计划; 商业案例的初始版本。,18,(2) 细化阶段,细化阶段的目标 细化最初的需求, 细化体系结构, 监视风险, 细化商业案例, 生成软件项目管理计划 。,19,化阶段可以交付的文档,完成的问题域模型; 完成的商业模型; 完成的需求制品; 完成的分析制品; 体系结构的更新版本; 风险的更新清单; 软件项目管理计划; 完成的商业案例。,20,(3) 构建阶段,构建阶段的目标:产生软件产品的第一个可工作版本,即测试版(版) 交付给用户的相关文档 1)初始用户手册和其他相关手册; 2)全部的软件产品(测试版); 3)完成的体系结构; 4)更新的风险清单; 5)软件项目管理计划(用于项目的余下

9、部分) 6)根据情况,可以更新商业案例。,强调的是编程和测试,21,(4) 转换阶段,转换阶段的目标 确保客户的需求切实得到满足。 将系统从开发单位转移到用户单位,并使之在真实环境中工作。 转换阶段交付的产品包括: 全部软件产品(最终版); 完成的手册。,22,知识点3-2:对比四个阶段交付的内容,23,3.4软件能力成熟度模型,CMM (Capability Maturity Model)即能力成熟度模型 成熟度是过程本身良好程度的度量,CMM基于众多软件专家的实践经验,侧重于软件开发过程的管理及工程能力的提高与评估,是国际上流行的软件生产过程标准和软件企业成熟度等级认证标准。,24,CMM

10、模型的类型,用于软件的(SW-CMM); 用于人力资源管理的(P-CMM;P代表“人”); 用于系统工程的(SE-CMM); 用于集成产品开发的(IPD-CMM); 用于软件获取的(SA-CMM)。,25,SW-CMM成熟度模型,主要观点是:新的软件技术本身并不能导致产量和利润的增加,问题主要出在软件过程管理上 。 SW-CMM将企业的软件过程成熟能力划分为五级 初始级 可重复级 已定义级 已管理级 优化级 等级越高的企业软件过程可见度越好,软件过程的可控性越高,产品性能的预见性以及软件项目的风险评估也越准确,企业的生产能力以及产品质量也越高。 SW-CMM的主要目标之一是改善软件过程和产品质

11、量,它只是描述了过程应当解决的问题,其关键过程域(Key Process Area. KPA)是静态、抽象的描述,并没有说明如何去执行,即使其关键实践也只是描述要做什么,而没有强行规定“怎样”完成目标,26,成熟度级别 1:初始级,初始级的软件过程是未加定义的随意过程 项目的执行是随意甚至是混乱的,强调的是经验和个人能力,当开发人员调动或离开时,软件过程也跟着变化 许多措施都是在软件开发遇到困难的时候采取的,而不是事先计划好的 无法对软件开发的时间和金钱的花费进行精确的估计,27,成熟度级别 2:可重复级,可重复级使用了基本的软件项目管理措施。根据类似产品的经验对新的产品进行计划和管理 可重复

12、级的焦点集中在软件管理过程上 需求管理 项目管理 质量管理 配置管理 子合同管理 从管理角度可以看到一个按计划执行的、且阶段可控的软件开发过程,具有质量统筹、跟踪计划管理,稳定的计划和生产基准。,28,成熟度级别 3:定义级,定义级的软件开发过程有充分的软件生产文档 软件开发过程在所有的管理和技术方面都有明确的定义,并在可能的地方不断努力改进软件开发过程,采用评审的方式来保证软件质量。 也能够引进CASE这样的新技术来进一步提高软件质量和软件生产力。,29,成熟度级别 4:可管理级,可管理级的管理是量化的管理,为每个项目设计了质量目标和生产目标。 所有过程需建立相应的度量方式,所有产品的质量(

13、包括工作产品和提交给用户的产品)需有明确的度量指标。 在软件开发过程中按照制定的指标进行测量,当与目标有不可接受的偏离时,则采取措施对其进行纠正。 设立统计质量控制,确保管理者能够对质量和生产标准的随机偏离及有意图的违背有所判断。,30,成熟度级别 5:最优级,最优级的目标:持续改进软件过程 在每个项目中获得的知识在以后的项目中得到应用,根据过程执行的反馈信息来改善下一步的执行过程,开发过程形成了一个反馈性的良性循环。 企业能够根据实际的项目性质、技术等因素,不断调整软件生产过程以求达到最佳。,31,SW-CMM,每个级别都包含一系列的关键过程区(key process area,KPA),它

14、是一个组织向在迈向下一个级别时要努力实现的目标。 每个KPA进一步包含若干关键实践(Key Practice, KP),关键实践就是指企业在执行约定时,采取的措施或能力中对关键过程域的实施和规范化起重大作用的部分。 每个关键过程区域最终由关键实践所组成,通过实现这些关键实践来达到关键区域的目标。 每一个KPA都包含五类KP为完成关键过程域中的实践活动,32,CMM活动具有公共特性的5个部分:, 执行约定:企业为确保过程的建立和持续而必须采取的措施。一般包括企业的方针、规定以及高层管理者的支持。 执行能力:企业实现软件过程所必须有的先决条件。包括资源、组织机构和培训。 执行活动:执行一个关键过程域所必需的活动、任务和规程。包括制定计划和规程、实施和跟踪及在必要时采取纠正措施。 度量和分析:为确定与过程有关的状态所需的基本测试实践。这些测量可用来控制和改进过程,包括可能采用的测量的案例。 验证实施:确保执行的活动与已建立的过程保持一致所采取的步骤。包括管理部门和软件质量保证部门实施的评审和审核。,33,表3-1:5级能力成熟度模型以及它们的关键过程区,34,基于CMM的过程改进步骤,

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

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1