《软件开发生命周期2).docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《软件开发生命周期2)

复习题 一、选择题 1、软件工程的目标 A 软件工程追求的目标是可用性、正确性和合理性。 B 也可以说是:“优质高产”,即:以较低的成本研制具有高质量的软件。 二、填空题 1、开发软件所需的高成本同产品的低质量之间有着尖锐的矛盾,这种现象就是“软件危机”。 2、“软件工程”一词是1968年北大西洋公约组织组织的专门讨论解决“软件危机”的国际会议上正式提出并使用的。 3、按工作量从大到小排列,依次为: (1)完善性维护 指在使用软件系统的过程中为满足用户提出的新功能和性能要求而进行的维护活动。它约占总维护活动的50%。 (2)纠错性维护 诊断和改正在使用过程中发现的软件错误。 这部分维护工作约占全部维护活动的25%。 (3)适应性维护 由于计算机技术的飞速发展,外部设备和其他系统元素经常改进和变化,为适应变化的环境而修改软件的活动称之为适应性维护。它占总维护活动的18%~21%。 (4)预防性维护 为进一步改进软件的可维护性、可靠性而进行的维护活动,约占4%。 4、瀑布模型的特点 瀑布模型具有顺序性和依赖性,即后一阶段的工作必须在前一阶段的工作完成后才能开始。 瀑布模型强调的是优质,即每一步都循序渐进,及早消除隐患,从而保证软件质量。 强调两点:文档、复审 生命期模型的优点:(见P11) 它的致命缺点在于“单向性”只有做出精确的需求分析,才能取得预期的结果。由于各种客观、主观的原因,需求分析往往不很精确,常常给日后的开发带来隐患。太理想化,不够灵活. 5、UML是一种面向对象技术的标准建模语言,它支持软件开发中从需求分析到测试的全过程。 6、UML由三大模块组成:元素(也称事物)、关系和图。 元素是模型的抽象;元素之间的连接纽带是关系;而图将元素的集合进行分组。 7、UML中有4种元素:结构元素,行为元素,分组元素和注释元素。 8、UML建模分为静态建模和动态建模。 用例图、类图、对象图、包图属于静态建模。 时序图、协作图、活动图、状态图属于动态建模。 9、状态图用来描述某个对象的所有可能状态及其状态转换信息。 10、节点是系统在运行期间存在的物理元素,它通常是处理器或其他硬件设备等计算机硬件资源。 三、简答题 1、软件生命周期各个阶段基本任务 (1)、软件定义时期 问题定义 :确定“要解决的问题是什么”。 阶段结果, 产生出:问题定义报告 。 问题定义报告是系统分析员简要地写出关于问题性质、工程目标和工程规模的书面报告。 可行性研究 :回答“上一个阶段所确定的问题是否有行得通的解决办法” 。 阶段结果, 产生出:可行性研究报告。 需求分析 :任务是确定系统必须具备哪些功能 。 回答“目标系统必须做什么? 阶段结果, 产生出:需求规格说明书 在需求分析阶段确定的系统逻辑模型是以后设计和实现目标系统的基础。因此,必须准确完整地体现用户的要求。 (2)、软件开发时期 概要设计(也称总体设计):关键问题是“怎样实现目标系统” 。 回答“如何解决该问题?”,即系统“怎样做?” 任务是确定系统的总体结构、外部接口、模块的划分、模块的功能及数据库设计。 阶段结果, 产生出:概要设计说明书。 详细设计:把解决方法具体化,关键问题是“怎样具体地实现目标系统” 。 解决每个模块内部算法和数据结构。 阶段结果, 产生出:详细设计说明书。 编码和单元测试 :根据设计说明书中每一个模块的流程选取一种适当的高级程序设计语言,写出正确的、容易理解而且容易维护的程序代码 ,并仔细测试每一个模块。 阶段结果, 产生出: 无语法错误的源程序。 综合测试 :是通过各种类型的测试及相应的调试使软件达到预定的要求。最基本的是集成测试和验收测试。 集成测试是把经过单元测试的模块按某种选定的策略装配起来,在装配过程中进行必要的测试 。 验收测试是按照需求规格说明书的规定,有用户或在用户参与下对目标系统进行验收。 阶段结果, 产生出:测试报告。 2、为什么要建模? 模型是对事物的一种抽象,人们常常在正式建造实物之前,首先建立一个简化的模型,以便更透彻地了解它的本质,抓住问题的要害; 3、状态图:电梯 4、订单的状态图 5、手机的状态图 6、“修改学生信息” 活动图 7、检索零件时序协作图 一、选择题 1、软件的特征 (1)、软件是一种逻辑实体,无形态,具有抽象性。 (2)、软件的运行和使用期间,没有硬件那样的机械、磨损、老化问题。 (3)、软件的开发和运行常常受到计算机系统的限制,对于计算机系统有着不同程序的依赖性。 (4)、软件的开发至尚未完全摆脱手工的方式。 (5)、软件是复杂的。 (6)、软件成本相当昂贵。 2、按软件的功能进行划分 (1)、系统软件 (2)、支撑软件 (3)、应用软件 3、按软件服务对象的范围划分 (1)、定制软

文档评论(0)

1983xuesheng + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档