当前位置:文档之家› 软件工程导论复习题含答案

软件工程导论复习题含答案

软件工程习题集第1章概述(一)单项选择题1.“软件危机”产生的主要原因是( A )。

A.软件日益庞大B.开发方法不当C.开发人员编写程序能力差D.没有维护好软件2. 软件是一种( B )性工业产品。

A. 理论B. 知识(或逻辑)C. 消耗D. 体力3. 需求分析是在( B )进行的。

A. 用户B. 用户和分析设计人员之间C. 开发人员内部D. 使用和维护人员间4. 软件的主要结构和功能是在( A )阶段决定的。

A. 分析设计B. 编程C. 测试D. 维护5.软件是计算机系统中与硬件相互依存的另一部分,它的组成部分是(D )。

A.程序、数据 B.程序、文档 C.程序 D. 程序、数据、文档6.在软件工程时期,决定软件质量的主要因素是( A )A.管理水平 B.个人程序技术C.小组技术水平 D.硬件的发展7. 在软件开发模型中,提出最早、应用最广泛的模型是( A )。

A. 瀑布模型B. 喷泉模型C. 增量模型D. 螺旋模型8.瀑布模型把软件生存周期划分为软件定义、软件开发与(C )三个阶段,而每一阶段又可分为若干更小的阶段。

A. 详细设计B. 可行性分析C. 运行及维护D. 测试与排错9. 计算机辅助软件工程,简称( D )。

A. SAB. SDC. SCD. CASE10. 软件危机是软件产业化过程中出现的一种现象,下述现象中:( C )是其主要表现。

①软件需要增长难以满足。

②软件开发成本提高。

③软件开发进度难以控制。

④软件质量不易保证。

A. ③和④B. ③和④C. 全部D. ①、②和③11 软件工程的出现主要是由于( C )。

A. 程序设计方法学的影响B. 其他工程科学影响C. 软件危机的出现D. 计算机的发展12、软件生成周期模型有多种,下列选项中,( C )不是软件生存周期模型。

A.螺旋模型B.增量模型C.功能模型D.瀑布模型(二)简答题1. 软件产品的特点是什么?2. 软件生产的发展经历了哪几个时代?各有何特征?3. 软件危机的概念、表现形式、产生原因、解决途径4. 简述主要的软件生存期模型(或软件开发模型)。

5. 简述瀑布模型的阶段划分和各阶段的主要任务以及瀑布模型存在的问题。

第2章软件可行性研究(一)单项选择题1. 在软件的可行性研究中经常从不同角度对系统进行可行性研究,其中从功能角度对系统进行研究属于( B )的研究。

A. 经济可行性B. 技术可行性C. 操作可行性D. 法律可行性2. 下列不属于成本-效益分析的度量指标是( C )。

A. 货币的时间价值B. 投资回收期C. 性质因素D. 纯收入3. 软件可行性研究实质上是要进行一次( A )需求分析、设计过程。

A. 简化、压缩的B. 详细的C. 彻底的D. 深入的4. 一个项目是否开发,从经济上来说是否可行,归根结底是取决于( A )。

A. 成本估算B. 项目计划C. 工程管理D. 工程网络图5. 研究开发所需要的成本和资源是属于可行性研究中的( B ) 。

A. 技术可行性研究B. 经济可行性研究C. 社会可行性研究D. 法律可行性研究6.可行性研究的目的是决定( B )。

A.开发项目B.项目值得开发否C.规划项目D.维护项目7.年利率为i,现存入P元不计复利,n年后本金利息为(C)。

A.P×(1+i)nB.P×(1-i×n)C.P×(1+i×n)D.P×(1+i)×n8.研究硬软件资源的有效性是进行(A)研究的一方面。

A.技术可行性B.经济可行性C.社会可行性D.操作可行性9.经济可行性研究的范围包括(C)A.资源有效性B.管理制度C.效益分析D.开发风险10.可行性分析是在系统开发的早期所做的一项重要的论证工作,它是决定该系统是否开发的决策依据,因必须给出(B)的回答。

A.确定B.行或不行C.正确D.无二义(二)简答题1. 可行性研究的任务是什么?2. 可行性研究的步骤是怎样的?3. 可行性研究报告有哪些主要内容?4. 成本-效益分析可用哪些指标进行度量?(三)应用题1. 设计一个软件的开发成本为5万元,寿命为3年。

未来3年的每年收益预计为2200元、24000元、26620元。

银行年利率为10%。

试对此项目进行成本效益分析,以决定其经济可行性。

2、课后习题2.4第3章需求分析(一)单项选择题1. 需求分析阶段最重要的技术文档之一是(C )。

A. 项目开发计划B. 设计说明书C. 需求规格说明书D. 可行性分析报告2. 在需求分析之前有必要进行(B )。

A. 程序设计B. 可行性分析C. ER分析D. 3NF分析3. 软件需求分析阶段建立原型的主要目的是( C )。

A. 确定系统的功能和性能要求B. 确定系统的运行要求C. 确定系统是否满足用户需要D. 确定系统是否满足开发人员需要4. 需求分析阶段的研究对象是(A )。

A. 用户要求B. 分析员要求C. 系统要求D. 软硬件要求5. 概要设计阶段产生的文档不包括(C )。

A. 概要设计说明书B. 数据库设计说明书C. 用户手册D. 开发进度月报6. 结构化设计是一种面向(A )的设计方法。

A. 数据流B. 模块C. 数据结构D. 程序7. 为使得开发人员对软件产品的各阶段工作都进行周密的思考,从而减少返工,所以( C )的编制是很重要的。

A. 需求说明B. 概要说明C. 软件文档D. 测试大纲8. 系统定义明确之后,应对系统的可行性进行研究。

可行性研究应包括(A)。

A.软件环境可行性、技术可行性、经济可行性、社会可行性B.经济可行性、技术可行性、操作可行性C.经济可行性、社会可行性、系统可行性D.经济可行性、实用性、社会可行性9. 需求分析中开发人员要从用户那里了解( A )。

A. 软件做什么B. 用户使用界面C. 输入的信息D. 软件的规模10.SA方法用DFD描述( D ) 。

A.系统的控制流程B.系统的数据结构C.系统的基本加工D.系统的功能11. 对于分层的DFD,父图与子图的平衡指子图的输入、输出数据流同父图相应加工的输入、输出数据流(A)。

A.必须一致B.数目必须相等C.名字必须相同D.数目必须不等12 .数据流图是常用的进行软件需求分析的图形工具,其基本图形符号是( C )A. 输入.输出.外部实体和加工B. 变换.加工.数据流和存储C. 加工.数据流.数据存储和外部实体D. 变换.数据存储.加工和数据流13、数据流图描述系统的(D)。

A.数据结构B.控制流程C.基本加工D.软件功能14、数据字典不包括的条目是(C)。

A.数据项B.数据流C.数据类型D.数据加工15、结构化分析方法使用的描述工具(B)定义了数据流图中每一个图形元素。

A.数据流图B.数据字典C.判定表D.判定树16、在结构化分析方法中,与数据流图配合使用的是(C)。

A.网络图B.实体联系图C.数据字典D.程序流程图(二)简答题1. 需求分析的基本任务是什么?2. 需求分析的难点主要表现在哪几个方面,如何解决?3. 需求分析应遵循的原则是什么?4. 结构化分析方法的步骤是什么?5. 画数据流图的步骤及注意事项。

6.需求分析工具:层次方框图、维纳图、IPO图(三)应用题1. 某单位住房分配方案如下:所有住户50平方米以内每平方米1000元,超过50平方米后:在本人住房标准面积以内每平方米1500元,其中住房标准为:教授105平方米,副教授90平方米,讲师75平方米;标准面积以外每平方米4000元。

请用判定表和判定树表示各条件组合与费用之间的关系。

2. 某校教务系统具备以下功能,输入用户ID号及口令后,经验证进入教务管理系统,可进行如下功能的处理:查询成绩:查询成绩以及从名次表中得到名次信息。

学籍管理:根据学生总成绩排出名次信息。

成绩处理:处理单科成绩并输入成绩表中。

就以上系统功能画出0层,1层的DFD图。

3.课后习题3.8、3.9第4章软件总体设计(一)单项选择题1. 最高程度也是最差的耦合是(B )。

A. 公共耦合B. 内容耦合C. 控制耦合D. 数据耦合2. 一个模块把数值作为参数传送给另一个模块,这种耦合方式称为( A )。

A. 数据耦合B. 公共耦合C. 控制耦合D. 标记耦合3. 一个模块内部各程序段都在同一张表上操作,这个模块的内聚性称为(B )。

A. 时间内聚B. 功能内聚C. 通信内聚D. 顺序内聚4. 画软件结构图时应注意调用关系只能(A )。

A. 从上到下B. 从下到上C. 从左到右D. 从右到左5. 变换型DFD是一个( C )结构。

A. 循环B. 选择C. 分层D. 顺序6. 软件设计中划分模块的一个准则是( C )。

A.低内聚低耦合B.低内聚高耦合C.高内聚低耦合D.高内聚高耦合7. 为了提高模块的独立性,模块内部最好是( C)。

A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚8. 面向数据流的设计方法把(C )映射成软件结构。

A、数据流B、模块化C、控制结构D、信息流9. 在面向数据流的软件设计方法中,一般将信息流分为( A )A、变换流和事务流B、变换流和控制流C、事务流和控制流D、数据流和控制流10、如果某种内聚要求一个模块中包含的任务必须在同一段时间内执行,则这种内聚为(A)。

A、时间内聚B、逻辑内聚C、通信内聚D、信息内聚11、在软件结构化设计中,好的软件结构设计应该力求做到(B)。

A、顶层扇出较少,中间层扇出较高,底层模块低扇入B、顶层扇出较高,中间层扇出较少,底层模块高扇入C、顶层扇入较少,中间层扇出较高,底层模块高扇入D、顶层扇入较少,中间层扇入较高,底层模块低扇入12、结构图(SC)和层次方框图是不同的,前者( B)。

A、描述程序的过程特性B、描述程序的层次特性C、描述程序的过程特征和层次特征D、即不描述程序的过程特征,也不描述程序的层次特征13. 为了提高模块的独立性,模块内部最好是( C )。

A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚14、软件设计的主要任务是设计软件的结构、过程和模块,其中软件结构设计的主要任务是要确定( C )。

A.模块间的操作细节B.模块间的相似性C.模块间的组成关系D.模块的具体功能15.在多层次的结构图中,其模块的层次数称为结构图的(A)。

A.深度 B. 跨度 C. 控制域 D. 粒度16、一个模块直接控制(调用)的下层模块的数目称为模块的__B_____。

A、扇入数B、扇出数C、宽度D、作用域17.某个模块的作用域是指__D____。

A、被该模块调用的所用模块B、调用该模块的所有模块C、与该模块相关联的所有模块D、受该模块内的判定影响的所有模块(二)简答题1. 什么是软件概要设计?该阶段的基本任务是什么?2. 软件设计的基本原理包括哪些内容?3. 什么是模块间的耦合性?有哪几种耦合性?简述降低模块间耦合度的方法。

相关主题