南通大学软件工程复习题(选择题)

合集下载

大学软件工程试题及答案

大学软件工程试题及答案

大学软件工程试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的主要目标是()。

A. 提高软件的可维护性B. 提高软件的可读性C. 提高软件的生产率和质量D. 降低软件的成本答案:C2. 软件需求分析阶段的主要任务是()。

A. 确定软件的功能和性能要求B. 设计软件的总体结构C. 编写软件的详细设计文档D. 进行软件的测试答案:A3. 在软件设计中,模块化设计的主要目的是()。

A. 提高软件的运行效率B. 提高软件的可重用性C. 提高软件的可维护性D. 降低软件的开发成本答案:C4. 软件测试的目的是()。

A. 验证软件的功能是否正确B. 发现并修复软件中的错误C. 评估软件的性能D. 以上都是答案:D5. 软件维护不包括以下哪项活动()。

A. 改正性维护B. 适应性维护C. 完善性维护D. 软件的设计和编码答案:D6. UML(统一建模语言)是一种()。

A. 编程语言B. 数据库管理系统C. 软件工程方法D. 建模语言答案:D7. 在面向对象方法中,类的属性和方法分别对应于现实世界中的()。

A. 状态和行为B. 行为和状态C. 数据和过程D. 过程和数据答案:A8. 敏捷软件开发方法的核心理念是()。

A. 强调文档和计划B. 强调过程和工具C. 强调人和交互D. 强调技术和架构答案:C9. 软件项目管理的主要目标是()。

A. 确保软件质量B. 控制软件成本C. 保证软件进度D. 以上都是答案:D10. 软件配置管理的主要目的是()。

A. 确保软件的一致性和完整性B. 提高软件的开发效率C. 降低软件的维护成本D. 提高软件的可重用性答案:A二、多项选择题(每题3分,共15分)11. 软件工程的基本原理包括()。

A. 抽象B. 模块化C. 逐步求精D. 复用答案:ABCD12. 软件需求分析的方法包括()。

A. 访谈B. 问卷调查C. 原型法D. 数据流图答案:ABC13. 软件设计的原则包括()。

软件工程复习题答案

软件工程复习题答案

软件工程复习题答案一、选择题1. 软件工程的主要目标是什么?A. 提高软件的运行速度B. 降低软件的开发成本C. 提高软件的可维护性D. 增加软件的功能答案:C2. 软件生命周期包括哪些阶段?A. 需求分析、设计、编码、测试、维护B. 需求分析、编码、测试C. 设计、编码、维护D. 测试、维护、发布答案:A3. 面向对象的软件开发方法中,以下哪个概念不是核心概念?A. 类B. 对象C. 继承D. 过程答案:D4. 软件测试的目的是:A. 发现并修复软件中的缺陷B. 验证软件是否满足需求C. 保证软件的运行速度D. 确保软件的安全性答案:B5. 敏捷开发方法的核心价值是什么?A. 遵循严格的开发流程B. 个人和交互胜过流程和工具C. 详尽的文档胜过工作软件D. 合同谈判胜过客户合作答案:B二、简答题1. 描述软件需求分析的重要性。

答案:软件需求分析是软件开发过程中的关键步骤,它确保了软件产品能够满足用户的实际需求。

通过需求分析,开发者可以明确软件的功能、性能、界面等要求,为后续的设计、编码和测试提供准确的指导。

2. 解释什么是软件的可维护性,并说明为什么它对软件项目至关重要。

答案:软件的可维护性指的是软件产品在生命周期内进行修改、升级和维护的容易程度。

它对软件项目至关重要,因为随着技术的发展和用户需求的变化,软件需要不断地进行更新和改进。

良好的可维护性可以降低维护成本,缩短维护周期,提高软件的生命周期。

三、论述题1. 论述软件项目管理的关键要素。

答案:软件项目管理的关键要素包括项目范围管理、时间管理、成本管理、质量管理、人力资源管理、沟通管理、风险管理和变更管理。

有效的项目管理能够确保项目按时、按预算、按质量完成,同时满足所有利益相关者的需求和期望。

2. 分析敏捷开发与传统开发方法的主要区别。

答案:敏捷开发与传统开发方法的主要区别在于敏捷开发强调快速迭代、持续交付和客户合作。

它通常采用较短的迭代周期,允许需求在开发过程中变化,而传统开发方法则更侧重于前期的详细规划和严格的流程控制。

软件工程复习试题及答案

软件工程复习试题及答案

软件工程复习试题及答案一、选择题1. 软件过程模型是开发软件的基本框架,以下哪个不是常用的软件过程模型?A. 瀑布模型B. 增量模型C. 敏捷模型D. 螺旋模型答案:D2. 软件需求分析的目的是什么?A. 确定软件的功能和性能要求B. 编写软件代码C. 进行软件测试D. 运行和维护软件答案:A3. 软件测试的目的是什么?A. 检测程序中的错误B. 评估程序的质量C. 验证软件需求D. 优化程序的性能答案:A4. 在软件项目管理中,下列哪个项目评估技术可用于度量软件的可靠性?A. 风险管理B. 成本估算C. 可行性研究D. 指标分析答案:D5. 在软件工程中,下列哪个模型适用于具有固定规格和明确需求的项目?A. 增量模型B. 极限编程模型C. 喷泉模型D. 瀑布模型答案:D二、填空题1. 软件工程的核心原则之一是“开放封闭原则”,即对扩展开放,对修改封闭。

这一原则体现了软件的__灵活性_和_稳定性_。

2. 软件需求规格说明书是对软件需求的详细描述,包括功能需求、__非功能需求__等。

3. 软件测试中,用来检查程序是否满足给定规范的测试称为_白盒测试_。

4. 软件项目管理中,用来度量完成软件项目工作量的常用指标是_工作量_。

5. 在软件工程中,用来记录软件设计中所考虑的系统组成和借口的图称为_结构图_。

三、简答题1. 请简要说明软件工程的基本原则。

答案:软件工程的基本原则包括可管理性、可测量性、可预测性、可维护性等。

可管理性指软件开发过程应具备可规划、可组织、可监控的特性;可测量性指软件开发过程和软件产品应能够被度量和评估;可预测性指软件开发过程和软件产品的进展和结果应具备一定的可预期性;可维护性指软件开发过程和软件产品应具备易于维护和修改的特性。

2. 简要介绍瀑布模型和敏捷模型的特点。

答案:瀑布模型是一种以顺序流程的方式进行软件开发的模型,在每个阶段完成后才进入下一个阶段,适用于需求明确、稳定的项目。

2022年南通大学软件工程专业《数据库原理》科目期末试卷A(有答案)

2022年南通大学软件工程专业《数据库原理》科目期末试卷A(有答案)

2022年南通大学软件工程专业《数据库原理》科目期末试卷A(有答案)一、填空题1、关系数据库中基于数学的两类运算是______________和______________。

2、在设计局部E-R图时,由于各个子系统分别有不同的应用,而且往往是由不同的设计人员设计,所以各个局部E-R图之间难免有不一致的地方,称为冲突。

这些冲突主要有______、______和______3类。

3、设某数据库中有商品表(商品号,商品名,商品类别,价格)。

现要创建一个视图,该视图包含全部商品类别及每类商品的平均价格。

请补全如下语句: CREATE VIEW V1(商品类别,平均价格)AS SELECT商品类别,_____FROM商品表GROUP BY商品类别;4、若事务T对数据对象A加了S锁,则其他事务只能对数据A再加______,不能加______,直到事务T释放A上的锁。

5、在SELECT命令中进行查询,若希望查询的结果不出现重复元组,应在SEL ECT语句中使用______保留字。

6、在VB 6.0中,已经用Adobel连接到数据库,并已绑定到数据库中的某个关系表,现要通过此控件向表中插入数据,需要用到Adobel.Recordset的_____方法和Update方法,使用Adobel.Recordset的_____方法可以使当前行指针在结果集中向前移动一行。

7、以子模式为框架的数据库是______________;以模式为框架的数据库是______________;以物理模式为框架的数据库是______________。

8、设某数据库中有作者表(作者号,城市)和出版商表(出版商号,城市),请补全如下查询语句,使该查询语句能查询作者和出版商所在的全部不重复的城市。

SELECT城市FROM作者表_____SELECT城市FROM出版商表;9、____________、____________、____________和是计算机系统中的三类安全性。

软件工程考试题及答案

软件工程考试题及答案

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

供选择的答案:
A. ① 过程,子程序,分程序
② 顺序,条件,循环
③ 递归,堆栈,队列
④ 调用,返回,转移
B. ① 不能嵌套使用
② 只能用来写简单的程序
③ 已经用硬件实现
④ 只有一个入口和一个出口
C. ① 筛选法
② 递归法
③ 归纳法
④ 逐步求精法
D. ① 证明程序中没有错误
② 发现程序中的错误
③ 测量程序的动态特性
块的内聚性是( A )的。 (2) 将几个逻辑上相似的成分放在同一个模块中,通过模块入口处的一个判断决定执行
哪一个功能。该模块的内聚性是( B )的。 (3) 模块中所有成分引用共同的数据,该模块的内聚性是( C )的。 (4) 模块内的某成份的输出是另一些成份的输入,该模块的内聚性是( D )的。 (5) 模块中所有成份结合起来完全一项任务,该模块的内聚性是( E )的。它具有
)。
供选择的答案:
A. 数据流图
B. 数据词典
C. 结构化英语
D. 判定表与判定树
答案: A.
3、在结构化分析方法中用状态―迁移图表达系统或对象的行为。在状态―迁移图中,由一
个状态和一个事件所决定的下一状态可能会有(
)个。
供选择的答案:
A. 1
B. 2
C. 多个
D. 不确定
答案: C.
4、从下列有关系统结构图的叙述中选出正确的叙述。 (1) 系统结构图中反映的是程序中数据流的情况。 (2) 系统结构图是精确表达程序结构的图形表示法。因此,有时也可将系统结构当作程
② 【(1,0,3),(1,0,4)】覆盖 abe; 【(2,1,1),(2,1,2)】覆盖 abe;条件覆盖
③ 【(2,0,4),(2,0,3)】覆盖 ace; ④ 【(2,1,1),(2,1,2)】覆盖 abe; 【(3,0,3),(3,1,1)】覆盖 acd; ⑤ 【(2,0,4),(2,0,3)】覆盖 ace; 【(1,0,1),(1,0,1)】覆盖 abd;
(3) ( A ) 不仅提高程序设计的生产率,同时也容易进行程序的 ( E )。
供选择的答案:
A. ① 标准化程序设计
② 模块化程序设计
③ 多道程序设计
④ 宏语言
⑤ 结构化程序设计
⑥ 汇编语言
⑦ 表格处理语言
B, C. ① 分支 ② 选择
③ 重复 ④ 计算 ⑤ 输入输出
D. ① GOTO 语句 ② DO 语句
④ 检查程序中的语法错误
E. ① 找出错误所在并改正之
② 排除存在错误的可能性
③ 对错误性质进行分类
④ 统计出错的次数
答案:A. ② B. ④ C. ④ D. ② E. ①
15、面向对象的程序设计语言具有数据抽象、信息隐蔽、( A )等特征。作为运算单位的
对象应具有下列特性:( B )、( C )、( D )。( E )是面向对象的语言。
答案:A. ③, B. ②, C. ①, D. ①, E. ②, F. ①, G. ①, H. ②
9、软件详细设计工具可分为三类,即:图示工具、设计语言和表格工具。图示工具中,( A )
简单而应用广泛、( B )表示法中,每一个处理过程用一个盒子表示,盒子可以嵌套。 ( C )可以纵横延伸,图形的空间效果好。
( D ) 是一种设计和描述程序的语言,它是一种面向( E )的语言。 供选择的答案:
A C:① NS 图 ② 流程图 ③ HIPO 图
④ PAD 图
D: ① C
② PDL
③ RPOLOG
E: ① 人
② 机器
③ 数据结构
答案:A. ②, B. ①, C. ④, D. ②, E. ①
④ PASCAL ④ 对象
作用、共用信息的数量和接口的( A )等因素决定了块间联系的大小。在块内联系中,
( B )的块内联系最强。
SD 方法的总的原则是使每个模块执行( C )功能,模块间传送( D )参数,
模块通过( E )语句调用其它模块,而且模块间传送的参数应尽量( F )。
此外,SD 方法还提出了判定的作用范围和模块的控制范围等概念。SD 方法认为,
10、从供选择的答案中选出适当的字句填入下面关于程序生产率的描述中的 ( ) 内。
(1) 1960 年底 Dijkstra 提倡的 ( A ) 是一种有效的提高程序设计效率的方法。
(2) Dijkstra 为了使程序结构易于理解,把基本控制结构限于顺序、( B )、( C ) 3 种,
应避免使用 ( D )。
表达对象的实例之间的关联有三种类型: 一对一联系、(
)联系、多对多联系。
供选择的答案:
A. 多对一
B. 一对多
答案:B
6、软件需求分析的任务不应包括( A )。进行需求分析可使用多种工具,但( B )是不
适用的。在需求分析中,分析员要从用户那里解决的最重要的问题是( C )。需求规格说
明书的内容不应当包括( D )。该文档在软件开发中具有重要的作用,但其作用不应当包
软件测试的目的是( A )。为了提高测试的效率,应该( B )。使用白盒测试方
法时,确定测试数据应根据( C )和指定的覆盖标准。与设计测试数据无关的文档是
( D )。
软件的集成测试工作最好由( E )承担,以提高集成测试的效果。
供选择的答案:
A. ① 评价软件的质量
② 发现软件的错误
③ 找出软件中的所有错误 ④ 证明软件是正确的
③ 软件确认准则
④ 软件的性能
E. ① 软件设计的依据
② 用户和开发人员对软件要“做什么”的共同理解
③ 软件验收的依据
④ 软件可行性分析的依据
答案:A. ③ B. ③ C. ① D. ② E. ④
7、从供选择的答案中选出正确的答案填入下列叙述中的( ) 内。 模块内聚性用于衡量模块内部各成份之间彼此结合的紧密程度。 (1) 一组语句在程序中多处出现,为了节省内存空间把这些语句放在一个模块中,该模
供选择的答案:
A:① 对象调用
② 对象变换
③ 非过程性
④ 信息继承
⑤ 并发性
B D:① 对象把数据和处理数据的操作结合为一体
② 在程序运行时对象都处于活动状态
③ 对象在计算中可向其他对象发送消息
④ 接受消息的对象必须给消息发送者以回答
⑤ 对象的内部状态只根据外部送来的消息才操作
E: ① C++,SMALLTALK,objectC
简明的外部界面,由它构成的软件易于理解、测试和维护。 供选择的答案:
A E: ① 功能内聚
② 信息内聚
③ 通信内聚
④ 过程内聚
⑤ 巧合内聚
⑥ 时间内聚
答案:A. ⑤, B. ⑦, C. ③, D. ④, E. ①
⑦ 逻辑内聚
8、从供选择的答案中选出正确的答案填入下面的( )中。
块间联系和块内联系是评价程序模块结构质量的重要标准。联系的方式、共用信息的
【(1,0,3),(1,0,4)】覆盖 abe; 【(2,1,1),(2,1,2)】覆盖 abe; 答案:A. ③ B. ① C. ④ D. ② E. ⑤ F. ① G. ⑤ H. ⑦ I. ⑥
B、C 的答案可互换。D、E 的答案可互换。F、G 的答案可互换。
13、从供选择的答案中选出应填入下列( )中的字句。
② C,Ada,Modula2
③ PASCAL,C++,APL
④ Ada,objectC,C
答案:A. ④ B. ① C. ③ D. ④ E. ① 其中,B、C、D 的答案可互换
16、由 RumBaugh 等人提出的一种面向对象方法叫做对象模型化技术(OMT),即三视点技
1、开发软件时对提高软件开发人员工作效率至关重要的是( A )。软件工程中描述生存
周期的瀑布模型一般包括计划、( B )、设计、编码、测试、维护等几个阶段,其中设计
阶段在管理上又可以依次分成( C )和( D )两步。
供选择的答案:
A. ① 程序开发环境 ② 操作系统的资源管理功能
③ 程序人员数量
④ 计算机的并行处理能力
( C )属于判定覆盖;( D )、( E )属于条件覆盖;( F )、( G )属于判 定–条件覆盖;( H )属于条件组合覆盖;( I )属于路径覆盖。 供选择的答案:
A. I. ① 【(2,0,4),(2,0,3)】覆盖 ace;
【(1,1,1),(1,1,1)】覆盖 abd; 判断条件覆盖
③ IF 语句
④ REPEAT 语句
E. ① 设计
② 调试
③ 维护
④ 编码
答案:A. ⑤, B. ②, C. ③, D. ①, E. ③
11、集成测试也叫做( A )或( B )。通常,在( C )的基础上,将所有模块按 照设计要求组装成为系统。子系统的集成测试特别称为( D ),它所做的工作是要找出 子系统和系统需求规格说明之间的( E )。需要考虑的问题是:在把各个模块连接起来 的时侯,穿越模块接口的数据是否会( F ); 一个模块的功能是否会对另一个模块的功 能产生不利的影响;各个( G )组合起来,能否达到预期要求的( H );( I )是 否有问题;单个模块的误差累积起来是否会放大。
B. ① 随机地选取测试数据
② 取一切可能的输入数据作为测试数据
③ 在完成编码以后制定软件的测试计划
④ 选择发现错误的可能性大的数据作为测试数据
C. ① 程序的内部逻辑
② 程序的复杂程度
③ 使用说明书
④ 程序的功能
D. ① 该软件的程序
④ 项目开发计划
E. ① 该软件的设计人员
B. ① 需求分析 ② 需求调查 ③ 可行性分析 ④ 问题定义
C、D.① 方案设计 ② 代码设计 ③ 概要设计 ④ 数据设计
相关文档
最新文档