软件工程试题!帮忙啊!急急急急急!
一、单项选择题(本大题共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.某个学生成绩管理系统的部分功能如下:
(1)基本信息管理:教务管理人员输入或修改学期教学执行计划、学生名单和教师名单;
(2)学生选课:学生根据教学执行计划进行选课;
(3)分配任课教师:教务管理人员为符合开课条件的课程分配教师,并打印任课通知单给教师;
(4)成绩管理:每门课程的教师在考试评分结束后将考试成绩交给教务管理人员,教务管理人员输入、维护成绩,系统可生成成绩单(发给学生)、成绩统计分析表(发给教务管理人员)。
请根据要求画出该问题的分层数据流图(要求画出顶层和0层数据流图)。
一、单项选择题(在每小题的四个备选答案中选出一个正确答案,并将其号码填在题后的括号内。每小题1分,共20分)
1. “软件危机”是指( )
A. 计算机病毒的出现
B. 利用计算机进行经济犯罪活动
C. 软件开发和维护中出现的一系列问题
D. 人们过分迷恋计算机系统
2. DFD中的每个加工至少需要( )
A. 一个输入流 B. 一个输出流
C. 一个输入或输出流 D. 一个输入流和一个输出流
3. 为了提高模块的独立性,模块之间最好是( )
A. 控制耦合 B. 公共耦合 C. 内容耦合 D. 数据耦合
4. 下面关于PDL语言不正确的说法是( )
A. PDL是描述处理过程怎么做
B. PDL是只描述加工做什么
C. PDL也称为伪码
D. PDL的外层语法应符合一般程序设计语言常用的语法规则
5. 详细设计与概要设计衔接的图形工具是( )
A. DFD图 B. 程序图 C. PAD图 D. SC图
6. 不适合作为数据处理与数据库应用的语言是( )
A. SQL B. Cobol C. 4GL D. Lisp
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. 可理解性与可测试性 B. 效率与可修改性
C. 可修改性和可理解性 D. 可理解性与可读性
13. 快速原型是利用原型辅助软件开发的一种新思想,它是在研究( )的方法和技术中产生的。
A. 需求阶段 B. 设计阶段
C. 测试阶段 D. 软件开发的各个阶段
14. 从目前情况来看,增量模型存在的主要问题是( )
A. 用户很难适应这种系统开发方法
B. 该方法的成功率很低
C. 缺乏丰富而强有力的软件工具和开发环境
D. 缺乏对开发过程中的问题和错误具有应付变化的机制
15. 下列有关软件工程的标准,属于行业标准的是( )
A. GB B. DIN C. ISO D. IEEE
16. 下列文档与维护人员有关的有( )
A. 软件需求说明书 B. 项目开发计划
C. 概要设计说明书 D. 操作手册
17. 在屏蔽软件错误的冗错技术中,冗余附加件的构成包括( )
A. 关键程序和数据的冗余存储和调用
B. 为检测或纠正信息在运算或传输中的错误须外加的一部分信息
C. 检测、表决、切换、重构、纠错和复算的实现
D. 实现错误检测和错误恢复的程序
18. ( )是为了确保每个开发过程的质量,防止把软件差错传递到下一个过程而进行的工作。
A. 质量检测 B. 软件容错 C. 软件维护 D. 系统容错
19. 表示对象相互行为的模型是( )模型。
A. 动态模型 B. 功能模型 C. 对象模型 D. 静态模型
20. CASE工具的表示集成是指CASE工具提供相同的( )
A. 编程环境 B. 用户界面
C. 过程模型 D. 硬件/操作系统
二、填空题(每空2分,共20分)
1. 作为计算机科学技术领域中的一门新兴学科,软件工程主要是为了解决________问题。
2. 投资回收期就是使________等于最初的投资费用所需时间。
3. 在IDEF0方法的一个活动图形中控制活动是指________。
4. 划分模块时尽量做到________,保持模块的独立性。
5. PAD图是一种________展开的二维树形结构。
6. 对校正性维护应该从________的严重性开始。
7. 类的实例化是________。
8. 人们常用硬件可靠性的定量度量方法来度量软件的可靠性和可用性,常用的度量软件可靠性的两个指标是________和________。
9. 将待开发的软件细化,分别估算每一个子任务所需要的开发工作量,然后将它们加起来,将得到软件的总开发量。这种成本估算方法称为________。
三、名词解释(每小题3分,共15分)
1. 需求分析
2. 耦合性
3. 结构化程序设计
4. 状态图
5. 软件配置管理
四、简答题(每小题5分,共20分)
1. 简述演绎法调试的具体步骤。
2. 简述增量模型和瀑布模型的本质区别。
3. 简述设计一个容错系统的步骤。
4. 简述在项目开发时,选择程序设计语言应考虑因素。
五、应用题(第1题6分,第2小题8分,第3小题11分,共25分)
1. 某部门要处理大批单据所组成的事务文件,单据分为进货单和发货单两种,每种
单据由多行组成,每行包括零件号、零件名称、数量三个数据项。
要求:用Jackson方法表示事务文件的数据结构。(6分)
2. 根据以下被测试的流程图,选择相应的答案。(8分)
(1) A=2, B=0, X=4 (2)A=2, B=1, X=1 (3)A=2, B=0, X=1
A=1, B=1, X=1 A=3, B=0, X=3 A=1, B=1, X=2
①在1-3的答案中满足判定覆盖的测试用例是________ (2分)
②在1-3的答案中满足条件覆盖的测试用例是________ (2分)
③在1-3的答案中满足判定/条件覆盖的测试用例是________ (2分)
(4)A=2, B=0, X=4 (5)A=2, B=0, X=4 (6)A=2, B=0, X=4
A=2, B=1,X=1 A=2, B=2, X=1 A=1, B=1, X=1
A=1, B=0,X A=1, B=0, X=3 A=1, B=1, X=4
A=1, B=1,X=1 A=1, B=2, X=2 A=3, B=0, X=3
④在4-6的答案中满足条件组合覆盖的测试用例是________(1分)
⑤在4-6的答案中满足路径覆盖的测试用例是________(1分)
3. 某电视购物公司采用面向对象技术实现商品销售计算机系统,基本需求如下:
(1)公司提供多种类商品,每种商品通过委托订单来进行征订。
(2)公司下属多个分公司,每个分公司负责本地区委托订单的收录,打印收款凭证单。
(3)公司负责分类、统计各分公司送来的委托单,进行分类统计。
要求:按照上述模型建立对象模型。(11分)
一、
1.C 2.D 3.D 4.B 5.D 6.D 7.B 8.D 9.D 10.D 11.C 12.B 13.A 14.C 15.D 16.C 17.D 18.A 19.A 20.B
二、
1.如何建立一个软件系统
2.积累的经济效益
3.所受到的约束条件
4.高内聚低耦合
5.有左往右
6.评价错误
7.对象
8.MTTF MTBF
9.自底向上估算方法
三、
1. 需求分析是指,开发人员要准确理解用户的要求,进行细致的调查分析,将用户非形式的需求陈
述转化为完整的需求定义,再由需求定义转换到相应的形式功能规约(需求规格说明)的过程。
2. 耦合性也称块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。
3. 结构化程序设计是实现该目标的关键技术之一,它指导人们用良好的思想方法开发易于理解、易于验证的程序。 结构化程序设计方法的基本要点是: 1)采用自顶向下、逐步求精的程序设计方法
2)使用三种基本控制结构构造程序 3)主程序员组的组织形式。
4. 状态图是一个标准的计算机概念,它是有限自动机的图形表示,它反映了状态与事件的关系,状态图确定了由事件序列引起的状态序列。
5. 软件配置管理,简称SCM,它用于整个软件工程过程。其主要目标是:标识变更;控制变更;确保变更正确地实现;报告有关变更。SCM是一组管理整个软件生存期各阶段中变更的活动。
四、
1.演绎法调试步骤:列出所有可能的错误原因的假设;排除不适当的假设;精化余于的假设;证明余于的假设。
2.瀑布模型属于整体开发模型,它规定在开始下一个阶段的工作之前,必须完成前一阶段的所有细节。而增量模型属于非整体开发模型,它推迟某些阶段或所有阶段中的细节,从而较早的产生工作软件。
3.(1)按设计任务要求进行常会设计,尽量保证设计的正确
(2)对可能出现的错误分类,确定实现容错的范围
(3)按照“成本—效率”最优原则,选用某种冗余手段(结构,信息,时间)来实现对各类错误的屏蔽
(4)分析或验证上述冗余结构的容错效果
4.(1)项目的应用领域;(2)软件开发的方法 (3)软件执行的环境(4)算法和数据结构的复杂性(5)软件开发人员的知识
(选自不倒翁的博客)