软件工程复习题广东海洋大学附部分答案版分析.docx
- 文档编号:24689111
- 上传时间:2023-05-31
- 格式:DOCX
- 页数:32
- 大小:91.70KB
软件工程复习题广东海洋大学附部分答案版分析.docx
《软件工程复习题广东海洋大学附部分答案版分析.docx》由会员分享,可在线阅读,更多相关《软件工程复习题广东海洋大学附部分答案版分析.docx(32页珍藏版)》请在冰豆网上搜索。
软件工程复习题广东海洋大学附部分答案版分析
软件工程总复习
一、选择题
1.在()模型中是采用用例驱动和架构优先的策略,使用迭代增量建造方法,软件“逐渐”被开发出来的。
A.快速原型B.统一过程
C.瀑布模型D.螺旋模型
2.软件工程是研究软件()的一门工程学科。
A.数学B.开发与管理C.运筹学D.工具
3.需求分析可以使用许多工具,但()是不适合使用的。
A.数据流图B.判定表C.PAD图D.数据字典
4.SD方法衡量模块结构质量的目标是()。
A.模块间联系紧密,模块内联系紧密
B.模块间联系紧密,模块内联系松散
C.模块间联系松散,模块内联系紧密
D.模块间联系松散,模块内联系松散
5.程序的三种基本结构是()。
A.过程、子程序、分程序
B.顺序、条件、循环
C.递归、堆栈、队列
D.调用、返回、转移
6.为提高软件测试的效率,应该(C)。
A.随机地选取测试数据
B.取一切可能的输入数据作为测试数据
C.在完成编码后制定软件测试计划
D.选择发现错误可能性大的数据作为测试数据
7.软件可移植性是用来衡量软件的(D)的重要尺度之一。
A.效率B.质量C.人机关系D.通用性
8.面向对象的分析方法主要是建立三类模型,即(D)。
A.系统模型、ER模型、应用模型
B.对象模型、动态模型、应用模型
C.ER模型、对象模型、功能模型
D.对象模型、动态模型、功能模型
9.软件配置管理是在软件的整个生存周期内管理(C)的一组活动。
A.程序B.文档C.变更D.数据
10.结构化分析的主要描述手段有()。
A.系统流程图和模块图
B.DFD图、数据词典、加工说明
C.软件结构图、加工说明
D.功能结构图、加工说明
11.用于表示模块间的调用关系的图叫()。
A.PADB.SCC.N-SD.HIPO
12.常用的软件开发方法有面向对象方法、面向()方法和面向数据方法。
A.过程B.内容C.用户D.流程
13.从工程管理的角度来看,软件设计分两步完成()。
A.①系统分析②模块设计
B.①详细设计②概要设计
C.①模块设计②详细设计
D.①概要设计②详细设计
15.()测试用例发现错误的能力较大。
A.路径覆盖B.条件覆盖C.判断覆盖D.条件组合覆盖
16.软件需求分析应确定的是用户对软件的()。
A.功能需求和非功能需求B.性能需求
C.非功能需求D.功能需求
17.下列各种图可用于动态建模的有(A)。
A.用例图B.类图C.序列图D.包图
18.软件过程模型有瀑布模型、(B)、增量模型等。
A.概念模型B.原型模型C.逻辑模型D.物理模型
原型模型(快速原型模型)与螺旋模型相似但不同
19.测试的分析方法是通过分析程序(B)来设计测试用例的方法。
A.应用范围B.内部逻辑C.功能D.输入数据
20软件过程模型有瀑布模型、(B)、快速原型模型和螺旋模型。
A.概念模型B.增量模型C.逻辑模型D.物理模型
21.在软件工程开发过程中,H图的创建由()工作提供支持。
A.测试B.数据库设计C.详细设计D.概要设计
23.面向对象设计思想的核心是封装、继承和()。
A.选择B.消息C.多态D.调用
24.详细设计阶段,描述模块算法的常用工具是()。
A.H图B.伪码C.ER图D.IPO图
25.为了使软件输入界面友好,对于规范的编码信息可采用()设计。
A.单选钮B.多选钮C.下拉列表框D.分组框
26.传统的软件开发方法是以功能分析和数据分析为基础的()方法。
A.过程化B.形式化C.结构化D.流程化
27.MVC架构包括模型、视图和(B)。
A.浏览器B.控制器C.容器D.连接器
28.主键的作用是保证()。
A.实体完整性B.实体间的联系C.检索功能D.数据规范性
29.软件工程常用工具主要有项目管理工具、系统建模工具、集成开发工具和()工具。
A.变更与配置B.开发C.分析D.设计
30.面向对象的软件设计的基本描述工具是()。
A.数据流程图B.类图C.程序流程图D.测试用例
31.事务的ACID特性分别指()、持久性、一致性和隔离性。
A.原子性B.演化性C.鲁棒性D.可靠性
32.用例图是系统()的工具。
A.需求分析B.系统设计C.设计计划D.开发任务
33.软件由过程、方法和(B)三个要素组成。
A.质量B.工具C.文档D.程序
34.在软件工程开发过程中,H图的创建由()工作提供支持。
A.测试B.数据库设计C.详细设计D.系统设计
36.划分模块时,一个模块内聚性最好的是(A)。
A.功能内聚B.过程内聚C.信息内聚D.逻辑内聚
38.详细设计阶段,描述模块算法的常用工具是(D)。
A.H图B.NS图C.ER图D.IPO图
39.软件质量的核心因素是可靠性、正确性和()。
A.可重用性B.有效性C.可移植性D.以学习性
40.详细设计的主要任务是()。
A.模块化分解B.数据库结构设计
C.模块算法设计D.模型设计
41.软件需求的获取方法主要有面谈、专题讨论、工作流观察、原型化以及(D)等方法。
A.用例B.数据流C.业务流D.调查
42.在软件工程开发过程中,H图的创建由()工作提供支持。
A.测试B.系统设计C.程序设计D.过程设计
43.系统设计的基本描述工具是()。
A.数据流程图B.类图C.程序流程图D.测试用例
44.在确定对象时,陈述中所有()是候选的对象。
A.名词B.动词C.词组D.修饰性名词词组
45.模块间耦合性最弱的是()。
A.数据耦合B.内容耦合C.公共耦合D.外部耦合
46.概要设计的主要任务是()。
A.模块化分解B.数据库结构设计
C.软件体系结构设计D.模型设计
47.结构化软件分析的基本描述工具是()。
A.数据流程图B.类图C.程序流程图D.测试用例
48.模块间耦合性最强的是()。
A.数据耦合B.内容耦合C.公共耦合D.外部耦合
49.下列各种图可用于静态建模的有()。
A.协作图B.类图C.序列图D.活动图
50.需求分析可以使用许多工具,但()是不适合使用的。
A.数据流图B.判定表C.NS盒图D.数据字典
51.为提高软件的质量,应该()。
A.随机地选取测试数据
B.取一切可能的输入数据作为测试数据
C.在需求分析时就考虑软件测试的因素
D.选择发现错误可能性大的数据作为测试数据
52.软件工程的主旨是以()的思想进行软件开发。
A.系统化B.工程化C.优化D.智能化
53.软件设计主要解决软件项目开发的()问题。
A.做什么B.为何做
C.怎么做D.何时做
54.软件需求分析不应确定的是软件的()。
A.架构B.性能
C.风险D.功能
55.面向对象分析的基本描述工具是()。
A.数据流程图B.类图C.程序流程图D.测试用例
56.模块间耦合性最强的是()。
A.内容耦合B.数据耦合C.公共耦合D.外部耦合
57.下列各种图可用于对象内部动态建模的有()。
A.用例图B.类图C.状态图D.包图
58.需求分析可以使用许多工具,但()是不适合使用的。
A.数据流图B.判定表C.程序流程图D.数据字典
59.软件设计衡量模块结构质量的目标是()。
A.模块间联系紧密,模块内联系紧密
B.模块间联系紧密,模块内联系松散
C.模块间联系松散,模块内联系紧密
D.模块间联系松散,模块内联系松散
60.软件测试用例设计主要有白盒法和()。
A.穷举法B.估计法C.逼近法D.黑盒法
61.可行性研究从技术可行性、经济可行性、操作可行性和()四方面研究项目能否在规定的时间、规定的成本下完成。
A.内部可行性 B.外部可行性
C.时间可行性 D.空间可行性
62.软件工程化思想的核心是把软件看成为一个()。
A.艺术作品B.工程产品C.研究成果D.思维结果
63.软件需求分析主要解决软件项目()的问题。
A.做什么B.为何做C.怎么做D.何时做
64.软件详细设计确定软件模块的(A)。
A.算法B.性能C.风险D.功能
65.软件测试阶段的主要设计工作是(D)设计。
A.数据流程图B.类图C.程序流程图D.测试用例
66.模块间内聚性最强的是(A)。
A.功能内聚B.逻辑内聚C.过程内聚D.顺序内聚
67.下列各种图可用于对象间动态建模的有()。
A.用例图B.类图C.协作图D.包图
68.面向对象设计可以使用许多工具,但()是不适合使用的。
A.类图B.活动图C.程序流程图D.协作图
69.软件设计的模块化是对复杂问题进行()。
A.时间分解B.过程精化C.空间分解D.过程分解
70.黑盒法软件测试用例设计主要有等价划分法、边界值法和()。
A.穷举法B.估计法C.逼近法D.因果图法
71.软件项目管理主要是对人员、费用、进度和(D)的管理。
A.时间 B.团队 C.文档 D.质量
72.在软件开发的各种资源中,()是最重要的资源。
A.开发工具B.方法C.硬件环境D.人员
73.原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于()系统。
A.需求不确定的B.需求确定的C.管理信息D.决策支持
74.单元测试的测试用例主要根据(B)的结果来设计。
A.需求分析B.源程序C.概要设计D.详细设计
75.测试工作量通常占软件开发全部工作量的()。
A.20%~30%B.30%~40%C.40%~50%D.50%~60%
76.下列程序流程图的标准符号中,表示数据输入输出的是()。
A.B.C.D.
77.在软件维护中,维护工作量比例最大的是()。
A.改正性维护B.适应性维护C.完善性维护D.预防性维护
78.软件的复杂性是(A),它引起人员通信困难、开发费用超支、开发时间超时等问题。
A.固有的B.人为的C.可消除的D.不可降低的
79.用于软件维护的费用占软件总费用的(C)。
A.35%~50%B.45%~60%C.55%~70%D.65%~80%
80、软件是一种()产品。
A、有形B、逻辑C、物质D、消耗
81、在软件生命周期中,用户主要是在(D)参与软件开发。
A、软件定义期B、软件开发期
C、软件维护期D、整个软件生命周期过程中
82、在软件工程项目中,不随参与人数的增加而使软件的生产率增加的主要问题是(D)。
A、工作阶段间的等待时间B、生产原型的复杂性
C、参与人员所需的工作站数D、参与人员之间的通信困难
83、软件设计一般分为总体设计和详细设计,它们之间的关系是()。
A、全局与局部B、抽象与具体C、总体与层次D、功能与结构
84、一个()能用不同的方法表示它的特征。
A、事件B、抽象C、状态D、脚本
85、不适合作为数据处理的语言是()。
A、PrologB、C语言C、4GLD、SQL语言
86、黑盒测试是从______观点的测试,白盒测试是从______观点的测试。
(C)
A、开发人员、管理人员B、用户、管理人员
C、用户、开发人员D、开发人员、用户
87、软件工程对维护工作的主要目标是提高软件的可维护性,降低(D)。
A、维护的效率B、维护的工作量C、文档D、维护的代价
88、软件工程学中除重视软件开发技术的研究外,另一重要组成内容是软件的()。
A、工程管理B、成本核算C、人员培训D、工具开发
88、软件生命周期模型有多种,下列选项中,()不是软件生命周期模型。
A、螺旋模型B、增量模型C、功能模型D、瀑布模型
89、制定软件计划的目的在于尽早对欲开发的软件进行合理估价,软件计划的任务是()。
A、组织与管理B、分析与估算C、设计与测试D、规划与调度
90、在对数据流的分析中,主要是找到变换中心,这是从()导出结构图的关键。
A、数据结构B、实体关系C、数据流图D、E-R图
91、下面()不是对象具有的特性。
A、标识B、继承C、顺序D、多态性
92、与选择编程语言无关的因素是()。
A、软件开发的方法B、软件执行的环境C、用户需要D、软件开发人员的知识
93、白盒测试是从()观点的测试。
A、开发人员B、管理人员C、用户D、其他
94、使用条件路径选择进行白盒测试时,对于连锁型分支结构结构,若有n个判定语句,则需要(C)个测试用例。
A.nB.2n-1C.2nD.2n+1
95、软件测试是为了(B)而执行程序的过程。
A.纠正错误B.发现错误C.避免错误D.证明正确
96、按照Miller法则,一个人在任何时候都只能把注意力集中在(C)个知识块上。
A.3±2B.5±2C.7±2D.9±2
97、右边所示的流图的环形复杂度为(A)。
A.4B.5C.6D.7
98、使用条件路径选择进行白盒测试时,对于嵌套型分支结构,若有n个判定语句,则需要(C)个测试用例。
A.n-1B.nC.n+1D.2n
二、判断题(对的画“√”,错的画“×”,每小题1分,共10分)
1.快速原型模型是一种以用户需求为动力,以对象作为驱动的模型,适合于面向对象的开发方法。
(√)
2.当模块中所有成分结合起来完成一项任务,该模块的内聚是功能内聚。
(×)
3.好的程序不仅处理速度要快,而且易读、易修改。
(√)
4.应多使用GOTO语句。
(×)
5.用白盒法测试时,测试用例是根据程序内部逻辑设计的。
(√)
6.系统模块的内聚度应尽可能地小。
(×)
7.信息隐藏原则禁止在模块外使用在模块接口说明中所没有说明的、关于该模块的信息。
(√)
8.一组测试用例是条件覆盖,则一定是语句覆盖。
(√)
9.在完成测试作业之后,为缩短源程序长度,应删去源程序中的注解。
(×)
10.在进行需求分析时,就应该同时考虑软件的可维护性问题。
(×)
11.瀑布模型是一种以对象为驱动的模型,适合于面向对象方法。
(×)
12.当模块中互不相关的任务结合在一起,该模块的内聚是偶然性内聚。
(√)
13.好的程序主要是处理速度要快。
(×)
14.应尽量不使用GOTO语句。
(√)
15.用黑盒法测试时,测试用例是根据程序外部行为设计的。
(√)
16.系统模块的内聚度应尽可能地大。
(√)
17.信息隐藏原则可以在模块外使用在模块接口说明中所没有说明的、关于该模块的信息。
(×)
18.一组测试用例是条件覆盖,不一定是语句覆盖。
(×)
19.在完成测试作业之后,为缩短源程序长度,应删去源程序中的注解。
(×)
20.在进行需求分析时,为简化问题,不必考虑软件的可维护性问题。
(√)
21.增量模型是一种以一系列的阶段完成项目开发的过程模型。
(√)
22.当模块调用下属模块时,如果交换的都是简单变量,便构成数据耦合。
(√)
23.人机界面设计应强调界面的一致性。
(√)
24.软件测试的目的是完全发现程序中的错误。
(×)
25.用黑盒法设计测试用例是根据软件的外部特征来设计用例的。
(√)
26.模块的内聚度越小越好。
(×)
27.信息隐藏原则要求开发人员不用关心拿来使用的模块的内部结构。
(√)
28.等价分类法把输入域分成若干等价类,每类取一个测试数据来测试。
(×)
29.软件维护能够一直延长软件系统的生命周期。
(×)
30.在进行需求分析时,就应该考虑需求的变化性问题。
(√)
41.数据模型是一种描述软件过程的抽象模型。
(×)
42.统一过程模型是以用例驱动,以架构为中心、可迭代可配置的软件开发流程。
(√)
43.非形式化需求分析技术主要有会谈、调查表和场景技术等等。
(√)
44.软件设计的目的是要回答用户想做什么。
(×)
45.用白盒法设计测试用例是根据软件的内部结构来设计用例的。
(√)
46.模块间的耦合度越大越好。
(×)
47.加工逻辑描述数据流程图中处理的算法或过程。
(√)
48.顺序图描述对象间按时间顺序交互的动态过程。
(√)
49.软件维护不能够解决软件系统的变化问题。
(√)
50.在进行概要设计时,就应该考虑软件架构的变化性问题。
(√)
51.文档是软件产品的一部分,没有文档的软件就不称其为软件。
(√)
52.在需求分析过程中,分析员要从用户那里解决的最重要的问题是给该软件提供哪些信息。
(×)
53.建立用例模型的步骤包括确定角色、确定用例和绘制用例图。
(×)
54.软件错误可能出现在开发过程的早期,越早修改越好。
(√)
55.只有质量差的软件产品才需要维护。
(×)
56.一个好的测试用例在于能发现至今未发现的错误。
(√)
57.不完善的系统定义往往是导致软件项目失败的主要原因。
(√)
58.瀑布模型是一种文档驱动的模型。
(√)
59.UML是一种方法。
(×)
60.在时间允许的情况下,适当减少人员会提高工作效率,降低软件开发成(√)
61.面向对象的分析是面向计算机系统建立软件系统的对象模型。
(×)
62.一个成功的项目唯一提交的就是运行程序。
(×)
64、在需求分析过程中,分析员要从用户那里解决的最重要的问题是给该软件提供哪些信息。
(×)
65、需求规格说明书在软件开发中具有重要的作用,它也可以作为软件可行性分析的依据。
(×)
66、数据流图建立系统的功能模型,它由数据流、加工和数据存贮组成。
(×)
67、软件配置管理是一组标识、组织和控制修改源程序的活动。
(√)
68、UML是一种直观化、明确化、构建和文档化软件产物的通用语言。
(×)
69、好的测试是用少量的测试用例运行程序,发现被测程序尽可能多的错误。
(√)
70、边界值分析方法是取输入/输出等价类的边界值作为测试用例。
(√)
71、在项目计划发生延迟的情况下,增加更多的程序员一定会加快进度。
(×)
72、不完善的系统定义往往是导致软件项目失败的主要原因。
(√)
73、软件工作的考虑范围主要是程序设计和实现。
(×)
74、等价类划分方法将所有可能的输入数据划分成若干部分,然后从每一部分中选取少数有代表性的数据作为测试用例。
(√)
75、UML语言支持面向对象的主要概念,并与具体的开发过程相关。
(×)
76、用例图定义了系统的功能需求,它是从系统的外部看系统功能,并不描述系统内部对功能的具体实现。
(√)
77、软件配置管理是一组标识、组织和控制修改源程序的活动。
(×)
79、在软件开发的过程中,若能推迟暴露其中的错误,则为修复和改正错误所花费的代价就会降低。
(×)
81、模型是对现实的简化,建模是为了更好地理解所开发的系统。
(×)
82、好的测试用例应能证明软件是正确的。
(×)
83、白盒测试仅与程序的内部结构有关,完全可以不考虑程序的功能要求(×)
85统一过程是一种以用户需求为动力,以对象作为驱动的模型,适合于面向对象的开发方法。
(√)
86当模块中所有成分结合起来完成一项任务,该模块的内聚是偶然内聚。
(×)
87SD方法衡量模块结构质量的目标是模块间联系松散,模块内联系紧密。
(√)
88需求分析可以使用许多工具,但数据流图是不适合使用。
(×)
89用黑盒法测试时,测试用例是根据程序内部逻辑设计。
(×)
90因果图法可以用于系统地设计测试用例。
(√)
91在了解被测试模块的内部结构或算法的情况下进行测试叫白盒测试。
(√)
92为提高软件可移植性,应注意提高软件的设备独立。
(×)
三名词解释(每小题4分,共20分)
37.软件生命周期
38结构程序设计
答:
如果一个程序的代码块仅仅通过顺序、选择和循环这3种基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的。
39α测试
40软件再工程
41软件危机
答:
软件危机是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
概括地说,包含两方面的问题:
如何开发软件,以满足对软件日益增长的需求;如何维护数量不断膨胀的已有软件。
43β测试
答:
指软件开发公司组织各方面的典型用户在日常工作中实际使用β版本(经过α测试调整的软件产品),并要求用户报告异常情况、提出批评意见,然后软件开发公司再对β版本进行改错和完善。
44软件项目管理
答:
为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。
45结构化维护
答:
采用软件工程的方法进行软件开发,保证每个阶段都有完整且详细的文档。
对这样的软件进行的维护活动叫结构化维护。
46软件建模
47、类
答:
具有相同属性和服务的一组对象的集合,它为属于该类的全部对象提供了统一的抽象描述,其内部包括属性和服务两个主要部分。
四、问答题(每小题6分,共30分)
1、什么是软件开发方法?
有哪些主要方法?
2、可行性研究有哪些步骤?
3、结构化分析的步骤有哪些?
4、试述用户界面设计应考虑的因素。
5、软件质量保证措施有那些?
什么是软件维护?
它有哪些类型?
6、什么是软件生存周期?
软件生存周期模型有哪些?
7、软件测试的步骤有哪些?
8、评价模块分割好坏的标准有哪些?
10、UML有那些图?
11软件工程包括哪五要素?
主要的建模语言有哪些?
12软件生命周期一般包含哪些阶段?
每阶段的主要任务是什么?
13面向对象软件需求分析模型
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 复习题 广东 海洋大学 部分 答案 分析
![提示](https://static.bdocx.com/images/bang_tan.gif)