软件工程练习题.pdf_第1页
软件工程练习题.pdf_第2页
软件工程练习题.pdf_第3页
软件工程练习题.pdf_第4页
软件工程练习题.pdf_第5页
已阅读5页,还剩3页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件工程练习题软件工程练习题 一、单选题 参考答案:CBDBA DCAAC ABDBD CBDBA CCDAC ABDBD BADCA ACABC 1、软件生存周期不包含下列哪个阶段( ) A.计划时期 B.运行时期 C.销毁时期 D.开发时期 2、下面的哪个选项不是软件工程的宗旨( )。 A.开发满足用户需求的软件 B.研究算法 C.及时交付软件 D.生产无故障软件 3、 ( )是软件生存周期中最重要的一个阶段,它关系到软件开发的成败。 A详细设计 B软件编码 C软件测试 D需求分析 4、程序的三种基本控制结构是( ) 。 A过程、子程序和分程序 B顺序、选择和循环 C递归、堆栈和队列 D调用、返回和转移 5、需求分析中开发人员要从用户那里了解( ) 。 A软件做什么 B用户使用界面 C输入的信息 D软件的规模 6、软件需求规格说明的内容不应包括( ) 。 A. 软件的性能 B.主要功能 C. 用户界面及运行环境 D.算法的详细描述 7、面向对象技术中,把对象的属性和操作结合在一起,其内部对外界是隐蔽的,外界只能 通过有限的接口与对象发生联系,我们称之为 ( ) 。 A. 继承 B. 多态 C. 封装 D. 抽象 8、 ( )意味着一个操作在不同的类中可以有不同的实现方式。 A多态性 B多继承 C类的可复用 D信息隐藏 9、使用面向对象技术开发软件,要尽量使软件结构( ) 。 A高内聚低耦合 B.高内聚高耦合 C. 低内聚高耦合 D.低内聚低耦合 10、在 UML 提供的图中, ( )用户描述按时间顺序对象间的交互。 A.状态机图 B.活动图 C.顺序图 D.用例图 11、软件详细设计的主要任务是确定每个模块的( ) 。 A算法和使用的数据结构 B外部接口 C功能 D编程 12、软件测试时为了( )而执行程序的过程。 。 A. 纠正错误 B. 发现错误 C. 避免错误 D. 证明错误 13、下列测试技术中不属于黑盒测试技术的是( ) 。 A等价划分 B边界值分析 C错误推测 D逻辑覆盖 14、软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归 测试过程称为( ) 。 A.适应性维护 B.改正性维护 C.完善性维护 D.预防性维护 15、设计模式的两大主题是( ) 。 A.系统的维护与开发 B.对象组合与类的继承 C.系统架构与系统开发 D.系统复用与系统扩展 16、软件生命周期中所花费用最多的阶段是( ) A.详细设计阶段 B.需求分析阶段 C.运行维护阶段 D.代码编写阶段 17、测试的关键问题是( )。 A. 如何组织对软件的评审 B. 如何选择测试用例 C. 如何验证程序的正确性 D. 如何采用综合策略 18、 ( )意味着一个操作在不同的类中可以有不同的实现方式。 ( ) A封装 B继承 C复用性 D多态 19、随着软硬件环境变化而修改软件的过程是( ) 。 A校正性维护 B适应性维护 C完善性维护 D预防性维护 20、瀑布模型本质上是一种( ) 。 A线性顺序模型 B顺序迭代模型 C线性迭代模型 D及早见产品模型 21、软件维护产生的副作用,是指( ) 。 A开发时的错误 B隐含的错误 C因修改软件而造成的错误 D运行时误操作 22、在软件危机中表现出来的软件质量差的问题,其原因是( ) 。 A 软件研发人员素质太差 B 用户经常干预软件系统的研发工作 C 没有软件质量标准 D 软件开发人员不遵守软件质量标准 23、需求分析的产品是( ) 。 A数据流程图案 B数据字典 C判定表 D需求规格说明书 24、确定测试计划是在( )制定的。 A总体设计阶段 B需求分析阶段 C编码阶段 D测试阶段 25、UML 是软件开发中的一个重要工具,它主要应用于哪种软件开发方法( )。 A.基于瀑布模型的结构化方法 B.基于需求动态定义的原型化方法 C.基于对象的面向对象的方法 D.基于数据的数据流开发方法 26、在软件维护阶段,占工作量比例最大的一般是( ) 。 A、完善性维护 B、适应性维护 C、改正性维护 D、预防性维护 27、软件测试的目标是( ) 。 A. 证明软件是正确的 B. 发现错误、降低错误带来的风险 C. 排除软件中所有的错误 D. 与软件调试相同 28、下列测试技术中属于白盒测试技术的是( ) 。 A等价划分 B边界值分析 C错误推测 D逻辑覆盖 29、 软件需求分析阶段的工作,可以分为 4 个方面:需求获取,需求分析,编写需求规格说明书 以及( )。 A.用户同意 B.需求审阅 C.需求总结 D.需求变更 30、在进行软件结构设计时应该遵循的最主要的原理是( ) A高度抽象 B信息隐蔽 C方便测试 D模块独立 31、软件可行性一般不考虑( ) 。 A是否有足够的人员和相关的技术来支持系统开发 B待开发的软件是否有质量问题 C待开发的软件是否有市场,经济上是否合算 D是否有足够的工具和相关的技术来支持系统开发 32、需求分析中开发人员要从用户那里了解( ) 。 A软件做什么 B用户使用界面 C输入的信息 D软件的规模 33、瀑布模型将软件生命周期归纳为 3 个时期,即软件定义期、软件开发期和( )期。 A. 详细设计期 B.可行性分析期 C. 测试与纠错期 D.运行维护期 34、面向对象设计中,如果有新的需求或变化时,可以对现有代码进行扩展,以适应新的情 况;如果一旦类设计完成,就不要对类做任何修改。这个原则叫( ) 。 A. 单一职责原则 B. 里氏替换原则 C. 开放封闭原则 D. 依赖倒置原则 35、 ( )意味着一个操作在不同的类中可以有不同的实现方式。 A多态性 B多继承 C类的可复用 D信息隐藏 36、程序测试是一项复杂的工作,一般测试者在进行测试中都需要设计( ) 。 A测试用例 B.测试说明 C. 数据结构 D.测试阶段 37、软件管理中,需要对软件进行配置,各阶段文档的管理属于( ) 。 A.组织管理 B.计划管理 C.版本管理 D.资源管理 38、软件详细设计的主要任务是确定每个模块的( ) 。 A算法和使用的数据结构 B外部接口 C功能 D编程 39、提高软件的可维护性可采取很多措施,下列( )不在措施之列。 A.建立质量保证制度 B.提供没有错误的程序 C.改进程序文档质量 D.明确软件质量标准 40、软件维护产生的副作用,是指( ) 。 A开发时的错误 B隐含的错误 C因修改软件而造成的错误 D运行时误操作 二、填空题 1、软件工程的出现主要是由于 软件危机的出现 的出现。 2、软件可行性研究主要集中在以下四个方面经济可行性、技术可行性、操作可行性和法律 可行性 3、软件工程中 SA 方法时一种面向 过程 的分析方法 4、在软件质量因素中,软件在异常条件下仍能运行的能力称为软件的 健壮性 。 5、软件概要设计关键的一步是 确定软件体系结构 ,它直接影响下一阶段详细设计和 编码的工作。 6、软件测试方法一般分为动态测试、静态测试。 7、 结构化分析方法的分析策略是_自顶向下逐步求精_。 8、面向对象技术开发软件,模块设计的原则是 高内聚低耦合 。 9、成本效益分析的目的是从 经济 角度评价开发一个项目是否可行。 10、结构化分析方法的分析策略是 自顶向下逐步求精 。 11、动态测试方法中,根据测试用例的设计方法不同,分为白盒测试、黑盒测试。 12、按软件的功能划分,软件可以划分为系统软件、支撑软件和应用软件。 13、成本效益分析的目的是从经济角度评价开发一个项目是否可行。 14、面向对象技术中,把对象的属性和操作结合在一起,其内部对外界是隐蔽的,外界只能 通过有限的接口与对象发生联系,我们称之为封装。 15、单元测试一般是以白盒测试方法为主。 16、常见的软件概要设计方法有 3 大类:以数据流图为基础构造模块结构的_ _结构化设 计方法_设计方法,以数据结构为基础构造模块的 jackson 方法,和以对象、类、继承 和通信为基础的_面向对象设计方法_设计方法。 17、软件是按照特定顺序组织起来的程序、数据、文档的集合。 三、判断题: ( )1、软件危机完全是由于软件开发人员经验不足造成的。 ( )2、开发软件就是编写程序。 ( )3、需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性 分析的依据。 ( )4、为了软件质量,软件开发时应当尽量使用高级的程序设计语言。 ( )5、UML 是一种面向对象的分析设计方法工具。 ( )6、理想的人机界面应针对具有典型个性的特定的一类用户设计。 ( )7、软件工程学只有理论意义,没有实际用途。 ( )8、在面向对象的软件开发方法中,每个类都存在其相应的对象,对象是类的 实例,类是生成对象的模板。 ( )9、软件测试时要发现软件中的所有错误。 ( )10、软件也会磨损和老化。 ( )11、在进行总体设计时应加强模块间的联系。 ( )12、用黑盒法测试时,测试用例是根据程序内部逻辑设计的。 ( )13、如果通过软件测试没有发现错误,则说明软件是正确的。 ( )14、快速原型模型可以有效地适应用户需求的动态变化。 ( )15、模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚, 低耦合度的软件产品。 ( )16、集成测试主要由用户来完成。 ( )17、软件工程的方法只适用于大型软件的开发,对小型软件的开发没有帮助。 ( )18、软件重用是提高软件开发生产率和目标系统质量的重要途径。 ( )19、UML 是一种面向对象的分析设计方法,即 OOA/OOD 方法。 ( )20、可行性研究进一步研究问题分析阶段所确定的问题是否有可行的解。 四、简答题 1、什么是软件危机?主要表现在哪些方面? 所谓软件危机,就是软件在开发和维护过程中所遇到一系列难以控制的问题。 软件危机主要包含了两方面的问题: 一是如何开发软件以满足软件日益增长的需要, 而 是如何维护数量庞大的已有软件。 2、软件生存周期都包括哪些活动? 软件生命周期的活动包括:可行性研究与计划;需求分析;概要设计;详细设计;编码;软 件测试;软件维护。 3、软件工程的基本目标是什么? (1)降低软件开发成本 (2)满足用户要求的全部软件功能。 (3)符合用户要求,领用户满意的软件性能。 (4)具有较好的易用性、可重用性、可移植性 (5)较低的维护成本,较高的可靠性 (6)按合同要求完成开发任务。 4、软件测试包括哪些步骤?说明这些步骤的测试对象是什么? (1)单元测试:测试对象为单元模块 (2)集成测试:测试对象为组装后的程序模块 (3)确认测试:测试对象为可运行的目标软件系统 (4)系统测试:测试对象为计算机系统的各组成部分 5、动态测试方法可以细分为哪几种测试方法?并简述它们之间的区别 (1)单元测试:测试对象为单元模块 (2)集成测试:测试对象为组装后的程序模块 (3)确认测试:测试对象为可运行的目标软件系统 (4)系统测试:测试对象为计算机系统的各组成部分 6、软件维护工作的特点有哪些? (1)持续时间长,工作量大。 (2)容易产生一些意想不到的副作用,甚至引起错误。 (3)软件维护活动实际上是一个简化了的软件开发活动 (4)一直没受到软件设计者的足够重视。 7、软件测试和软件调试的主要区别是什么? 软件测试的目的是找出软件中存在的错误; 而软件调试的目的是为了解决软件存在的错 误,即对错误定位、分析并找出原因,改正错误。 8、活动图与状态图的区别? 描述的重点不同: 活动图描述的是从活动到活动的控制流; 状态图描述的是对象的状态 及状态之间的转移。 使用的场合不同: 在分析用例、 理解涉及多个用例的工作流、 处理多线程应用等情况下, 一般使用活动图;在显示一个对象在其生命周期内的行为时,一般使用状态图。 9、什么是黑盒测试法? 黑盒测试法把程序看成一个黑盒子, 完全不考虑程序的内部结构和处理过程, 它只检查 程序功能是否能按照规格说明书的规定正常使用, 程序是否能适当地接收输入数据, 产生正 确地输出信息。 五、应用题 1、某图书馆要开发一套信息管理系统。该图书馆的日常工作情况如下:市民可以凭身份证 注册为会员,成为会员后可以管理自己的基本信息,包括查询、修改个人信息;可以浏览书 库中库存书目信息;可以借阅图书;可以归还图书,如果超期要交罚款。图书管理人员可以 管理会员信息,包括查询、修改会员信息,如果会员超过 1 年不借阅,可以注销该会员;管 理员可以录入新书目,修改书库中书目信息,删除下架书目。请根据以上描述,画用例图。 2、学生管理系统中有一个模块是报到登记,具体流程是:在新生入校报到时,进行新生信 息登记,记录学生的报到资料、个人基本情况的输入、查询、修改等。根据上述描述绘制其

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论