1、软件工程复习题一、 选择题,请从四个可选项中选择正确答案。1、下面哪个选项不是软件工程研究的内容( ) 。A. 生产无故障的软件 B. 精通一门编程语言C. 生产满足用户需求的软件 D.生产及时交付的软件2、软件工程的出现是由于 ( )A.软件危机 B.计算机硬件技术的发展 C.软件社会化的需要 D.计算机软件技术的发展3、软件工程的研究内容具有层次化结构,最底层是质量保证层,中间层是( ) ,最上层是工具层。A.过程层 B.方法层 C.过程层和方法层 D.系统层4、美国著名软件工程专家 B.W.Boehm 于 1983 年提出了软件工程的( )条基本原理。A.7 B.5 C.3 D.125、
2、结构化分析方法(SA 法)使用的主要描述工具有( ) 。A.数据库 B.模块结构图 C.PAD 图 D.分层的 DFD 图6、源程序的效率与( )阶段确定的算法的效率直接有关。A概要设计 B. 总体设计 C. 单元设计 D. 详细设计7、可行性研究的主要任务是( ) 。A.确定系统做什么 B. 确定性能 C.确定功能 D. 进行一次简要的需求分析8、内容耦合是模块间最紧密的耦合, ( )是模块间最松散的耦合。A数据耦合 B非直接耦合 C控制耦合 D外部耦合9、面向对象是“先”确定()“后” ( ) 。A.属性/方法 B.数据结构/方法 C. 动作的主体/执行动作 D.动作10、UML 是一种(
3、 )语言。A.高级编程 B.可视化建模 C.分析方法 D.过程11、软件工程强调将( )的方法应用于软件的开发和维护过程之中。A.规范化 B.系统化 C.可度量 D.以上全部12、软件开发活动的顺序应该是( ) 。A.问题定义、可行性研究、需求分析、设计、编码和测试。B.问题定义、设计、可行性研究、编码和测试。C.需求分析、设计、编码和测试。D.需求分析、编码和测试、试运行。13、假定银行的存款年利率是 2%,请问现在存 5000 元,两年后价值应为( )元。A.5202 B.4500 C.5100 D.471214、系统物理模型用( )表示。A.系统流程图 B.数据流程图 C.程序流程图 D
4、.E-R 图15、关于软件需求特性不正确的描述是“软件需求具有() ”。A.多变性 B.模糊性 C. 准确性 D.主观性16、DFD 中的每个加工至少需要( )A.一个输入流 B.一个输出流C.一个输入或输出流 D.一个输入流和一个输出流17、PDL 是描述处理过程( ) 。A.做什么 B.为什么做 C.怎么做 D.对谁做18、当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为( )A数据耦合 B公共耦合 C标记耦合 D内容耦合19、按照模块独立性,耦合程度由强至弱正确的顺序是( ) 。A.数据耦合、控制耦合、外部耦合、内容耦合B.控制耦合、数据耦合、内容耦合、外部耦合C.内容耦合、
5、外部耦合、控制耦合、数据耦合D.外部耦合、内容耦合、数据耦合、控制耦合20、UML 中,包图是一种( ) 。A.集合 B.数据结构 C.分组机制 D.对系统的动态描述21、反映收发消息的对象的组织结构,用于描述系统的行为是如何有系统的成分协作实现的是( ) 。A.顺序图 B.类图 C.合作图 D.组件图22、面向对象分析和设计的界限是( ) ,从分析到设计是一个逐渐扩充模型的过程。A.清晰的 B.模糊的 C.非线性的 D.确定的23、动态模型描述系统的动态结构和对象之间的交互,表示瞬时的、行为化的系统“控制”特性。面向对象方法中,常用( )实现。A.状态图 B.交互图 C.活动图 D.以上全部
6、24、不适合作为数据处理与数据库应用的语言是( )A. SQL B. Cobol C. 4GL D. Lisp25软件工程中,只根据程序的功能说明而不关心程序内部逻辑的测试方法,称为( )测试。A.白盒法 B.灰盒法 C.黑盒法 D.综合法26、 程 序 设 计 语 言 的 技 术 特 性 不 应 包 括 ( ) 。A.数 据 结 构 的 描 述 性 B.抽 象 类 型 的 描 述 性C.数 据 库 的 易 操 作 性 D.软 件 的 可 移 植 性27、以下哪种测试方法不属于白盒测试技术( ) 。 A.语句覆盖测试 B.边界值分析测试 C.条件覆盖测试 D.判断覆盖测试28、软件测试的主要特
7、点是( ) 。 A软件测试的开销不大 B.软件测试要依靠工具 C软件不能进行“穷举”测试 D.软件测试要依靠人工 29、在软件生存期的维护阶段,继续诊断和修正错误的过程称为( ) 。A.完善性维护 B.适应性维护 C.预防性维护 D.改正性维护30、不属于软件项目管理的是( ) 。A.开发机构能力评估 B.项目风险评估 C.质量监控 D.软件销售利润31、用( )模型描述和分析业务流程。A.静态 B.业务 C.数据 D.动态32、用( )描述系统与角色之间的接口。A. 表单 B.界面类 C.窗体 D.对话框33、对类进行详细设计,主要是设计类的( ) ,优化类之间的关系。A. 数据结构 B.处
8、理流程 C. 属性和方法 D.算法34、面向对象设计强调定义( ) ,并且使它们相互协作来满足用户需求。A.软件对象 B.物理模型 C.E-R 模型 D.接口35、软件测试的目标是设计优秀的测试用例( ) 。A.最快速地找出程序中的问题B.以最小的代价、在最短的时间内尽可能多地发现软件中的错误C.保障程序的正确性D.区分出程序员的编程水平36、 ( )不符合软件测试原则。A.对每个测试结果进行检查,不漏掉已经出现的错误迹象B程序员应该仔细测试自己编写的程序代码C.程序员要避免测试自己编写的程序代码D.测试工作越早开始越好37、引起软件改变的原因主要有( ) 。A.运行环境变化 B. 需求变化
9、C.系统有错 D.以上全部38、 ( )针对开发过程中的程序、数据、文档提出使用和管理策略。A组织管理 B过程管理 C软件配置管理 D风险管理 39、现在人们更强调程序代码的( ) 。A.可维护性 B.可移植性 C.可扩充性 D.高效性40、程序的三种基本控制结构,包括顺序结构、 ( )和循环结构。A.判断结构 B.说明结构 C.输入结构 D.输出结构41、软件、程序和代码是( ) 。 A.相同的软件概念 B.程序语言写的代码 C.计算机代码和数据 D. 三个不同的概念42、下面哪个选项不是软件工程研究的内容( ) 。A. 生产无故障的软件 B. 精通一门编程语言C.生产满足用户需求的软件 D
10、.生产及时交付的软件43、SW-CMM 是一种( )规范。A.编程规范 B.软件工作通用模型 C.软件设计模型 D.软件成熟度模型44、可行性研究实质上是在较高层次上、以较抽象的方式进行( )的过程。A.详细软件设计 B.需求分析过程 C.深入的需求分析 D.测试设计45、与传统行业的生产相比较,软件的需求具有( ) 。A.主观性 B.稳定性 C.明确性 D.客观性46、源程序的效率与( )阶段确定的算法的效率直接有关。A概要设计 B. 总体设计 C. 单元设计 D. 详细设计47、画 DFD 图的主要目的是( ) 。A.作为需求分析阶段用户与开发者之间交流信息的工具B.对系统的数据结构进行描
11、述C.对目标系统的层次结构进行描述D.作为编码和测试的工具48、耦合度最高的是( ) 。A.外部耦合 B.内容耦合 C.控制耦合 D.数据耦合49、为了提高模块的独立性,模块之间最好是( ) 。A. 控制耦合 B. 公共耦合 C. 内容耦合 D. 数据耦合50、UML 是一种( ) 。A.建模工具 B.可视化的程序设计语言 C.可视化的建模语言 D.过程51、美国卡内基梅隆大学制定的 SW-CMM 是( ) 。A.软件工作规范 B.软件工作流描述 C.软件成熟度模型 D.软件描述的一般方法52、螺旋模型是一种考虑了( )的软件开发模型。A.效率 B.风险判断C.可移植性 D.安全性53、可行性
12、研究的四大要素是( ) 。A.经济、技术、法律和社会环境B.经济、技术、开发组织能力和领导者水平C.经济、技术、计算机硬件环境和网络带宽D.经济、技术、软件开发工具和人员的稳定性54、软件调研报告是在( )提交的。A. 可行性分析之前 B. 需求分析之前 C.签合同之前 D.设计的时候55、描述软件需求通常不用哪个工具( ) 。A.数据流程图 B.数据字典 C.模块结构图 D.E-R 图56、软件结构图中没有( )元素。A模块 B调用参数 C返回结果 D判断57、程序流程图与数据流程图的关系( ) 。A不确定 B数据流程图可以转换成程序流程图 C数据调用关系 D程序流程图可以转换成数据流程图5
13、8、包含关系用于构造多个用例( ) 。A. 关系 B.共性的部分 C.角色 D.特殊活动59、如果说用例 F 被用例 T 扩展,意思是( ) 。A.F 是一个一般用例,T 是一个特殊用例B.F 是一个特殊用户,T 是一个一般用例C.都是一般用例D.都是特殊用例60、用( )对需要长久保存的信息进行建模。A.实体类 B.数据库表 C.E-R 图 D.对象类61、面向对象程序设计的基本机制( ) 。A.继承 B.消息 C.方法 D.结构62表示对象相互行为的模型是( )模型。A. 动态模型 B. 功能模型 C. 对象模型 D. 状态模型63、对象模型描述现实世界中实体的对象以及它们之间的关系,表示
14、目标系统的静态数据结构。在面向对象方法中,由( )实现。A.顺序图 B.类图 C.状态图 D.组件图64、对象实现了数据和操作的结合,使数据和操作( )于对象的统一体中。A结合 B隐藏 C封装 D抽象65、面向对象设计的步骤中,正确的顺序是( ) 。A.系统构架设计、用例设计、类设计 B.系统构架设计、数据库设计和用户界面设计C.类设计、用例设计、构架设计 D.用例设计、构架设计、类设计66、软件维护过程中产生的副作用,一般是由()引起的。A.算法说明 B.修改程序 C.优先级 D.环境要求67、项目计划活动的主要任务是( ) 。A.估算项目的进度 B.分配工作量 C.计划资源使用 D.以上全
15、部68、如果程序代码的( )好,则调试的成本就可以大幅度降低。A.性能比 B. 可扩充性 C. 可读性 D.可移植性69、两个浮点数 X0 和 X1 比较相等时,应该用()比较。A.X0=X1 B.X1-X01) AND (z=0) THEN x=x/yEND IFIF(y=2) OR(x=l) THENx=x+lEND IFPRINT(x)END6、请给出软件工程七条基本原理中的任意 6 条基本原理。7、结构化程序设计的特征是什么?8、软件需求可以分为业务需求、用户需求、功能需求和非功能需求,请分析业务需求与功能需求的区别?9、简述模块独立性,内聚与耦合。10、请为下面的程序设计符合判定覆盖
16、的测试用例。int main()int a,b,c,x,y,z,t;scanf(“d%,d%,d%),if a5 if c15 z=30 else z=3;printf(“d%,d%,d%n”,x,y,z)11、什么是软件危机?试简述至少 3 种软件危机的典型表现。12、试分析结构化方法存在的主要问题是什么?13、面向对象的分析通常要建立三个模型,请问三个模型的作用?14、为了提高软件的可维护性,在软件开发过程的各个阶段要充分考虑软件的可维护性因素。15、设计下列伪程序的语句覆盖测试用例。BEGININPUT(A,B,C)IF A5 THEN X=10ELSE X=1END IFIF B10
17、THEN Y=20ELSE Y=2END IFIF C15THEN Z=30ELSE Z=3END IF PRINT(X,Y,Z)END16、 简述软件过程模型17. 简述结构化分析的主要步骤18衡量模块独立性的两个标准是什么?它们各表示什么含义?19. 活动图与状态图的区别?20、一个程序片段如下,请设计符合判定覆盖的测试用例。if (a=5) 三、 应用题1、学校教师工资管理系统的需求描述如下:教师每月末将本月的工作量输入到系统中,学院负责人对教师输入的工作量进行审核,财务部门对审核后的工作量计算本月工资,本月工资=基本工资各种补贴工作量奖金税收保险一公积金金。基本工资、各种补贴、保险、公
18、积金信息由人事处负责输入和维护,教师可以查询月工资明细。银行系统每月从本系统读入每位教师的实发工资,并向每位教师的银行卡帐户打入月工资。教师可以查询自己银行卡的金额。请针对上面描述的需求画出数据流程图。2、用用例图描述图书管理。该系统主要包括三类用户:读者、图书管理员、系统管理员。其中,读者是多个,图书管理员是一个,系统管理员是一个。对于系统,读者可以查询自己的借阅情况、分门别类的查询图书和在规定期限内续借不能超过一次操作的情况下进行自行登录续借书等。图书管理员主要是日常操作以下几个工作环节:图书订购、新书验证、书目录入、图书登记、读者信息管理、借阅书登记、图书信息注销和读者信息注销等,而系统
19、管理员统筹管理图书的系统相关事宜,比如权限维护、日志维护、增删用户和管理系统后台数据等。3、某企业的设备维修委托给专业的技术公司完成,现在要开发软件对设备维修信息进行管理,具体描述如下:车间主任填写维修申请单,内容有设备名称、型号、故障描述、维护时间要求、预计费用;填好后交给审计人员,审计人员根据企业的审计规定对维修申请单进行审计,填写审计意见和审计结果,审计意见可以修改费用,审计结果是同意或不同意;车间主任可以随时查询审计意见和结果;审计通过的维修申请单送给总经理进行审核,并填写审核意见和结果,审核也是以修改费用,审核结果是同意或不同意。审核通过后,车间把设备送去维修。维修后由车间主任组织对设备维修结果进行验收,企业对每台有设备验收标准。验收通过后,由财务人员进行结算,填写支付单并支付维修费。最后收取发票后,财务人员填写发票记录。请画出设备维修信息管理软件的数据流程图。4、现在有一个医院病房监护系统,请根据用户需求建立系统的 Use Case 模型。用户提出的系统功能要求如下:在医院病房监护系统中,病症监视器安置在每个病房,将病人的病症信号实时传送到中央监视系统进行分析处理。在中心值班室里,值班护士使用中央