软件工程试题
课程代码:02333
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.软件开发环境按解决的问题分类包含( )
A.程序设计环境 B.工具箱环境
C.基于方法的环境 D.以语言为中心的环境
2.为了提高软件产品的质量和可靠性,对某些无法避开的差错,使其影响减至最小程度所采用的技术是( )
A.容错技术 B.避开错误技术
C.检测技术 D.排错技术
3.软件复杂性的常用度量方法包括( )
A.BOEHM度量法 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.在软件测试中,首先对每个模块分别进行单元测试,然后再把所有的模块按设计要求组装在一起测试,称为( )
A.确认测试 B.系统测试
C.渐增式测试 D.非渐增式测试
11.源代码的可维护性表现了程序设计语言的( )
A.心理特性 B.工程特性
C.技术特性 D.传统特性
12.至今已有好几百种不同的高级语言,它们有的是用于数值计算,有的是用于商业管理,有的是用于编写系统软件。以下语言中较适用于数值计算的语言是( )
A.BASIC B.SQL
C.LISP D.FORTRAN
13.在JSP方法中解决结构冲突的具体办法是( )
A.引入中间数据结构或中间文件 B.删除某个输入数据结构
C.删除某个输出数据结构 D.增加某个输入或输出数据结构
14.模块的内聚性可以按照内聚程度的高低进行排序,以下排列中属于从低到高的正确次序是( )
A.偶然内聚,时间内聚,逻辑内聚
B.通信内聚,时间内聚,逻辑内聚
C.逻辑内聚,通信内聚,顺序内聚
D.功能内聚,通信内聚,时间内聚
15.以下软件生存周期的活动中,要进行软件结构设计的是( )
A.测试用例设计 B.概要设计
C.程序设计 D.详细设计
16.能够清楚地表示复杂的条件组合与应做的动作之间的对应关系的工具是( )
A.结构化语言 B.PAD图
C.判定表 D.程序流程图
17.需求分析方法必须能够表达和理解问题的数据域和( )
A.数据流 B.用户类型
C.功能域 D.应用领域
18.以用户需求为动力,以对象作为驱动的模型是( )
A.瀑布模型 B.基于知识的模型
C.喷泉模型 D.增量模型
19.把软件生产的全过程人为地划分为若干阶段使得软件人员能根据每一阶段的不同特点更好地组织和管理软件项目的开发,这种概念就是( )
A.软件项目管理 B.软件工程
C.软件项目计划 D.软件生存期
20.在软件生存期的各个阶段中跨越时间最长的阶段是( )
A.需求分析阶段 B.设计阶段
C.测试阶段 D.维护阶段
二、填空题(本大题共10小题,每空2分,共20分)
请在每小题的空格中填上正确答案。错填、不填均无分。
21.软件工具通常由工具、工具接口和_______________三部分构成。
22.软件工程管理中的控制包括进度控制、人员控制、经费控制和_______________。
23.软件开发的原型模型可以分为三类,它们是:探索型原型、实验型原型和_______________。
24.软件复杂性主要表现在程序的复杂性。程序的复杂性主要指_______________程序的复杂性。
25.白盒法中,_______________首先以详细设计或源程序为基础,导出控制流程图的拓扑结构(程序图)。
26.在软件的详细设计中,根据控制流程从上到下,从左到右展开的设计工具是_______________。
27.一个模块通过传递开关、标志对某一模块的多种功能进行选择,则这两个模块之间的耦合方式是_______________。
28.结构化分析是面向_______________进行需求分析的方法。
29.有效的模块化是通过定义一组_______________的模块来实现信息隐蔽的,这些模块彼此之间仅交换那些为了完成系统功能所必须的信息。
30.在软件生产中,_______________的作用是规定了获取、供应、开发、操作和维护软件时,要实施的过程、活动和任务。
三、名词解释题(本大题共5小题,每小题3分,共15分)
31.软件开发环境
32.错误推测法
33.黑盒测试法
34.软件质量保证
35.瀑布模型
四、简答题(本大题共4小题,每小题5分,共20分)
36.增量构造模型有什么特点?
37.软件测试要经过哪些步骤?简述这些测试的基本任务。
38.简述需求分析方法应遵循的基本原则。
39.模块间的耦合性包括哪些类型?
五、应用题(本大题共3小题,第40小题7分,第41小题8分,第42小题10分,共25分)
40.设有如下程序流程图
x | y | |
测试数据组1 | 0 | 0 |
测试数据组2 | 0 | 3 |
测试数据组3 | 3 | -1 |
测试数据组4 | 4 | -2 |
测试数据组5 | 4 | 1 |
(1)满足语句覆盖的最少测试组合是什么?
(2)满足判定覆盖的最少测试组合是什么?
(3)满足条件组合覆盖的最少测试组合是什么?
41.有一个处理单价为5角钱的饮料的自动售货机软件,其规格说明如下:
(1)若投入5角钱或1元钱的硬币,按下饮料的按钮,则相应的饮料就送出来。
(2)若售货机没有零钱找,则一个显示零钱找完的红灯亮,这时投入1元硬币并按下按钮后,饮料不送出来并且1元硬币也退出来;
(3)若有零钱找,则显示零钱找完的红灯灭,在送出饮料的同时退还5角硬币。
试用判定表描述加工逻辑。(要求用单条件,不允许用复合条件)
42.一实时监护系统的处理机的功能如下:
(1)由定时检测系统取得各个监护病员的生理数据(脉搏,体温,血压)经合法性检查后,与预先保存的每一病号生理临界数据进行比较;
(2)如发现超越临界则启动自动报警装置发出警报信号;
(3)定时检测的数据将被格式化并被记入日志文件;
试根据要求画出该问题的数据流图,并将其转换为软件结构图。
全国2007年1月高等教育自学考试
软件工程试题
课程代码:02333
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
l.以下哪一项不是软件产品所具有的特性( )
A.软件是逻辑产品
B.软件产品不会用坏,不存在磨损、消耗问题
C.随着技术的提高,软件开发的费用不断降低
D.软件产品的成本主要体现在软件的开发与研制上
2.“确定软件系统必须做什么”是哪个阶段的任务( )
A.可行性分析和项目开发计划 B.需求分析
C.概要设计 D.详细设计
3.以下哪一项不是软件测试时需要的信息( )
A.软件配置 B.软件结构
C.测试工具 D.测试配置
4.结构化分析方法的分析策略是( )
A.自底向上的抽象 B.自顶向下的分解
C.用DFD建模 D.用DD描述数据需求
5.一组语句在程序中多处出现,为了节省存储,将这些语句组成一个新的模块,该模块的内聚性为( )
A.功能内聚 B.顺序内聚
C.偶然内聚 D.逻辑内聚
6.系统流程图是描绘以下哪一项的工具( )
A.软件结构 B.逻辑系统
C.物理系统 D.软件功能
7.数据库的设计一般要进行三个方面的设计:概念设计、逻辑设计和物理设计,其中逻辑设计对应于系统开发的什么部分( )
A.可行性分析 B.需求分析
C.概要设计 D.详细设计
8.以下哪种语言可用于描述模块算法设计和处理细节( )
A.UML语言 B.过程设计语言
C.FORTRAN语言 D.Pascal语言
9.软件维护是软件生命周期中的固有阶段,一般认为,以下哪种软件维护在整个维护活动中所占的比例最小( )
A.校正性维护 B.适应性维护
C.预防性维护 D.完善性维护
10.软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试( )
A.结构合理性 B.软件外部功能
C.程序正确性 D.程序内部逻辑
11.使用Jackson方法可以得到( )
A.程序流程图 B.具体的语言程序
C.模块结构图及模块的功能说明书 D.分层数据流图
12.以下哪种测试的任务是检查软件的功能与性能是否与需求规格说明书中确定的指标相
符合( )
A.集成测试 B.确认测试
C.单元测试 D.系统测试
l3.与编程风格有关的因素不包括( )
A.源程序文档化 B.语句构造
C.输入输出 D.模块间耦合性
14.对于构造原型的建议,下面说法错误的是( )
A. 暂不考虑速度、空间等性能效率方面的要求。
B.暂不考虑错误恢复和处理。
C.可降低可靠性和软件质量标准。
D.原型界面部分的设计,暂不考虑与最终系统的界面相容。
l5.有关软件项目进度安排的叙述,错误的是( )
A.Gantt图常用水平线段来描述把任务分解成子任务,以及每个子任务的进度安排。
B.Gantt图中线段的长度表示完成子任务所需要的时间。
C.工程网络图是一种有向图,用圆表示事件,用有向弧或箭头表示任务,有向弧或箭头
的长度表示子任务持续的时间。
D.工程网络图只有一个开始点和一个终止点,开始点没有流入箭头,终止点没有流出箭
头。
l6.以下哪一项是软件开发环境中的主要组成部分( )
A.软件模型 B.软件工程
C.软件工具 D.硬件环境
l7.对于一个大型系统,若对设计方案没有把握,可以通过以下哪种原型来证实设计方案的正确性。( )
A.探索型 B.实验型
C.演化型 D.增量型
l8.对UML的叙述不正确的是( )
A.UML统一了Booch方法、OMT方法、OOSE方法的表示方法。
B.UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。
C.UML融入了软件工程领域的新思想、新方法和新技术。
D.UML仅限于支持面向对象的分析与设计,不支持其它的软件开发过程。
19.在McCall软件质量度量模型中,以下哪一项是面向软件产品适应的质量因素( )
A.可用性 B.可维护性
C.适应性 D.可重用性
20.下面说法错误的是( )
A.软件可靠性能够定量计算。
B.MTBF是指两次相继失效之间的平均时间。
C.MTTF是一个描述失效模型或一组失效特性的指标量。
D.MTTF与失效率λ成正比
二、填空题(本大题共10小题,每空2分,共20分)
请在每小题的空格中填上正确答案。错填、不填均无分。
21.软件生产的发展经历了三个阶段,分别是程序设计时代、程序系统时代和___________时代。
22.可行性研究从以下三个方面研究每种解决方法的可行性:经济可行性、社会可行性和___________。
23.HIPO图的H图用于描述软件的层次关系,矩形框表示一个模块,矩形框之间的直线表示模块之间的___________关系。
24.数据流图描绘数据在系统中___________的过程。
25.为了便于对照检查,测试用例应由输入数据和预期的___________两部分组成。
26.软件详细设计阶段常采用的工具有图、表和___________。
27.由于运用原型的目的和方式不同,在使用原型中可以采取___________策略和附加策 略。
28.实现容错技术的主要手段是___________。
29.软件开发环境的目标是提高软件开发的生产率和___________。
30.面向对象分析的目的是对___________进行建模。
三、名词解释题(本大题共5小题,每小题3分,共15分)
31.软件开发方法
32.软件项目的纯收入
33.完善性维护
34.类的继承性
35.软件工具
四、简答题(本大题共5小题,每小题5分,共25分)
36.简述软件工程研究的内容和它所面临的主要问题。
37.说明需求分析的定义,并简述需求分析的基本任务。
38.就程序设计语言的工程特性而言,对程序编码有哪些要求?
39.简述提高软件可维护性的方法。
40.说明面向对象的要素以及这些要素的具体含义。
五、应用题(本大题共2小题,其中41小题12分,42小题8分,共20分)
41.某个银行的存取款业务处理系统有以下功能:
储户将填好的存/取款单和存折交给银行工作人员,银行工作人员将存/取款单输
入系统,系统要求进行以下处理:
(1)业务分类处理:系统审查存/取款单,不合格则退回;合格则确定本次业务的性质(存款或取款);
(2)存款处理:系统将存款单上的存款金额分别记录在存折和账目文件中;记录现金账;
打印存款通知单给储户;最后将存折还给储户;
(3)取款处理:系统将取款单上的取款金额分别记录在账目文件和存折中;修改现金账;
打印取款通知单给储户;最后将现金和存折交给储户。
试根据要求画出该系统的分层数据流图,并将其转换为软件结构图。
42.下列是某程序的NS图
(1)请将其转换成PAD图
(2)请将其转换成程序流程图。
全国2007年10月高等教育自学考试
软件工程试题
课程代码:02333
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.以下哪一项不是软件危机的表现( )
A.开发的软件可维护性差 B.软件极易被盗版
C.经费预算经常被突破 D.开发的软件不能满足用户需求
2.以下哪个软件生存周期模型是一种风险驱动的模型( )
A.瀑布模型 B.增量模型
C.螺旋模型 D.喷泉模型
3.各种需求分析方法都有共同适用的( )
A.分析方法 B.说明方法
C.表示方法 D.基本原则
4.结构化分析建立功能模型的工具是( )
A.DFD B.判定树/判定表
C.DD 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.NS图描述的程序一定是结构化的 D.PAD图描述的程序一定是结构化的
10.在整个软件维护阶段所花费的全部工作中,所占比例最大的是( )
A.校正性维护 B.适应性维护
C.完善性维护 D.预防性维护
11.以下不属于序言性注释的有( )
A.模块设计者 B.修改日期
C.程序的整体说明 D.语句功能
12.集成测试是为了发现( )
A.接口错误 B.编码错误
C.性能、质量不合要求 D.功能错误
13.一个只有顺序结构的程序,其环形复杂度是( )
A.0 B.1
C.3 D.5
14.结构化程序设计,主要强调的是( )
A.程序的执行效率 B.模块的内聚
C.程序的可理解性 D.模块的耦合
15.下面关于文档的叙述,错误的是( )
A.文档是仅用于说明使用软件的操作命令,不包括软件设计和实现细节
B.文档是软件产品的一部分,没有文档的软件就不成为软件
C.高质量文档对于转让、变更、修改、扩充和使用有重要的意义
D.软件文档的编制在软件开发工作中占有突出的地位和相当大的工作量
16.在McCall软件质量度量模型中,面向软件产品操作的质量因素是( )
A.正确性 B.可维护性
C.适应性 D.互操作性
17.对度量法,叙述错误的是( )
A.度量法是一种基于程序控制流的复杂性度量法
B.度量法以图论为工具,用图的环路数作为程序复杂性的度量值
C.度量法不能区分简单IF语句和循环语句的复杂性
D.度量法对模块间的接口和简单IF语句区分对待
18.在快速原型模型的开发过程中,仅用于代替设计阶段的原型是( )
A.探索型模型 B.演化型模型
C.实验型模型 D.提交型模型
19.对于构造原型的建议,下面说法错误的是( )
A.暂不考虑错误恢复和处理,但应考虑速度、空间等性能效率方面的要求
B.可降低可靠性和软件质量标准
C.原型界面部分的设计,最好能与最终系统的界面相容
D.根据不同的软件类型和应用领域,可使用不同风格的高级语言来构造原型
20.面向对象开发方法中,将在面向对象技术领域内占主导地位的标准建模语言是( )
A.Booch方法 B.Coad方法
C.UML语言 D.OMT方法
二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格中填上正确答案。错填、不填均无分。
21.组成软件的两个部分是:________________________。
22.项目开发计划的主要内容包括项目概述、____________、人员组织及分工、交付期限。
23.为了克服软件危机,1968年北大西洋公约组织的工作会议上首先提出了____________的概念。
24.变换型数据流图是由输入、____________和输出三部分组成的。
25.Jackson方法是一种面向____________的开发方法。
26.结构化语言是介于____________和形式语言之间的一种半形式语言。
27.软件产品在交付使用之前一般要经过____________、集成测试、确认测试和系统测试。
28.不采用软件工程的方法开发软件,软件只有程序而无文档,从而导致维护工作困难,这是一种____________的维护。
29.子类自动共享父类数据结构和方法的机制是____________,这是类之间的一种关系。
30.软件版本控制是属于____________的活动内容。
三、名词解释题(本大题共5小题,每小题3分,共15分)
31.软件生存周期
32.需求分析
33.程序设计风格
34.白盒测试
35.基线
四、简答题(本大题共4小题,每小题5分,共20分)
36.简述软件工程过程的含义、目的以及包含的子过程。
37.数据字典的作用是什么,它有哪些条目?
38.简述结构化程序设计方法的基本要点。
39.简述原型的开发步骤。
五、应用题(本大题共2小题,第40小题13分,第41小题12分,共25分)
40.根据下列对某种人寿保险问题的描述画出决策表。
某保险公司的一种人寿保险的参保类型划分原则如下:
(1)如果年龄不满25岁,男性适用保险类型A,女性适用保险类型B。
(2)如果年龄满25岁但不满50岁,已婚男性适用保险类型A,未婚男性适用保险类型B,已婚女性适用保险类型B,未婚女性适用保险类型C。
(3)年龄在50岁以上者,已婚女性适用保险类型B,其余适用保险类型C。
41.测试题:
函数Find(array,L,R,value)的功能是在一个整数数组array中搜索第一个值为value的整数,搜索的范围在数组下标L到R范围内。如搜索到有这个数,则函数值为第1个等于该数的下标,否则函数值等于-1。假设数组非空,数组长度可由一内置函数得知,数组第一个元素的下标为1。
请根据题意采用等价分类法设计测试用例。
全国2008年1月高等教育自学考试
软件工程试题
课程代码:02333
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.在软件生存周期中,时间最长的阶段是( )
A.需求分析 B.详细设计
C.编码 D.维护
2.以下最适合于面向对象的软件开发的软件生存周期模型是( )
A.瀑布模型 B.增量模型
C.螺旋模型 D.喷泉模型
3.以下不适用于需求分析的工具是( )
A.数据流图 B.判定表
C.PAD图 D.数据字典
4.以下几种模块内聚类型中,内聚性最低的是( )
A.时间内聚 B.逻辑内聚
C.顺序内聚 D.功能内聚
5.系统流程图中 符号的名称是( )
A.联机存储 B.处理
C.磁盘 D.文档
6.数据流图中的每个加工至少有( )
A.一个输入流或一个输出流 B.一个输出流
C.一个输入流 D.一个输入流和一个输出流
7.HIPO图是软件工程中的一种描述工具,采用HIPO图进行描述的阶段是( )
A.可行性分析 B.需求分析
C.概要设计 D.详细设计
8.Jackson方法是软件开发过程中常用的方法,使用Jackson方法可以实现( )
A.从数据结构导出程序结构 B.从数据流图导出初始结构图
C.从模块结构导出数据结构 D.从模块结构导出程序结构
9.过程设计语言(PDL),又称为( )
A.伪码 B.高级程序设计语言
C.中级程序语言 D.低级程序设计语言
10.单元测试阶段主要涉及的文档为( )
A.需求设计 B.编码和详细设计
C.详细设计 D.概要设计
11.软件维护会产生副作用,下面选项中不属于维护副作用的是( )
A.编码副作用 B.测试副作用
C.文档副作用 D.数据副作用
l2.以下不适合作为科学工程计算的语言是( )
A.Pascal B.C
C.Fortran D.Prolog
l3.PAD图为下列哪个方面提供了有力的工具( )
A.系统分析 B.软件的自动化生成
C.自动分析数据 D.测试软件
14.结构化软件设计是( )
A.面向数据结构的 B.面向数据库的
C.面向数据流的 D.面向对象设计的
15.在McCall软件质量度量模型中,面向软件产品修改的质量因素为( )
A.可用性 B.完整性
C.适应性 D.互操作性
16.汽车是一种交通工具,汽车类和交通工具类之间的关系是( )
A.一般具体 B.has a
C.整体部分 D.组成
l7.Westinghouse公司于1992年公布了l3类软件工具分类标准和该类的范例工具以及例子,下面说法错误的是( )
A.代码生成程序属于编码和单元测试工具
B.桌面出版系统属于文档工具
C.数据库管理系统属于需求追踪工具
D.计划和进度属于项目管理工具
18.对McCabe度量法,叙述错误的是( )
A.McCabe度量法是一种基于程序控制流的复杂性度量法
B.McCabe度量法以图论为工具,用图的环路作为程序复杂性的度量值
C.McCabe度量法将简单IF语句和赋值语句的复杂性同等看待
D.McCabe复杂性度量也称为环路度量
19.瀑布模型本质是一种( )
A.顺序迭代模型 B.线性顺序模型
C.线性迭代模型 D.非线性模型
20.对于使用原型的建议,下面说法错误的是( )
A.开发周期很长的项目,可通过原型开发来缩短开发周期
B.系统的使用可能变化较大,不能相对稳定,而原型模型具有适应变化的机制
C.缺乏开发工具,或对原型的可用工具不了解的时候宜使用原型
D.用户对系统的需求较为模糊,对某种要求缺乏信心时宜使用原型
二、填空题(本大题共10小题,每空2分,共20分)
请在每小题的空格中填上正确答案。错填、不填均无分。
21.为了支持软件人员开发和维护活动而使用的软件一般是指____________。
22.在IDEF0方法中,一个活动可以无输入,但必须至少有一个__________。
23.在软件结构的设计中,各个模块之间要力求降低耦合性,提高____________。
24.在类的层次结构中,通常上层类称为父类或超类,下层类称为__________。
25.数据流图(DFD)一般可分为变换型和__________两类。
26.软件维护的内容包括校正性维护、适应性维护、_________和预防性维护。
27.软件的生产经历了三个阶段,分别是程序设计时代、程序系统时代和__________。
28.渐增模型是瀑布模型的变种,分为两类:增量构造模型和__________。
29.状态图反映了_____________的关系。
30.软件项目管理过程一个关键的活动是__________,它是软件开发工作的第一步。
三、名词解释题(本大题共5小题,每小题3分,共15分)
31.软件开发方法
32.耦合性
33.多态性
34.软件质量保证
35.确认测试
四、简答题(本大题共4小题,每小题5分,共20分)
36.简述可行性研究的目的和任务。
37.什么是模块化?软件结构设计的优化准则是什么?
38.简述详细设计的基本任务。
39.简述软件测试的任务、目的与类型。
五、应用题(本大题共2小题,其中40小题l0分,4l小题15分,共25分)
40.某个程序的伪码如下(前面的标号只用于标明语句顺序,不参与程序运行):
1:START
2:IF L1 THEN
3:S1
4:DO WHILE L2
5:S2
6:IF L3 THEN
7:S3
ELSE
8: S4
9:END IF
10:END DO
EISE
11:S5
12:END IF
13:STOP
(1)试将其转换成PAD图(5分)
(2)计算程序的环路复杂性(5分)
41.某服装贸易公司的销售子系统功能如下:
(1)公司提供多种类别服装,所有类别的服装通过各个地区的分公司进行销售;
(2)公司接收分公司的订单,检验订单,若有库存就供货,则修改库存,给仓库开备货单,并且将订单留底;若库存不足,则进行缺货登记。
(3)根据缺货记录将缺货通知单发给采购部,以便采购。
(4)根据采购部门的进货通知单处理进货,即修改库存,并从缺货记录中取出缺货订单
进行供货处理。
试采用SA方法画出该公司销售管理系统的分层DFD(画出顶层、0层、1层图)。
全国2008年10月自学考试软件工程试题
课程代码:02333
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.“软件工程的概念是为解决软件危机而提出的”这句话的意思是( )
A.强调软件工程成功解决了软件危机的问题
B.说明软件危机的存在总是使软件开发不像传统工程项目那样容易管理
C.说明软件工程这门学科的形成是软件发展的需要
D.说明软件工程的概念,即:工程的原则、思想、方法可解决当时软件开发和维护存在的问题
2.瀑布模型的主要特点是( )
A.将开发过程严格地划分为一系列有序的活动
B.将开发过程分解为阶段
C.提供了有效的管理模式
D.缺乏灵活性
3.在软件工程的需求分析阶段,不属于问题识别内容的是( )
A.功能需求 B.性能需求
C.环境需求 D.输入/输出需求
4.画某系统的数据流图时,顶层图有( )
A.0张 B.1张
C.2张 D.3张及其以上
5.软件模块内聚性最强的是( )
A.功能内聚 B.通信内聚
C.偶然内聚 D.逻辑内聚
6.最早提出软件系统维护问题的阶段是( )
A.可行性分析 B.需求分析
C.概要设计 D.详细设计
7.SD(结构化设计)方法设计的结果是( )
A.模块 B.模块结构图
C.模块的算法 D.数据流图
8.在进行软件测试时,首先应当进行以下哪项测试,然后再进行组装测试,最后再进行有效性测试( )
A.单元测试 B.系统测试
C.集成测试 D.确认测试
9.软件详细设计阶段的任务是( )
A.算法与数据结构设计 B.功能设计
C.调用关系设计 D.输入/输出设计
10.下列属于静态测试方法的是( )
A.黑盒法 B.路径覆盖
C.白盒法 D.人工检测
11.Fortran语言主要作为以下哪个方面的语言( )
A.科学工程计算 B.系统软件
C.事务处理 D.人工智能
12.用结构化语言来描述加工逻辑的外层结构时,以下不属于基本结构的是( )
A.顺序结构 B.选择结构
C.嵌套结构 D.重复结构
l3.可维护软件的主要特性包括( )
A.可理解性、可修改性、可移植性
B.可使用性
C.可维护性、可使用性、可靠性
D.可测试性
14.程序设计语言不具有的特性是( )
A.心理特性 B.工程特性
C.应用特性 D.技术特性
15.下列不属于项目进度安排主要方法的是( )
A.工程网络图 B.Gantt图
C.进度结构图 D.任务资源表
16.下列不属于通常冗余技术的是( )
A.结构冗余 B.信息冗余
C.时间冗余 D.代码冗余
17.下列工具中,属于需求追踪工具的是( )
A.在DBMS上的应用运行工具 B.追踪和状态报告
C.访问和版本控制机构 D.文件和修改管理
18.关于软件测试的目的,下面观点错误的是( )
A.为了发现错误而执行程序的过程
B.一个好的测试用例能够发现至今尚未发现的错误
C.证明程序是正确、没有错误的
D.一个成功的测试用例是发现了至今尚未发现的错误的测试
19.在制定项目开发计划文档时,不包含的内容是( )
A.项目概述 B.实施计划
C.测试计划 D.交付期限
20.面向对象的开发方法中,以下哪种方法原是面向Ada语言的,并处于面向对象开发方法的奠基性地位( )
A.Booch方法 B.Coad方法
C.UML语言 D.OMT方法
二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格中填上正确答案。错填、不填均无分。
21.可行性研究从技术可行性、经济可行性、________三方面进行分析。
22.IDEF0方法用来描述系统的功能活动及其联系,建立系统的_______模型。
23.结构化方法总的指导思想是_______逐层分解。
24.在一段程序中,将多次出现的一组语句设计为一个子程序,供多个部分调用,这种情况出现的内聚称为________。
25.软件部件的内部实现与外部可访问性分离,这是指软件的______。
26.用来模拟被测模块的上级调用模块的模块称为_______。
27.软件复杂性度量的参数很多,主要有规模、_______、结构、智能度。
28.软件开发环境中最主要的组成部分是______。
29.软件工程管理的具体内容包括对开发人员、组织机构、用户和______等方面的管理。
30.增量模型根据增量方式和形式的不同,分为_____和原型模型。
三、名词解释题(本大题共5小题,每小题3分,共15分)
31.过程设计语言(PDL)
32.可移植性
33.渐增式测试
34.详细设计
35.条件覆盖
四、简答题(本大题共4小题,每小题5分,共20分)
36.软件生存周期可以分为几个阶段,每个阶段的提交物是什么?
37.结构化分析的描述工具有哪些?简述结构化分析的步骤。
38.什么是黑盒测试法?常用的黑盒测试方法有哪些?
39.简述面向对象的特征。
五、应用题(本大题共2小题,第40小题10分,第41小题15分,共25分)
40.下面是一段伪码程序(代码前的数字只作标号用,不参与程序执行):
START
1:INPUT(A,B,C,D)
2:IF(A>0)AND(B>0)
THEN
3:X=A+B
ELSE
4:X=A-B
5:END
6:IF(C>A)OR(DTHEN
7:Y=C-D
ELSE
8:Y=C+D
9:END
10:PRINT(X,Y)
STOP
根据以上的描述
(1)画出对应的流程图和程序图。
(2)计算程序图的环形复杂度。
41.某个学生成绩管理系统的部分功能如下:
(1)基本信息管理:教务管理人员输入或修改学期教学执行计划、学生名单和教师名单;
(2)学生选课:学生根据教学执行计划进行选课;
(3)分配任课教师:教务管理人员为符合开课条件的课程分配教师,并打印任课通知单给教师;
(4)成绩管理:每门课程的教师在考试评分结束后将考试成绩交给教务管理人员,教务管理人员输入、维护成绩,系统可生成成绩单(发给学生)、成绩统计分析表(发给教务管理人员)。
请根据要求画出该问题的分层数据流图(要求画出顶层和0层数据流图)。
全国2009年1月自考软件工程试题
课程代码:02333
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的。请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.以下不属于软件特点的是( )
A.软件是一种逻辑产品 B.软件产品存在磨损问题
C.软件的生产主要是研制 D.软件费用不断增加
2.以下属于形式化开发方法的是( )
A.结构化开发方法 B.Jackson开发方法
C.维也纳开发方法 D.面向对象开发方法
3.数据字典定义数据流或数据存储组成时所使用的符号(‥‥)表示( )
A.可选 B.与
C.或 D.重复
4.IDEF是IDEF方法的一部分,用于建立系统的( )
A.功能模型 B.信息模型
C.动态模型 D.关系模型
5.软件结构中两个模块之间有调用关系,传递简单数据值,相当于高级语言中的值传递,这两个模块之间的耦合是( )
A.公共耦合 B.控制耦合
C.标记耦合 D.数据耦合
6.把需要同时执行的动作组合在一起形成模块,该模块的内聚性是( )
A.顺序内聚 B.逻辑内聚
C.时间内聚 D.通信内聚
7.以下属于程序流程图缺点的是( )
A.历史悠久 B.使用广泛
C.支持程序的三种基本控制结构 D.可以随心所欲地画控制流程线的流向
8.Jackson结构图的三种基本结构是( )
A.顺序结构、选择结构、层次结构 B.顺序结构、选择结构、重复结构
C.层次结构、选择结构、重复结构 D.顺序结构、层次结构、重复结构
9.以下属于面向对象程序设计语言的是( )
A.Java语言 B.C语言
C.Pascal语言 D.Prolog语言
10.以下四种逻辑覆盖中,发现错误能力最强的是( )
A.语句覆盖 B.条件覆盖
C.判定覆盖 D.条件组合覆盖
11.软件工程领域中,与集成测试有关的软件开发阶段是( )
A.编码 B.详细设计
C.概要设计 D.需求分析
12.软件维护的副作用不包括( )
A.编码副作用 B.数据副作用
C.文档副作用 D.效率副作用
13.原型的优点不包括( )
A.对设计人员水平及开发环境要求不高 B.可及早为用户提供有用的产品
C.可及早发现问题,随时纠正错误 D.可减少技术、应用的风险
14.UML统一了三种面向对象方法的表示方法,这三种面向对象方法是( )
A.Coad方法、OMT方法、OOSE方法 B.Booch方法、OMT方法、OOSE方法
C.Booch方法、Coad方法、OOSE方法 D.Booch方法、OMT方法、Coad方法
15.面向对象的类层次结构中,聚集关系是一种( )
A.“一般——特殊”关系 B.“整体——部分”关系
C.“相互依赖”关系 D.“一般——具体”关系
16.软件质量特性中,“软件系统按照设计要求,在规定时间和条件下不出故障,持续运行的程度”对应的特性是( )
A.正确性 B.完整性
C.可靠性 D.可用性
17.软件工程标准中,IEEE属于( )
A.国际标准 B.国家标准
C.行业标准 D.企业规范
18.与“项目开发计划”文档有关的人员是( )
A.管理人员和开发人员 B.开发人员和维护人员
C.开发人员和用户 D.管理人员和用户
19.软件工具的三个组成部分不包括( )
A.工具 B.工具接口
C.工具用户接口 D.编译系统
20.软件复杂性度量的参数中,由程序中出现的操作数数目所决定的量表示的参数是
( )
A.规模 B.难度
C.结构 D.智能度
二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格上填上正确答案。错填、不填均无分。
21.软件工程研究的主要内容是软件开发技术和______两个方面。
22.软件可行性研究从技术可行性、______、社会可行性三个方面分析研究每种解决方案的可行性。
23.需求分析的基本任务是准确地定义新系统的目标,回答______的问题。
24.一个模块的作用范围指受该模块内一个______影响的所有模块的集合。
25.PAD图是日本日立公司提出的一种______工具。
26.程序的注释分______和功能性注释。
27.G.J.Myers提出:软件测试是为了发现______而执行程序的过程。
28.软件维护的内容有四种:校正性维护、______、完善性维护和预防性维护。
29.面向对象分析模型有三种,分别是:对象模型、______和功能模型。
30.对面向对象软件的测试可分为四个层次进行,这四个层次是:算法层、类层、______和系统层。
三、名词解释题(本大题共5小题,每小题3分,共15分)
31.软件生存周期模型
32.数据流图
33.白盒测试法
34.软件质量
35.信息隐蔽
四、简答题(本大题共4小题,每小题5分,共20分)
36.简述软件危机产生的原因。
37.简述结构化分析的步骤。
38.简述选择程序设计语言时通常要考虑的因素。
39.简述单元测试的内容。
五、应用题(本大题共2小题,第40小题13分,第41小题12分,共25分)
40.根据下面变换型的数据流图设计出对应的初始软件结构图。
41.根据下面给出的程序流程图,设计不超过3组的测试用例,使之满足判定/条件覆盖,对每组测试数据给出执行路径、输入值、输出值、两个判定(3)和(5)的结果以及两个判定中每个条件的结果。
全国2009年10月自学考试软件工程试题
课程代码:02333
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.软件危机产生的时期是( )
A.“程序设计时代”初期 B.“程序设计时代”末期
C.“程序系统时代”初期 D.“程序系统时代”末期
2.以下属于面向数据结构的开发方法是( )
A.结构化方法 B.Jackson方法
C.维也纳开发方法 D.面向对象的开发方法
3.数据字典定义数据流或数据存储组成时,使用了若干符号,其中{…}表示的含义是( )
A.可选 B.与
C.或 D.重复
4.IDEF0是IDEF方法的一部分,用于建立系统的( )
A.功能模型 B.信息模型
C.动态模型 D.关系模型
5.若模块内部所有处理元素都在同一个数据结构上操作,则该模块的内聚性类型是( )
A.时间内聚 B.偶然内聚
C.通信内聚 D.功能内聚
6.若软件结构中两个模块之间传递的是数据结构,如高级语言中的数组名,则这两个模块
的耦合性类型是( )
A.公共耦合 B.控制耦合
C.数据耦合 D.标记耦合
7.下列描述中,不属于程序流程图优点的是( )
A.历史最悠久,使用最广泛 B.容易表示数据结构
C.支持程序的三种基本控制结构 D.直观清晰,易于使用
8.设计人工智能领域内的系统,程序设计语言最好选择( )
A.Cobol语言 B.C语言
C.Pascal语言 D.Prolog语言
9.以下四种逻辑覆盖中,发现错误能力最弱的是( )
A.语句覆盖 B.条件覆盖
C.判定覆盖 D.条件组合覆盖
10.软件工程领域中,与确认测试有关的软件开发阶段是( )
A.编码 B.详细设计
C.概要设计 D.需求分析
11.对某个学生成绩系统进行测试,输入值是学生的成绩,范围为0~100,根据黑盒测试的等价类划分技术,下列划分正确的是( )
A.1个合理等价类,1个不合理等价类
B.1个合理等价类,2个不合理等价类
C.2个合理等价类,1个不合理等价类
D.2个合理等价类,2个不合理等价类
12.为了使软件适应环境的变换而修改软件的维护活动称为( )
A.校正性维护 B.适应性维护
C.完善性维护 D.预防性维护
13.根据原型的不同作用,快速原型模型有三类模型,分别为( )
A.探索型原型、归纳型原型、演化型原型
B.归纳型原型、实验型原型、演化型原型
C.探索型原型、实验型原型、演化型原型
D.探索型原型、实验型原型、归纳型原型
14.面向对象开发方法中,动态模型使用的描述工具是( )
A.状态图 B.对象图
C.数据流图 D.类图
15.在面向对象方法建立的对象模型中,类之间的关联具有多重性,其中小空心圆表示的重数是( )
A.0或1 B.1
C.0到多 D.1到多
16.McCall质量度量模型中,与“用户熟悉、使用及准备输入和解释输出所需的工作量的大小”所对应的软件质量特性是( )
A.正确性 B.完整性
C.可靠性 D.可用性
17.软件工程标准中,GIB属于( )
A.国际标准 B.国家标准
C.行业标准 D.企业规范
18.与“可行性研究报告”文档有关的人员是( )
A.管理人员和开发人员 B.开发人员和维护人员
C.开发人员和用户 D.管理人员和用户
19.软件工具中,“编辑程序”属于( )
A.需求分析工具 B.需求追踪工具
C.设计工具 D.文档工具
20.“与程序结构有关的度量”对应的软件复杂性度量参数是( )
A.规模 B.难度
C.结构 D.智能度
二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格中填上正确答案。错填、不填均无分。
21.螺旋模型是将两种软件生存周期模型结合起来,加入了风险分析,这两种模型是指瀑布模型和___________。
22.在软件项目的经济可行性分析中,所谓投资回收期指的是:使开发项目累计的经济效益等于___________所需的时间。
23.数据流图中描述加工逻辑一般使用三种工具,分别是___________、判定表、判定树。
24.变换型的DFD是由输入、___________和输出三部分组成。
25.Jackson开发方法中,Jackson结构图由___________、选择结构和重复结构这三种基本结构组合而成。
26.为开发一个特定项目选择程序设计语言时,必须从技术特性、___________和心理特
性几方面考虑。
27.软件产品在交付使用之前一般要经过以下四步测试:___________、集成测试、确认测
试和系统测试。
28.软件维护的副作用有三种,分别是编码副作用、___________、文档副作用。
29.面向对象设计可以细分为系统设计和___________。
30.面向对象分析要建立三个模型,其中___________模型是三个模型的核心,也是其他两个模型的框架。
三、名词解释题(本大题共5小题,每小题3分,共15分)
31.软件开发方法
32.数据字典
33.黑盒测试法
34.软件质量保证
35.模块的作用范围
四、简答题(本大题共4小题,每小题5分,共20分)
36.简述软件产品的特性。
37.简述在需求分析基本任务中,对问题的综合需求包括哪几个方面。
38.简述结构化程序设计的基本要点。
39.简述提高软件可维护性的方法。
五、应用题(本大题共2小题,第40小题13分,第41小题12分,共25分)
40.根据下列变换型的数据流图,设计出初始软件结构图。
题40图
41.根据下列程序流程图,设计不超过2组的测试用例,使之满足语句覆盖,要求给出每组测试数据的执行路径、输入值、输出值及两个判定(3)和(5)的判定结果。
题41图
全国2010年1月自学考试软件工程试题
课程代码:02333
一、单项选择题(本大题共20小题,每小题1分,共20分)
在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。
1.软件生存周期中,准确地确定软件系统必须做什么的阶段是( )
A.可行性分析和项目开发计划 B.需求分析
C.概要设计 D.详细设计
2.把瀑布模型和专家系统结合在一起的软件生存周期模型是( )
A.增量模型 B.基于知识的模型
C.螺旋模型 D.喷泉模型
3.以下不属于项目开发计划主要内容的是( )
A.实施计划 B.交付期限
C.测试用例 D.人员组织及分工
4.使用数据流图来表示系统逻辑模型的是( )
A.Jackson B.VDM
C.OOA D.SA
5.用于描述结构化分析中数据流加工逻辑的是( )
A.判定树 B.ER图
C.状态图 D.用例图
6.若一个模块中各个处理元素都密切相关于同一功能且必须顺序执行,前一功能元素的输出就是下一功能元素的输入,则该模块的内聚性类型是( )
A.时间内聚 B.偶然内聚
C.顺序内聚 D.功能内聚
7.下列几种耦合类型,耦合性最高的是( )
A.公共耦合 B.控制耦合
C.标记耦合 D.数据耦合
8.程序流程图的优点不包括( )
A.历史最悠久,使用最广泛 B.容易表示逐步求精的过程
C.支持程序的三种基本控制结构 D.直观清晰,易于使用
9.第一个体现结构化编程思想的程序设计语言是( )
A.Cobol语言 B.C语言
C.Pascal语言 D.FORTRAN语言
10.确认测试也称为( )
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.McCall质量度量模型中,与“软件系统对非授权人访问软件或数据行为的控制程度”所对应的软件质量特性是( )
A.正确性 B.完整性
C.可维护性 D.可用性
17.软件工程标准中,JIS属于( )
A.国际标准 B.国家标准
C.行业标准 D.企业规范
18.与“程序维护手册”文档有关的人员是( )
A.管理人员和开发人员 B.管理人员和维护人员
C.维护人员和用户 D.管理人员和用户
19.软件工具“代码生成程序”属于( )
A.需求追踪工具 B.质量保证工具
C.设计工具 D.文档工具
20.软件复杂性度量的参数中,能反映“软件总共的指令数,或源程序行数”的是( )
A.规模 B.难度
C.结构 D.智能度
二、填空题(本大题共10小题,每小题2分,共20分)
请在每小题的空格中填上正确答案。错填、不填均无分。
21.软件工具一般是指为了支持软件人员________活动而使用的软件。
22.CASE技术是________和软件开发方法的结合。
23.数据字典有四类条目,分别是数据流、________、数据存储和基本加工。
24.各种软件系统的数据流图一般可分为________和事务型两类。
25.过程设计语言是用于描述模块________和处理细节的语言。
26.效率是与编程风格有关的一个因素,效率是指处理机时间和________的使用。
27.调试技术有简单的调试方法、归纳法调试、________和回溯法调试。
28.软件可维护性可用七种质量特性来衡量,分别是________、可测试性、可修改性、可靠性、可移植性、可使用性和效率。
29.UML将Booch方法、OMT方法和________的表示方法统一,并进一步发展为大众所接受的标准建模语言。
30.面向对象分析中,动态模型使用________作为描述工具,该图反映了状态与事件的关系。
三、名词解释(本大题共5小题,每小题3分,共15分)
31.软件工程过程
32.模块化
33.集成测试
34.软件可靠性
35.模块的控制范围
四、简答题(本大题共4小题,每小题5分,共20分)
36.简述软件工程面临的问题。
37.简述可行性研究报告包含的主要内容。
38.简述软件结构设计的优化准则。
39.简述快速原型的开发步骤。
五、应用题(本大题共2小题,第40小题13分,第41小题12分,共25分)
40.根据下列事务型的数据流图,设计出初始软件结构图。
41.根据下列程序流程图,设计3组的测试用例,使之满足语句覆盖,对每组测试数据给出执行路径、两个判定(1)和(3)的判定结果。