软工专业软件工程习题.docx
- 文档编号:26168572
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:19
- 大小:37.13KB
软工专业软件工程习题.docx
《软工专业软件工程习题.docx》由会员分享,可在线阅读,更多相关《软工专业软件工程习题.docx(19页珍藏版)》请在冰豆网上搜索。
软工专业软件工程习题
一、选择题:
1、在结构化设计(SD)方法中全面指导模块划分的最重要的原则是(D)
A.程序模块化B.模块高内聚C.模块低耦合D.模块独立性
2、软件维护产生的副作用,是指(C)
A.开发时的错误B.隐含的错误C.因修改软件而带来的错误D.运行时误操作
3、软件详细设计的主要任务是确定每个模块的(A)
A.算法和使用的数据结构B.外部接口C.功能D.编程
4、为了提高模块的独立性,模块内部最好是(C)
A.逻辑内聚B.时间内聚C.功能内聚D.通信内聚
5、软件是一种(C)
A.程序B.数据C.逻辑产品D.物理产品
6、因计算机硬件和软件环境的变化而做出的修改软件的过程称为(B)
A.纠正性维护B.适应性维护C.完善性维护D.预防性维护
7、只有单重继承的类层次结构是(C)层次结构。
A.网状型B.星型C.树型D.环型
8、下列属于维护阶段的文档是(A)
A.软件规格说明B.用户操作手册C.软件问题报告D.软件测试分析报告
9、研究开发所需要的成本和资源是属于可行性研究中的(B)研究的一方面
A.技术可行性B.经济可行性C.社会可行性D.法律可行性
10、下列那个模型不是面向对象的分析中建立的模型(B)
A.对象模型B.瀑布模型C.动态模型D.功能模型
11、在详细设计阶段,经常采用的工具有(A)
A.PADB.SAC.SCD.DFD
12、确认软件的功能是否与需求规格说明书中所要求的功能相符的测试属于(C)
A.集成测试B.恢复测试C.验收测试D.单元测试
13、采用Gantt图表示软件项目进度安排,下列说法中正确的是____D____。
A.能够反映多个任务之间的复杂关系
B.能够直观表示任务之间相互依赖制约关系
C.能够表示哪些任务是关键任务
D.能够表示子任务之间的并行和串行关系
14、需求分析阶段的任务是确定(A)
A.软件开发方法B.项目开发计划C.概要设计说明书D.操作手册
15、程序的三种基本控制结构是(B)
A.过程、子过程和分过程B.顺序、选择和重复
C.递归、堆栈和队列D\调用、返回和转移
16、软件生存周期中时间最长的是(D)阶段
A.总体设计B.需求分析C.软件测试D.软件维护
17、为使得开发人员对软件产品的各个阶段工作都进行周密的思考,所以(C)的编制是很重要的。
A.需求说明B.概要设计C.软件文档D.测试计划
18、软件部件的内部实现和外部可访问性的分离,是指软件的(C)。
A.继承性B.共享性C.封装性D.抽象性
19、单元测试是发现编码错误,集成测试是发现模块的接口错误,确认测试是为了发现功能错误,那么系统测试是为了发现(C)错误。
A.接口错误B.编码错误C.性能、质量不合要求D.功能测试
20、软件工程管理是对软件项目的开发管理,即对整个软件()的一切活动的管理。
A.软件项目B.生存期C.软件开发计划D.软件开发
21、系统流程图是描绘(D)的传统工具
A.逻辑系统B.数据结构C.状态变迁D.物理系统
22、下列模块独立性最强的是(A)
A.非直接耦合B.数据耦合C.公共耦合D.内容耦合
23、下列关于模块的描述错误的是()
A.具有独立的模块软件比较容易开发出来
B.独立的模块的维护和测试比较容易
C.模块的独立程度可以通过内聚和耦合标定
D.独立的模块一般不能完成一个相对独立的特定子功能
24、进行需求分析可使用多种工具,但(C)是不适用的
A.数据流图B.E-R图C.PAD图D.数据字典
25、常见的软件概要设计方法分为3大类,其中以数据流图为基础构造模块结构的是(B)
A.Jackson方法和LCP(wanier)逻辑构造方法B.结构化设计方法
C.面向对象设计方法D.快速原型法
26、在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。
动态模型着重于系统的控制逻辑,它包括两个图:
一个是事件追踪图,一个是(A)
A、状态图B.数据流图C.系统结构图D.时序图
27、结构化分析方法就是面向(B)自顶向下逐步求精进行需求分析的方法
A.目标B.数据流C。
功能D.对象
28、在对数据流的分析中,主要是找到中心变换,这是从(C)导出结构图的关键。
A.数据结构B.实体关系C.数据流图D.E-R图
29、模块(B)定义为受该模块内一个判定影响的所有模块集合
A.控制域B.作用域C.宽度D.接口
30、以下不属于白盒测试技术的是(D)
A.逻辑覆盖B.基本路径测试C.循环覆盖D.等价类划分
31、.软件复杂性度量的参数包括(B)。
A.效率B.规模C.完整性D.容错性
32、对象实现了数据和操作的结合,使数据和操作(C)于对象的统一体中。
A.结合B.隐藏C.封装D.抽象
33、瀑布模型的存在问题是(B)。
A.用户容易参与开发B.缺乏灵活性
C.用户与开发者易沟通D.适用可变需求
34、面向对象的主要特征除唯一性、继承性、多态性外,还具有 A 。
A.封装性B.移植性C.完整性D.兼容性
35、制定进度计划的两个重要工具和方法是(A)和(C)。
A.Gantt图B、CoCoMoC、工程网络图D、HIPO图
36、软件测试的目的是(B)。
A.评价软件的质量B.发现软件的错误
C.找出软件的所有错误D.证明软件是正确的
37、复杂的数据流图(D)。
A.只有变换型B.只有事务型
C.无规律D.既有变换型又有事务型
38、在面向对象的分析中,需要建立对象模型、(D)、功能模型。
A、逻辑模型B、生命周期模型C、子功能模型D、动态模型
39、在面向对象设计中,设计实现服务的方法有:
()、选择适当的数据结构、定义内部类和内部操作。
A、设计实现服务的算法B、设计算法之间的关系
C、设计类的层次结构D、设计对象
40、面向对象实现的工作包括:
(B)。
A、编码与调试
B、把面向对象设计结果翻译成面向对象程序以及测试并调试面向对象程序
C、编制源代码的全过程;
D、编码及维护的过程
41、面向对象语言有下述几个重要特点:
(C)、可重用性、可维护性。
A、具有设计类和对象的功能B、一致的表示方法
C、具有封装性、继承性和多态性D、支持面向对象概念的实现
42、结构化程序设计的一种基本方法是 D 。
A.筛选法B.递归法C.迭代法D.逐步求精法
43、应用执行对象的操作可以改变该对象的 A 。
A.属性B.功能C.行为D.数据
44、常用动词或动词词组来表示 C 。
A.对象B.类C.关联D.属性
45、以下说法正确的是 D 。
A.功能模型不包括对象模型中值的约束条件
B.功能模型说明对象模型中操作的含义
C.功能模型说明对象模型中约束的含义
D.功能模型说明对象模型中动作的含义
46、面向对象的开发方法中。
____C____将是面向对象技术领域内占主导
地位的标准建模语言。
A.Booch方法B.Coad方法C.UML语言D.OMT方法
47.数据字典是对数据定义信息的集合,它所定义的对象都包含于(A)
A.数据流图B.程序框图C.软件结构D.方框图
48、结构化设计是一种面向( A )的设计方法。
A.数据流 B.数据库 C.数据结构D.程序
49、下列哪个组件不是用例图的基本组件(D)
A.参与者 B.用例 C.系统 D.文档
50、用例图中用例之间存在各种关系,但不包括(B)
A.包含 B.关联 C.泛化 D.扩展
51、逆向工程是什么过程(C)
A.模型到代码 B.设计到实现
C.代码到模型 D.类图到包图
二、填空题:
1、软件生存周期一般定义为问题定义、_可行性研究、需求分析、总体设计、详细设计、编码和单元测试、综合测试、运行与维护阶段。
2、HIPO图是由一组 ___IPO图_和一张_H层次图_图组成。
3、UML的定义包括_UML语义__UML和___表示法__两个部分.
4、软件测试的方法有_结构测试__和_功能测试____(又称黑盒法)
5、成本估算方法主要有__专家_、_类推和__算式估算法__三种类型.
6、详细设计的工具有_图形工具____、表格工具和_语言工具____
7、为了使用流程图描述结构化程序,限制流程图有五种基本的控制结构,即___顺序____、____选择_____、_____while___、until循环、多情况选择。
8、详细设计的工具有三种类型分别为__图形_、_表格_和语言工具。
9、软件工程是从_管理_和_技术_两个方面研究如何运用工程学的基本原理和方法来更好地开发和维护计算机软件的一门学科。
10、把程序从一个硬件或软件环境转移到另一种配置环境称为软件的____可移植性____.
11、Jackson图除了可以表达程序结构外,还可以表达__数据结构___,它首先要分析_数据结构_,并用适当的工具来描述。
12、在软件开发过程中要产生大量的信息,要进行大量的修改,软件配置管理能协调软件开发,并使混乱减到最低程度。
13、通常,联合使用___gantt图__和__工程网络______来制定进度计划并监督项目进展状况。
14、软件概要设计的主要任务就是设计____软件系统结构___。
15、为了便于对照检查,测试用例应由输入数据和对应的预期输出两部分组成。
16、软件开发是一个自顶向下逐步细化和求精过程,而软件测试是一个__自顶向下,逐步集成的过程。
17、软件结构是以模块为基础而组成的一种控制层次结构。
18、在结构化分析中,用于描述加工逻辑的主要工具有三种,即结构化语言、判定表、判定树。
19、结构化语言是介于自然语言和形式语言之间的一种半形式语言。
20、若年利率为i,不计复利,n年后可得钱数为F,则现在的价值P=F/(1+n*i)。
21、__软件______是计算机程序及其说明程序的各种文档。
____文档是有关计算机程序功能、设计、编制、使用的文字或图形资料。
23、____可行性研究______的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。
24、模块的耦合性分为四种类型:
_数据耦合_、_控制耦合_、_公共环境耦合_、_内容耦合_。
25、内聚性有七种类型,最强的是_____功能内聚_____,最弱的是___偶然内聚________。
26、结构图的深度指结构图____控制的层数__________,结构图宽度指___同一层个数_________。
27、对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的_交换中心__、逻辑输入、逻辑输出。
28、假设使用代码行技术进行费用估计,某软件中共6000行程序,每行平均成本20元,则该软件的成本为___120000_____。
29、在Jackson系统开发方法中,使用__顺序____、____选择__和___循环___三种结构就可以组合出各种复杂的结构体系。
30、在面向对象方法中,事物的静态特征用____对象的属性__表示,动态特征用___对象的服务___表示。
31、软件总体设计时应该遵循模块化、抽象、逐步求精、 信息隐藏 、局部化和模块独立等6条基本原理。
32、复杂问题的对象模型通常由主题层、类与对象层、结构层、属性层和服务层5个层次组成。
33、软件工程方法学包含3个要素:
方法、工具和过程。
其中,__方法____是完成软件开发的各项任务的技术方法,回答“怎样做”的问题;__工具____是为运用方法而提供的自动或半自动的软件工程支撑环境;_过程_____是为了获得高质量的软件所需要完成的一系列任务的框架,它规定了完成各项任务的工作步骤。
34、面向对象方法用 对象 分解取代了传统方法的功能分解
35、UML中的 泛化 关系就是通常所说的继承关系。
36、复杂问题的对象模型通常由主题层、类与对象层、 结构层 、属性层和服务层5个层次组成。
37、度量软件规模的常用技术主要有代码行技术和功能 。
38、检查软件产品是否符合需求定义的过程称为 确认测认。
39、UML中的泛化关系就是通常所说的___继承__关系。
三、判断题:
1、测试是为了验证该软件已正确地实现了用户的要求F
2、为了符合程序设计风格指导原则,应尽可能把程序编得短些。
F
3、模块化程序设计时,只要模块之间的接口关系不变,各模块内部实现细节的修改不会影响别的模块。
T
4、在主存储器能够容纳得下的前提下,应使模块尽可能大,以减少模块个数。
F
5、当验收测试通过,软件开发就完成了F
6、操作手册的编写工作应该在软件测试阶段之前完成T
7、软件的开发与运行经常受到硬件的限制和制约。
T
8、模块内的高内聚往往意味着模块间的松耦合。
T
9、软件的质量好坏主要由验收人员负责,其他开发人不必关心。
F
10、判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。
T
11、应该尽量使用机器语言编写代码,提高程序运行效率,而减少高级语言的使用。
F
12、UML只能应用于软件系统模型的建立。
(F)
13、软件测试的目的是为了无一遗漏的找出所有的错误。
F
14、确认也称为验收测试,它的目标就是验证软件的有效性F
15、确认也称为验收测试,它的目标就是验证软件没有错误T
16、发现错误多的程序模块,残留在模块中的错误也多。
T
17、在可行性研究中最难决断和最关键的问题是经济可行性。
T
18、完成测试后,为缩短源程序长度而删去程序中的注解。
F
19、模块化程序设计中,模块越小,模块化的优点越明显。
一般来说,模块的大小都在10行以下。
F
20、质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动.T
21、GOTO语句概念简单,使用方便,在某些情况下,保留GOTO语句反能使写出的程序更加简洁。
T
22、在做程序的单元测试时,桩(存根)模块比驱动模块容易编写。
F
23、Jackson方法是面向数据结构的设计方法T
24、编码时尽可能使用全局变量。
F
25、面向对象方法只支持过程抽象,不支持数据抽象F
26、面向对象分析(OOA)的关键是识别出问题域内的类与对象,并分析它们相互间的关系,最终建立起问题域的简洁、精确、可理解的正确模型。
T
27、聚集关系是关联的一种形式,表示两个类之间的一般与特殊关系F
28、基本路径测试是黑盒技术设计测试用例的方法之一。
F
29、耦合是指一个模块内各个元素彼此结合的紧密程度。
F
30、一笔交易、一个动作、甚至操作人员按一个按钮都可以看做是一次事物。
T
31、随着软件技术的发展,人们逐渐认识到阅读程序的重要性,编码不仅要强调效率还要强调清晰。
T
32、白盒法是一种静态测试方法,主要用于模块测试。
F
33、软件工程过程应该以软件设计为中心,关键是编写程序。
F
34、类是对具有共同特征的对象的进一步抽象。
T
35、基于情景的测试是面向对象系统确认测试的主要方法。
T
36、重用是提高软件生产率和目标系统质量的重要途径,它基本上始于设计。
T
37、类图用来表示系统中类和类与类之间的关系,它是对系统动态结构的描述。
F
38、软件项目管理始于项目计划,而第一项计划活动就是估算。
T
39、总体设计阶段要设计软件体系结构。
T
40、软件即程序。
F
41、采用对象设计系统时,首先建立系统的物理模型。
F
42、状态图是对多个对象建模。
F
43、软件开发的主要任务是写程序。
F
44、测试只能证明程序有错误,不能证明程序没有错误。
T
45、在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要像写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排,等等。
F
46、程序设计风格指导原则提出,尽量多使用临时变量。
F
47、进行概要设计时尽量加强模块之间的联系。
F
48、为了加快软件维护作业的进度,应尽可能增加维护人员的数目F
49、软件维护就是改正软件中的错误。
F
四、简答题:
1、简述结构化范型和面向对象范型的要点,并分析它们的优缺点。
2、简述软件工程的定义
3、软件工程的基本原理
4、面向对象方法学的要点
5、面向对象方法学的出发点和基本原则
6、为什么说喷泉模型较好地体现了面向对象软件开发过程无缝和迭代的特性?
7、可行性研究的目的和任务?
8、数据流图的作用?
数据字典的用途?
9、软件开发成本的三种估算技术
10、假设只有SEQUENCE和IF-THEN-ELSE两种控制结构,怎样利用它们完成DO-WHILE操作?
11、假设只有SEQUENCE和DO-WHILE两种控制结构,怎样利用它们完成IF-THEN-ELSE操作?
12、什么是数据流图?
其中的基本符号各表示什么含义?
13、非渐增式测试与渐增式测试有什么区别?
14、分别解释对象模型、动态模型及功能模型的概念.
15、面向对象的集成测试主要有哪几种不同的测试策略?
16、简述面向对象的集成测试的主要测试策略?
17、在面向对象的系统开发过程中,每个阶段需要建造的模型各有什么作用?
18、什么是模型?
19、面向对象设计应遵循那些准则?
五、应用题
1、银行计算机储蓄系统的工作过程大致如下:
储户填写存款单和取款单由柜员键入系统,如果整存整取存款则系统记录存款人的姓名、住址、身份证号、存款类型、存款日期、到期日期、利率及密码等信息,并印出存款存单给储户;如果是取款,则系统先核对储户密码,若正确,则系统计算利息并印出利息清单给储户。
用数据流图描绘系统的功能,用实体E-R图描绘系统中的数据对象。
1.
(1)数据流图
基本模型:
2、某医院拟开发一个患者监护系统。
要求随时接受病人的生理信号 (脉搏、体温、血压、心电图等),定时记录病人情况形成患者日志,当某个病人的生理信号超出医生规定的安全范围时向值班护士发出警告,此外,护士在需要时还可以要求系统输出某个指定病人的病情报告。
画出系统的顶层和0层数据流图。
3、有一商店,在销售的黄金季节:
1、12月,如果购买的商品总额超过10000元,则优惠15%,否则优惠10%;在其他的月份,如果购买的商品总额超过10000元,则优惠20%,否则优惠12%。
请用判定表和判定树来表示优惠率。
4、某旅馆的电话服务如下:
可以拨分机号和外线号码。
分机号是从7201至7299。
外线号码先拨9,然后是市话号码或长话号码。
长话号码是以区号和市话号码组成。
区号是从100到300中任意的数字串。
市话号码是以局号和分局号组成。
局号可以是455,466,888,552中任意一个号码。
分局号是任意长度为4的数字串。
要求:
写出在数据字典中,电话号码的数据条目的定义(即组成)。
名称简称类型长度取值范围
分机号Extension_Number字符47201…7299
市外电话Addition_Internumber字符99+[455|466|888|552]+4{数字4}号
外线长话号Addition_Internumber字符129+[100|101|102|…|289|299|300]+[455|466|888|552]+4{数字4}号
5、对以下程序进行测试:
PROCEDUREEX(A,B:
REAL;VARX:
REAL);
BEGIN
IF(A=3)OR(B>1)THENX:
=A×B
IF(A>2)AND(B=0)THENX:
=A-3
END
先画出程序流程图。
再按不同逻辑覆盖法设计一种(写出名称)测试数据。
6、已知有如下的伪代码程序:
START
IFCl
THEN
LOOPWHlLEC2
f
ENDLOOP
ELSE
BLOCK
g
p
ENDBLOCK
ENDlF
LOOPUNTILC3
q
r
ENDLOOP
STOP
(1)请改用.N-S图描述
(2)请改用PAD图描述
(3)请改用程序流程图描述
7、将上题,用基本路径测试法分析有几条独立的测试路径。
必须写清楚每个步骤)
8、一家图书馆藏有书籍、杂志、小册子、电影录像带、音乐CD、录音图书磁带和报纸等出版物,供读者借阅。
这些出版物具有出版物名、出版者、获得日期、目录编号、书架位置、借出状态和借出限制等公共属性,以及借出、收回等公共服务。
此外这些出版物还存在特有属性,如:
书籍有作者属性、杂志有日期属性、小册子有作者属性、电影录像带有电影名属性、音乐CD有演员名属性、录音图书磁带有作者属性,报纸有日期属性。
请为图书馆馆藏出版物建立对象模型。
9、假设一个包中的对象分为简单对象和复合对象。
简单对象分别是弧、椭圆、折线、多边线。
简单对象可以被移动、旋转、复制、擦除。
复合对象由简单对象组成,复合对象可以移动、旋转、复制、擦除。
组成复合对象的简单对象不能个别地被修改。
请画出类图。
10、设计题
基本路径覆盖法是白盒测试用例的重要设计方法,请针对下面的语句段
if(A&&(B||C))x=1;
else x=0;
完成如下任务
(1)画流程图
(2)设计测试用例语句段:
11、复印机的工作过程大致如下:
未接到复印命令时处于闲置状态,一旦接到复印命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现没纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接收复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。
请用状态转换图描绘复印机的行为。
12、假如要建立一个网站,用于发布家教消息,同时建立家教及学生的沟通桥梁。
基本需求如下:
(1)家教求职者希望能注册本人信息、修改本人资料、浏览家教信息、搜索家教信息。
(2)学生希望能够注册本人信息、修改本人资料、浏览家教信息、搜索家教信息。
(3)管理员希望能够发布网站公告、处理家教信息。
根据上面提出的基本需求,加以设计,建立家教网上发布系统的用例图。
13、某酒店的电话服务如下:
可以拨分机号和外线号码。
分机号是从6201至6299。
外线号码先拨8,然后是市话号码或长话号码。
长话号码是以区号和市话号码组成。
区号是从100到300中任意的数字串。
市话号码是以局号和分局号组成。
局号可以是455,466,888,552中任意一个号码。
分局号是任意长度为4的数字串。
请写出在数据字典中,电话号码的数据条目的定义(即组成)。
名称简称类型长度取值范围
分机号Extension_
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 工专 软件工程 习题
![提示](https://static.bdocx.com/images/bang_tan.gif)