文档库 最新最全的文档下载
当前位置:文档库 › 软件工程期末考试题(含答案)

软件工程期末考试题(含答案)

软件工程期末考试题(含答案)

一、选择题

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大类:以数据流图为基础构造模块

结构的__结构化设计方法___,以数据结构为基础构造模块的__Jackon方

法____,以对象、类、继承和通信

为基础的___面向对象的设计方法__。

14.___数据流图___和__数据字典___共同构成系统的逻辑模型。15.

单元测试一般以___白盒___测试为主,___黑盒___测试为辅。

三、判断题

1.软件的开发与运行经常受到硬件的限制和制约。(T)

2.模块内的

髙内聚往往意味着模块间的松耦合。(T)3.Jackon图只能表达程序结构,不能表达数据结构。(F)4.软件生命周期中需我进行需求分析,再进行

可行性研究。(F)5.软件的质量好坏主要由验收人员负责,其他开发人

员不必关心。(F)6.判定覆盖不一定包含条件覆盖,条件覆盖也不一定

包含判定覆盖。(T)7.应该尽量使用机器语言编写代码,提髙程序运行效率,而减少高级语言的使用。(F)

8.UML只能应用于软件系统模型的建立。(F)9.容错就是每个程序采用两种不同的算法编写。(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问储户是否继续这项事务;储户回答“不”。

软件工程期末考试参考题及答案

软件工程期末考试参考题及答案 1. 考试题目:软件需求工程 考试要求:根据给定的需求文档,完成以下题目。 题目一: 根据给定的需求文档,设计一个在线购物系统。请根据以下要求完成系统设计: (1)使用UML类图绘制系统的类结构; (2)使用UML时序图描述用户登录和浏览商品的流程; (3)使用UML活动图描述用户下订单的流程。 答案: (1)类图如下所示: [在这里插入UML类图图片] (2)时序图如下所示: [在这里插入UML时序图图片] (3)活动图如下所示: [在这里插入UML活动图图片] 题目二:

根据给定的需求文档,设计一个在线学习系统。请根据以下要求完成系统设计: (1)使用UML用例图描述系统的功能需求; (2)使用UML活动图描述学生完成在线学习的流程; (3)使用UML状态图描述学生的学习状态变化。 答案: (1)用例图如下所示: [在这里插入UML用例图图片] (2)活动图如下所示: [在这里插入UML活动图图片] (3)状态图如下所示: [在这里插入UML状态图图片] 2. 考试题目:软件设计模式 考试要求:根据给定的题目,选择并解答以下问题。 题目一: 分析以下代码,判断其使用了哪种设计模式,并阐述该设计模式的作用和优势。 ```java

public interface Car { void drive(); } public class Sedan implements Car { @Override public void drive() { System.out.println("Driving a sedan car."); } } public class SUV implements Car { @Override public void drive() { System.out.println("Driving an SUV car."); } } public class CarFactory { public Car createCar(String type) { if (type.equals("sedan")) { return new Sedan();

软件工程期末考试试卷(附答案)

软件工程期末考试试卷(附答案) 引导语:软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。以下是的软件工程期末试卷(附答案),欢送参考! ( C )1. 软件是( )。 A. 处理对象和处理规那么的描述 B. 程序 C. 程序及其文档 D. 计算机系统 ( B )2. 软件需求规格说明的内容不应包括( )。 A. 主要功能 B. 算法的详细描述 C. 用户界面及运行环境 D. 软件的性能 ( B )3. 程序的三种根本控制构造是( )。 A. 过程、子程序和分程序 B. 顺序、选择和重复 C. 递归、迭代和回溯 D. 调用、返回和转移 ( D ) 4. 面向对象的分析方法主要是建立三类模型,即( )。 A) 系统模型、ER模型、应用模型 B) 对象模型、动态模型、应用模型 C) E-R模型、对象模型、功能模型 D) 对象模型、动态模型、功能模型 ( C ) 5. 在E-R模型中,包含以下根本成分( )。 A) 数据、对象、实体 B) 控制、联系、对象 C) 实体、联系、属性 D) 实体、属性、操作 ( A ) 6. 各种软件维护的类型中最重要的是( )。 A) 完善性维护 B) 纠错性维护 C) 适应性维护 D) 预防性维护

( B ) 7.软件测试的目标是( )。 A. 证明软件是正确的 B. 发现错误、降低错误带来的风险 C. 排除软件中所有的错误 D. 与软件调试相同 ( D )8.软件生命周期中所花费用最多的阶段是( ) A.详细设计 B.软件编码 C.软件测试 D.软件维护 ( C )9.假设有一个计算类型的程序,它的输入量只有一个X, 其范围是[-1.0, 1.0],现从输入的角度考虑一组测试用例:-1.001, -1.0, 1.0, 1.001.设计这组测试用例的方法是( ) A.条件覆盖法 B.等价分类法 C.边界值分析法 D.错误推测法 ( D )10、详细设计的根本任务是确定每个模块的( )设计 A.功能 B.调用关系 C.输入输出数据 D.算法 ( A )11.设函数C(X)定义问题X的复杂程序,函数E(X)确定解 决问题X需要的工作量(时间)。对于两个问题P1和P2,如果 C(P1)>C(P2)显然E(P1)>E(P2),那么得出结论E(P1+P2)>E(P1)+E(P2)就是:( ) A.模块化的根据 B.逐步求精的根据 C.抽象的根据 D.信息隐藏 和部分化的根据 ( D )12.下面几种白箱测试技术,哪种是最强的覆盖准那么 ( ) A.语句覆盖 B.条件覆盖 C.判定覆盖 D.条件组合覆盖 ( A )13.面向数据流的设计方法把( )映射成软件构造。 A.数据流 B.系统构造 C.控制构造 D.信息流 ( A )14.内聚程度最低的是( )内聚 A.偶然 B.过程 C.顺序 D.时间 ( A )15.确定测试方案是在( )阶段制定的. A.总体设计 B.详细设计 C.编码 D.测试

软件工程期末试题(含答案)

一、填空题(每空1分,共25分) 1.软件生存周期一般可以划分为,问题定义、可行性研究、需求分析、设计、编码、测试和运行 和维护。 2.基于软件的功能划分,软件可以划分成___系统软件_、支撑软件、应用软件__三种。 3.可行性研究,应从经济可行性、技术可行性、运行可行性、法律可行性和开放方 案可行性等方面研究。 4.系统流程图是描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子 形式描绘系统里面的每个部件 5.数据流图的基本四种成分:数据输入的源点和数据输出汇点、加工、数据流和数据存储文 件。 6.结构化分析方法是面向_数据流_进行需求分析的方法。结构化分析方法使用_数据流图DFD_与_ 数据字典_来描述。 7.继承性是自动地共享类、子类和对象中的方法和数据的机制。 8.软件详细设计工具可分为3类,即_图示工具_、_设计语言_和_表格工具_。 9.为了在软件开发过程中保证软件的质量,主要采取下述措施:_审查__、复查和管理复审、___ 测试_。 10.大型软件测试包括单元测试、集成测试、确认测试和系统测试四个步骤。 二、单项选择题(每小题2分,共20分) 1.软件设计中划分模块的一个准则是(C )。 A、低内聚低耦合 B.低内聚高耦合C.高内聚低耦合 D.高内聚高耦合 2.Jackson设计方法是由英国的M. Jackson提出的,它是一种面向( C )的软件设计方法。 A、对象 B.数据流 C.数据结构 D.控制结构 3.试判断下列叙述中,哪个(些)是正确的( C )。 a、软件系统中所有的信息流都可以认为是事务流 b、软件系统中所有的信息流都可以认为是变换流 c、事务分析和变换分析的设计步骤是基本相似的 A、a B、b C、c D、b和c 4.( A )是用户和设计交换最频繁的方法。 A、原型化方法 B、瀑布模型方法 C. 螺旋模型方法D、构件组装模型 5.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证 是( C )。 A、硬件环境 B、软件开发的环境 C.软件开发工具和软件开发的环境 D、开发人员的素质 6.20世纪50年代以来,出现了许多不同的程序设计语言,下列语言中哪个语言是低级语言 ( D )。 A、PASCAL B、 VISUAL BASIC C. C++ D、汇编语言 7.软件测试的目的是?( D ) A、证明软件的正确性 B.找出软件系统中存在的所有错误 C.证明软件系统中存在错误 D.尽可能多的发现软件系统中的错误 8.使用白盒测试方法时,确定测试数据应根据( A )和指定的覆盖标准。 A、程序的内部逻辑 B、程序的复杂程度 C、该软件的编辑人员 D、程序的功能 9.软件维护工作的最主要部分是( C )。 A、校正性维护 B、适应性维护 C.完善性维护 D、预防性维护

软件工程期末试卷(十套含答案)

软件工程期末试卷(十 套含答案) -CAL-FENGHAI.-(YICAI)-Company One1

软件工程期末试题(一) 单项选择题 1.瀑布模型的存在问题是( B ) A.用户容易参与开发 B.缺乏灵活性 C.用户与开发者易沟通 D.适用可变需求 2.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( C ) A.软件工程 B.软件周期 C.软件危机 D.软件产生 3.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是( B ) A.数据、公共、标记、控制 B.数据、标记、控制、公共 C.控制、数据、标记、公共 D.控制、数据、公共、标记 4.在SD方法中全面指导模块划分的最重要的原则是( D ) A.程序模块化 B.模块高内聚 C.模块低耦合 D.模块独立性 5.软件测试的目的是( B )。 A.评价软件的质量 B. 发现软件的错误 C.找出软件的所有错误 D. 证明软件是正确的 6.在设计测试用例时,( A )是用得最多的一种黑盒测试方法。 A.等价类划分 B. 边界值分析 C. 因果图 D. 判定表 7. 需求分析最终结果是产生( B )。 A. 项目开发计划 B. 需求规格说明书 C. 设计说明书 D. 可行性分析报告 8. Jackson图中,模块框之间若有直线连接,表示它们之间存在(B )。 A. 调用关系 B. 组成关系 C. 链接关系 D. 顺序执行关系 9. 软件详细设计的主要任务是确定每个模块的( C )。 A. 功能 B. 外部接口 C. 算法和使用的数据结构 D. 编程 10.为了提高软件的可维护性,在编码阶段应注意( D ) A.保存测试用例和数据 B.提高模块的独立性 C.文档的副作用 D.养成好的程序设计风格 11.设年利率为i,现存入p元,若计复利,n年后可得钱数为(B) A.p﹡(1+i﹡n) B.p﹡(i+1)n C.p﹡(1+i)﹡n D.p﹡(i+n)

软件工程 期末试题及答案

软件工程期末试题及答案 第一节:选择题 1. 软件生命周期中,以下哪个阶段是在需求分析之后进行? A. 设计阶段 B. 验收阶段 C. 维护阶段 D. 实现阶段 答案:A. 设计阶段 2. 软件度量的主要目的是? A. 评估软件质量 B. 优化软件性能 C. 增强软件安全性 D. 加强软件可维护性 答案:A. 评估软件质量 3. 软件测试中,黑盒测试是基于什么样的原理进行的? A. 代码的内部结构 B. 软件的功能需求

C. 用户的使用场景 D. 基本的程序逻辑 答案:B. 软件的功能需求 4. 下面哪个是面向对象设计中的基本概念? A. 数据封装 B. 顺序结构 C. 命令式编程 D. 结构化分析 答案:A. 数据封装 5. 在软件项目管理中,以下哪个是最常用的项目管理工具? A. Gantt 图 B. 软件开发生命周期模型 C. WBS(工作分解结构) D. RUP(Rational Unified Process) 答案:A. Gantt 图 第二节:简答题 1. 什么是软件配置管理,它的主要作用是什么?

软件配置管理是管理和控制软件配置变更的过程,包括标识、控制、记录和审查软件配置项以及管理与配置项相关的文档、代码、配置项 版本、变更请求等。它的主要作用是确保软件开发过程中的变更被有 效地管理和控制,促进软件项目的稳定性和可管理性。 2. 请简要描述软件工程的五个主要过程。 - 需求工程:搜集和分析用户需求,明确软件系统的功能和非功能 特性。 - 设计:根据需求工程的结果,进行软件体系结构和模块设计,确 定软件的整体框架和组织结构。 - 编码:根据设计过程中得到的结果,实现软件系统的各个模块, 完成代码编写和单元测试。 - 测试:对编码过程中产生的软件进行全面、系统的测试,确保软 件的质量和稳定性。 - 维护:在软件生命周期的最后阶段,对软件进行修复 Bug 和功能 优化,确保软件的长期可用性和可维护性。 3. 请简述软件配置管理中的版本控制是指什么? 版本控制是指对软件项目中各个配置项版本的管理和控制。主要包 括版本的标识、记录、追踪和回溯。通过版本控制,可以有效地跟踪 软件的演化过程,管理和控制软件的变更,确保软件项目的稳定性和 可维护性。

软件工程-期末考试题(含答案)

软件工程-期末考试题(含答案)软件工程-期末考试题(含答案) 1. 题目一:软件需求工程 软件需求工程是软件开发的重要环节之一,主要包括需求获取、需 求分析、需求规格、需求验证等阶段。在软件开发的整个过程中,需 求工程的目标是确保开发出的软件能够满足用户的需求,同时保证软 件的质量和可靠性。 1.1 需求获取 需求获取是软件需求工程的第一步,它涉及到对用户的需求进行调 研和收集。需求获取的方法可以包括面谈、问卷调查、观察等。通过 与用户的沟通和了解,开发团队可以获取到用户对软件的期望和需求,为后面的分析和规格阶段提供依据。 1.2 需求分析 需求分析是对收集到的需求进行认真分析和理解的过程。在这个阶段,开发团队将准确定义软件所需具备的功能、性能和约束。通过对 需求的分析,可以帮助开发团队更好地理解用户的需求,并将其转化 为可执行的任务。 1.3 需求规格 需求规格是将需求分析的结果进行详细描述和规范化的过程。在这 个阶段,开发团队需要将需求规格书写成可读、可理解的形式,以便

于开发人员进行后续的开发工作。需求规格书通常包括用例图、类图、时序图等各种工具和技术。 1.4 需求验证 需求验证是对需求的正确性和完整性进行验证的过程。在这个阶段,开发团队需要与用户进行确认,确保所开发的软件能够满足用户的期 望和需求。需求验证也可通过模拟测试、原型验证等方式进行。 2. 题目二:软件设计原则 软件设计原则是开发人员编写高质量软件的指导原则,旨在提高软件的可维护性、可扩展性和可重用性。下面介绍几个常用的软件设计 原则。 2.1 单一职责原则 单一职责原则(SRP)要求每个类或模块只负责一种功能或职责。 这样可以保持代码的简洁性和可读性,并使得类或模块更加易于维护 和扩展。 2.2 开放封闭原则 开放封闭原则(OCP)要求软件实体(类、模块、函数等)应该对 扩展开放,对修改封闭。这样可以使得软件设计能够适应需求的变化,而不需要修改原有的代码。 2.3 里氏替换原则

软件工程期末试卷(十套含答案)

软件工程期末试题(一) 单项选择题 1.瀑布模型的存在问题是(B ) A.用户容易参与开发B.缺乏灵活性 C.用户与开发者易沟通D.适用可变需求 2.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( C ) A.软件工程 B.软件周期 C.软件危机 D.软件产生 3.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是( B ) A.数据、公共、标记、控制 B.数据、标记、控制、公共 C.控制、数据、标记、公共 D.控制、数据、公共、标记 4.在SD方法中全面指导模块划分的最重要的原则是( D ) A.程序模块化 B.模块高内聚 C.模块低耦合 D.模块独立性 5.软件测试的目的是( B )。 A.评价软件的质量 B. 发现软件的错误 C.找出软件的所有错误 D. 证明软件是正确的 6.在设计测试用例时,( A )是用得最多的一种黑盒测试方法。 A.等价类划分 B. 边界值分析 C. 因果图 D. 判定表 7. 需求分析最终结果是产生( B )。 A. 项目开发计划 B. 需求规格说明书 C. 设计说明书 D. 可行性分析报告 8. Jackson图中,模块框之间若有直线连接,表示它们之间存在(B )。 A. 调用关系 B. 组成关系 C. 链接关系 D. 顺序执行关系 9. 软件详细设计的主要任务是确定每个模块的( C )。 A. 功能 B. 外部接口 C. 算法和使用的数据结构 D. 编程 10.为了提高软件的可维护性,在编码阶段应注意( D ) A.保存测试用例和数据 B.提高模块的独立性 C.文档的副作用 D.养成好的程序设计风格 11.设年利率为i,现存入p元,若计复利,n年后可得钱数为(B) A.p﹡(1+i﹡n) B.p﹡(i+1)n C.p﹡(1+i)﹡n D.p﹡(i+n) 12.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是(A )。 A .状态图 B. 数据流图 C. 系统结构图 D. 时序图

软件工程 期末考试题(含答案)

一、选择题 1.瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和_。 ( C ), A .详细计划 B .可行性分析 C .运行阶段 D. 测试与排错 2.在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试年勺系统测试阶段的目标( A ) A .需求分析阶段 B .详细设计阶段 C.概要设计阶段 D .可行性研究阶段, 3.软件工程的出现主要是由于(C ) , A.程序设计方法学的影响 B.其它工程科学的影响 C.软件危机的出现 D.计算机的发展, 4.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实旅的主要保证是(C) A.硬件环境 B.软件开发的环境 C.软件开发工具和软件开发的环境 D.开发人员的素质 5.软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为(B) A.相互排斥B相互补充C独立使用 D.交替使用 6.UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法(C) A.基于瀑布模型的结构化方法 B.基于需求动态定义的原型化方法C.基于对象的面向对象的方法 D.基于数据的数据流开发方法 7.在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B) A.结构化方法B原型化方法C面向对象的方法 D.控制流方法 8.结构化分析方法是一个预先严格定义需求的方法,它在实施时强调的是分析对象的(B) A.控制流 B.数据流 C.程序流 D.指令流 9.软件开发的结构化生命周期方法将软件生命周期划分成(A) A.计划阶段.开发阶段.运行阶段 B.计划阶段.编程阶段.测试阶段 C.总体设计.详细设计.编程调试 D.需求分析.功能定义.系统设计 10.软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(

软件工程 期末考试题(含答案)

软件工程期末考试题(含答案)软件工程期末考试题(含答案) 一、选择题 1. 在软件项目管理中,以下哪个阶段不属于软件开发的基本阶段? A. 需求分析阶段 B. 设计阶段 C. 开发阶段 D. 测试阶段 答案:D 2. “面向对象”是一种软件系统开发的基本方法论,以下哪个不属于面向对象的特点? A. 封装性 B. 继承性 C. 多态性 D. 并发性 答案:D 3. 软件开发过程中,以下哪个模型不属于常见的软件开发模型? A. 瀑布模型

B. 敏捷模型 C. 增量模型 D. 螺旋模型 答案:D 4. 在软件测试中,以下哪个不属于黑箱测试方法? A. 等价类划分测试 B. 边界值测试 C. 功能性测试 D. 白盒测试 答案:D 二、简答题 1. 请简述软件工程的定义和目标。 软件工程是研究和应用工程原理、方法和工具,以开发、维护和管理软件系统的工程学科。其目标是提高软件开发效率、软件质量和软件项目管理能力,以满足用户的需求。 2. 什么是软件需求工程?请简要阐述软件需求工程的过程。

软件需求工程是指在软件开发过程中,通过系统化的方法和工具, 对用户需求进行获取、分析、定义和规格化的过程。软件需求工程的 过程包括以下几个步骤: 1) 需求获取:通过与用户沟通、分析用户需求文档等方式,获取用 户对软件系统的需求。 2) 需求分析:对获取的需求进行验证、整理和分类,识别出关键需 求和优先级,并进行需求的可行性评估。 3) 需求定义:将需求进行详细而准确的描述,包括功能需求、性能 需求、界面需求等。 4) 需求规格化:将需求转化为形式化的规格说明,包括用例图、状 态图、数据流图等工具。 5) 需求验证:通过与用户或相关人员的确认,验证需求规格是否准确、完整和一致。 三、综合题 某公司决定开发一个在线购物系统,你作为软件工程团队的负责人,请围绕该系统的需求分析、设计和测试等方面,给出相应的工作计划。 1. 需求分析阶段: (1) 与项目发起人进行需求讨论,明确系统的功能和性能需求,并 进行需求分析和整理,编写需求文档。

软件工程期末考试参考题及答案

一、填空题每空1分,共20分 1. 软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计 编码、__测试________、运行与维护阶段; 2. 按软件的功能进行划分,软件可以划分为 系统软件 、 支撑软件 和应用软件; 3. 可行性研究主要集中在以下四个方面 经济可行性 、 技术可行 性 、法律可行性 和抉择; 4. 用户界面的 可使用性 是用户界面设计最重要的也是最基本的目标; 5. 常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结 构化设计方法_________,以数据结构为基础构造模块的__jackson 方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________; 6. __数据流图________和__数据字典___共同构成系统的逻辑模型; 7. 软件测试的方法有__分析方法________和___非分析方法_______即黑盒法; 8. 单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅; 9. 成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算 法模型估计三种类型; 二、单项选择题每小题2分,共10分

1.下列哪个阶段不属于软件生存周期的三大阶段 C ; A、计划阶段 B、开发阶段 C、编码阶段 D、维护阶段 2.需求分析是 A ; 3. A、软件开发工作的基础 B、软件生存周期的开始 4. C、由系统分析员单独完成的 D、由用户自己单独完成的 5.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要 B ; 6. A、明确的需求定义 B、完整的生命周期 7. C、较长的开发时间 D、熟练的开发人员 8.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改 的回归测试过程称为 A ; 9. A、改正性维护 B、适应性维护 10. C、完善性维护 D、预防性维护 11.一般说来,投入运行的软件系统中有错误 A ; A、不是不可以理解的 B、是不能容忍的 C、是要求退货的理由 D、是必然的 三、多项选择题每小题2分,共10分

软件工程期末考试题[含答案解析]

软件工程期末考试题[含答案解析] 一、选择题 1.瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。八个阶段又可归纳为三个大的阶段:计划阶段、开发阶段和_。 ( C ), A .详细计划 B .可行性分析 C .运行阶段 D. 测试与排错 2.在结构化的瀑布模型中,哪一个阶段定义的标准将成为软件测试年勺系统测试阶段的目标( A ) A .需求分析阶段 B .详细设计阶段 C.概要设计阶段 D .可行性研究阶段, 3.软件工程的出现主要是由于(C ) , A.程序设计方法学的影响 B.其它工程科学的影响 C.软件危机的出现 D.计算机的发展, 4.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实旅的主要保证是(C) A.硬件环境 B.软件开发的环境 C.软件开发工具和软件开发的环境 D.开发人员的素质 5.软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为(B) A.相互排斥B相互补充C独立使用 D.交替使用 6.UML是软件开发中的一个重要工具,它主要应用于哪种软件开

发方法(C) A.基于瀑布模型的结构化方法B.基于需求动态定义的原型化方法C.基于对象的面向对象的方法 D.基于数据的数据流开发方法 7.在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高(B) A.结构化方法B原型化方法C面向对象的方法 D.控制流方法 8.结构化分析方法是一个预先严格定义需求的方法,它在实施时强调的是分析对象的(B) A.控制流 B.数据流 C.程序流 D.指令流 9.软件开发的结构化生命周期方法将软件生命周期划分成(A) A.计划阶段.开发阶段.运行阶段 B.计划阶段.编程阶段.测试阶段 C.总体设计.详细设计.编程调试 D.需求分析.功能定义.系统设计 10.软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是(C)A.分析阶段 B.设计阶段 C.编码阶段 D.测试阶段 11.适合于面向对象方法学的软件生存周期模型是(B) A.瀑布模型 B.喷泉模型 C.螺旋模型 D.增量模型 12.从结构化的瀑布模型看,在它的生命周期中的八个阶段中,下面的几个选项中哪个环节出错,对软件的影响最大的是(C) A.详细设计阶段 B.概要设计阶段 C.需求分析阶段 D.测试和运行阶段 13.从实用角度看,数据规范化在大多数场合选用第____范式。(C) A.1 B.2 C.3 D.5

《软件工程》期末考试参考题及答案

得分评卷人 一、填空题(每空1分,共20分) 1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运 行与维护阶段。 2.按软件的功能进行划分,软件可以划分为系统软件、支撑软件和应用软件。 3.可行性研究主要集中在以下四个方面经济可行性、技术可行性、法律可行性和抉择。 4.用户界面的可使用性是用户界面设计最重要的也是最基本的目标。 5.常见的软件概要设计方法有3大类:以数据流图为基础构造模块结构的___结构化设计方法_________,以 数据结构为基础构造模块的__jackson方法__________,以对象、类、继承和通信为基础的__面向对象设计方法__________。 6.__数据流图________和__数据字典___共同构成系统的逻辑模型。 7.软件测试的方法有__分析方法________和___非分析方法_______(即黑盒法)。 8.单元测试一般以___白盒_____________测试为主,___黑盒______测试为辅。 9.成本估计方法主要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。 得分评卷人 二、单项选择题(每小题2分,共10分) 1.下列哪个阶段不属于软件生存周期的三大阶段(C)。 A、计划阶段 B、开发阶段 C、编码阶段 D、维护阶段 2.需求分析是(A)。 3.?A、软件开发工作的基础?????????B、软件生存周期的开始 4.?C、由系统分析员单独完成的?????D、由用户自己单独完成的 5.原型化方法是软件开发中一类常用的方法,它与结构化方法相比较,更需要(B)。 6.?A、明确的需求定义???????????????B、完整的生命周期 7.?C、较长的开发时间???????????????D、熟练的开发人员 8.软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回归测试过程称为 (A)。 9.??A、改正性维护???????????B、适应性维护 10. C、完善性维护 D、预防性维护 11.一般说来,投入运行的软件系统中有错误(A)。

软件工程期末试题(含答案)

软件工程期末试题(含答案) 预览说明:预览图片所展示的格式为文档的源格式展示,下载源文件没有水印,内容可编辑和复制 一、填空题(每空1分,共25分) 1.软件生存周期一般可以划分为,问题定义、可行性研究、需求 分析、设计、编码、测试和运行和维护。 2.基于软件的功能划分,软件可以划分成___系统软件_、支撑软 件、应用软件__三种。 3.可行性研究,应从经济可行性、技术可行性、 运行可行性、法律可行性和开放方案可行性等方面研究。 4.系统流程图是描绘物理系统的传统工具。它的 基本思想是用图形符号以黑盒子形式描绘系统里面的每个 部件 5.数据流图的基本四种成分:数据输入的源点和数据输出汇点、 加工、数据流和数据存储文件。 6.结构化分析方法是面向_数据流_进行需求分析的方法。结构化 分析方法使用_数据流图DFD_与_数据字典_来描述。 7.继承性是自动地共享类、子类和对象中的方法和 数据的机制。 8.软件详细设计工具可分为3类,即_图示工具_、_设计语言_ 和_表格工具_。 9.为了在软件开发过程中保证软件的质量,主要采取下述措施: _审查__、复查和管理复审、___测试_。 10.大型软件测试包括单元测试、集成测试、确认测试和系 统测试四个步骤。 二、单项选择题(每小题2分,共20分) 1.软件设计中划分模块的一个准则是( C )。

A、低内聚低耦合 B.低内聚高耦合 C.高内聚低耦合 D.高 内聚高耦合 2.Jackson设计方法是由英国的M. Jackson提出的,它是一种面向( C )的软件设计方法。 A、对象 B.数据流 C.数据结构 D.控制结构 3.试判断下列叙述中,哪个(些)是正确的( C )。 a、软件系统中所有的信息流都可以认为是事务流 b、软件系统中所有的信息流都可以认为是变换流 c、事务分析和变换分析的设计步骤是基本相似的 A、a B、b C、c D、 b和c 4.( A )是用户和设计交换最频繁的方法。 A、原型化方法 B、瀑布模型方法 C. 螺旋模型方法 D、构件组装模型 5.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是( C )。 A、硬件环境 B、软件开发的环境 C.软件开发工具和软件开发的环境 D、开发人员的素质 6.20世纪50年代以来,出现了许多不同的程序设计语言,下列语言中哪个语言是低级语言( D )。 A、PASCAL B、 VISUAL BASIC C. C++ D、汇编语言 7.软件测试的目的是( D ) A、证明软件的正确性 B.找出软件系统中存在的所有错

相关文档
相关文档 最新文档