一、选择题
1.瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和_。 ( C ),
A .详细计划 测试与排错
2.在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试年勺系统测试阶段的目标( A )
A .需求分析阶段 行性研究阶段,
3.软件工程的出现主要是由于(C ) , A.程序设计方法学的影响 C.软件危机的出现
B.其它工程科学的影响 D.计算机的发展,
B .详细设计阶段
C.概要设计阶段
D .可
B .可行性分析
C .运行阶段
D.
4.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实旅的主要保证是(C)
A.硬件环境
B.软件开发的环境 D.开发人员的素质
C.软件开发工具和软件开发的环境 它们之间的关系表现为(B)
A.相互排斥
B相互补充
C独立使用
D.交替使用
6.UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C) A.基于瀑布模型的结构化方法 C.基于对象的面向对象的方法 (B)
A.结构化方法 析对象的(B)
A.控制流
B.数据流
C.程序流
D.指令流
9.软件开发的结构化生命周期方法将软件生命周期划分成(A) A.计划阶段.开发阶段.运行阶段
B.计划阶段.编程阶段.测试阶段 D.需求分析.功能定义.系统设计
C.总体设计.详细设计.编程调试
B原型化方法 C面向对象的方法
D.控制流方法
8.结构化分析方法是一个预先严格定义需求的方法,它在实施时强调的是分
B.基于需求动态定义的原型化方法 D.基于数据的数据流开发方法
5.软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,
7.在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高
10.软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(C)
A.分析阶段 A.瀑布模型
B.设计阶段 B.喷泉模型
C.编码阶段 C.螺旋模型
D.测试阶段 D.增量模型
11.适合于面向对象方法学的软件生存周期模型是(B)
12.从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大的是(C)
A.详细设计阶段 B.概要设计阶段 C.需求分析阶段 D.测试和运行阶段 13.从实用角度看,数据规范化在大多数场合选用第____范式。(C) A.1
B.2
C.3
D.5
D.功能内聚
14.可行性分析研究的目的是(A) A.项目值得开发否 A.逻辑内聚 (B)
A.软件工程
B.软件危机
C.软件周期
D.软件产生
17.需求分析阶段的任务是确定(D) A.软件开发方法 A.IPO图 A.语句
B.软件开发工具 B.HIPO图 B.路径
C.软件开发费 D.软件系统的功能 C.PAD图
D.DFD图 D.判定 D.层次模型
18.完整的软件结构通常用____图来表示。(B)
19.在白盒法技术测试用例的设计中___是最弱的覆盖标准。(A)
C.条件组合 C.螺旋模型
20.软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为(A) A.瀑布模型
二、填空题
1.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的__信息流动__情况。
2.成本效益分析的目的是从__经济___角度评价开发一个项目是否可行。 3.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略;深度优先策略和_宽度优先策略____.
4.独立路径是指包括一组以前没有处理的语句或条件的一条路径。从程序图来看,一条独立路径是至少包含有一条___其他独立路径中从未有过的____的边的路径。
5.汇编语言是面向__机器___的,可以完成高级语言无法完成的特殊功能。
B.对象模型
B.争取项目
C.开发项目
15.模块的内聚性最高的是(D)
B.时间内聚
C.偶然内聚
D.功能内聚
16.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称
如与外部设备之间的一些接口工作。
6.单元测试一般以白盒测试为主,_黑盒___测试为辅。
7.详细设计的任务是确定每个模块的内部特性,即模块的算法、_使用的数据___。
8.所有软件维护申请报告要按规定方式提出,该报告也称_软件问题____报告。
9.有两类维护技术:在开发阶段使用来减少错误、提高软件可维护性的面 向维护的技术;在维护阶段用来提高维护的效率和质量的__维护支援__技术。 10.科学工程计算需要大量的标准库函数,以便处理复杂的数值计算,可供 选择的语言有:FORTRAN语言、__PASCAL语言___、C语言和PL/1语言。 1L目前使用最广泛的软件工程学方法分别是传统方法学和_面向对象方法学____。
12.可行性研究主要集中在以下四个方面__经济____可行性、__技术____可行
性、法律可行性和抉择。
13.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的 __结构化设计方法___,以数据结构为基础构造模块的__Jackson方法____,以对象、类、继承和通信
为基础的___面向对象的设计方法__。
14.___数据流图___和__数据字典___共同构成系统的逻辑模型。 15.单元测试一般以___白盒___测试为主,___黑盒___测试为辅。
三、判断题
1.软件的开发与运行经常受到硬件的限制和制约。(T) 2.模块内的髙内聚往往意味着模块间的松耦合。(T) 3.Jackson图只能表达程序结构,不能表达数据结构。(F) 4.软件生命周期中需我进行需求分析,再进行可行性研究。(F) 5.软件的质量好坏主要由验收人员负责,其他开发人员不必关心。(F) 6.判定覆盖不一定包含条件覆盖,条件覆盖也不一定包含判定覆盖。(T) 7.应该尽量使用机器语言编写代码,提髙程序运行效率,而减少高级语言的 使用。(F)
8.UML只能应用于软件系统模型的建立。(F) 9.容错就是每个程序采用两种不同的算法编写。(F)
10.软件测试的目的是为了无一遗漏的找出所有的错误。(F) 11.在进行总体设计时应加强模块间的联系。(F)
12.系统结构图是精确表达程序结构的图形表示法。因此,有时也可以将系统结构图当作系统流程图使用。(F)
13.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。(F)
14.在程序调试时,找出错误的位置和性质比改正该错误更难。(T) 15.以对象、类、继承和通信为基础的面向对象设计方法(00D)也是常 见的软件概要设计方法之一。(T)
16.如果通过软件测试没有发现错误,则说明软件是正确的。(F) 17.快速原型模型可以有效地适应用户需求的动态变化。(T)
18.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到髙 内聚,低耦合度的软件产品(T) 19.集成测试主要由用户来完成。(F) 20.软件危机完全是由硬件问题引起的。(F)
四、名词解释 1.软件开发环境
在基本硬件和宿主软件的基础上,为支持系统软件和应用软件工程化开发和维护而使用的一组软件。
2.错误推测法(p176) 3.黑盒测试法(p171) 4.软件质量保证(p324) 5.瀑布模型(p15) 6.软件生命周期(p11) 7.单元测试(p153)
五、简答题
1.某一新闻管理系统主要用来发布新闻,管理员只需要一个,登录后可以 在后台发布新闻。任何人可以浏览新闻,浏览者可以注册成为系统会员,注册后 可对新闻进行评论。管理员在后台可以对新闻、评论、注册会员进行管理,如修
改、删除等。
要求:请画出该新闻管理系统的用例图
2.请根据银行ATM系统的正常情况脚本,画出事件跟踪图(即UML顺序 图)
银行ATM系统的正常情况脚本:
? ATM请储户插卡;储户插入一张现金兑换卡。 ? ATM接受该卡并读它上面的分行代码和卡号。
? ATM要求储户输入密码;储户输入自己的密码“1234”等数字。 ? ATM请求总行验证卡号和密码;总行要求“39”号分行核对储户密码,
然
? 后通知ATM说这张卡有效。
? ATM要求储户选择事务类型(取款、转账、查询等);储户选择“取款”。 ? ATM要求储户输入取款额;储户输入“880”。
? ATM确认取款额在预先规定的限额内,然后要求总行处理这个事务;总
行
? 把请求转给分行,该分行成功地处理完这项事务并返回该账户的新金额。 ? ATM吐出现金并请储户拿走这些现金;储户拿走现金。 ? ATM问储户是否继续这项事务;储户回答“不”。
软件工程 期末考试题(含答案)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)
![](/skin/haowen/images/icon_star.png)