软件设计章节练习复习总结题.doc

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
2.1. 软件工程标准编制的层次分为5个,分别为 : 2.GB/T 25000.51-2010,软件工程 软件产品质量要求和评价(SQUARE) 商业现货(COTS)软件产品的质量要求和测试细则 属于什么层次的标准 A.国际标准 B.国家标准 C.行业标准 D.企业标准 3.ISO 9000系列质量管理与质量保证标准属于哪个层次的标准 A.国际标准 B.国家标准 C.行业标准 D.企业标准 4.IEEE Std 1012-2012,系统和软件验证与确认标准哪个层次的标准? A.国际标准 B.国家标准 C.行业标准 D.企业标准 解析:IEEE 美国电气与电子工程师学会,属于行业标准 5.GJB与GB,哪一个是行业标准 A.GJB B.GB 解析:GB为中国国家标准,GJB为中国国家军用标准 2.3 1.计算机软件 =______+_______+_______. 2.造成软件危机的原因不包括 A.缺乏管理经验 B.需求不断变化 C.预算不足 D.问题复杂 3.造成软件危机的原因包括 A.缺乏管理经验 B.需求不断变化 C.预算不足 D.问题复杂 4.软件工程的要素有哪三个? 5.以下属于软件开发过程模型的有 A.瀑布模型 B.螺旋模型 C.喷泉模型 D.快速原型模型 E.W模型 软件开发过程模型主要有:_______、_______、_______、_______。 软件的生存周期通常包括 可行性研究、需求分析、?? ??、?? ??、?? ? ?、?? ??、?? ??、?? ??、使用与维护、退役等阶段。 [简答题] 1.软件生命周期“V模型”,简述各测试阶段的关注点 正确答案: 2.软件生命周期V模型中,各测试阶段的依据是什么? 正确答案: 3.分析瀑布模型与V模型的优缺点 正确答案: 1、瀑布模型 优点: 1)为项目提供了按阶段划分的检查点. 2)当前一阶段完成后,您只需要去关注后续阶段. 3)可在迭代模型中应用瀑布模型. 缺点: 1)在项目各个阶段之间极少有反馈. 2)只有在项目生命周期的后期才能看到结果. 3)通过过多的强制完成日期和里程碑来跟踪各个项目阶段. 2、V模型 优点:简单、高效 缺点: 1)容易让人误解为测试是在开发完成之后的一个阶段; 2)由于它的顺序性,当编码完成之后,正式进入测试时,这时发现的一些 bug 可能不容易找到其根源,并且代码修改起来很困难; 3)实际中,由于需求变更较大,导致要重复变更需求、设计、编码、测试。返工量大。 3.1 【简答题】 1.简述SOLID设计原则 正确答案: SRP(Si,需求的满足情况一直到后期的验收测试才被验证。ngle Responsibility Principle) 单一职责,一个类应该仅有一个引起它变化的原因 (2)OCP(Open-Closed Principle) 开放-封闭,可扩展,不可修改,避免添加新功能之后产生连锁反应。 OCP关注灵活性,功能的改动是通过增加代码进行的,而不是修改现有代码 (3)LSP(Liskov Substitution Principle) 里氏替换,子类型必须能替换基类型 (4)ISP(Interface Segregation Principle) 接口分离,不强迫类实现它不需要的方法。 如果一个接口中包含许多不大而且不相关的方法,那么就应该分离成多个 接口,让实现接口的类只是去实现它所需要的方法。 (5)DIP(Dependency Inversion Principle) 依赖倒置,高层模块不依赖于低层模块,都依赖于抽象;抽象不依赖于细节,细节依赖于抽象   2.简要说明下列软件设计基本原则: (1)KISS;(2)DRY;(3)Tell,Don’t Ask;(4)YAGNI;(5)SoC。 正确答案: (1)KISS(Keep It Simple Stupid) 避免不必要的复杂,尽量保持代码的简约 (2)DRY(Don’t Repeat Yourself) 抽取系统中的公共部分,并将其放置在一个地方避免重复 (3)Tell,Don’t Ask 合理封装,将代码方到正确的类中。明确告诉对象我们想要它们去执行怎样的操作, 而不是首先询问对象状态,然后我们决定执行什么操作 (4)YAGNI(You Ain’t Gonna Need It) 防止过度设计,只包含必需的功能,不包含你认为将来可能会用到的功能或特性 (5)SoC(Separation of Concerns)

文档评论(0)

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

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

1亿VIP精品文档

相关文档