第1章软件工程学终稿.ppt

  1. 1、本文档共107页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实际的瀑布模型 * */106 2 优点与缺点 优点: 强迫开发人员采用规范的方法; 严格规定了每个阶段必须提交的文档; 阶段产品必须经过质量保证小组的验证。 缺点: 客户必须能够完整、正确和清晰地表达他们的需求;开发人员一开始就必须理解需求。 缺乏灵活性。一旦软件需求存在偏差,就会导致开发出的软件产品不能满足用户的实际要求。 在一个项目的早期阶段,过分地强调了基线和里程碑处的文档,可能要花费更多的时间,建立了一些用处不大的文档。 直到项目结束之前,都不能演示系统的能力,增加了项目的风险。 3 瀑布模型适用的情况 只适用于项目开始时需求就已确定的情况。需求变化小 * */106 * */106 瀑布模型的历史功绩 在支持开发结构化软件、控制软件开发复杂度、促进软件开发工程化方面起了显著作用; 它为软件开发和维护提供了一种当时较为有效的管理模式,根据这一模式制定开发计划、进行成本预算、组织开发人员,以阶段评审和文档控制为手段,有效地对软件开发过程进行指导,从而对软件质量有一定程度的保证; 我国曾在1988年根据该模型制定并公布了“软件开发规范”国家标准。 1.4.2 V模型 V模型是瀑布模型的变体,它反映了测试活动与分析和设计的关系(德国国防部1992)。编码形成了V的顶点,分析和设计在左边,测试和维护在右边。 * */106 单元和集成测试针对的是程序的正确性 系统测试验证系统设计 由顾客完成的验收测试把测试步骤与需求说明的每一个元素联系起来,以此来确认需求被正确地实现。 * */106 该模型中V的左边和右边的边线意味着,如果在验证和确认的过程中发现了问题,那么继续执行右边的测试步骤之前,重新执行V 的左边以修正和改进需求、设计和编码。V模型使得某些迭代和重复工作更加清晰,而这些工作在瀑布模型中都是隐含的。 瀑布模型的中心通常是文档和工件,而V模型的中心则是活动和正确性。 * */106 验证(Verification) 目标是确定系统中各项功能可以正常工作,实质上是检查实现的质量如何。 确认(Validation) 目标是确定系统实现了全部的需求,确保开发方建造的是正确的、用户需要的产品。 * */106 * */106 V模型的改良之处与存在的问题 本质是把瀑布模型中一些隐含的迭代过程明确出来,使开发活动和验证活动的相关性更加明显; V模型使抽象等级的概念也更明显:所有从需求到实现部分的活动关注的是建立更多的系统详细表述,而所有从实现到交付运行的活动关注的是对系统的验证和确认。 和瀑布模型一样,都是对软件开发过程过份简单、理想化的抽象,对需求变化的适应性差。 1.4.3 快速原型模型 1 快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品功能的一个子集。 2 原型在开发中的作用: (1)获得用户的真正需求; (2)可用于为一个项目或项 目中某些部分,确定技术、 成本和进度的可能性。 3 快速原型模型中各主要部分 (1)原型快速分析:指在分析者和用户的紧密配合下,快速 确定软件系统的基本要求. (2)原型构造:在原型分析的基础上,根据基本需求规格说 明,忽略细节,只考虑主要特性,快速构造一个可运行 的系统。 * */106 (3)原型运行与评价:软件开发人员与用户频繁通信、发现问题、消除误解的重要阶段,目的是发现新需求并修改原有需求。 (4)原型修正:对原型系统,要根据修改意见进行修正。 (5)判定原型完成:如果原型经过修正或改进,获得了参与者的一致认可,那么原型开发的迭代过程可以结束 * */106 * */106 快速原型模型 设计 验证 编码 验证 综合测试 维护 快速原型 验证 规格说明 验证 变化的需求 验证 * */106 优点 有助于满足用户的真实需求 文档能正确描述用户需求 开发基本是线性顺序 通过原型进行学习 快速 缺点 可能会增加成本 原型系统的内部结构并不重要,重要的是必须迅速构造原型,依据用户意见迅速的修改原型,原型可以是最终产品的一部分,也可以抛弃。 * */106 1.4.4 增量模型(渐增模型) 增量模型有一个假设,即需求可以分段,成为一系列增量产品,每一增量可以分别地开发。 增量模型把软件产品作为一系列的增量构件来设计、编码和测试。每个构件由多个相互作用的模块构成,能完成特定的功能。第一个增量构件往往实现软件的基本需求,提供最核心的功能。 分解时必须遵守的约束条件是,当把新构件集成到现有软件中去时,所形成的产品必须是可测试的。 * */106 图1.5 增量模型 概要设计 验证 需求分析 验证 规格说明 验证 针

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档