软件工程与方法学期末试卷1401
- 格式:doc
- 大小:292.50 KB
- 文档页数:6
软件工程(期末试题及答案)软件工程(期末试题及答案)一、选择题(共20题,每题2分,共40分)1. 在软件工程中,以下哪一项不是七大工程()。
A. 软件需求B. 软件设计C. 软件开发D. 软件维护答案: D2. 软件需求分析的目的是()。
A. 理解用户需求B. 设计软件架构C. 编写用户手册D. 测试软件功能答案: A3. 软件开发过程中的迭代模型,不存在的是()。
A. 瀑布模型B. 敏捷开发模型C. 螺旋模型D. 喷泉模型答案: D4. 以下哪个不是软件测试的目的()。
A. 发现错误和缺陷B. 验证软件是否满足需求C. 评估软件的可靠性和质量D. 优化软件的性能答案: D5. 软件项目管理中,以下哪种方法适用于大型复杂项目()。
A. 瀑布模型B. 敏捷开发C. 增量模型D. 螺旋模型答案: D6. 软件开发生命周期中,以下哪个过程不属于()。
A. 需求分析过程B. 设计过程C. 编码过程D. 运维过程答案: D7. 在软件工程中,什么是软件测试()。
A. 软件开发的最后阶段B. 发现软件缺陷的过程C. 确保软件质量的控制过程D. 软件最终验收的流程答案: C8. 以下哪种测试方法旨在评估软件在不同负载下的性能和稳定性()。
A. 单元测试B. 集成测试C. 系统测试D. 性能测试答案: D9. 软件开发中,以下哪个活动不属于软件配置管理()。
A. 版本控制B. 配置变更控制C. 缺陷管理D. 代码评审答案: D10. 以下哪个是敏捷开发的基本原则()。
A. 面对面交流胜过文档B. 完全按照计划进行C. 精确的需求分析是关键D. 严格的变更控制是必要的答案: A11. 下列哪个不属于软件配置管理的内容()。
A. 变更控制B. 版本控制C. 缺陷管理D. 运维管理12. 软件的可靠性是指()。
A. 软件是否能正常运行B. 软件是否符合用户需求C. 软件运行期间不出现故障的能力D. 软件功能的完善程度答案: C13. 下列哪个不属于软件开发的7大原则()。
软件工程期末试题(含答案)填空题(每空 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 和 c4. ( A )是用户和设计交换最频繁的方法。
A、原型化方法 B 、瀑布模型方法 C. 螺旋模型方法D、构件组装模型5. 软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是( C )。
1、瀑布模型把软件生命周期划分为八个阶段:问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行、维护。
八个阶段又可归纳为三个大的阶段:计划阶段、开辟阶段和( C)。
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、UML 是软件开辟中的一个重要工具,它主要应用于哪种软件开辟方法(C )A、基于瀑布模型的结构化方法B、基于需求动态定义的原型化方法C、基于对象的面向对象的方法D、基于数据的数据流开辟方法8、在下面的软件开辟方法中,哪一个对软件设计和开辟人员的开辟要求最高(B )A、结构化方法B、原型化方法C、面向对象的方法D、控制流方法9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的(B )A、控制流B、数据流C、程序流D、指令流10、软件开辟的结构化生命周期方法将软件生命周期划分成(A )A、计划阶段、开辟阶段、运行阶段B、计划阶段、编程阶段、测试阶段C、总体设计、详细设计、编程调试D、需求分析、功能定义、系统设计11、软件开辟中常采用的结构化生命周期方法,由于其特征而普通称其为(A )A、瀑布模型B、对象模型C、螺旋模型D、层次模型12、软件开辟的瀑布模型,普通都将开辟过程划分为:分析、设计、编码和测试等阶段,普通认为可能占用人员最多的阶段是( C)A、分析阶段B、设计阶段C、编码阶段D、测试阶段三.判断1.软件的开辟与运行时常受到硬件的限制和制约。
操作系统复习题:1.现代OS具有并发性和共享性,是由()的引入而导致的。
A.单道程序B.磁盘C.对象D.多道程序2.系统的主要功能有()。
A.进程管理、存储器管理、设备管理、处理机管理B.虚拟存储管理、处理机管理、进程调度、文件系统C.处理机管理、存储器管理、设备管理、文件系统D.进程管理、中断管理、设备管理、文件系统3.操作系统是对()进行管理的软件。
A.硬件B.软件C.计算机资源D.应用程序4. Windows 98 是()操作系统。
A.多用户分时B.批处理系统C.单用户多任务D.单用户单任务5. 一个进程释放了一台打印机,他可能会改变(A)的状态。
A另一个等待打印机的进程B 输入、输出进程C 自身进程D 所有等待打印机的进程6. 进程和程序的根本区别是()。
A 是不是被调入到内存中B 是不是具有三种状态C 静态和动态之分D 是不是占用处理器7.分页式存储管理中,地址转换工作是由)完成的。
A、硬件B、地址转换程序C、用户程序D、装入程序8.在操作系统中,()指的是一种硬件机制。
A 通道技术B 缓冲池C SPOOLing技术D 内存覆盖技术9. 设在内存中有P1、P2、P3三道程序,并按照P1、P2、P3的优先次序运行,其内部计算和I/O操作时间由下图给出:P1:计算60ms----------------I/O 80ms-----------------计算20msP2:计算120ms--------------I/O 40ms-----------------计算40msP3:计算40ms----------------I/O 80ms-----------------计算40ms调度程序的执行时间忽略不计,完成这三道程序比单道运行节省的时间是( )A 80msB 120msC 200msD 160ms10. 本地用户通过键盘登录系统时,首先获得键盘输入信息的程序是()。
A命令解释程序B 系统调用服务程序C 中断处理程序D 用户登录程序11.产生系统死锁的原因可能是由于()。
软件工程期末试题(含答案)软件工程期末试题(含答案)1. 选择题(1) 在软件开发过程中,以下哪个活动是与需求分析相关的?A. 代码编写B. 测试C. 需求验证D. 项目规划答案:C(2) 在敏捷开发方法中,以下哪个原则强调“面对面交流”?A. 个体和交互高于工具和过程B. 客户合作高于合同谈判C. 可以交付的软件高于详尽的文档D. 响应变化高于遵循计划答案:A2. 简答题(1) 简述软件开发生命周期的阶段及每个阶段的主要任务。
答案:软件开发生命周期主要包括需求分析、设计、编码、测试和维护阶段。
需求分析阶段的主要任务是收集用户需求、进行需求分析和规格说明;设计阶段的主要任务是根据需求进行软件的整体架构设计、模块设计等;编码阶段的主要任务是根据设计文档进行程序代码的编写;测试阶段的主要任务是对软件进行功能、性能、兼容性等各方面的测试;维护阶段的主要任务是修复软件中的缺陷、升级功能等。
(2) 什么是软件需求?简述软件需求分析的过程。
答案:软件需求是对软件系统的功能、性能、接口、约束和设计约束条件的描述。
软件需求分析是指对软件需求进行识别、获取、明确和规格说明的过程。
其过程包括以下几个步骤:a. 需求获取:通过与用户交流、收集现有文档等方式,获取软件需求相关的信息;b. 需求分析:对获取的软件需求进行整理和分类,识别出需求之间的关联和依赖关系;c. 需求明确:明确每个需求的具体含义,确保需求描述准确清晰;d. 需求规格说明:将明确的需求进行形式化的规格说明,以便后续的设计和开发工作。
3. 论述题软件开发中的版本控制是一项重要的技术,它可以有效地管理和追踪软件代码的变化,并协同开发者之间的合作。
请简要讨论软件版本控制的几种常见方式及其优缺点。
答案:常见的软件版本控制方式包括本地版本控制、集中式版本控制和分布式版本控制。
每种方式都有其优缺点:a. 本地版本控制:通过在本地维护一份完整的代码仓库,实现对代码的版本控制。
软件工程本科期末考试试卷.doc(含5篇)第一篇:软件工程本科期末考试试卷.doc一:选择题1.中级结构成本模型COCOMO是一个()。
A 静态单变量模型B 动态单变量模型C 静态多变量模型D 动态多变量模型2.在软件质量模型中,()属于面向软件产品操作的质量因素。
A可用性B 可维护性C适应性D 互操作性3.面向对象的开发方法中,()将是面向对象技术领域内占主导地位的标准建模语言。
ABooch 方法B Coad 方法CUML语言D OMT 方法4.瀑布模型本质上是一种()。
A线性顺序模型B 顺序迭代模型C线性迭代模型D 及早见产品模型5.在快速原型模型的开发过程中,仅作为需求说明的补充形式的原型是()。
A探索型模型B 演化型模型C实验型模型D 提交型模型6.软件可维护性的特性中相互矛盾的是()。
A可修改性和可理解性B 可测试性和可理解性C效率和可修改性D 可理解性和可读性7.软件维护产生的副作用,是指()。
A开发时的错误B隐含的错误 C 因修改软件而造成的错误D 运行时误操作8.用黑盒技术设计测试用例的方法之一为()。
A因果图B逻辑覆盖C错误推测D人工检测9.需求分析阶段的任务是确定()A 软件开发方法B.软件开发工具 C 软件开发费用D 软件系统功能10.Ada语言是在Pascal语言基础上开发出来的,适用于()项目的应用领域。
A科学工程计算B数据库应用C实时处理D人工智能11.程序设计语言的工程特性之一为()。
A软件的可重用性B数据结构的描述性C抽象类型的描述性D数据库的易操作性12.软件详细设计的主要任务是确定每个模块的()。
A算法和使用的数据结构B外部接口C功能D编程13.PAD图为()提供了有力的工具。
A系统分析B软件的自动化生成C自动分析数据D测试软件14.软件结构图的形态特征能反映程序重用率的是()A深度B宽度C扇入D扇出15.在大型数据处理系统的功能分析与设计中,数据库的概念设计对应于系统开发的()。
南京理工大学课程考试试卷(学生考试用)第 页 共 页第 页 共 页第 页 共 页 南京理工大学课程试卷答案一.选择(每小题 分,共 分)⑴ ⑵ ⑶ ⑷ ⑸注:本大题均为基本题,考核学生对基本知识点的掌握情况。
二.填空:(每空 分,共 分)自然思维 服务层 表达 软件配置管理 适应性注:本大题均为基本题,考核学生对基本知识点的掌握情况。
三.名词解释(每小题 分,共 分)需求获取:发现用户需求的过程。
前置条件( ):被调用操作如正常执行必须满足的先决条件称为前置条件。
复合聚集:如果部分类完全隶属于整体类,部分类需要与整体类共存,一旦整体类不存在了,则部分类也会随之消失,或失去存在价值。
过程抽象:是指任何一个完成确定功能的操作序列,其使用者都可以把它看做一个单一的实体,尽管实际上它可能是由一系列更低级的操作完成的。
数据驱动:是对软件的功能和界面的测试,其目的是发现软件需求或者设计规格说明中的错误,又称为黑盒测试。
注:本大题均为基本题,考核学生对基本知识点的掌握情况。
四.简要回答下列问题(每小题 分,共 分)请说明为什么模块控制的宽度和深度要适度。
深度过大表示分工过细,而宽度过大则表示系统复杂度大,所以模块控制的宽度和深度要适度。
什么是蜕变测试?编写蜕变测试的测试用例关键点是什么?蜕变测试依据被测软件的领域知识和软件的实现方法建立蜕变关系,利用蜕变关系来生成新的测试用例,通过验证蜕变关系是否被保持来决定测试是否通过。
编写蜕变测试的测试用例关键点就是找出蜕变关系。
快速原型技术的基本思想是什么?在软件开发的早期,快速开发一个目标软件系统的原型,让用户对其进行评价并提出修改意见,然后开发人员根据用户的意见对原型进行改进。
五.应用题( 分)注:本题为综合题,考核学生对用例图分析和画法的掌握的情况。
从问题陈述可知,复印机的状态主要有闲置、复印、缺纸和卡纸。
引起状态转换的事件主要是复印命令、完成复印命令、发现缺纸、装满纸、发生卡纸故障和排除了卡纸故障。
软件工程期末考试试题第一篇:软件工程期末考试试题一,单项选择题(本大题共20小题,每小题1分,共20分)在每小题列出的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的横线上。
1.可行性研究要进行一次_____需求分析。
A.详细的 B.全面的 C.简化的、压缩的 D.彻底的 2.系统流程图用于可行性分析中的_____的描述。
A.当前运行系统B.当前逻辑模型C.目标系统D.新系统3.系统流程图是描述_____的工具。
A.逻辑系统B.程序系统C.体系结构D.物理系统4._______工具在软件详细设计过程中不采用。
A.判定表 B.IPO图 C.PDL D.DFD图 5.程序的三种基本控制结构是A.过程、子程序和分程序 B.顺序、选择和重复C.递归、堆栈和队列 D.调用、返回和转移 6.程序的三种基本控制结构的共同特点是A.不能嵌套使用 B.只能用来写简单程序C.已经用硬件实现 D.只有一个入口和一个出口 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._____是以提高软件质量为目的的技术活动。
软件工程试题及答案第一部分选择题一、单项选择题每小题1分,共20分。
(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)1.在下列工具与环境中()属于较早期的CASE。
A.基于信息工程CASEB.人工智能CASEC.结构的基于图形CASED.集成的CASE环境2.Putnam成本估算模型是一个()模型。
A.静态单变量B.动态单变量C.静态多变量D.动态多变量3.在McCall软件质量度量模型中,()属于面向软件产品修改。
A.可靠性B.可重用性C.适应性D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC5.软件复杂性度量的参数包括()A.效率B.规模C.完整性D.容错性6.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。
A.结合B.隐藏C.封装D.抽象7.软件调试技术包括()A.边界值分析B.演绎法C.循环覆盖D.集成测试8.瀑布模型的存在问题是()A.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求9.软件测试方法中的静态测试方法之一为()A.计算机辅助静态分析B.黑盒法C.路径覆盖D.边界值分析10.软件生命周期中所花费用最多的阶段是()A.详细设计B.软件编码C.软件测试D.软件维护11.第一个体现结构化编程思想的程序设计语言是()A.FORTRAN语言B.Pascal语言C.C语言D.PL/1语言12.程序的三种基本控制结构是()A.过程、子程序和分程序B.顺序、选择和重复C.递归、堆栈和队列D.调用、返回和转移13.在详细设计阶段,经常采用的工具有()A.PAD B.SA C.SC D.DFD 14.详细设计的结果基本决定了最终程序的()A.代码的规模B.运行速度C.质量D.可维护性15.需求分析中开发人员要从用户那里了解()A.软件做什么B.用户使用界面C.输入的信息D.软件的规模16.结构化程序设计主要强调的是()A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF。
软件工程期末试卷(十套含答案)-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)nC.p﹡(1+i)﹡n D.p﹡(i+n)12.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。
动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是( A )。
⼤学本科软件⼯程期末试题及答案软件⼯程期末考试试题及参考答案⼀、单向选择题1、软件的发展经历了(D)个发展阶段。
A.⼀B.⼆C.三D.四2、需求分析的任务不包括(B)。
A.问题分析B.系统设计C.需求描述D.需求评审。
3、⼀个软件的宽度是指其控制的(C)。
A.模块数B.层数C.跨度D.厚度4、当模块中包含复杂的条件组合,只有(A)能够清晰地表达出各种动作之间的对应关系。
A.判定表和判定树B.盒图C.流程图D.关系图5、以下不属于逻辑覆盖的是(D)A.语句覆盖B.判定覆盖C.条件覆盖D.基本路径6、为适应软件运⾏环境的变化⽽修改软件的活动称为(B)A.纠错性维护B.适应性维护C.改善性维护D.预防性维护⼆、填空题1.软件可靠性是指在给定的时间间隔内,程序成功运⾏的(概率)2.⾼级语⾔:独⽴于机器,⾯向过程或⾯向(对象)3.软件项⽬管理的范围主要集中于3个P上,即:People⼈员、Problem问题和(过程)4.⼈机界⾯的风格第⼀代界⾯是命令和(询问)⽅式5.由于维护或在维护过程中其他⼀些不期望的⾏为引⼊的错误称为维护的(副作⽤)6.在公式V(G)= E –N + 2中:E为程序图G中边的总数;N为程序图中结点的总数。
V(G)⼜称为图G的环形(复杂度)7.任何⼀个基于计算机系统都可以⽤输⼊-处理-输出(IPO)图来描述,它将该系统转换成⼀个信息变换模型8.为提⾼可交互性⼀般对所有可能造成损害的⽤户操作动作,应坚持要求⽤户(确认),例如,提问“你确实要删除…?”9.⽂档是⼀种数据媒体和其上所记录的(数据)三、判断题(每⼩题2分,共24分,错误打X、正确打√)1.⽤户对软件需求的描述不精确,往往是产⽣软件危机的原因之⼀。
(√)2.⽬前,软件项⽬的进度安排的两种⽐较常⽤的⽅法是程序评估与审查技术(PERT)和关键路径法(CPM)。
(√)3.⼀个好的开发⼈员应具备的素质和能⼒包括善于与周围⼈员团结协作,建⽴良好的⼈际关系,善于听取别⼈的意见。
软件工程期末试题及答案(这是一份软件工程期末试题及答案的示例,不包含具体的问题和答案。
请根据需要自行编写试题和答案内容。
)简介:本文为软件工程期末试题及答案,旨在帮助学生对软件工程的知识点进行复习和巩固。
试题包含了软件工程的基础概念、方法和技术,答案部分提供了详细的解释和分析,以便学生理解并掌握相关知识。
一、选择题1. 下列哪个不是软件工程的基本原则?A. 可维护性B. 可测试性C. 可扩展性D. 可折叠性答案解析:考察软件工程的基本原则,解释了可维护性、可测试性和可扩展性的概念,并指出了可折叠性不属于软件工程的基本原则。
二、填空题2. 软件需求是用户对软件系统所提出的________________。
答案解析:考察软件需求的定义,填空部分需要填写“功能要求”、“性能要求”、“界面要求”或其他与软件系统相关的要求。
三、判断题3. 软件工程只涉及软件开发的过程,与软件维护无关。
正确/错误答案解析:考察软件工程的范畴,判断句需要填写“正确”或“错误”,并提供对答案的解释,解释软件工程包含软件开发和维护过程。
四、简答题4. 请述说软件测试的重要性及其作用。
答案解析:考察对软件测试的理解,答题部分需要详细阐述软件测试的重要性和作用,比如保证软件质量、发现和修复缺陷等。
五、论述题5. 软件开发生命周期模型有哪些?请比较它们之间的优缺点。
答案解析:考察对软件开发生命周期模型的了解,答题部分需要列举各种常见的软件开发生命周期模型(如瀑布模型、敏捷模型等),并对它们的优缺点进行比较。
总结:本文为软件工程期末试题及答案,内容涵盖了选择题、填空题、判断题、简答题和论述题,旨在帮助学生全面复习和巩固软件工程的知识点。
通过本文的学习,希望读者能够对软件工程有更深入的理解,并在期末考试中取得好成绩。
(本文内容为示例,请根据实际需要编写试题和答案,以及相应的解析和解释。
)。
软件工程-期末考试题(含答案)软件工程-期末考试题(含答案)1. 题目一:软件需求工程软件需求工程是软件开发的重要环节之一,主要包括需求获取、需求分析、需求规格、需求验证等阶段。
在软件开发的整个过程中,需求工程的目标是确保开发出的软件能够满足用户的需求,同时保证软件的质量和可靠性。
1.1 需求获取需求获取是软件需求工程的第一步,它涉及到对用户的需求进行调研和收集。
需求获取的方法可以包括面谈、问卷调查、观察等。
通过与用户的沟通和了解,开发团队可以获取到用户对软件的期望和需求,为后面的分析和规格阶段提供依据。
1.2 需求分析需求分析是对收集到的需求进行认真分析和理解的过程。
在这个阶段,开发团队将准确定义软件所需具备的功能、性能和约束。
通过对需求的分析,可以帮助开发团队更好地理解用户的需求,并将其转化为可执行的任务。
1.3 需求规格需求规格是将需求分析的结果进行详细描述和规范化的过程。
在这个阶段,开发团队需要将需求规格书写成可读、可理解的形式,以便于开发人员进行后续的开发工作。
需求规格书通常包括用例图、类图、时序图等各种工具和技术。
1.4 需求验证需求验证是对需求的正确性和完整性进行验证的过程。
在这个阶段,开发团队需要与用户进行确认,确保所开发的软件能够满足用户的期望和需求。
需求验证也可通过模拟测试、原型验证等方式进行。
2. 题目二:软件设计原则软件设计原则是开发人员编写高质量软件的指导原则,旨在提高软件的可维护性、可扩展性和可重用性。
下面介绍几个常用的软件设计原则。
2.1 单一职责原则单一职责原则(SRP)要求每个类或模块只负责一种功能或职责。
这样可以保持代码的简洁性和可读性,并使得类或模块更加易于维护和扩展。
2.2 开放封闭原则开放封闭原则(OCP)要求软件实体(类、模块、函数等)应该对扩展开放,对修改封闭。
这样可以使得软件设计能够适应需求的变化,而不需要修改原有的代码。
2.3 里氏替换原则里氏替换原则(LSP)要求子类必须能够替换父类,并且不影响程序的正确性。
软件⼯程期末试卷(⼗套含答案)百度⽂库软件⼯程期末试题(对部分发现的错误进⾏了修正)原链接:软件⼯程知识点简要总结:设计模式 —— 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. 开发软件的⾼成本和产品的低质量之间有着尖锐的⽭盾,这称作()。
A.软件投机B.软件危机C.软件⼯程D.软件产⽣2. 软件⼯程学是应⽤科学理论和⼯程上的技术指导软件开发的学科,其⽬的是()。
A.引⼊新技术提⾼空间利⽤率B.⽤较少的投资获得⾼质量的软件C.缩短研制周期扩⼤软件功能D.硬软件结合使系统⾯向应⽤3. 瀑布模型把软件⽣存周期划分为软件定义、软件开发和()三个阶段,⽽每⼀阶段⼜可细分为若⼲个更⼩的阶段。
A.详细设计B.可⾏性分析C.运⾏及维护D.测试与排错4. ⼀个软件项⽬是否进⾏开发的结论是在()⽂档中作出的。
A.软件计划B.可⾏性报告C.测试报告D.需求分析说明书5. 常⽤的成本估计技术不包括()。
A.任务分解B.⾃动估计成本C.代码⾏D.投资回收估算6. 需求分析说明书不能作为()。
A.可⾏性研究的依据B.⽤户和开发⼈员之间的合同C.系统概要设计的依据D.软件验收测试的依据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.程序复杂度计算16.下⾯具有继承关系的⼀组是()。
A.铅笔-钢笔B.冰箱-空调C.汽车-客车D.教师-学⽣17. 软件的()是理解和使⽤该系统的容易程度。
软件工程期末试题(部分答案)软件工程期末试题(部分答案)1. 正文在软件工程学科的学习过程中,期末试题是对学生掌握知识的一次考核。
本文将介绍一份软件工程期末试题的部分答案,以供参考和学习之用。
1.1 题目一题目描述:请简要解释软件工程的定义和目标。
解答:软件工程是一门关于软件开发与维护的学科,旨在通过系统化、规范化的方法,提高软件产品的开发效率与质量。
其目标主要包括:- 提高软件开发过程的可管理性和可预测性,确保软件项目按时、按质完成;- 提高软件产品的可靠性、可维护性和可扩展性,降低软件使用、维护成本;- 提高软件工程师的专业素养和职业道德,促进软件行业的健康发展。
1.2 题目二题目描述:请简述软件需求分析的主要任务和方法。
解答:软件需求分析是软件工程过程中的一项重要任务,其主要任务包括:- 确定用户需求:通过与用户的沟通与交流,了解用户的实际需求,明确软件系统的功能、性能和接口等方面的要求。
- 分析需求:对用户提供的需求进行分析与整理,识别需求之间的关系与约束,形成准确、一致的需求规格说明书。
- 验证需求:通过与用户进行需求确认与验证,确保需求规格说明书准确地反映了用户要求。
软件需求分析的方法主要包括:- 需求收集:通过面谈、问卷调查、观察等方法,获取用户需求的信息。
- 需求建模:采用UML等建模技术,将需求表示为用例图、活动图、类图等形式,便于理解与分析。
- 需求验证:通过原型设计、面向领域的建模方法等手段,与用户进行反复的沟通和确认,确保需求的正确性和完整性。
1.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)nC.p﹡(1+i)﹡n D.p﹡(i+n)12.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示。
动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是(A )。
A .状态图 B. 数据流图 C. 系统结构图 D. 时序图13. 对象实现了数据和操作的结合,使数据和操作( C )于对象的统一体中。