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

合集下载

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

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

软件工程期末考试参考题及答案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. 考试题目:软件设计模式考试要求:根据给定的题目,选择并解答以下问题。

题目一:分析以下代码,判断其使用了哪种设计模式,并阐述该设计模式的作用和优势。

```javapublic interface Car {void drive();}public class Sedan implements Car {@Overridepublic void drive() {System.out.println("Driving a sedan car."); }}public class SUV implements Car {@Overridepublic void drive() {System.out.println("Driving an SUV car."); }}public class CarFactory {public Car createCar(String type) {if (type.equals("sedan")) {return new Sedan();} else if (type.equals("suv")) {return new SUV();} else {throw new IllegalArgumentException("Invalid car type: " + type);}}}```答案:该代码使用了工厂模式。

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

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

一、选择题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.从实用角度看,数据规范化在大多数场合选用第____范式。

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

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

《软件工程》期末考试题及答案一、选择题(每题2分,共20分)1. 以下哪个不属于软件工程的三个基本活动?A. 软件规格B. 软件设计C. 软件编码D. 软件测试答案:D2. 以下哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:A3. 以下哪个不属于软件工程的基本原则?A. 分而治之B. 信息隐藏C. 模块化D. 编码规范答案:D4. 以下哪个不是软件工程的四大支柱?A. 软件需求B. 软件设计C. 软件验证D. 软件项目管理答案:C5. 以下哪种软件过程模型是迭代和增量的?A. 瀑布模型B. 快速应用开发C. 敏捷开发D. 原型模型答案:C6. 以下哪个不是软件测试的级别?A. 单元测试B. 集成测试C. 系统测试D. 需求测试答案:D7. 以下哪种软件维护类型是最常见的?A. 更正性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:A8. 以下哪个不属于软件项目的风险管理策略?A. 风险避免B. 风险转移C. 风险减轻D. 风险接受答案:B9. 以下哪个不属于软件需求分类?A. 功能需求B. 性能需求C. 可用性需求D. 测试需求答案:D10. 以下哪个不属于软件设计的准则?A. 模块化B. 信息隐藏C. 功能耦合D. 数据抽象答案:C二、填空题(每题2分,共20分)11. 软件工程的主要目标是提高软件的__________和降低软件的__________。

答案:可维护性、成本12. 软件开发的三个基本阶段是:__________、__________、__________。

答案:需求分析、设计、实现13. 软件过程模型分为__________模型和__________模型。

答案:预测性、适应性14. 软件测试的四个基本级别是:__________、__________、__________、__________。

答案:单元测试、集成测试、系统测试、验收测试15. 软件维护的四种类型是:__________、__________、__________、__________。

2023软件工程导论期末考试题库及参考答案

2023软件工程导论期末考试题库及参考答案

2023软件工程导论期末考试题库及参考答案一、选择题(每题2分,共20分)1. 以下哪个不是软件工程的三个基本目标?A. 可维护性B. 可用性C. 可靠性D. 高效性参考答案:D2. 软件生命周期中,以下哪个阶段是软件开发过程的核心阶段?A. 需求分析B. 设计C. 编码D. 测试参考答案:C3. 以下哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程参考答案:A4. 在软件工程中,以下哪个方法用于估算软件项目的成本和进度?A. COCOMOB. WBSC. SDLCD. CASE参考答案:A5. 以下哪个是软件工程中的一个重要原则?A. 分而治之B. 一次性编写C. 重用D. 模块化参考答案:D6. 以下哪个不是软件工程的基本活动?A. 软件规格B. 软件开发C. 软件验证D. 软件测试参考答案:C7. 以下哪个是软件工程中用于提高软件质量的技术?A. 设计模式B. 重构C. 代码审查D. 单元测试参考答案:C8. 以下哪个不是软件工程的五大基本过程?A. 软件规格B. 软件开发C. 软件维护D. 软件项目管理参考答案:D9. 以下哪个是软件工程中的一个重要概念,用于描述软件系统中的各个组件之间的关系?A. 耦合B. 内聚C. 模块化D. 重用参考答案:A10. 以下哪个是软件工程中的一个重要原则,用于指导软件开发过程?A. 迭代B. 增量C.螺旋D. 模型驱动参考答案:A二、填空题(每题2分,共20分)11. 软件工程的三要素是:方法、工具和______。

参考答案:过程12. 软件生命周期包括:需求分析、设计、编码、______和软件维护。

参考答案:测试13. 软件工程中的面向对象方法包括:封装、继承和______。

参考答案:多态14. 软件工程中的 CASE 工具主要用于支持______。

参考答案:软件设计和开发15. 软件工程中的敏捷开发方法强调______、可维护性和可扩展性。

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

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

一、填空题(每空1分, 共20分)1.软件生存周期一般可分为__问题定义__、可行性研究、_需求分析_____、设计编码、__测试________、运行与维护阶段。

2.按软件旳功能进行划分, 软件可以划分为系统软件、支撑软件和应用软件。

3.可行性研究重要集中在如下四个方面经济可行性、技术可行性、法律可行性和抉择。

4.顾客界面旳可使用性是顾客界面设计最重要旳也是最基本旳目旳。

5.常见旳软件概要设计措施有3大类: 以数据流图为基础构造模块构造旳___构造化设计措施_________, 以数据构造为基础构造模块旳__jackson措施__________, 以对象、类、继承和通信为基础旳__面向对象设计措施__________。

6.__数据流图________和__数据字典___共同构成系统旳逻辑模型。

7.软件测试旳措施有__分析措施________和___非分析措施_______(即黑盒法)。

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

9.成本估计措施重要有__自底向上估计________、_自顶向下估计_________和算法模型估计三种类型。

二、单项选择题(每题2分, 共10分)1.下列哪个阶段不属于软件生存周期旳三大阶段( C )。

A.计划阶段B.开发阶段2. C.编码阶段 D.维护阶段3.需求分析是(A )。

A. 软件开发工作旳基础B. 软件生存周期旳开始C. 由系统分析员单独完毕旳D. 由顾客自己单独完毕旳原型化措施是软件开发中一类常用旳措施, 它与构造化措施相比较, 更需要( B )。

A. 明确旳需求定义B.完整旳生命周期C、较长旳开发时间D、纯熟旳开发人员软件维护时, 对测试阶段未发现旳错误进行测试、诊断、定位、纠错, 直至修改旳回归测试过程称为( A )。

A、改正性维护B、适应性维护C、完善性维护D、防止性维护一般说来, 投入运行旳软件系统中有错误(A )。

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

软件工程期末考试复习题及答案
(3分)
用户手册要使用专门术语,并充分地描述该软件系统的结构及使用方法。
.得分:
0知识点:
软件工程,软件工程作业题展开解析.答案错.解析..17.
(3分)
Alpha测试由用户在开发者的场所进行,并且在开发者对用户的“指导”下进行测试,开发者负责记录发现的错误和使用中遇到的问题。
.得分:
0知识点:
软件工程作业题,软件工程展开解析.答案对.解析..18.
.得分:
3知识点:
软件工程作业题,软件工程展开解析.答案对.解析..6.
(3分)
数据流图和数据字典共同构成系统的物理模型。
.得分:
0知识点:
软件工程,软件工程作业题展开解析.答案错.解析..7.
..8.
(3分)
需求分析是提取、建模、规格说明和复审的过程。
.得分:
3知识点:
软件工程,软件工程作业题展开解析.答案对.解析..9.
(4分)
CMU/SEI推出的()将软件组织的过程能力分为五个成熟度级别,每一个级别定义了一组过程能力目标,并描述了要达到这些目标应该具备的实践活动。
A. CMM
B. PSP
C. ISO-9000
D. RUP
得分:
0知识点:
软件工程,软件工程作业题展开解析.答案A .解析..9.
(4分)
若要保证开发出来的软件局部优化,而且能尽早发现设计上的错误,应采用()
.得分:
0知识点:
软件工程,软件工程作业题展开解析.答案错.解析..16.
(3分)
软件结构一般要求顶层扇出比较少,中层扇出较高,底层模块有高扇入。
.得分:
0知识点:
软件工程作业题,软件工程展开解析.答案错.解析..17.

软件工程期末试题及答案

软件工程期末试题及答案

软件工程期末试题及答案一、选择题(每题2分,共20分)1. 以下哪项不是软件工程的基本目标?A. 提高软件的生产效率B. 提高软件的质量C. 减少软件的开发成本D. 增加软件的复杂性答案:D2. 下面哪个不属于软件工程的三个主要过程?A. 软件规格B. 软件开发C. 软件测试D. 软件维护答案:A3. 下列哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:A4. 以下哪个不属于软件项目的管理活动?A. 项目计划B. 风险管理C. 质量保证D. 软件开发答案:D5. 以下哪个不是软件需求分析的工具?A. 数据流图(DFD)B. 实体关系图(ERD)C. 状态转换图(STD)D. 类图答案:B6. 以下哪个不属于软件设计的原则?A. 模块化B. 抽象C. 封装D. 继承7. 以下哪种测试方法主要用于检测软件的功能是否满足需求?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:C8. 以下哪个不属于软件维护的类型?A. 适应性维护B. 完善性维护C. 纠错性维护D. 预防性维护答案:D9. 以下哪个不属于软件项目管理工具?A. Microsoft ProjectB. JiraC. TrelloD. Visual Studio10. 以下哪个不属于敏捷软件开发的特点?A. 短周期迭代B. 客户参与C. 重构D. 线性开发流程答案:D二、填空题(每题2分,共20分)1. 软件工程的基本目标包括提高软件的生产效率、提高软件的质量和______。

答案:减少软件的开发成本2. 软件工程的三个主要过程分别是软件规格、软件开发和______。

答案:软件维护3. 软件需求分析的主要工具包括数据流图(DFD)、实体关系图(ERD)和______。

答案:状态转换图(STD)4. 软件设计的原则包括模块化、抽象、封装和______。

答案:继承5. 软件测试的四个层次分别是单元测试、集成测试、系统测试和______。

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

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

软件工程期末试卷(十套含答案)一、选择题(每题1分,共5分)A. 方法论B. 工具C. 过程D. 人员2. 下列哪一项不是软件生命周期的阶段?A. 需求分析B. 设计C. 编码D. 销售与市场A. 瀑布模型B. 喷泉模型C. 增量模型D. 敏捷模型4. 下列哪种方法不是软件需求获取的方法?A. 问卷调查B. 访谈C. 观察D. 编码A. 单一职责原则B. 开放封闭原则C. 里氏替换原则D. 依赖倒置原则二、判断题(每题1分,共5分)1. 软件工程的目标是生产出高质量的软件产品。

(√/×)2. 在软件开发过程中,需求分析阶段是最重要的阶段。

(√/×)3. 软件开发模型只有瀑布模型和喷泉模型两种。

(√/×)4. 在面向对象方法中,类是现实世界中实体的抽象。

(√/×)5. 软件测试的目的是证明软件的正确性。

(√/×)三、填空题(每题1分,共5分)1. 软件工程的三要素包括方法论、工具和______。

2. 软件生命周期包括需求分析、设计、编码、测试和______。

3. 在面向对象方法中,对象是现实世界中实体的______。

4. 软件开发模型包括瀑布模型、喷泉模型、增量模型和______。

5. 软件测试的目的是发现软件中的______。

四、简答题(每题2分,共10分)1. 简述软件工程的目标。

2. 简述软件生命周期的阶段。

3. 简述面向对象方法的基本概念。

4. 简述软件开发模型的作用。

5. 简述软件测试的目的。

五、应用题(每题2分,共10分)1. 假设你是一个软件开发人员,你需要为一个图书馆开发一个图书管理系统。

请列出该系统的需求。

2. 请解释瀑布模型和喷泉模型的区别。

3. 请解释面向对象方法中的继承和多态的概念。

4. 请解释软件测试中的黑盒测试和白盒测试的区别。

5. 请解释软件维护的类型。

六、分析题(每题5分,共10分)1. 假设你是一个软件开发人员,你需要为一个在线购物网站开发一个支付系统。

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

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

一,单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的横线上。

1.可行性研究要进行一次_____需求分析。

A.详细的B.全面的C.简化的、压缩的D.彻底的[解析]软件的可行性研究的目的就是用最小的代价在尽可能短的时间内确定该软件项目是否能够开发,是否值得去开发。

其实质是要进行一次简化、压缩了的需求分析、设计过程,要在较高层次上以较抽象的方式进行需求分析和设计过程。

因此答案为C。

2.系统流程图用于可行性分析中的_____的描述。

A.当前运行系统B.当前逻辑模型C.目标系统D.新系统[解析]可行性研究首先要确定项目的规模和目标,然后就需要对当前运行的系统进行研究了,在考察系统的基础上,通过描绘现有系统的高层系统流程图,与有关人员一起审查该系统流程图是否正确。

描述的对象是当前正在运行的系统,因此选择A。

3.系统流程图是描述_____的工具。

A.逻辑系统B.程序系统C.体系结构D.物理系统[解析]系统流程图是用图形符号来表示系统中的各个元素,例如人工处理、数据库、设备等,流程图表达了系统中各个元素之间的信息流动情况。

是描绘物理系统的传统工具。

4._______工具在软件详细设计过程中不采用。

A.判定表B.IPO图C.PDL D.DFD图[解析]详细描述处理过程常用三种工具:图形、表格和语言。

其中图形工具有结构化流程图、盒图和问题分析图三种,答案中的判定表是用来表示复杂的条件组合与应做的动作之间的对应关系。

IPO图用来描述每个模块输入/输出数据、处理功能及模块调用的详细情况。

PDL是过程设计语言的缩写,也称程序描述语言,用于描述模块算法设计和处理细节的语言,这三种都可以在软件详细设计过程中使用,而DFD图则是数据流图,是以图形的方式描绘数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,所以它只是一种功能模型,不能在详细设计过程中使用。

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

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

一、填空题(每空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、aB、bC、cD、b和c4.( A )是用户和设计交换最频繁的方法。

A、原型化方法B、瀑布模型方法 C. 螺旋模型方法D、构件组装模型5.软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是( C )。

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

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

软件工程-期末考试题(含答案)软件工程-期末考试题(含答案)1. 题目一:软件需求工程软件需求工程是软件开发的重要环节之一,主要包括需求获取、需求分析、需求规格、需求验证等阶段。

在软件开发的整个过程中,需求工程的目标是确保开发出的软件能够满足用户的需求,同时保证软件的质量和可靠性。

1.1 需求获取需求获取是软件需求工程的第一步,它涉及到对用户的需求进行调研和收集。

需求获取的方法可以包括面谈、问卷调查、观察等。

通过与用户的沟通和了解,开发团队可以获取到用户对软件的期望和需求,为后面的分析和规格阶段提供依据。

1.2 需求分析需求分析是对收集到的需求进行认真分析和理解的过程。

在这个阶段,开发团队将准确定义软件所需具备的功能、性能和约束。

通过对需求的分析,可以帮助开发团队更好地理解用户的需求,并将其转化为可执行的任务。

1.3 需求规格需求规格是将需求分析的结果进行详细描述和规范化的过程。

在这个阶段,开发团队需要将需求规格书写成可读、可理解的形式,以便于开发人员进行后续的开发工作。

需求规格书通常包括用例图、类图、时序图等各种工具和技术。

1.4 需求验证需求验证是对需求的正确性和完整性进行验证的过程。

在这个阶段,开发团队需要与用户进行确认,确保所开发的软件能够满足用户的期望和需求。

需求验证也可通过模拟测试、原型验证等方式进行。

2. 题目二:软件设计原则软件设计原则是开发人员编写高质量软件的指导原则,旨在提高软件的可维护性、可扩展性和可重用性。

下面介绍几个常用的软件设计原则。

2.1 单一职责原则单一职责原则(SRP)要求每个类或模块只负责一种功能或职责。

这样可以保持代码的简洁性和可读性,并使得类或模块更加易于维护和扩展。

2.2 开放封闭原则开放封闭原则(OCP)要求软件实体(类、模块、函数等)应该对扩展开放,对修改封闭。

这样可以使得软件设计能够适应需求的变化,而不需要修改原有的代码。

2.3 里氏替换原则里氏替换原则(LSP)要求子类必须能够替换父类,并且不影响程序的正确性。

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

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

《软件工程》期末考试题及答案一、选择题(每题2分,共20分)1. 以下哪项不是软件工程的三个主要目标?A. 可维护性B. 可用性C. 可靠性D. 高成本答案:D2. 以下哪个不属于软件工程的五大过程?A. 需求分析B. 设计C. 编码D. 测试答案:D3. 下列哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:A4. 以下哪个不是软件设计的主要阶段?A. 模块设计B. 数据设计C. 界面设计D. 测试设计答案:D5. 以下哪个不属于软件测试的级别?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:D6. 以下哪个不属于软件维护的类型?A. 更正性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:D7. 以下哪个不属于软件项目管理的主要内容?A. 进度管理B. 成本管理C. 质量管理D. 知识管理答案:D8. 以下哪个不是敏捷开发的典型方法?A. ScrumB. KanbanC. 极限编程D. 水晶方法答案:D9. 以下哪个不属于软件需求分析的方法?A. 用例分析B. 数据流图C. 类图D. 状态图答案:C10. 以下哪个不属于软件工程的七大原则?A. 模块化B. 信息隐藏C. 抽象D. 重用答案:D二、填空题(每题2分,共20分)1. 软件工程的三个主要目标是______、______、______。

答案:可维护性、可用性、可靠性2. 软件工程的五大过程是需求分析、______、编码、测试、______。

答案:设计、维护3. 软件设计的主要阶段包括模块设计、______、______。

答案:数据设计、界面设计4. 软件测试的四个级别是单元测试、______、系统测试、______。

答案:集成测试、验收测试5. 软件维护的四种类型是更正性维护、______、完善性维护、______。

答案:适应性维护、预防性维护6. 软件项目管理的主要内容有进度管理、______、______。

国开期末考试《软件工程》机考试题及答案(第5套)

国开期末考试《软件工程》机考试题及答案(第5套)

国开期末考试《软件工程》机考试题及答案(第5套)一、选择题(每题2分,共20分)1. 以下哪个阶段是软件工程的核心?A. 软件开发B. 软件测试C. 软件维护D. 软件设计答案:A2. 下列哪个不是软件工程的目标?A. 提高软件开发效率B. 提高软件质量C. 降低软件开发成本D. 提高软件开发人员的技术水平答案:D3. 下列哪种方法可以用来减少软件开发中的复杂性?A. 增加开发人员的数量B. 提高开发人员的技术水平C. 采用模块化设计D. 减少开发时间的安排答案:C4. 下列哪个工具不用于软件项目管理?A. 甘特图B. 帕累托图C. 思维导图D. 需求跟踪矩阵答案:B5. 下列哪种编程范式主要用于降低软件的复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:A二、填空题(每题2分,共20分)1. 软件工程主要包括______、软件开发、软件维护和软件管理四个阶段。

答案:软件需求分析2. 在软件开发过程中,需求分析是______阶段的工作。

答案:早期3. 软件项目管理主要包括______、人员管理、进度管理和质量控制等方面的工作。

答案:范围管理4. 结构化分析方法主要包括______、数据流图、实体关系图和数据字典等工具。

答案:业务流程图5. 面向对象设计的主要优点是______。

答案:提高软件的可重用性和可维护性三、判断题(每题2分,共20分)1. 软件工程的目标是开发出完全没有错误的软件。

()答案:错误2. 软件开发是一个简单的线性过程。

()答案:错误3. 软件项目管理的主要任务是控制软件开发进度。

()答案:错误4. 结构化设计方法只适用于大型软件系统。

()答案:错误5. 面向对象编程主要解决了软件的可重用性问题。

()答案:正确四、简答题(每题10分,共40分)1. 请简述软件工程的基本目标。

答案:软件工程的基本目标是通过工程化的方法,系统地开发和维护软件,以提高软件的质量、提高软件开发的效率、降低软件开发和维护的成本,同时使软件开发的过程和结果易于理解和易于管理。

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

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

软件⼯程期末试卷(⼗套含答案)百度⽂库软件⼯程期末试题(对部分发现的错误进⾏了修正)原链接:软件⼯程知识点简要总结:设计模式 —— OOP七⼤原则 + 23种设计模式:单项选择题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)nC.p﹡(1+i)﹡n D.p﹡(i+n)12.在考察系统的⼀些涉及时序和改变的状态时,要⽤动态模型来表⽰。

《软件工程》期末考试题及答案++精华版!!

《软件工程》期末考试题及答案++精华版!!

《软件工程》期末考试样题一、填空题1.软件开发模型有(瀑布模型)(螺旋模型)第四代技术模型(原型模型)构件组装模型、混合模型。

2.可行性研究一般可以从(经济)可行性、(技术)可行性、运行可行性、法律可行性和开发可行性等方面来研究。

3.现在向银行存款,年利率为i,若希望在n年后从银行得到F元,现在应该存入的钱数为(F/(1+i)n)。

4.数据流图的基本符号包括(数据输入的源点和数据输出的汇点)、(加工)、(数据流)、(数据存储文件)。

5.Jackson图除了可以表达程序结构外,还可以表达(数据结构),它首先要分析(数据结构),并用适当的工具来描述。

6.详细设计的工具有图形工具)、表格工具和(语言工具)。

7.IPO图由(输入)、处理和(输出)三个框组成。

这个图的特点是能够直观的显示三者之间的关系。

8.面向对象技术是一整套关于如何看待(软件系统)和(现实世界)的关系,以什么观点来研究问题并进行分析求解,以及如何进行系统构造的软件方法学。

面向对象方法是一种运用(对象)、(类)、(继承)、(封装)、聚集、消息传送、多态性等概念来构造系统的软件开发方法。

二、单项选择题1.下列( A )属于系统软件。

A.WINDOWS 2000B.WordC.FlashD.3D MAX2.下列哪个图是N-S图的构件( C )。

A. B.C. D.3.对于螺旋模型,下列( D )不是利用笛卡尔坐标表达的活动。

A. 制定计划B. 实施工程C. 风险分析D. 程序编码三、多项选择题1.软件危机可以表现为(ABXD )。

A.产品不符合用户的需要B.软件产品的质量差C.软件的可维护性差D.软件的价格昂贵2.Jackson图中一般可能包括(ABCD )。

A.表头B.表体C.表名D.字段名3.关于内容耦合的描述正确的是(AD )。

A、内容耦合是最高程度的耦合B、应该尽量使用内容耦合C、高级语言一般设计成允许内容耦合的形式D、如果一个模块有多个入口,可能发生内容耦合4.下列属于不标准的书写格式(BCD )。

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

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

一、选择题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.从实用角度看,数据规范化在大多数场合选用第____范式。

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

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

考试试题及参考答案一、单向选择题(四选一、每小题3分,共18分)1、软件的发展经历了(D)个发展阶段。

0102A.一B.二C.三D.四2、需求分析的任务不包括(B)。

0401A.问题分析B.系统设计C.需求描述D.需求评审。

3、一个软件的宽度是指其控制的(C)。

0801A.模块数B.层数C.跨度D.厚度4、当模块中包含复杂的条件组合,只有(A)能够清晰地表达出各种动作之间的对应关系。

0802A.判定表和判定树B.盒图C.流程图D.关系图5、以下不属于逻辑覆盖的是(D)。

1402A.语句覆盖B.判定覆盖C.条件覆盖D.基本路径6、为适应软件运行环境的变化而修改软件的活动称为(B)。

1501A.纠错性维护B.适应性维护C.改善性维护D.预防性维护二、填空题(每空2分,共18分)1.软件可靠性是指在给定的时间间隔内,程序成功运行的(概率)。

01012.高级语言:独立于机器,面向过程或面向(对象)01013.软件项目管理的范围主要集中于3个P上,即:People人员、Problem问题和(过程)。

02014.人机界面的风格第一代界面是命令和(询问)方式。

12025.由于维护或在维护过程中其他一些不期望的行为引入的错误称为维护的(副作用)。

15046.在公式V(G)= E –N + 2中:E为程序图G中边的总数;N 为程序图中结点的总数。

V(G)又称为图G的环形(复杂度)0204。

7.任何一个基于计算机系统都可以用输入-处理-输出(IPO)图来描述,它将该系统转换成一个信息变换模型。

03038.为提高可交互性一般对所有可能造成损害的用户操作动作,应坚持要求用户(确认),例如,提问“你确实要删除…?”。

12049.文档是一种数据媒体和其上所记录的(数据)。

0101三、判断题(每小题2分,共24分,错误打X、正确打√)1.用户对软件需求的描述不精确,往往是产生软件危机的原因之一。

(√)01022.目前,软件项目的进度安排的两种比较常用的方法是程序评估与审查技术(PERT)和关键路径法(CPM)。

北理工《软件工程》期末考试精选题汇总【含答案解析】 97

北理工《软件工程》期末考试精选题汇总【含答案解析】 97

《软件工程》模拟题3一、单选题(每题3分,共30分)1.对一个软件工程来说,占有总工作量的百分比最大的工作是____。

A.需求分析B.软件设计C.编码工作D.测试和维护工作答案:D题型:单选题知识点:1.2软件与软件过程难度:12. 随着开发小组人数的____,因交流开发进展情况和讨论遇到的问题而造成的通信开销也急剧增加。

A.增加B.降低C.稳定D.不稳定答案:A题型:单选题知识点:1.1软件工程的产生与发展难度:13. 可行性研究从经济可行性、技术可行性、操作可行性、____和社会效益等方面进行。

A.资源可行性B.效益可行性C.法律可行性D.政策可行性答案:C题型:单选题知识点:1.2软件与软件过程难度:14. 在需求分析之前有必要进行____工作。

A.程序设计B.可行性分析C.E-R分析D.3NF分析答案:B题型:单选题知识点:2.1软件需求的基本概念难度:15. 数据存储和数据流都是______,只是它们所处的状态不同。

A.事件B.动作C.数据D.加工答案:C题型:单选题知识点:3.2软件体系结构设计难度:16. 好的软件结构应该是______。

A.高耦合、高内聚B.低耦合、高内聚C.高耦合、低内聚D.低耦合、低内聚答案:B题型:单选题知识点:3.3模块分解难度:17.软件详细设计主要采用的方法是______。

A.结构程序设计B.模型设计C.结构化设计D.流程图设计答案:C题型:单选题知识点:3.4详细设计描述工具难度:18. 程序设计语言是人和计算机通信的基本工具,因而影响人和计算机通信的方式和质量。

在选择程序语言时,必须优先考虑______。

A.算法和数据结构B.软件开发方法C.应用领域D.效率答案:C题型:单选题知识点:6.1程序设计语言的选择难度:19.下列几种逻辑覆盖标准中,查错能力最强的是______。

A.语句覆盖B.判定覆盖C.条件覆盖D.条件组合覆盖答案:D题型:单选题知识点:8.4软件测试的策略难度:110.维护软件时为了保证修改不会影响原来可以正常使用的功能,应安排______测试。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、选择题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.1B.2C.3D.514.可行性分析研究的目的是(A)A.项目值得开发否B.争取项目C.开发项目D.功能内聚15.模块的内聚性最高的是(D)A.逻辑内聚B.时间内聚C.偶然内聚D.功能内聚16.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称(B)A.软件工程B.软件危机C.软件周期D.软件产生17.需求分析阶段的任务是确定(D)A.软件开发方法B.软件开发工具C.软件开发费D.软件系统的功能18.完整的软件结构通常用____图来表示。

(B)A.IPO图 B.HIPO图 C.PAD图 D.DFD图19.在白盒法技术测试用例的设计中___是最弱的覆盖标准。

(A)A.语句B.路径C.条件组合D.判定20.软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为(A)A.瀑布模型B.对象模型C.螺旋模型D.层次模型二、填空题1.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的__信息流动__情况。

2.成本效益分析的目的是从__经济___角度评价开发一个项目是否可行。

3.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略;深度优先策略和_宽度优先策略____.4.独立路径是指包括一组以前没有处理的语句或条件的一条路径。

从程序图来看,一条独立路径是至少包含有一条___其他独立路径中从未有过的____的边的路径。

5.汇编语言是面向__机器___的,可以完成高级语言无法完成的特殊功能。

如与外部设备之间的一些接口工作。

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问储户是否继续这项事务;储户回答“不”。

●ATM打印账单,退出现金兑换卡,请储户拿走它们;储户取走账单和卡。

●ATM请储户插卡。

3.某电器集团公司下属的厂包括技术科、生产科等基层单位。

现在想建立一个计算机辅助企业管理系统,其中:●生产科的任务是:(1)根据销售公司转来的内部合同(产品型号、规格、数量、交获日期)制定车间月生产计划。

(2)根据车间实际生产日报表、周报表调整月生产计划w(3)以月生产计划为基础,制定产品设计(结构、工艺)及产品组装月计划。

(4)将产品的组装计划传达到各科,将组装月计划分解为周计划,下达给车间。

●技术科的任务是:(1)根据生产科转来的组装计划进行产品结构设计,产生产品装配图给生产科,产生外购需求计划给供应科,并产生产品自制物料清单。

nhb(2)根据组装计划进行产品工艺设计,根据产品自制物料清单产生工艺流程图给零件厂。

要求:试写出以上系统中生产科和技术科处理的软件结构图。

4.某培训中心要研制一个计算机管理系统。

它的业务是:将学员发来的信件收集分类后,按几种不同的情况处理。

(1) 如果是报名的,则将报名数据送给负责报名事务的职员,他们将查阅课程文件,检查该课程是否额满,然后在学生文件、课程文件上登记,并开出报告单交财务部门,财务人员开出发票给学生。

(2) 如是想注销原来已选修的课程,则由注销人员在课程文件、学生文件和帐目文件上做相应的修改,并给学生注销单。

(3) 如果是付款的,则由财务人员在帐目文件上登记,也给学生一张收费收据。

要求:1)分析以上问题画出数据流图。

^2)画出该培训管理系统的软件结构图的主图。

相关文档
最新文档