软件工程试卷

合集下载

计算机二级考试软件工程题库及答案

计算机二级考试软件工程题库及答案

计算机二级考试软件工程题库及答案一、选择题1. 下列哪个不是软件工程的基本特征?A. 可靠性B. 可维护性C. 可重复性D. 可移植性答案:C2. 软件需求分析的目的是什么?A. 建立软件体系结构B. 确定软件需求C. 设计软件模块D. 编写软件代码答案:B3. 下列哪个不是软件开发生命周期的阶段?A. 需求分析B. 设计C. 测试D. 销售答案:D二、填空题1. 软件工程的目标是提高软件的_________。

答案:质量2. 软件需求分析阶段的主要任务是对用户的需求进行_________。

答案:分析3. 软件测试的目的是为了发现软件中的_________。

答案:缺陷三、简答题1. 什么是软件开发生命周期?请简要描述各个阶段的主要任务。

答案:软件开发生命周期指的是软件从开始开发到结束的整个过程。

主要阶段包括需求分析、设计、编码、测试和维护。

需求分析阶段的主要任务是确定用户的需求;设计阶段的主要任务是根据需求设计软件的结构和模块;编码阶段的主要任务是根据设计编写软件代码;测试阶段的主要任务是发现并修复软件中的缺陷;维护阶段的主要任务是对软件进行更新和修复。

2. 请简要说明软件工程的重要性。

答案:软件工程的重要性体现在以下几个方面。

首先,软件工程可以提高软件的质量,确保软件能够满足用户的需求。

其次,软件工程可以提高软件的可维护性,使得软件可以持续更新和修复。

最后,软件工程可以提高软件的开发效率,节省时间和资源。

以上是计算机二级考试软件工程题库及答案的内容。

希望对您有所帮助!。

《软件工程》期末试卷(3套含答案)

《软件工程》期末试卷(3套含答案)

《软件工程》期末试卷(一)(满分100分)考试时间:120分钟(可根据具体情况适当调整)1.单项选择题(每题2分,共20分)(1)以下哪一项不属于软件工程三要素()。

A.过程B. 方法C. 工具D. 计划(2)以下哪一项不属于软件管理过程()。

A. ISO9000B. CMMC. IEEED. 软件企业文化(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. 包含关系、扩展关系2.填空题(每题2分,共20分)(1)需求分析员参与客户需求调研,撰写________________。

(2)_______________是软件策划的核心、重点与难点。

(3)软件由程序、数据和______________组成。

(4)______________是软件设计的基础,______________是软件开发的核心。

(5)需求分析分为两个阶段,_______________阶段和需求规约阶段。

(6)对象图的组成元素包括对象和______________。

软件工程试卷及答案多套精品试卷

软件工程试卷及答案多套精品试卷

软件工程试卷及答案多套精品试卷IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】软件工程试题及答案第一部分选择题一、单项选择题每小题1分,共20分。

(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)1.在下列工具与环境中()属于较早期的CASE。

A.基于信息工程CASE B.人工智能CASEC.结构的基于图形CASE D.集成的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。

软件工程理论与实践考核试卷

软件工程理论与实践考核试卷
9.在软件项目管理中,以下哪种方法用于评估项目进度和剩余工作量?()
A.甘特图
B.思维导图
C.PERT图
D. Gantt图
10.以下哪种编程范式强调程序组件的复用?()
A.面向对象编程
B.过程式编程
C.函数式编程
D.逻辑式编程
11.在软件架构中,以下哪个概念用于描述不同模块之间的依赖关系?()
A.接口
9.可靠性
10.版本控制
四、判断题
1. ×
2. √
3. ×
4. √
5. √
6. ×
7. ×
8. ×
9. √
10. ×
五、主观题(参考)
1.软件工程的基本目标是开发出具有高效性、可靠性和可维护性的软件产品。这些目标在软件开发过程中至关重要,因为它们确保了软件的质量,减少了开发成本和时间,并提高了用户满意度。
7.软件开发生命周期中的“V”模型主要强调的是测试阶段与开发阶段的____关系。
8.在软件设计中,____原则指导我们不应该对扩展开放的对象进行修改。
9.软件可维护性的衡量标准包括可理解性、可适应性、可扩展性和____。
10.软件配置管理(SCM)的主要职责是管理软件变更和____。
四、判断题(本题共10小题,每题1分,共10分,正确的请在答题括号中画√,错误的画×)
A.可理解性
B.可适应性
C.可扩展性
D.可靠性
12.在面向对象设计模式中,以下哪些属于结构型模式?()
A.装饰器模式
B.适配器模式
C.桥接模式
D.策略模式
13.以下哪些方法可以用来评估软件项目的成本?()
A.功能点分析
B.行业标准
C.专家判断

软件工程试卷及答案软件工程试题和答案

软件工程试卷及答案软件工程试题和答案

软件工程试卷及答案软件工程试题和答案软件工程试卷及答案第一部分:选择题(共40小题,每题2分,共80分)1. 软件工程的定义是:A. 软件设计和开发B. 软件项目管理C. 软件测试和维护D. 软件工程师的工作答案:A2. 下面哪个不是软件生命周期的阶段?A. 需求分析B. 设计C. 开发D. 运营答案:D3. 软件开发过程中的需求分析阶段的主要作用是:A. 编写代码B. 确定软件的功能和性能需求C. 进行软件测试D. 用户培训答案:B4. 下面哪项不是软件开发中常用的软件开发模型?A. 瀑布模型B. 敏捷开发模型C. 增量模型D. 平衡模型答案:D5. 软件项目管理中的关键路径是指:A. 工期最短的路径B. 工期最长的路径C. 工期变动最多的路径D. 工期变动最少的路径答案:B6. 软件测试的目标是:A. 发现尽可能多的缺陷B. 验证软件满足需求C. 确保软件质量D. 所有选项都是目标答案:D7. 下面哪项不是软件测试的类型?A. 单元测试B. 集成测试C. 系统测试D. 接口测试答案:D8. 软件维护的类型包括:A. 预防性维护B. 改正性维护C. 完善性维护D. 所有选项都是维护类型答案:D9. 下面哪个不是软件开发中常用的编程语言?A. JavaB. C++C. PythonD. HTML答案:D10. 软件配置管理包括以下哪些方面?A. 版本控制B. 缺陷管理C. 变更管理D. 所有选项都是配置管理的方面答案:D...第二部分:简答题(共4题,每题10分,共40分)1. 请简要介绍一下软件工程的基本原则。

答案:软件工程的基本原则包括:尽早发现和修复缺陷、适应需求变化、迭代开发、团队合作、持续改进。

这些原则旨在提高软件开发的效率和质量。

2. 什么是软件需求工程?请列举一些软件需求工程的主要活动。

答案:软件需求工程是确定和记录软件系统应当具备的功能、性能和接口要求等方面的活动。

软件需求工程的主要活动包括需求获取、需求分析、需求规格和需求验证等。

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

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

软件工程期末试题一单项选择题1.瀑布模型的存在问题是BA.用户容易参与开发B.缺乏灵活性C.用户与开发者易沟通D.适用可变需求2.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称做 CA.软件工程B.软件周期C.软件危机D.软件产生3.数据耦合、公共耦合、标记耦合、控制耦合的耦合性从低到高的顺序是 BA.数据、公共、标记、控制B.数据、标记、控制、公共C.控制、数据、标记、公共D.控制、数据、公共、标记4.在SD方法中全面指导模块划分的最重要的原则是DA.程序模块化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.为了提高软件的可维护性,在编码阶段应注意 DA.保存测试用例和数据B.提高模块的独立性C.文档的副作用D.养成好的程序设计风格11.设年利率为i,现存入p元,若计复利,n年后可得钱数为BA.p﹡1+i﹡n B.p﹡i+1nC.p﹡1+i﹡n D.p﹡i+n12.在考察系统的一些涉及时序和改变的状态时,要用动态模型来表示;动态模型着重于系统的控制逻辑,它包括两个图:一个是事件追踪图,另一个是A ;A .状态图 B. 数据流图 C. 系统结构图 D. 时序图13. 对象实现了数据和操作的结合,使数据和操作C 于对象的统一体中;A. 结合B. 隐藏C. 封装D. 抽象14. 软件详细设计的主要任务是确定每个模块的 A ;A. 算法和使用的数据结构B. 外部接口C. 功能D. 编程15. 软件结构图中,模块框之间若有直线连接,表示它们之间存在 A ;A. 调用关系B. 组成关系C. 链接关系D. 顺序执行关系16. 需求分析最终结果是产生B ;A. 项目开发计划B. 需求规格说明书C. 设计说明书D. 可行性分析报告17. 在详细设计阶段,经常采用的工具有A ;A. PADB. SAC. SCD. DFD18.因计算机硬件和软件环境的变化而作出的修改软件的过程称为 CA.教正性维护B.适应性维护C.完善性维护D.预防性维护20.为了提高软件的可维护性,在编码阶段应注意 DA.保存测试用例和数据B.提高模块的独立性C.文档的副作用D.养成好的程序设计风格1.面向对象开发方法包括OOA、OOD和OOP三部分;2.效益分有形效益和无形效益两种;有形效益可用纯收入、货币时间的价值、投资回收期等指标进行度量;无形效益主要从性质上、心理上进行衡量,很难直接进行量的比较;3.从应用特点的角度来看,我们可以把高级语言分为基础语言、结构语言和专用语言三类; 设计题已知有如下的伪代码程序:STARTI:=1;WHILE i:<=n-1 DOmin:=Ai;j:=i+1;WHILEj<=n DOIF min>AjTHENBLOCKtemp:=min;min:=Aj;Aj:=temp;ENDBLOCKENDIF;j:=j+1;ENDDOi:=i+1;ENDDOSTOP软件工程期末试题二一, 判断题正确的在括号内打上"√",错误的打上"×".每题1.5分,共15分Warnier方法也是一种面向数据结构的设计方法,其逻辑更严格.×PAD图在设置了五种基本控制结构后,还允许递归调用. × 你为了加快软件维护作业的进度,应尽可能增加维护人员的数目.×当验收测试通过,软件开发就完成了.×完成测试作业后,为了缩短源程序的长度应删除程序中的注解.×系统结构图是精确表达程序结构的图形表示法.因此,有时也可以将系统结构图当作系统流程图使用.×在程序调试时,找出错误的位置和性质比改正该错误更难.√以对象,类,继承和通信为基础的面向对象设计方法OOD也是常见的软件概要设计方法之一.√二,单项选择题每小题2分,共10分试判断下列叙述中,哪个些是正确的Da,软件系统中所有的信息流都可以认为是事务流b,软件系统中所有的信息流都可以认为是变换流c,事务分析和变换分析的设计步骤是基本相似的A,a B,b C,c D,b和c进行需求分析可使用多种工具,但B是不适用的.A,数据流图 B,PAD图 C,判定表 D,数据词典在详细设计阶段,经常采用的工具有A.A,PAD B,SA C,SC D,DFD详细设计的结果基本决定了最终程序的CA,代码的规模 B,运行速度 C,质量 D,可维护性使用白盒测试方法时,确定测试数据应根据A和指定的覆盖标准.A,程序的内部逻辑 B,程序的复杂程度C,该软件的编辑人员 D,程序的功能三,多项选择题每题2分,共10分.注:正确得2分,漏选得1分,多选,错选不得分. ABCD可以作为模块.A,子程序 B,函数 C,过程 D,编译文件下面哪些测试属于黑盒测试BCD.A,路径测试 B,等价类划分 C,边界值分析 D,错误推测 E,循环测试下列属于度量效益方法的是ABCD.A,货币的时间价值 B,投资回收期 C,收入 D,投资回报率软件维护的策略包括BCD.A,定期检测维护 B,改正性维护 C,适应性维护 D,完善性维护下列属于软件测试过程的是ABE.A,单元测试 B,组装测试 C,内核测试 D,法律验证 E,确认测试四,简答题每题6分,共24分1、耦合性和内聚性有几种类型其耦合度,内聚强度的顺序如何答案:低:非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合:高强:功能内聚,信息内聚,通信内聚,过程内聚,时间内聚,逻辑内聚,偶然内聚:弱2、请举例说明什么是多态,什么是重载答案:多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象.也就是说,在类等级的不同层次中可以共享公用一个行为方法的名字,然而不同层次中的每个类却各自按自己的需要来实现这个行为.当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法.3、重载是指一个类中有多个同名的方法,但在操作数个数或类型上有区别.例: public class A{int age;String name;public void setValueint i {age=i; }public void setValueString s {name=s; }4、什么是数据字典简述数据字典与数据流图的关系.答案:数据字典是关于数据的信息的集合,对数据流程图中的各个元素做完整的定义与说明,是数据流程图的补充工具.2分数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格,然而没有数据流图数据字典也难于发挥作用. 数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明.3分5、简述编码风格的重要性.答案:阅读程序是软件开发和维护过程中的一个重要组成部分,程序实际上也是一种供人阅读的文章.应当在编写程序时讲求程序的风格,这将大量地减少人们读程序的时间.良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量.面向对象的测试和传统开发方法的测试有什么不同答案:1二者都可以分成四个阶段进行.但传统测试最小单元是模块,而在面向对象环境下,最小的可测试的单元是封装了的类或对象,而不是程序模块.2因为面向对象软件没有一个层次的控制结构,所以传统的自顶向下和自底向上的组装策略意义不大. 每次将一个操作组装到类中像传统的增殖式组装那样常常行不通,因为在构成类的各个部件之间存在各种直接的和非直接的交互.对于面向对象系统的组装测试,存在两种不同的测试策略.软件工程期末试卷三2004年下半年期末考试开放教育本科计算机科学与技术专业软件工程试题B2005年1月一、填空题每空1分,共20分1.软件生存周期一般可分为__________、可行性研究、__________、设计编码、__________、运行与维护阶段;2.IPO图由__________、__________和__________三个框组成;3.软件=__________+__________;4.软件测试的方法有__________和__________即黑盒法;5.Jackson图除了可以表达程序结构外,还可以表达__________;6.详细设计的工具有图形工具、__________和__________;7.__________和__________共同构成系统的逻辑模型;8.成本估计方法主要有__________、__________和算法模型估计三种类型;9.在需求分析阶段常用的图形工具有__________、__________、__________三种;答案:填空题每空1分,共20分1、问题定义需求分析测试2、输入处理输出3、程序文档4、分析方法非分析方法5、数据结构6、表格工具语言工具7、数据流图数据字典8、自顶向下估计自底向上估计9、层次方框图Warnier图IPO图二、单项选择题每小题2分,共10分1.系统流程图是描绘的传统工具;A、逻辑系统B、数据结构C、状态变迁D、物理系统2.下列模块独立性最强的是A、非直接耦合B、数据耦合C、公共耦合D、内容耦合3.下列哪个阶段不属于软件生存周期的三大阶段;A、计划阶段B、开发阶段C、编码阶段D、维护阶段4.常见的软件概要设计方法有3大类,其中以数据流图为基础构造模块结构的是;A、J ackson方法和LCPWanier逻辑构造方法B、结构化设计方法SDC、面向对象设计方法OODD、快速原型法5.使用白盒测试方法时,确定测试数据应根据和指定的覆盖标准;A、程序的内部逻辑B、程序的复杂程度C、该软件的编辑人员D、程序的功能答:1、D 2、A 3、C 4、A 5、A三、多项选择题每题2分,共10分1.可以作为模块;A、子程序B、函数C、过程D、编译文件2.关于内容耦合的描述正确的是;A、内容耦合是最高程度的耦合B、高级语言一般设计成允许内容耦合的形成C、应该尽量使用内容耦合D、如果一个模块可以直接调用另一模块,则可以称为内容耦合3.下列属于度量效益方法的是;A、货币的时间价值B、投资回收期B、收入D、投资回报率4.软件维护的策略包括;A、定期检测维护B、改正性维护C、适应性维护D、完善性维护5.下列不属于软件测试过程的是;A、单元测试B、组装测试C、内核测试D、法律验证答:1、ABCD 2、AD 3、ABC 4、BCD 5、CD四、判断题正确的在括号内打上“√”,错误的打上“×”;每题2分,共20分1.Warnier方法也是一种面向数据结构的设计方法,其逻辑更严格;2.PAD图在设置了五种基本控制结构后,还允许递归调用;3.为了加快软件维护作业的进度,应尽可能增加维护人员的数目;4.当验收测试通过,软件开发就完成了;5.完成测试作业后,为了缩短源程序的长度应删除程序中的注解;6.在进行总体设计时应加强模块间的联系;7.系统结构图是精确表达程序结构的图形表示法;因此,有时也可以将系统结构图当作系统流程图使用;8.用黑盒法测试时,测试用例是根据程序内部逻辑设计的;9.在程序调试时,找出错误的位置和性质比改正该错误更难;10.以对象、类、继承和通信为基础的面向对象设计方法OOD也是常见的软件概要设计方法之一;答:1—5:√√×××6—10:×××√√五、简答题每题5分,共20分1.什么是软件危机为什么会产生软件危机答:软件危机是指软件在开发和维护过程遇到的一系统严重问题,主要包含二方面的问题,一是如何开发利用软件,三是如何维护数量不断膨胀的已有软件.产生软件危机的原因,一方面与软件本身的特点有关,另一方面和软件开发与维护的方法不正确有关;2.什么是软件的生存周期包括哪几个部分答:个软件从定义到开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期;软件生存周期就是从提出软件产品开始,直到该软件产品被淘汰的全过程;它包括制定计划、需求分析、软件设计、程序编写、软件测试、运行维护等;3.什么是黑盒测试法答:黑盒测试法把程序看成一个黑盒子,完全不考虑程序的内部结构和处理过程,它只检查程序功能是否能按照规格说明书的规定正常使用,程序是否能适当地接收输入数据,产生正确地输出信息;4.耦合性和内聚性有几种类型其耦合度、内聚强度的顺序如何答:低:非直接耦合→数据耦合→标记耦合→控制耦合→外部耦合→公共耦合→内容耦合:高强:功能内聚→信息内聚→通信内聚→过程内聚→时间内聚→逻辑内聚→巧合内聚:弱六、分析设计题共20分1.8分假设开发某个计算机应用系统的投资额为3000元,该计算机应用系统投入使用后,每年可以节约1000元,5年内可能节约5000元;3000元是现在投资的钱,5000元是5年内节省的钱,假定年利率为12%,请计算该系统的纯收入,投资回收期,投资回收率;投资回收期:3+3000-2407.15/3044.09-2407.15=3.93投资回收率为r3000=1000/1+r+1000/1+r2+1000/1+r3+1000/1+r4+1000/1+r5解得r=20%2.求一组数组中的最大数, 数组表示为An ,n=1,2……n的自然数;12分1)请画出程序流程图4分2)请画出该算法的N-S图4分3)请用PAD图来表示该算法4分答:121.4分3软件工程期末试卷四一、简答题25%, 每小题5分:1.请简要说明需求分析的三个层次包括那些主要内容;软件需求包括三个不同的层次—业务需求、用户需求和功能需求—也包括非功能需求;业务需求反映了组织机构或客户对系统、产品高层次的目标要求;用户需求文档描述了用户使用产品必须要完成的任务;功能需求定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求;2.为什么要设计独立性强的模块以及如何判断模块的独立性第一3分,耦合1分,内聚1分模块独立性强,则:1系统容易开发2系统可靠性高3系统容易维护判断模块独立性的基本原则:“耦合小,内聚大”3.若现有类已经进行了彻底的测试,为什么必须对从现有类中实例化的子类进行重新测试使用的场景:3分. 2分因为父类和子类的运行环境是不同的;另外,如果是多重继承会显著地增加派生类的复杂程度,导致一些难以发现的隐含错误;4.要开发质量“非常好”的软件,请从软件工程的角度分析其利与弊;利:3分;弊:2分利:容易维护,用户比较满意弊:成本高,周期长5、采用面向对象方法设计软件系统时,子系统的划分常采用水平划分或垂直划分的方式,请说明这两种划分所得子系统的特点;c/s:3分,p2p:2分水平划分系统的p2p:每个字系统可以调用任意其他子系统,比c/s复杂,可能死锁;垂直划分c/s:客户端调用服务器端,服务器提供服务,并返回结果;客户端需要知道服务器的接口,而服务器不必知道客户端接口;二、应用题45%,1-3每小题10分,4小题15分1.公司计划采用新技术开发一款新的软件产品,希望尽快占领市场,假设你是项目经理,你会选择哪种软件过程模型为什么选模型:5分;原因:5分选用模型:可采用增量模型/增量+ 原形/螺旋模型等等;但如果采用快速开发则不太适宜;分析原因:技术相对比较新,而且需要快速占领市场,所以应短期内出现产品的原形或者是可用的子系统;2.请根据下面的任务安排表,画出任务网络图、甘特图、标识关键路径和阶段里程碑位置;任务网络图:甘特图任务网络图3分 甘特图3分 标识关键路径2分 阶段里程碑位置2分;3.设有一个程序,读入三个整数,代表三角形的三条边;输出表明三角形是不规则的、等腰的或等边的;请采用黑盒的等价类划分方法,设计一组测试用例; 不规则:3 4 5等腰:3 3 4 等边:3 3 3 其他:1 9 2不规则的3分时间3.13.63.113.163.213.263.30活动需求分析 测试计划 概要设计 测试方案设计详细设计编码 产品测试 文档整理等腰3分 等边3分 其他1分4.设计一个简化的网上个人银行查询系统,用户可以通过Internet 查询自己帐户的收支明细、余额和修改密码; 一采用结构化方法:7分1请画出E-R 图2分DFD 图的第0层和第1层;3分 2)编写两个关键词条的数据字典;2分E-R 图DFD 图第0层输入命令: 查询帐户明细 查询帐户余额 修改密码数据字典:名称:帐号别名:无何处使用/如何使用:登陆帐户时需要输入描述:帐户的唯一标识,每个帐户对应一个帐号帐号= 12个数字名称:帐户密码别名:无何处使用/如何使用:登陆帐户时输入;修改密码时输入,修改成功后保存到帐户数据库描述:密码=6个字母二采用面向对象方法:8分1请画出系统的用例图;2分2)识别出系统的主要类2分User、Account、DetailItem主要要包括用户、帐户、收支明细等类;并画其中的二个类图包含主要属性和操作;2分3画一个UML时序图,描述一次通过网上银行查询余额的具体交互;2分软件工程期末试卷五一、填空题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.软件危机可以表现为ABCD ;A.产品不符合用户的需要B.软件产品的质量差C.软件的可维护性差D.软件的价格昂贵2.Jackson图中一般可能包括ABCD ;A.表头B.表体C.表名D.字段名3.关于内容耦合的描述正确的是AD ;A、内容耦合是最高程度的耦合B、应该尽量使用内容耦合C、高级语言一般设计成允许内容耦合的形式D、如果一个模块有多个入口,可能发生内容耦合4.下列属于不标准的书写格式BCD ;A、书写时适当使用空格分隔B、一行写入多条语句C、嵌套结构不使用分层缩进的写法D、程序中不加注释四、判断题正确的在括号内打上“√”,错误的打上“”1.软件生存周期是从软件开始开发到开发结束的整个时期;×2.系统流程图是一个典型的描述逻辑系统的传统工具; ×3.数据流图和数据字典共同构成系统的逻辑模型; √4.扇出是一个模块直接调用的模块数目,一般推荐的扇出为3或4; √5.耦合用于衡量一个模块内部的各个元素彼此结合的紧密程度; ×6.程序运行过程中出现错误叫做容错; ×7.软件测试的目的是证明程序没有错误; ×8.白盒测试法是将程序看成一个透明的盒子,不需要了解程序的内部结构和处理过程;×五、问答题1.什么是软件生存周期;答:一个软件从定义到开发、使用和维护,直到最终被废弃,要经历一个漫长的时期,通常把软件经历的这个漫长的时期称为生存周期;软件生存周期就是从提出软件产品开始,直到该软件产品被淘汰的全过程;2.在需求分析阶段,建立目标系统的逻辑模型的具体做法是什么;答:系统流程图是描述物理系统的传统工具;它的基本思想是用图形符号以黑盒子形式描绘系统里的每个部件程序、文件、数据库、表格、人工过程等;系统流程图表达的是部件的信息流程,而不表示对信息进行加工处理的控制过程;3.为什么数据流图要分层答:这了表达数据处理过程的数据加工情况,用一个数据流图是不够的;为表达稍为复杂的实际问题,需要按照问题的层次结构进行逐步分解,并以分层的数据流图反映这种结构关系;4.软件的质量反应为哪些方面的问题答:软件需求是度量软件质量的基础,不符合需求的软件就不具备质量;在各种标准中定义了一些开发准则,用来指导软件人员用工程化的方法来开发软件;如果不遵守这些开发准则,软件质量就得不到保证;往往会有一些隐含的需求没有明确地提出来;如果软件只满足那些精确定义了的需求而没有满足这些隐含的需求,软件质量也不能保证;软件质量是各种特性的复杂组合;它随着应用的不同而不同,随着用户提出的质量要求不同而不同;软件工程期末试卷六软件工程导论试题一.选择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、软件工程方法学的目的是:使软件生产规范化和工程化,而软件工程方法得以实施的主要保证是CA、硬件环境B、软件开发的环境C、软件开发工具和软件开发的环境D、开发人员的素质6、软件开发常使用的两种基本方法是结构化和原型化方法,在实际的应用中,它们之间的关系表现为 BA、相互排斥B、相互补充C、独立使用D、交替使用7、UML是软件开发中的一个重要工具,它主要应用于哪种软件开发方法CA、基于瀑布模型的结构化方法B、基于需求动态定义的原型化方法C、基于对象的面向对象的方法D、基于数据的数据流开发方法8、在下面的软件开发方法中,哪一个对软件设计和开发人员的开发要求最高BA、结构化方法B、原型化方法C、面向对象的方法D、控制流方法9、结构化分析方法是一种预先严格定义需求的方法,它在实施时强调的是分析对象的BA、控制流B、数据流C、程序流D、指令流10、软件开发的结构化生命周期方法将软件生命周期划分成AA、计划阶段、开发阶段、运行阶段B、计划阶段、编程阶段、测试阶段C、总体设计、详细设计、编程调试D、需求分析、功能定义、系统设计11、软件开发中常采用的结构化生命周期方法,由于其特征而一般称其为AA、瀑布模型B、对象模型C、螺旋模型D、层次模型12、软件开发的瀑布模型,一般都将开发过程划分为:分析、设计、编码和测试等阶段,一般认为可能占用人员最多的阶段是 CA、分析阶段B、设计阶段C、编码阶段D、测试阶段二.填空21.系统流程图是描述物理模型的传统工具,用图形符号表示系统中各个元素表达了系统中各种元素之间的信息流动情况;解析系统流程图是描述物理系统的传统工具,用图形符号表示系统中的各个元素,如人工处理、数据处理、数据库、文件、设备等,表达了元素之间的信息流动的情况;22.成本效益分析的目的是从经济角度评价开发一个项目是否可行;解析成本效益分析首先是估算将要开发的系统的开发成本,然后与可能取得的效益进行比较和权衡,其目的是从经济角度评价开发一个新的软件项目是否可行; 23.自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和宽度优先策略;解析渐增式测试法有自顶向下结合和自底向上结合两种组装模块的方法,其中自顶向下集成是构造程序结构的一种增量式方式,不需要编写驱动模块,只需要编写桩模块;它从。

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

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

软件工程期末试卷(十套含答案)-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、在结构化设计(SD)方法中全面指导模块划分的最重要的原则是( )A、程序模块化B、模块高内聚C、模块低耦合D、模块独立性2、软件维护产生的副作用,是指( )A、开辟时的错误B、隐含的错误C、因修改软件而造成的错误D、运行时误操作3、软件详细设计的主要任务是确定每一个模块的( )A、算法和使用的数据结构B、外部接口C、功能D、编程4、为了提高模块的独立性,模块内部最好是( )A、逻辑内聚B、时间内聚5、软件是一种( )A、程序B、数据C、功能内聚C、逻辑产品D、通信内聚D、物理产品6、因计算机硬件和软件环境的变化而作出的修改软件的过程称为( )A、纠正性维护B、适应性维护C、完善性维护D、预防性维护7、惟独单重继承的类层次结构是( )层次结构。

A、网状型B、星型C、树型D、环型8、下列属于维护阶段的文档是( )A、软件规格说明B、用户操作手册C、软件问题报告D、软件测试分析报告9、不适合作为科学工程计算的语言是( )A 、Pascal B、 C C、Fortran D、 Prolog10、研究开辟所需要的成本和资源是属于可行性研究中的( )研究的一方面。

A. 技术可行性B. 经济可行性C. 社会可行性D. 法律可行性11、中级结构性成本模型 COCOMO 是一个( )A、静态单变量模型B、动态单变量模型C、静态多变量模型D、动态多变量模型12、PAD 图为( )提供了有力的工具。

A、系统分析B、软件的自动化生成C、自动分析数据D、测试软件13、下列关于JSP 方法不正确的说法是( )A、JSP 方法主要用于规模不大的数据处理系统B 、JSP 方法不明确的划分软件概要设计和详细设计的两个阶段C、JSP 方法合用于输入数据和输出数据之间有对应关系的问题求解D、JSP 方法根据输入、输出的数据结构,按一定的规则映射成软件的体系结构。

因此它只适用于详细设计阶段14、在详细设计阶段,时常采用的工具有( )A 、PADB 、SA C、SCD 、DFD15、确认软件的功能是否与需求规格说明书中所要求的功能相符的测试属于( )A、集成测试B、恢复测试C、验收测试D、单元测试16、盒图(N-S 图)为( )提供了有力的工具。

软件工程试卷

软件工程试卷

7.瀑布模型的存在问题是()A. 用户容易参与开发B. 缺乏灵活性C. 用户与开发者易沟通D. 适用可变需求8.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。

A.结合 B.隐藏 C.封装 D.抽象9.水果类和香蕉类之间的关系是()A.关联关系B.泛化关系C.依赖关系D.聚集关系10.下列情况中()不会增加维护的成本。

A.严格的测试B.开发人员流失C.文档不健全二、判断题(每题3分共30分)(A代表正确,B代表错误)1.测试只能证明程序有错误,不能证明程序没有错误。

( )2.模块化程序设计中,模块越小,模块化的优点越明显,模块的大小都在10行以下。

( )3.在编制程序时,首先应该对程序的结构充分考虑,不要急于开始编码,而要像写软件文档那样,很好地琢磨程序具有什么样的功能,这些功能如何安排等等。

( )4.软件详细设计的主要任务是确定每个模块的外部接口。

( )5.用黑盒法测试时,测试用例是根据程序内部逻辑设计的。

( )6.软件结构图的形态特征能反映程序重用率的是扇入。

( )7.为了加快软件维护作业的进度,应尽可能增加维护人员的数目。

( )8.当验收测试通过,软件开发就完成了。

( )9.质量保证是为了保证产品和服务充分满足消费者要求的质量而进行的有计划,有组织的活动。

( )10.软件测试是要发现软件中的所有错误。

( )三、简答题(每题10分共40分)1.软件危机的主要产生原因是什么?2.用结构化设计方法将数据流图转换为软件结构的步骤有哪些?3.什么是软件过程?4.简述软件项目管理主要任务。

软件工程实践考核试卷

软件工程实践考核试卷
A.提高软件开发效率
B.减少软件开发成本
C.提高软件质量和可维护性
D.以上都是
2.下列哪种方法不是软件需求分析常用的方法?()
A.数据流图(DFD)
B.用例图
C.类图
D.波特图
3.在软件开发过程中,下列哪项活动属于设计阶段?()
A.编码
B.测试
C.需求分析
D.概要设计
4.下列哪种编程范式不属于面向对象编程?()
15. D
第二部分多选题
1. ABCD
2. ABCD
3. ABCD
4. ABCD
5. ABC
6. ABCD
7. ABC
8. ABC
9. ABCD
10. ABCD
11. ABCD
12. ABCD
13. ABCD
14. ABCD
15. ABCD
第三部分判断题
1. √
2. ×
3. ×
4. √
5. ×
6. √
5.关于软件测试,以下哪些说法是正确的?()
A.单元测试通常由开发者执行
B.集成测试用于测试模块间的交互
C.系统测试关注整个系统的行为
D.所有测试应当在编码完成前进行
6.敏捷开发方法包括以下哪些特点?()
A.短周期迭代开发
B.客户合作大于合同谈判
C.重视工作软件胜过详尽的文档
D.团队内聚大于流程和工具
1.软件工程是应用科学和工程原理来设计、开发、测试和评估软件和系统的一门学科。()
2.在软件开发过程中,需求分析阶段是在设计阶段之后进行的。()
3.面向对象编程语言不支持多态这一特性。()
4.敏捷开发强调快速响应变化,而不是遵循预先制定的计划。()

软件工程试卷

软件工程试卷

一、单项选择题(每题2分,共40分)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、SA方法的分析步骤是首先调查了解当前系统的工作流程,然后()。

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、在软件开发过程中,以下说法正确的是()。

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

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

软件工程期末试卷(十套含答案)一、选择题(每题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. 假设你是一个软件开发人员,你需要为一个在线购物网站开发一个支付系统。

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

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

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

2024年下半年软件工程自考试卷含解析

2024年下半年软件工程自考试卷含解析

2024年下半年软件工程自考试卷一、单项选择题1、RUP的迭代、增量式开发过程中,需要估算成本、进度,并能够减少次要的错误风险,至少需要完成______。

A.初始阶段B.精化阶段C.构造阶段D.移交阶段2、CMMI组织过程改善的成熟度等级中的2级是______。

A.已执行级B.已定义级C.已管理级D.已定量管理级3、在常见的软件开发模型中,主要用于支持面向对象技术软件开发的是______。

A.喷泉模型B.螺旋模型C.增量模型D.瀑布模型4、类的状态机一般有几种不同的运行状态,其中处于等待接收事件,接收处理完事件后又进入等待状态,通常采用______。

A.IdleB.InitializingC.CommandD.Active5、使用用况图可以实现业务建模和系统建模,而得到业务模型和系统模型之间具有的关系是______。

A.整体/部分B.一般/特殊C.功能/过程D.静态/动态6、下列不属于创建一个系统的类图步骤是______。

A.模型化待建系统中的概念,形成类图中基本元素B.模型化待建系统中的各种关系,形成该系统的初始关系C.模型化系统中的接口,不需给出该系统的最终类图D.模型化逻辑数据库模式7、在建模过程中,可用以描述加工的工具是______。

A.数据流B.判定树C.数据字典D.数据存储8、集成化能力成熟度模型(CMMI)针对每个过程域设定了能力等级,其中最高级为______。

A.3级B.4级C.5级D.6级9、黑盒测试技术又称为功能测试技术,包括事务处理流程技术、定义域测试技术和______。

A.路径测试技术B.用例测试技术C.状态测试技术D.结构测试技术10、软件工程在20世纪60年代末到80年代初获得的主要成果有______。

A.CASE产品B.面向对象语言C.瀑布模型D.软件生存周期过程11、集成化能力成熟度模型(CMMI)中有22个过程域,分为4类:项目管理类、工程类、过程管理类和______。

软件工程中的设计模式考核试卷

软件工程中的设计模式考核试卷
A.访问者模式
B.策略模式
C.状态模式
D.职责链模式
二、多选题(本题共20小题,每小题1.5分,共30分,在每小题给出的四个选项中,至少有一项是符合题目要求的)
1.以下哪些是设计模式的基本分类?()
A.创建型模式
B.结构型模式
C.行为型模式
D.数据型模式
2.以下哪些是设计模式的原则?()
A.单一职责原则
3.描述工厂方法模式的结构和优点,同时说明它解决了哪些问题。
4.请阐述观察者模式的核心思想和应用场景,并画出一个观察者模式的UML类图。
标准答案
一、单项选择题
1. B
2. D
3. C
4. A
5. D
6. D
7. C
8. C
9. A
10. B
11. A
12. A
13. D
14. A
15. B
16. A
A.模板方法模式
B.状态模式
C.策略模式
D.职责链模式
18.以下哪些模式可以用于在不违背开放封闭原则的前提下,对已有的类进行扩展?()
A.装饰器模式
B.代理模式
C.适配器模式
D.访问者模式
19.以下哪些模式可以用于降低系统的复杂度?()
A.外观模式
B.享元模式
C.访问者模式
D.桥接模式
20.以下哪些模式可以用于实现对象的多次复用?()
B.开放封闭原则
C.里氏替换原则
D.接口隔离原则
3.以下哪些模式属于创建型模式?()
A.工厂方法模式
B.抽象工厂模式
C.建造者模式
D.原型模式
4.以下哪些模式属于结构型模式?()
A.适配器模式

软件工程期末试卷(十套含问题详解)

软件工程期末试卷(十套含问题详解)

软件工程期末试题(一)单项选择题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 )于对象的统一体中。

软件工程试卷(附答案)

软件工程试卷(附答案)

软件工程试卷(附答案)一、单项选择题(每题2分,共40分)1.软件生存周期模型有多钟,下列选项中,(C)不是软件生存周期模型。

A.螺旋模型B.增量模型C.功能模型D.瀑布模型2.以下说法错误的是(C)。

A.增量模型是在瀑布模型的基础上加以修改而形成的B.增量模型推迟某些阶段或所有阶段中的细节,从而较早地产生工作软件C.瀑布模型和增量模型都属于整体开发模型D.瀑布模型规定在开始下一个阶段的工作之前,必须完成前一阶段的所有细节 3.可行性分析中,系统流程图用于描述(A)。

A.当前运行系统C.目标系统B.当前逻辑模型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)。

软件工程试题含答案

软件工程试题含答案

软件工程期末试题(1)一, 判断题(正确的在括号内打上"√",错误的打上"×".每题1.5分,共15分)Warnier方法也是一种面向数据结构的设计方法,其逻辑更严格.(×) PAD图在设置了五种基本控制结构后,还允许递归调用. (×) 你为了加快软件维护作业的进度,应尽可能增加维护人员的数目.(×) 当验收测试通过,软件开发就完成了.(×)完成测试作业后,为了缩短源程序的长度应删除程序中的注解.(×) 系统结构图是精确表达程序结构的图形表示法.因此,有时也可以将系统结构图当作系统流程图使用.(×)在程序调试时,找出错误的位置和性质比改正该错误更难.(√) 以对象,类,继承和通信为基础的面向对象设计方法(OOD)也是常见的软件概要设计方法之一.(√)二,单项选择题(每小题2分,共10分)试判断下列叙述中,哪个(些)是正确的(D)a,软件系统中所有的信息流都可以认为是事务流b,软件系统中所有的信息流都可以认为是变换流c,事务分析和变换分析的设计步骤是基本相似的A,a B,b C,c D,b和c进行需求分析可使用多种工具,但(B)是不适用的.A,数据流图B,PAD图C,判定表D,数据词典在详细设计阶段,经常采用的工具有(A).A,PAD B,SA C,SC D,DFD详细设计的结果基本决定了最终程序的(C)A,代码的规模B,运行速度C,质量D,可维护性使用白盒测试方法时,确定测试数据应根据(A)和指定的覆盖标准. A,程序的内部逻辑B,程序的复杂程度C,该软件的编辑人员D,程序的功能三,多项选择题(每题2分,共10分.注:正确得2分,漏选得1分,多选,错选不得分.)(ABCD)可以作为模块.A,子程序B,函数C,过程D,编译文件下面哪些测试属于黑盒测试(BCD).A,路径测试B,等价类划分C,边界值分析D,错误推测E,循环测试下列属于度量效益方法的是(ABCD).A,货币的时间价值B,投资回收期C,收入D,投资回报率软件维护的策略包括(BCD).A,定期检测维护B,改正性维护C,适应性维护D,完善性维护下列属于软件测试过程的是(ABE).A,单元测试B,组装测试C,内核测试D,法律验证E,确认测试四,简答题(每题6分,共24分)1、耦合性和内聚性有几种类型其耦合度,内聚强度的顺序如何答案:低:非直接耦合,数据耦合,标记耦合,控制耦合,外部耦合,公共耦合,内容耦合:高强:功能内聚,信息内聚,通信内聚,过程内聚,时间内聚,逻辑内聚,偶然内聚:弱2、请举例说明什么是多态,什么是重载答案:多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象.也就是说,在类等级的不同层次中可以共享(公用)一个行为(方法)的名字,然而不同层次中的每个类却各自按自己的需要来实现这个行为.当对象接收到发送给它的消息时,根据该对象所属于的类动态选用在该类中定义的实现算法.3、重载是指一个类中有多个同名的方法,但在操作数个数或类型上有区别.例: public class A{int age;String name;public void setValue(int i) {age=i; }public void setValue(String s) {name=s; }4、什么是数据字典简述数据字典与数据流图的关系.答案:数据字典是关于数据的信息的集合,对数据流程图中的各个元素做完整的定义与说明,是数据流程图的补充工具.(2分)数据流图和数据字典共同构成系统的逻辑模型,没有数据字典数据流图就不严格, 然而没有数据流图数据字典也难于发挥作用. 数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明.(3分)5、简述编码风格的重要性.答案:阅读程序是软件开发和维护过程中的一个重要组成部分,程序实际上也是一种供人阅读的文章.应当在编写程序时讲求程序的风格,这将大量地减少人们读程序的时间.良好的编码风格有助于编写出可靠而又容易维护的程序,编码的风格在很大程度上决定着程序的质量.面向对象的测试和传统开发方法的测试有什么不同答案:(1)二者都可以分成四个阶段进行.但传统测试最小单元是模块,而在面向对象环境下,最小的可测试的单元是封装了的类或对象,而不是程序模块.(2)因为面向对象软件没有一个层次的控制结构,所以传统的自顶向下和自底向上的组装策略意义不大. 每次将一个操作组装到类中(像传统的增殖式组装那样)常常行不通,因为在构成类的各个部件之间存在各种直接的和非直接的交互.对于面向对象系统的组装测试,存在两种不同的测试策略.软件工程期末试卷(2)(开放教育本科)计算机科学与技术专业《软件工程》试题B一、填空题(每空1分,共20分)1.软件生存周期一般可分为__问题定义__、可行性研究、__需求分析_、设计编码、_测试_、运行与维护阶段。

软件工程基础理论与实践考核试卷

软件工程基础理论与实践考核试卷
4.软件测试的目的是找出软件中的____,并确保其满足规定的需求。
5.敏捷开发方法强调____、____和持续改进。
6. UML是____的缩写,它是一套标准化的图形表示法。
7.软件项目管理的目标是____、____和____。
8.软件维护的____类型是指对软件进行修改以适应环境的变化。
9.软件复用的层次包括____、____和____。
A.设计审查、代码审查、测试
B.需求分析、设计、编码
C.计划、监控、记录
D. A和C
12.以下哪个不是软件工程的三个基本要素之一()
A.工具
B.过程
C.方法
D.技术
13.在UML中,用于表示系统对外部系统交互的图是()
A.类图
B.序列图
C.协作图
D.用例图
14.下列哪个不是软件工程方法()
A.结构化方法
8.下列哪个不是软件维护的类型()
A.纠错性维护
B.适应性维护
C.完善性维护
D.预防性维护
9.在软件项目管理中,下列哪种图表用于进度控制()
A. Gantt图
B.思维导图
C.直方图
D.散点图
10.下列哪种方法不是软件项目估算技术()
A.类推估算
B.算术平均值估算
C.实际进度估算
D.专家评审
11.软件质量保证(SQA)主要包括哪些活动()
C.风险监控
D.风险记录
20.关于软件复用,以下说法正确的是()
A.软件复用可以减少开发成本和时间
B.软件复用意味着直接使用现成的软件
C.软件复用主要关注代码级别的复用
D.软件复用可以提高软件质量
二、多选题(本题共20小题,每小题1.5分,共30分,在每小题给出的四个选项中,至少有一项是符合题目要求的)
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、名词解释(15分)
1.软件工程
2.结构化方法
3.软件可靠性
4.对象与类
5.变更控制
二、填空(20分)
1.增量模型适合于________不明确、设计方案有一定风险的软件项目。

2.结构化分析方法的分析策略是__________。

3.可行性研究实质上是要在较高层次上以较抽象的方式进行___________的过程。

4.衡量模块独立性的两个定性标准是_________。

5.Jackson方法是一种面向______________的设计方法。

6.软件集成测试的方法主要有两种,它们是__________。

7.维护阶段是软件生存周期中花费精力和费用_____________的阶段。

8.继承性是子类自动共享其父类的______________机制。

9.在面向对象方法中,人们常用状态图描述类中对象的___________。

10.规定功能的软件,在一定程度上能从错误状态自动恢复到正常状态,则称该软件为_________软件。

三、选择(20分)
1.需求分析中,开发人员要从用户那里解决的最重要的问题是( )。

A、要让软件做什么
B、要给该软件提供哪些信息
C、要求软件工作效率怎样
D、要让该软件具有何种结构
2.DFD中的每个加工至少有( )。

A、一个输入流或一个输出流
B、一个输入流和一个输出流
C、一个输入流
D、一个输出流
3.详细设计与概要设计衔接的图形工具是( )。

A、DFD图
B、SC图
C、PAD图
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.投入使用
四.简答题(20分)
1.为了提高设计质量,应从哪几方面优化软件结构?
2.集成测试阶段,渐增式与非渐增式测试有哪些区别?
3.说明瀑布模型的局限性。

4.说明面向对象的特征。

5.软件工程管理包括哪些内容?
五.综合应用(25分)
1.某“调整工资”处理模块接受一个“职称”的变量,根据职称的不同(助教,讲师,副教授,教授)作不同的处理,其中若是助教还必须输入工龄,只有工龄超过两年才能调整工资。

请用等价类划分法设计测试用例。

(7分)〔答案〕
2.某图书馆借阅系统有以下功能:
(1)借书:根据读者的借书证查询读者档案,若借书数目未超过规定数量,则办理借阅手续(修改库存记
录及读者档案),超过规定数量者不予借阅。

对于第一次借阅者则直接办理借阅手续。

(2)还书:根据读者书中的条形码,修改库存记录及读者档案,若借阅时间超过规定期限则罚款。

请对以上问题,画出分层数据流图。

(8分)
3.某报社采用面向对象技术实现报刊征订的计算机管理系统,该系统基本需求如下:
(1)报社发行多种刊物,每种刊物通过订单来征订,订单中有代码,名称,订期,单价,份数等项目,订户通过填写订单来订阅报刊。

(2)报社下属多个发行站,每个站负责收集登陆订单、打印收款凭证等事务。

(3)报社负责分类并统计各个发行站送来的报刊订阅信息。

请就此需求建立对象模型。

(10分)
模拟试卷二参考答案
一、(略)
二、填空
1.软件需求
2.自顶向下逐步求精
3.需求分析和设计
4.耦合性与内聚性
5.数据结构
6.渐增式与非渐增式测试
7.最多8.数据结构和方法
9.动态行为 10.容错
三、选择
1.A
2.B
3.B
4.D
5.A
6.C
7.A 8.D
9.C 10.A
四、(略)
五、综合应用
1.划分等价类:
设计测试用例:
2.
3.。

相关文档
最新文档