中国海洋大学 考研复习软工复习整理.ppt

  1. 1、本文档共93页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
中国海洋大学考研复习软工复习整理概要1

各阶段的基本任务: 1. 问题定义 必须回答的关键问题是:“要解决的问题是什么?” 2. 可行性研究 必须回答的关键问题是:“对于上一个阶段所确定的问题有行得通的解决办法吗?” 3. 需求分析 准确的确定“为了解决这个问题,目标系统必须做什么”,主要是确定目标系统必须具备那些功能。; 4. 总体设计 必须回答的关键问题是:“概括地说,应该如何解决这个问题?”。 有两个任务: (1)考虑几种可能的解决方案。 低成本解决方案;中等成本解决方案;高成本“十全十美”的系统; (2)设计软件结构,即确定程序由哪些模块组成以及模块间的关系。 5.详细设计 关键问题是:“应该怎样具体地实现这个系统?” ; 6.编码和单元测试 关键任务是写出正确的容易理解、容易维护的程序模块。 7.综合测试 关键任务是通过各种类型的测试(及相应的调试)使软件达到预定的要求。 8.软件维护 关键任务是,通过各种必要的维护活动使系统持久地满足用户的需要。 维护类型:改正性维护、适应性维护、完善性维护、预防性维护。; 1.4.1 瀑布模型 把生命周期划分为阶段的目的及实质是:控制开发工作的复杂性;通过有限的确定步骤,把用户需求从抽象的逻辑概念逐步转化为具体的物理实现。; 按照传统的瀑布模型开发软件,有如下几个特点: 1.阶段间具有顺序性和依赖性 这个特点由两重含义: (1)必须等前一阶段的工作完成之后,才能开始后一阶段的工作;(2)前一阶段的输出文档就是后一阶段的输入文档,因此只有前一阶段的输出文档正确,后一阶段的工作才能获得正确的结果。 2.推迟实现地观点;3.质量保证的观点 在瀑布模型的每个阶段都应该坚持两个重要做法: (1)每个阶段都必须完成规定的文档,没有交出合格的文档就是没有完成该阶段的任务。 (2)每个阶段结束前都要对所完成的文档进行评审,以便及早发现问题,改正错误。 ;图1.3 实际的瀑布模型;1.4.2 快速原型模型 所谓快速原型是快速建立起来的可以在计算机上运行的程序,它所能完成的功能一般是最终产品能完成的功能的一个子集。如图1.4所示。 ;快速原型 验证; 从图1.4可以看出,快速原型模型是不带反馈环的,这正是这种过程模型的主要优点:软件产品的开发基本上是线性顺序进行的。 (1)原型系统已经通过与用户交互而得到验证,据此产生的规格说明文档正确地描述了用户需求,因此,在开发过程的后续阶段不会因为发现了规格说明文档的错误而进行较大的返工。 (2)开发人员通过建立原型已经掌握很多东西。因此,在设计和编码阶段发生错误的可能性也较小,这自然减少后续阶段修改前面错误的可能性。;1.4.3 增量模型 增量模型也称为渐增模型,如图1.5所示。; 使用增量模型开发软件时,把软件产品作为一系列的增量构件来设计、编码、集成和测试。每个构件由多个相互作用的模块构成,并且能够完成特定的功能。使用增量模型时,第一个增量构件往往实现软件的基本需求,提供最核心的功能。 ; 图1.5所示的增量模型表明,必须在开始实现各个构件之前就全部完成需求分析、规格说明和概要设计的工作。由于在开始构建第一个构件之前就已经有了总体设计,因此风险较小。图1.6描绘一种风险更大的增量模型:一旦确定了用户需求之后,就着手拟定第一个构件的规格说明文档,完成后规格说明组将转向第二个构件的规格说明,与此同时设计组开始设计第一个构件…用这种方式开发软件,不同的构件将并行的构建,因此有可能加快工程进度。但是,使用这种方法将冒构件无法集成到一起的风险。;规格说明 ;1.4.4 螺旋模型;风险分析 快速原型 验证;图1.8 完整的螺旋模型;1.4.5 喷泉模型 迭代是软件开发过程中普遍存在的一种内在属性。经验表明,软件过程各个阶段之间的迭代或一个阶段内各个工作步骤之间的迭代,在面向对象范型中比在结构化范型中更常见。 图1.9所示的喷泉模型,是典型的面向对象的软件过程模型。“喷泉”这个词体现了面向对象软件开发过程迭代和无缝的特性。; 图中代表不同阶段的圆圈相互重叠,这明确表示两个活动之间存在交叠。图中在一个阶段内的向下箭头代表该阶段内的迭代(或求精)。 为避免使用喷泉模型开发软件时开发过程过分无序,应该把一个线性过程(如图1.9中的中心垂线)作为总目标。;1.最佳实践 迭代式开发 管理需求 使用基于构件的体系结构 可视化建模 验证软件质量 控制软件变更;2. RU

文档评论(0)

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

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

1亿VIP精品文档

相关文档