软件工程试题库
软件工程试题(卷)(附答案解析)
一、单项选择题(每题2分,共40分)1.软件生存周期模型有多钟,下列选项中,(C)不是软件生存周期模型。
A.螺旋模型B.增量模型C.功能模型D.瀑布模型2.以下说法错误的是(C)。
A.增量模型是在瀑布模型的基础上加以修改而形成的B.增量模型推迟某些阶段或所有阶段中的细节,从而较早地产生工作软件C.瀑布模型和增量模型都属于整体开发模型D.瀑布模型规定在开始下一个阶段的工作之前,必须完成前一阶段的所有细节3.可行性分析中,系统流程图用于描述(A)。
A.当前运行系统B.当前逻辑模型C.目标系统D.新系统4.研究软硬件资源的有效性是进行(A)研究的一方面。
A.技术可行性B.经济可行性C.社会可行性D.操作可行性5、数据字典中,一般不包括下列选项中的(D)条目。
A.数据流B.数据存储C.加工D.源点与终点6、SA方法的分析步骤是首先调查了解当前系统的工作流程,然后(A)。
A.获得当前系统的物理模型,抽象出当前系统的逻辑模型,建立目标系统的逻辑模型B.获得当前系统的物理模型,抽象出目标系统的逻辑模型,建立目标系统的物理模型C.获得当前系统的逻辑模型,抽象出目标系统的物理模型,建立目标系统的逻辑模型D.获得当前系统的逻辑模型,抽象出目标系统的物理模型,建立目标系统的物理模型7、通过(B )可以完成数据流图的细化。
A.结构分析B.功能分解C.数据分析D.系统分解8、对软件进行分解,是为了(C)。
A.降低模块的复杂程度B.降低模块间接口的复杂程度C.降低模块的复杂程度,并降低模块间接口的复杂程度D.降低模块的复杂程度,并提高模块间接口的复杂程度9、为了提高模块的独立性,模块部最好是(C)。
A.逻辑聚B.时间聚C.功能聚D.通信聚10、在软件结构设计完成后,对于下列说法,正确的是(C)。
A.非单一功能模块的扇入数大比较好,说明本模块重用率高B.单一功能的模块扇入高时应重新分解,以消除控制耦合的情况C.一个模块的扇出太多,说明该模块过分复杂,缺少中间层D.一个模块的扇入太多,说明该模块过分复杂,缺少中间层11、在软件开发过程中,以下说确的是(B)。
软件工程测试题+参考答案
软件工程测试题+参考答案一、单选题(共40题,每题1分,共40分)1、窃听是一种()攻击,攻击者()将自己的系统插入到发送站和接收站之间。
截获是一种()攻击,攻击者()将自己的系统插入到发送站和接受站之间。
A、被动,无须,主动,必须B、被动,必须,主动,无须C、主动,无须,被动,必须D、主动,必须,被动,无须正确答案:A2、如果一名攻击者截获了一个公钥,然后他将这个公钥替换为自己的公钥并发送给接收者,这种情况属于哪一种攻击?A、重放攻击B、Smurf 攻击C、中间人攻击D、字典攻击正确答案:C3、黑客攻击服务器以后,习惯建立隐藏用户,下列哪一个用户在DOS命令net user下是不会显示的。
A、fg#B、fg%C、fg_D、fg$正确答案:D4、下列哪一种方法在支持向量机中有应用A、拉格朗日乘子法B、二分法C、最小二乘法D、极大似然估计正确答案:A5、设顺序线性表的长度为30,分成5块,每块6个元素,如果采用分块查找,则其平均查找长度为A、6B、6.5C、11D、5正确答案:B6、对N个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度为A、NB、N/2C、(N+1)/2D、[(1+N)*N ]/2正确答案:C7、信息安全中PDR模型的关键因素是()。
A、人B、客体C、技术D、模型正确答案:A8、某业务系统具有上传功能,页面上传的文件只能上传到UPLOAD目录,由于上传页面没有过滤特殊文件后缀,存在上传漏洞,而短时间厂家无法修改上传页面源码,现采取如下措施,哪种措施可以暂时防止上传漏洞危害又不影响业务系统正常功能。
A、禁止UPLOAD目录访问权限B、删除上传页面C、禁止UPLOAD目录执行脚本文件D、以上措施都不正确正确答案:C9、在各种作业调度算法中 , 若所有作业同时到达 , 则平均周转时间最短的算法是()。
A、多级反馈队列调度算法B、先来先服务调度算法C、高优先级优先调度算法D、短作业优先调度算法正确答案:D10、下面()不是数据字典的内容。
软件工程考试题及答案
软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的三要素不包括以下哪一项?A. 工具B. 方法C. 过程D. 环境答案:D2. 软件需求分析阶段的主要任务是确定软件的()。
A. 功能需求B. 性能需求C. 界面需求D. 所有选项答案:D3. 软件测试的目的是()。
A. 发现软件中的错误B. 证明软件是正确的C. 验证软件是否满足需求D. 所有选项答案:D4. 以下哪一项不是软件维护的类型?A. 纠错性维护B. 适应性维护C. 完善性维护D. 开发性维护答案:D5. 软件项目管理的主要目标是()。
A. 提高软件质量B. 控制成本C. 缩短开发周期D. 所有选项答案:D6. 瀑布模型的主要缺点是()。
A. 缺乏灵活性B. 难以适应需求变化C. 无法并行开发D. 所有选项答案:D7. 敏捷开发方法的核心理念是()。
A. 以文档为中心B. 以人为中心C. 以过程为中心D. 以工具为中心答案:B8. 软件配置管理的主要目的是()。
A. 确保软件的一致性B. 跟踪软件的变更C. 控制软件的版本D. 所有选项答案:D9. 以下哪一项不是软件工程的原则?A. 抽象B. 模块化C. 复用D. 随机性答案:D10. 软件工程的目标是()。
A. 开发高质量的软件B. 提高软件生产率C. 降低软件成本D. 所有选项答案:D二、多项选择题(每题3分,共15分)1. 软件需求分析阶段可能包括以下哪些活动?A. 需求收集B. 需求分析C. 需求规格说明D. 需求验证答案:ABCD2. 软件测试的类型包括以下哪些?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD3. 软件维护的常见原因包括以下哪些?A. 适应环境变化B. 修正软件缺陷C. 提高软件性能D. 增加新功能答案:ABCD4. 软件项目管理的关键活动包括以下哪些?A. 项目规划B. 项目监控C. 项目沟通D. 风险管理答案:ABCD5. 软件工程中的常见开发模型包括以下哪些?A. 瀑布模型B. 螺旋模型C. 敏捷模型D. 增量模型答案:ABCD三、判断题(每题2分,共10分)1. 软件工程的目标是开发出零缺陷的软件。
软件工程考试题库
软件工程概述一单项选择1.软件生命周期一般包括:软件开发期和软件运行期,下述(D )不是软件开发期所应包含的内容。
A需求分析 B 结构设计C程序编制D软件维护2.软件是一种逻辑产品,它的开发主要是(A )。
A研制B拷贝C再生产D复制3.以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是( C )。
A喷泉模型 B 增量模型C瀑布模型D螺旋模型4.在软件生存周期中,(B )阶段必须要回答的问题是“要解决的问题是做什么?”。
A详细设计 B 可行性分析和项目开发计划C概要设计D软件测试5.软件产品与物质产品有很大区别,软件产品是一种(C )产品A有形 B 消耗C逻辑D文档6.(C )把瀑布模型和专家系统结合在一起,在开发的各个阶段上都利用相应的专家系统来帮助软件人员完成开发工作。
A 原型模型B 螺旋模型C 基于知识的智能模型D 喷泉模型7.( B )阶段是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。
A概要设计 B 详细设计 C 编码 D 测试8.下列软件开发模型中,适合于那些不能预先确切定义需求的软件系统的开发的模型是(A )。
A 原型模型B 瀑布模型C 基于知识的智能模型D 变换模型9.下列软件开发模型中,以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型是( C )。
A 原型模型B 瀑布模型C 喷泉模型D 螺旋模型10.下列软件开发模型中,支持需求不明确,特别是大型软件系统的开发,并支持多种软件开发方法的模型是( D )。
A 原型模型B 瀑布模型C 喷泉模型D 螺旋模型11.软件特性中,使软件在不同的系统约束条件下,使用户需求得到满足的难易程度称为(C )。
A可修改性B可靠性C可适应性 D 可重用性12.软件特性中,一个软件能再次用于其他相关应用的程度称为(B )。
A可移植性B可重用性 C 容错性 D 可适应性13.软件特性中,(A )是指系统具有清晰的结构,能直接反映问题的需求的程度。
软件工程题库 多选
软件工程题库多选多选题题库第一章:软件开发过程模型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.着重测试系统的边界条件附件:无法律名词及注释:1.软件工程:指将系统化、规范化和可量化的方法应用于软件的开发、运行和维护过程的一门工程学科。
软件工程试题库
软件工程试题库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.下列软件开发模型中,适合于那些不能预先确切定义需求的软件系统的开发的模型是()。
C、原型模型B、瀑布模型C、基于知识的智能模型D、变换模型8.下列软件开发模型中,以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型是()。
A、原型模型B、瀑布模型C、喷泉模型D、螺旋模型9.下列软件开发模型中,()只有在开发人员具有风险分析和排除风险的经验及专门知识时,才能获得成功。
A、原型模型B、瀑布模型C、喷泉模型D、螺旋模型10.()是用户和设计交换最频繁的方法。
A、原型模型B、瀑布模型方法C、螺旋模型方法D、构件组装模型11.传统的()要求,必须等前一阶段的工作完成之后,才能开始后一阶段的工作;前一阶段的输出文档,就是后一阶段的输入文档。
C、原型模型B、瀑布模型C、螺旋模型D、喷泉模型12.下列叙述中不属于软件生命周期模型的是( )A、瀑布模型B、快速原型模型C、风险模型D、原子模型13.“为了解决这个问题,目标系统必须做什么?”这是生命周期中()阶段要确定的事。
软件工程考试题及答案
软件工程考试题及答案一、选择题1. 下列哪个不是软件工程的基本原则?A. 持续集成B. 形式化表示C. 高内聚低耦合D. 可重用性答案:B. 形式化表示2. 软件的可靠性是指什么?A. 软件的正确性B. 软件的可维护性C. 软件的效率D. 软件的稳定性答案:D. 软件的稳定性3. 下列哪个不是软件测试的目标?A. 发现软件中的错误和缺陷B. 验证软件是否满足用户需求C. 评估软件的质量D. 在短时间内完成软件开发答案:D. 在短时间内完成软件开发二、判断题1. 软件工程是一门工程学科,其目标是通过系统化的、规范化的方法对软件进行开发、运行和维护。
答案:正确2. “高内聚低耦合”是软件工程中的重要原则,指的是模块之间的独立性和模块之间的依赖程度。
答案:正确3. 软件需求分析是软件开发过程中的最后一步,最终确定软件系统的功能和性能。
答案:错误三、简答题1. 什么是软件工程?答:软件工程是一门工程学科,通过系统化的、规范化的方法对软件进行开发、运行和维护。
它涉及软件开发的各个阶段,包括需求分析、设计、编码、测试和维护等,并注重管理和团队合作,以提高软件质量、降低开发成本和加快开发进度。
2. 软件测试的目的是什么?答:软件测试的目的是发现软件中的错误和缺陷,验证软件是否满足用户需求,并评估软件的质量。
通过测试,可以提高软件的可靠性和稳定性,减少软件在使用过程中的风险。
3. 请简述软件开发生命周期中的各个阶段。
答:软件开发生命周期包括需求分析、设计、编码、测试和维护等阶段。
- 需求分析阶段:确定软件系统的功能、性能和约束条件,明确用户需求。
- 设计阶段:根据需求分析结果设计软件系统的结构和模块,确定软件的整体框架。
- 编码阶段:根据设计阶段的文档编写程序代码,实现软件系统的各个功能。
- 测试阶段:对软件进行各种测试,包括单元测试、集成测试和系统测试,以发现错误和缺陷。
- 维护阶段:根据用户反馈和需求变化,对软件进行修复和更新,确保其持续稳定运行。
软件工程试题库及答案
一、选择题软件(2)1.在软件开发的各种资源中,( D )是最重要的资源。
A 开发工具B 方法C 硬件环境D 人员2.软件的复杂性是( A ),它引起人员通信困难、开发费用超支、开发时间超时等问题。
A 固有的B 人为的C 可消除的D 不可降低的3.3:软件是计算机系统中与硬件相互依存的另一部分,它的组成部分是( D )。
A.程序、数据 B.程序、文档 C.程序 D. 程序、数据、文档4.软件是一种( B )产品。
A、有形B、逻辑C、物质D、消耗软件危机(1)5.1:开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做( C )A.软件工程B.软件周期C.软件危机D.软件产生6.2:在软件生产的程序系统时代由于软件规模扩大和软件复杂性提高等原因导致了( A )A.软件危机B.软件工程 C.程序设计革命D.结构化程序设计7.3:以下哪一项不是软件危机的表现形式( C )(A)成本高(B)生产率低(C) 技术发展快(D)质量得不到保证8.4:“软件危机”产生的主要原因是( A )。
A.软件日益庞大B.开发方法不当C.开发人员编写程序能力差D.没有维护好软件9.5:软件危机是指在软件开发和( C )过程中遇到的一系列严重问题。
A 开发B 使用 C维护D更新软件工程(2)10.1:为了解决软件危机人们提出了用(B )的原理来设计软件,这就是软件工程诞生的基础。
(A) 运筹学(B) 工程学 (C) 软件学(D) 数学11.2.在软件工程时期,决定软件质量的主要因素是( A )A.管理水平 B.个人程序技术 C.小组技术水平 D.硬件的发展12.3. 软件管理工作涉及到的直接对象不包括( B )。
A.软件开发人员 B.硬件设备 C.项目经费 D.软件项目13.4. 软件工程方法学有三个要素,它们是( A )A.方法、工具和过程B.质量、进度和成本C.顺序、分支和循环D.入口、过程、出口生命周期及模型(5)14.1:软件工程中描述生命周期的瀑布模型一般包括计划、( A )、设计、编码、测试、维护等几个阶段。
软件工程学试题及答案
软件工程学试题及答案一、单项选择题(每题2分,共10分)1. 软件工程的目的是()。
A. 提高软件的生产率B. 提高软件的运行效率C. 降低软件的生产成本D. 提高软件的可维护性答案:A2. 下列哪项不是软件需求分析的任务?()。
A. 确定软件的功能需求B. 确定软件的性能需求C. 确定软件的界面需求D. 确定软件的测试需求答案:D3. 软件生命周期中,()阶段是确定软件需求的阶段。
A. 需求分析B. 系统设计C. 编码D. 测试答案:A4. 软件测试的目的是()。
A. 证明软件是正确的B. 证明软件存在错误C. 发现软件中的错误D. 证明软件不存在错误答案:C5. 软件危机主要表现在()。
A. 软件成本B. 软件质量C. 软件进度D. 所有选项答案:D二、多项选择题(每题3分,共15分)1. 软件工程的基本原理包括()。
A. 用分阶段的生命周期计划严格管理B. 强调开发过程的迭代性质C. 采用合适的编程规范D. 强调软件工具的使用答案:ABD2. 软件需求分析的常用方法包括()。
A. 数据流图B. 用例图C. 状态转换图D. 流程图答案:ABC3. 软件测试的类型包括()。
A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD4. 软件维护的类型包括()。
A. 校正性维护B. 适应性维护C. 完善性维护D. 预防性维护答案:ABCD5. 软件工程中常用的设计模式包括()。
A. 单例模式B. 工厂模式C. 观察者模式D. 策略模式答案:ABCD三、简答题(每题5分,共20分)1. 简述软件工程中的模块化设计原则。
答案:模块化设计原则要求将系统分解成若干个模块,每个模块具有高内聚、低耦合的特点,以便于系统的开发、测试、维护和理解。
2. 描述软件需求分析的重要性。
答案:软件需求分析是软件开发过程中的关键步骤,它确保了开发团队对用户需求有清晰的理解,有助于避免开发出不符合用户需求的软件,减少返工和成本。
全国2024年上半年高等教育自考试软件工程试题含解析
全国2024年上半年高等教育自考试软件工程试题一、单项选择题1、结构化分析方法给出了一种能表达功能模型的工具是______。
A.HIPO图B.PAD图C.N-S图D.DFD图2、类的状态机一般有几种不同的运行状态,其中处于等待接收事件,接收处理完事件后又进入等待状态,通常采用______。
A.IdleB.InitializingC.CommandD.Active3、结构精细化设计过程中,为了提高模块的独立性,应遵循的原则是______。
A.低内聚高耦合B.低内聚低耦合C.高内聚低耦合D.高内聚高耦合4、软件工程在20世纪60年代末到80年代初获得的主要成果有______。
A.CASE产品B.面向对象语言C.瀑布模型D.软件生存周期过程5、“与所规约的系统执行之间的偏差”是指______。
A.错误B.失效C.故障D.误差6、集成化能力成熟度模型(CMMI)中有22个过程域,分为4类:项目管理类、工程类、过程管理类和______。
A.需求管理类B.支持类C.项目包类D.目标类7、RUP的迭代、增量式开发过程中,需要估算成本、进度,并能够减少次要的错误风险,至少需要完成______。
A.初始阶段B.精化阶段C.构造阶段D.移交阶段8、下列不属于软件危机的主要表现是______。
A.软件生产效率低B.软件开发没有工具支持C.软件生产质量低D.软件开发缺乏可遵循的原理、原则、方法体系以及有效的管理9、在销售管理系统需求文档中出现下列描述,属于设计约束范畴的是______。
A.系统应能产生月销售报表B.系统应在5分钟内计算出给定季度的总销售税C.对要构建的账户接收系统,必须为月财务状况系统提供更新信息D.任取1秒钟,一个特定应用所消耗的可用计算能力平均不超过50%10、需求规约的基本性质包括重要性和稳定性程度、一致的、完整的和______。
A.可修改的B.可复用的C.可测试的D.无歧义的11、软件测试中,白盒测试技术依据的是程序的______。
软件工程期末试卷(十套含答案)
软件工程期末试卷(十套含答案)一、选择题(每题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. 假设你是一个软件开发人员,你需要为一个在线购物网站开发一个支付系统。
计算机软件工程试题及答案
计算机软件工程试题及答案一、选择题(每题5分,共30分)1. 下列哪项不是软件工程的目标之一?A. 提高软件质量B. 缩短软件开发周期C. 降低软件成本D. 增加软件功能答案:D2. 面向对象分析的重要产品是什么?A. 类图B. 时序图C. 用例图D. 类的详细设计答案:C3. 在敏捷软件开发中,团队重视的价值是?A. 测试通过的软件B. 设计文档C. 客户满意D. 项目进度答案:C4. 下列哪个是软件验证的过程?A. 编码B. 测试C. 需求分析D. 部署答案:B5. 软件过程模型中,下列哪项是瀑布模型的主要特点?A. 适合迭代式开发B. 强调反馈和调整C. 开发流程线性且有序D. 所有阶段同时进行答案:C6. 下列哪项不是软件需求的特性?A. 可理解性B. 可靠性C. 可维护性D. 可修改性答案:B二、简答题(每题10分,共30分)1. 请简述软件生命周期的主要阶段及其特点。
答案:软件生命周期主要包括需求分析、设计、编码、测试、部署和维护阶段。
需求分析阶段:明确用户需求和系统要求。
设计阶段:制定软件结构和模块设计方案。
编码阶段:将设计方案转化为可执行代码。
测试阶段:验证软件是否符合需求,包括单元测试、集成测试和系统测试。
部署阶段:将软件交付给用户并安装部署。
维护阶段:修复漏洞、改进功能、提供技术支持。
2. 解释迭代开发和增量开发的区别。
答案:迭代开发是指将整个开发过程分成多个迭代周期,每个迭代周期都包含需求分析、设计、编码、测试等阶段,每个迭代周期都会不断改进和完善软件,最终得到用户满意的产品。
增量开发是指在软件开发过程中,将系统功能模块化,按模块分阶段开发。
每个阶段都增加新的功能,并将之前开发的功能进行整合和测试。
最终形成完整的软件系统。
3. 简要介绍敏捷开发方法。
答案:敏捷开发是一种迭代和增量的开发方法,强调团队合作和灵活性,专注于快速交付可工作的软件。
敏捷开发方法包括Scrum、XP (极限编程)等。
软件工程基础考试题目和答案
软件工程基础考试题目和答案一、选择题(每题5分,共25分)1. 软件工程的主要目标是什么?A. 提高软件开发效率B. 确保软件质量C. 降低软件开发成本D. 提高软件的可维护性答案:B2. 下列哪个阶段不属于软件开发生命周期?A. 需求分析B. 设计C. 测试D. 需求变更答案:D3. 下列哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 面向过程编程答案:A4. 下列哪个工具主要用于软件项目进度监控?A. Gantt图B. 思维导图C. 帕累托图D. 直方图答案:A5. 下列哪种方法主要用于风险管理?A. 风险识别B. 风险评估C. 风险应对D. 风险监控答案:A二、填空题(每题5分,共25分)1. 软件工程的核心思想是______,通过规范的开发过程和严格的质量控制,提高软件的质量和可靠性。
答案:工程化2. 软件需求分析的主要目的是______,明确软件的功能和性能要求。
答案:理解用户需求3. 结构化分析方法主要包括______、数据流图、实体关系图等。
答案:数据字典4. 软件测试的主要目的是______,发现并修复软件中的缺陷。
答案:保证软件质量5. 敏捷开发方法的核心价值观是______,强调快速响应变化和客户合作。
答案:个体和互动三、简答题(每题10分,共30分)1. 请简要描述软件开发生命周期的主要阶段及其作用。
答案:软件开发生命周期主要包括需求分析、设计、编码、测试和维护等阶段。
需求分析阶段用于理解用户需求,设计阶段用于制定软件架构和详细设计,编码阶段用于实现软件功能,测试阶段用于发现并修复软件缺陷,维护阶段用于提供软件支持和更新。
2. 请简要介绍敏捷开发方法的主要特点和实践原则。
答案:敏捷开发方法主要包括个体和互动、工作软件、客户合作、响应变化等价值观。
实践原则包括短迭代周期、持续反馈、自我组织和协作等。
敏捷开发方法强调快速响应变化,提高软件质量和开发效率。
软件工程考试题库
软件工程概述一单项选择1.软件生命周期一般包括:软件开发期和软件运行期,下述(D )不是软件开发期所应包含的内容。
A需求分析 B 结构设计C程序编制D软件维护2.软件是一种逻辑产品,它的开发主要是(A ).A研制B拷贝C再生产D复制3.以文档作为驱动,适合于软件需求很明确的软件项目的生存周期模型是( C ).A喷泉模型 B 增量模型C瀑布模型D螺旋模型4.在软件生存周期中,(B )阶段必须要回答的问题是“要解决的问题是做什么?”。
A详细设计 B 可行性分析和项目开发计划C概要设计D软件测试5.软件产品与物质产品有很大区别,软件产品是一种(C )产品A有形 B 消耗C逻辑D文档6.(C )把瀑布模型和专家系统结合在一起,在开发的各个阶段上都利用相应的专家系统来帮助软件人员完成开发工作。
A 原型模型B 螺旋模型C 基于知识的智能模型D 喷泉模型7.( B )阶段是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。
A概要设计 B 详细设计 C 编码 D 测试8.下列软件开发模型中,适合于那些不能预先确切定义需求的软件系统的开发的模型是(A )。
A 原型模型B 瀑布模型C 基于知识的智能模型D 变换模型9.下列软件开发模型中,以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型是( C )。
A 原型模型B 瀑布模型C 喷泉模型D 螺旋模型10.下列软件开发模型中,支持需求不明确,特别是大型软件系统的开发,并支持多种软件开发方法的模型是( D )。
A 原型模型B 瀑布模型C 喷泉模型D 螺旋模型11.软件特性中,使软件在不同的系统约束条件下,使用户需求得到满足的难易程度称为(C )。
A可修改性B可靠性C可适应性 D 可重用性12.软件特性中,一个软件能再次用于其他相关应用的程度称为( B )。
A可移植性B可重用性 C 容错性 D 可适应性13.软件特性中,(A )是指系统具有清晰的结构,能直接反映问题的需求的程度.A可理解性B可靠性C可适应性 D 可重用性14.软件特性中,软件产品交付使用后,在实现改正潜伏的错误、改进性能、适应环境变化等方面工作的难易程度称为( B )。
软件工程试题库全解
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.“为了解决这个问题,目标系统必须做什么?”这是生命周期中()阶段要确定的事。
软件工程考试试题(含答案)
一、选择题:(每题1分,共20分)(将答案写在题号前的()中)( 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.面向数据流的设计方法把()映射成软件结构。
软件工程考试试题及答案
软件工程考试试题及答案一、单选题1. 软件需求分析是软件工程的哪个阶段?a. 需求分析与定义b. 软件设计c. 软件测试d. 软件维护答案:a. 需求分析与定义2. 下列哪项不是软件工程的基本原则?a. 可复用性b. 高效性c. 可维护性d. 可理解性答案:b. 高效性3. 下列哪项不是软件质量保证的措施?a. 程序员的自我质量保证b. 审计c. 代码复用d. 测试答案:c. 代码复用4. 下列哪个是软件生命周期模型?a. 瀑布模型b. 程序开发模型c. 螺旋模型d. 增量模型答案:a. 瀑布模型5. 在软件工程中,什么是软件配置管理?a. 设计和开发软件的过程b. 管理软件的版本和更改c. 测试软件的过程d. 分配和调度任务的过程答案:b. 管理软件的版本和更改二、多选题1. 下列哪些是软件需求规格说明的内容?(多选)a. 需求的功能描述b. 系统性能要求c. 用户界面设计d. 软件的安装要求答案:a. 需求的功能描述、b. 系统性能要求、d. 软件的安装要求2. 软件测试的目的是什么?(多选)a. 发现软件中的错误b. 确保软件满足需求c. 评估软件的质量d. 提高软件的可维护性答案:a. 发现软件中的错误、b. 确保软件满足需求、c. 评估软件的质量3. 下列哪些是软件维护的类型?(多选)a. 纠错性维护b. 适应性维护c. 完善性维护d. 增量性维护答案:a. 纠错性维护、b. 适应性维护、c. 完善性维护、d. 增量性维护三、判断题1. 软件工程是一门工程学科,它包括对软件进行开发、测试、维护和管理等方面的知识。
(正确/错误)答案:正确2. 软件需求分析是软件开发的最后一步。
(正确/错误)答案:错误3. 软件测试的目的是为了证明软件是没有错误的。
(正确/错误)答案:错误四、简答题1. 简述软件生命周期模型中的瀑布模型。
答案:瀑布模型是软件生命周期模型中最早的模型之一。
它将软件开发过程分为需求分析、系统设计、详细设计、编码、测试和维护等阶段,并按照顺序执行。
软件工程考试题及答案
软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的主要目标是()。
A. 提高软件的生产率B. 提高软件的运行效率C. 降低软件的生产成本D. 提高软件的可维护性答案:A2. 软件工程的三要素包括()。
A. 方法、工具和过程B. 方法、工具和人员C. 方法、过程和人员D. 工具、过程和人员答案:C3. 软件需求分析阶段的主要任务是()。
A. 确定软件的功能需求B. 确定软件的非功能需求C. 确定软件的界面需求D. 确定软件的测试需求答案:A4. 软件设计阶段的主要任务是()。
A. 制定软件开发计划B. 确定软件的体系结构C. 编写软件详细设计文档D. 进行软件测试答案:B5. 软件测试的目的是()。
A. 证明软件是正确的B. 发现软件中的错误C. 证明软件是无错误的D. 证明软件是可维护的答案:B6. 软件维护不包括以下哪项活动()。
A. 改正性维护B. 适应性维护C. 完善性维护D. 软件设计答案:D7. 软件项目管理的主要任务不包括()。
A. 进度管理B. 质量管理C. 风险管理D. 软件编码答案:D8. 面向对象方法中,对象的基本特性不包括()。
A. 抽象B. 封装C. 继承D. 多态答案:D9. UML(统一建模语言)是一种()。
A. 程序设计语言B. 数据库查询语言C. 建模语言D. 脚本语言答案:C10. 在软件开发过程中,需求变更是不可避免的,以下哪项不是需求变更的原因()。
A. 客户的需求不明确B. 项目范围的扩大C. 技术实现的困难D. 软件已经完成答案:D二、多项选择题(每题3分,共15分)11. 软件工程的基本原理包括()。
A. 抽象B. 模块化C. 逐步求精D. 迭代开发答案:ABC12. 软件需求分析阶段的输出包括()。
A. 需求规格说明书B. 用户手册C. 系统架构图D. 测试计划答案:A13. 软件设计阶段的主要文档包括()。
A. 架构设计文档B. 详细设计文档C. 用户手册D. 测试计划答案:AB14. 软件测试的类型包括()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
“软件开发与管理”试题库
第一章:软件开发与管理概述
一、填空题
1.软件是由、、三部分组成。
2.软件作为人工生产的产品,主要是由人进行“开发”而来,与硬件比较起来没有明显的制造过程。
3.软件开发过程复杂,但一般包括、、、
等主要阶段。
4.软件的是软件的生命。
5.在软件团队开发中由于人数的增加、成员间的交互与合作,所以除了技术问题外,还存在问题。
6.软件开发方法学包括和两种开发方法。
7.软件项目进度计划主要包括、、和。
二、思考与简答题
1.举例说明程序、软件、系统的区别和联系。
2.软件有什么特点?软件开发有什么特点?
3.说说程序、软件、系统的设计与应用的不同。
4.软件开发过程主要有哪几个典型任务活动,请说说它们各自的内容。
5.软件开发过程模型是什么含义?一般有哪几种开发过程模型?
6.软件开发方法有哪两类?它们各自的优缺点是什么?
7.请说说管理在软件开发中的重要作用。
软件项目管理有哪些内容。
8.软件质量是如何管理的?
第二章:需求分析
一、填空题
1.软件的需求是用户对该软件在、等方面的期望与要求。
即软件的需求、需求和其它需求。
2.需求分析的任务是需求分析师通过与用户的交流、、,得到用户对系统完整、准确、清晰、具体的要求。
3.需求分析过程中建立的模型有:、和。
而传统结构化的需求分析模型包括:图、图、
图。
4.传统的需求分析模型中,的建立是今后数据库设计的基础,而的建立是今后软件功能结构设计的基础。
5.软件的需求最终要通过表达出来。
二、思考与简答题
1.需求分析的任务和作用是什么?
2.需求分析的步骤有哪些?
3.什么是数据模型?实体、属性、联系之间的关系是什么?
4.什么是功能模型?处理的描述包括哪些内容?
5.什么是动态模型?它与功能模型的区别是什么?系统的状态是如何转换的?
6.软件需求规格说明书你认为重点包括哪些方面?
第三章:软件设计
一、填空题
1.软件的需求分析解决了软件应该“做什么”的问题,而软件设计则解决软件应该的问题。
2.软件设计能指导软件的编码实现,没有设计的编码其结果很难预料与保证,所以说软件设计是软件开发的关键,直接影响软件的。
3.软件需求分析、软件设计、软件编码之间既有区别又有联系,它们是软件在不同层次的。
从,从
是软件开发两个重要的过程进阶。
4.软件设计内容包括、、等方面。
5.传统结构化软件设计,是从E-R图出发设计,从数据流图出发设计。
6.详细设计是对软件模块的设计,它更接近于编码,所以详细设计又称为过程设计或算法设计。
7.描述软件模块间相对独立性程度的度量有两种,它们是模块的和模块的。
二、思考与简答题
1、软件设计主要任务是什么?它与需求分析阶段与编码阶段的关系是什么?
2.软件设计如何过渡到代码编写?
3.软件设计的内容主要有哪些?
4.如何从E-R图设计数据库的逻辑结构?如何从数据流图设计软件结构?
5.详细设计工具有哪些?各有什么优缺点?
6.软件设计原则有哪些?模块的独立性原则的含义是什么?
第四章:面向对象分析
一、填空题
1.面向对象的分析模型包括:用例模型、对象模型和动态模型。
它们分别用UML的、、顺序图等来表示。
2.用“用例方法”面向对象的需求分析与建模,先建立,再通过分析操作的实体建立,最后分析实体之间的动态交互细节,建立系统的。
3.确定系统的类与对象,从可感知的、、应该记录的等方面获取。
4.类图的建立是先确定系统的类与对象,然后再逐步确定类的、类之间的,类的,从而完善类图。
5.类图中类与类之间的关系包括:、、和。
二、思考与简答题
1.阐述面向对象“用例方法”进行需求分析与建模的过程。
2.用例模型的建立步骤是什么?
3.如何确定系统的类与对象?
4.建立对象模型(类图)过程主要有哪几个步骤?各步骤的内容是什么?
5.何为面向对象的动态模型?如何建立顺序图?如何从顺序图定义类的方法?
第五章:面向对象设计
一、填空题
1.面向对象软件设计如面向对象分析一样均是采用面向对象的方法对软件的抽象与描述,只是面向对象设计比面向对象分析更接近于软件的。
2.面向对象设计与面向对象编码很接近,如软件设计、的设计、的设计等。
3.面向对象设计类图可以从面向对象分析类图而来。
4.面向对象体系结构设计已经将软件系统设计为:部件、部件、部件、四大部分。
5.面向对象设计的各个部件均由类与类的交互组成,所以面向对象的设计最终要落实到对这些底层的设计。
二、思考与简答题
1.简述面向对象设计的主要内容。
2.面向对象的软件体系结构设计主要包含什么内容?
3.面向对象类的设计包含什么内容?请阐述BCE方法如何认识面向对象软件系统?
4.MVC设计模式如何构造软件系统?请举例你所了解的MVC设计模式实现技术。
5.请解释面向对象软件开发的最佳做法。
第六章:编码实现
一、填空题
1.软件开发经历了需求分析、软件设计等许多阶段,但最终需要通过
活动创造出来。
最后通过才能提交用户使用。
2.结构化程序设计强调尽量采用、和逐步细化的原则,由粗到细一步步展开。
3.面向对象的程序设计通过对对象的辨别、划分,将软件系统分割为若干的部分,在一定程度上更便于控制软件复杂度,从而利于大型复杂软件的开发。
4.对软件开发小组成员间进行协同工作、提高开发效率与软件规范有重要的作用。
它一般包括命名规范、程序的注释规范、书写与排版规范。
5.软件测试按照程序是否被执行来分有与之分;按照是否要分析程序内部结构,又分为与。
6.软件测试包括:、、、等阶段。
二、思考与简答题
1.简述软件实现过程。
2.程序设计方法有哪些,各有什么特点?面向对象程序设计的优点有哪些?
3.程序编码规范有哪些?
4.为什么程序编码过程是一个复杂的过程?
5.软件测试的目的是什么?软件测试的方法有哪些?
6.简述软件测试过程,分别解释单元测试、集成测试、确认测试和系统测试的任务与过程。
第七章:软件维护
一、填空题
1.软件维护是在软件开发完成并交付客户使用后,为纠正错误或满足用户新的要求而软件的过程。
2.软件维护分为:、、、四种类型。
3.如果一款软件没有按软件工程规范来设计,且软件中缺少许多必要
的,则可能会对软件维护带来灾难性的困难。
4.如果软件的配置中只有代码部分,而没有相应的文档说明,在这种情况下进行的软件维护就是。
如果软件的配置是完整的,对这类软件的维护就是。
5.软件维护过程主要包括、、、、以及活动。
二、思考与简答题
1.软件维护包括哪些内容?
2.软件的可维护性与哪些因素有关?如何提高软件的可维护性?
3.简述软件维护的流程。
4.为什么说软件维护是一项困难的工作?
5.软件维护的副作用有哪些?如何避免软件维护的副作用?。