深圳大学软件工程MOOC弹窗答案第一章到第三章
深圳大学软件工程MOOC弹窗答案(第一章到第三章)
第一章
世界上最早的计算机是__ 算盘_ ___?
软件是由程序、数据、文档三部分组成
软件具有复杂性、可变性、一致性等特点
软件是一种抽象的逻辑实体,具有许多特点。如:__________。
A. 软件具有不可见性
B. 软件具有复杂性
C. 软件编码难度较高
D. 软件生产过程不明显,不便于管理
E. 软件具有可变性
F. 软件具有一致性
正确答案: [“F”,“E”,“D”,“B”,“A”]
以下_____D_____不属于软件中的数据内容。
A. 地区选项
B. 民族选项
C. 车次数据信息
D. 程序保存的数据
软件危机产生的原因很多,除了__C________。
A. 软件规模越来越大
B. 软件数量越来越多
C. 开发软件的人员技能不高
D. 软件的复杂度增加
以下__________,不是软件危机的表现。
A. 用户对软件的需求日益增加
B. 软件开发出来就不符合用户的需求了
C. 软件的成本远远超出预算
D. 软件的文档与代码不匹配
正确答案: [“A”]
以下说法错误的是____B______。
A. 软件开发过程中必须和用户充分沟通
B. 高超的软件开发技术可以避免软件危机
C. 长期而言,软件的成本将超过计算机硬件成本
D. 文档是软件的重要组成部分
以下说法中,不正确的是_____D_____。
A. 软件工程是一门指导软件开发和维护的学科
B. 在软件开发过程中,除了开发技术以外,管理也是一个重要环节
C. 将软件开发过程划分为不同的阶段是有必要的
D. 软件开发团队成员越多越好
根据百科全书的定义:软件工程是应用__________等原理,开发软件的工程。
A. 计算机科学
B. 数学
C. 管理科学
D. 人文科学
E. 经济学
F. 运筹学
正确答案: [“A”,“B”,“C”]
以下__________不属于软件工程的基本原则?
A. 用分阶段的生命周期计划严格管理
B. 坚持进行阶段评审
C. 坚持采用正确的软件开发方法
D. 结果应能清楚地审查
正确答案: [“C”]
以下___D_______不属于计算机语言分类?
A. 机器语言
B. 汇编语言
C. 高级语言
D. 面向对象程序设计语言
相对于低级语言,高级语言具有很多优点,除了___B_______。
A. 采用人类熟悉的语言或表达方式
B. 具有更先进的编译环境
C. 具有良好的模块化机制
D. 具有较高的生产率
正确答案: [“B”]
常见的软件开发方法有__________?
A. 构化方法
B. 面向数据结构方法
C. 面向函数开发方法
D. 面向对象方法
E. 面向服务开发方法
F. 形式化方法
正确答案: [“A”,“B”,“D”,“F”]
以下__________不是软件工程诞生初期的主要任务?
A. 理清软件工程过程中的各项活动
B. 提出软件生命周期概念、软件开发模型
C. 设计高效、高质量的软件开发技术
D. 提出软件开发的相关质量管理标准
正确答案: [“C”]
的提出,标志着软件工程学科在世界范围的正式确立,并对本科教育产生了深远影响。
A. 软件危机
B. 软件工程职业道德规范
C. 软件工程知识体系
D. 软件工程教育知识体系
E. 中国版软件工程知识体系
F. 本科软件工程教育计划评价标准
正确答案: [“C”,“D”]
中国版软件工程知识体系包含多个知识领域,除了____D______。
A. 软件需求
B. 软件配置管理
C. 软件工程模型和方法
D. 用户沟通与需求获取
第二章
以下阶段中,___B_______不属于软件生命周期的阶段。
A. 软件定义期
B. 软件设计期
C. 软件开发期
D. 软件运行和维护期
软件项目的制定或理想往往来源于_______________。
A. 程序员设想
B. 社会需要和对现有系统改进
C. 系统升级
D. 市场需求
正确答案: [“B”]
在开发项目之前,软件开发团队需要对软件项目涉及的内容进行分析,围绕____C______主题展开讨论。
A. 怎样才能开发出用户需要的软件
B. 用什么技术来开发软件
C. 要解决的问题是什么
D. 现在最流行的软件是什么
项目构想阶段的最终成果是_______________。
A. 需求规格说明书
B. 问题定义报告
C. 软件开发合同
D. 软件设计
正确答案: [“B”]
可行性分析作为_____D______的补充,是对将要实施项目的方案性论证。
A. 用户需求
B. 产品调研
C. 市场分析
D. 项目构想
以下__B______不属于技术可行性分析内容。
A. 资源分析
B. 人员分析
C. 技术分析
D. 效率分析
可行性分析的内容包括_______________。
A. 技术可行性
B. 需求可行性
C. 团队可行性
D. 经济可行性
E. 操作可行性
F. 社会可行性
正确答案: [“A”,“D”,“E”,“F”]
典型的项目开发计划包括_______________。
A.
项目的内容范围
B.
软件测试计划
C.
分包商管理计划
D.
资源计划
E.
风险规避计划
F.
项目开发进度安排
正确答案: [“A”,“D”,“F”]
以下__D______不属于资源计划中的内容。
A. 人力资源
B. 软、硬件资源
C. 时间资源
D. 社会资源
项目开发计划的准确性、________和可行性将对整个项目的实施造成较大影响。
A. 合理性
B. 完整性
C. 权威性
D. 规范性
正确答案: [“A”]
在软件开发过程中,__C_____起到承上启下的作用,是软件开发过程中必不可少的重要步骤。
A. 项目构想
B. 可行性分析
C. 需求分析
D. 系统设计
需求分析阶段的产出是______B________。
A. 用户调研
B. 需求分析说明书
C. 用例说明
D. 项目开发计划
为了开发出真正满足用户需求的软件产品,项目开发团队必须结合_____D___来了解用户的软件需求。
A. 用户的构想
B. 现有的技术
C. 开发人员的知识水平
D. 实际的应用场景
软件需要包括______________。
A. 业务需求
B. 用户需求
C. 系统需求
D. 功能需求
E. 社会需求
F. 非功能需求
正确答案: [“A”,“B”,“D”,“F”]
___B_____是指除业务需求以外,用户希望目标项目提供的其它需求。
A. 业务需求
B. 用户需求
C. 功能需求
D. 非功能需求
对目标软件系统的性能、可用性、实用性、可靠性、可移植性、安全保密性、容错性等内容进行了约束。
A. 业务需求
B. 过程需求
C. 产品需求
D. 外部法规需求
正确答案: [“C”]
___A____是通过需求调研,获得清晰、准确的用户需求的过程。
A. 需求获取
B. 需求建模
C. 需求规格说明
D. 需求评审
需求建模的目的在于____B____。
A. 获取用户需求
B. 消除自然语言建模中存在的二义性
C. 表述用户需求
D. 验证用户需求
需求评审指标中的_________用于评估需求规格说明书中对各种需求的描述是否存在冲突。
A. 正确性
B. 无歧义性
C. 完整性
D. 一致性
正确答案: [“D”]
如果软件缺乏___B______,开发人员就只能在不稳定的系统架构上堆积代码。
A. 需求分析
B. 设计
C. 编码
D. 测试
软件设计的目标是,获取__________软件解决方案。
A. 满足软件需求的
B. 明确的
C. 可行的
D. 高质量的
E. 全面的
F. 综合的
正确答案: [“D”]
软件设计的依据是__C_____。
A. 项目构想
B. 可行性分析
C. 需求分析
D. 开发人员技能
结构化软件设计的主要任务完成适合开发目标软件系统的软件体系结构、数据描述、软件组件及接口,以及软件系统组成等相关内容的设计。其中软件体系结构的主要任务是要确定__C__。
A. 模块间的操作细节
B. 模块间的相似性
C. 模块间的组成关系
D. 模块的具体功能
从工程管理的角度而言,软件设计可以分为__BE_______。
A. 需求分析
B. 概要设计
C. 架构设计
D. 数据库设计
E. 详细设计
F. 交互方式设计
软件开发过程一般包括需求分析阶段、软件设计阶段、编码阶段和集成阶段,下面不属于软件设计阶段工作的是______。
A. 软件体系结构设计
B. 软件外部接口定义
C. 软件功能模块划分
D. 测试用例设计
正确答案: [“D”]
以面向对象方法学设计软件系统时,软件开发人员需要重点关注____C_______.
A. 函数设计
B. 数据设计
C. 类设计
D. 文件设计
模块划分的原则是____A____。
A.
各模块的功能尽量单一,且各模块之间的联系尽量的少
B.
各模块的功能尽量单一,且各模块之间的联系尽量紧密
C.
各模块应包括尽量多的功能
D.
各模块应包括尽量多的输入输出操作
程序设计从__AD_______角度来度量模块的独立性。
A. 耦合
B. 集中
C. 关联
D. 内聚
E. 密度
F. 功能
___C_____是软件结构内不同模块之间互连程度的度量。
A. 关联
B. 内聚
C. 耦合
D. 调用
管道/过滤器模式是从_____B____操作系统中提取出来的一种软件体系结构
A.
Dos
B.
Unix
C.
Linux
D.
Windows
在黑板模式中,____A________用于存储解空间对象的全局数据。
A. 黑板
B. 知识源
C. 控制组件
D. 粉笔
系统在分层模式中被拆分为____________.
A. 表示层
B. 应用层
C. 中间层
D. 业务逻辑层
E. 数据访问层
F. 数据层
正确答案: [“A”,“B”,“D”,“E”]
在客户端/服务器模式中,____D_____客户端完成的功能较少
A. 胖
B. 大
C. 小
D. 瘦
三层架构将整个业务应用划分为_________。
A. 应用层
B. 表示层
C. 会话层
D. 业务逻辑层
E. 中间件
F. 数据层
正确答案: [“B”,“D”,“F”]
在_________模式中,主设备将作业按照设定的规则分发给多个从设备组件,并根据这些从设备反馈的结果得到最终结果。
A. 负载均衡
B. 主从
C. 备份
D. 管道
正确答案: [“A”]
在云计算中,存储、计算和网络等资源被________。
A. 集中管理
B. 虚拟池化
C. 碎片化
D. 物理化
正确答案: [“B”]
在软件设计中,设计复审和设计本身是一样重要的环节,其主要目的和作用是_____。
A. 减少测试工作量
B. 避免后期付出高代价
C. 保证软件质量
D. 缩短软件开发周期
正确答案: [“B”]
复审工作贯穿软件开发的整个过程,主要包括需求复审、___D___以及程序测试。
A. 编码设计
B. 阶段设计
C. 算法设计
D. 设计复审
设计复审实际上也是针对____C____成果的测试。
A. 可行性分析
B. 需求分析
C. 软件设计
D. 软件开发
好的_ B______允许软件设计人员将复杂的软件系统进行分模块处理。
A.
编译环境
B.
模块化机制
C.
数据类型
D.
控制结构
以下___C_____不是选择程序设计语言的标准。
A.
具有良好的独立编译机制
B.
工程规模和复杂程度
C.
编程语言是否流行
D.
软件的应用领域
在进行软件编码规范评测过程中需要围绕几个方面的内容展开,以下描述中不属于编码规范评测内容的有_____。
A.
源程序文档化检查,包括符号名的命名、程序的注释等规范性检查
B.
数据说明检查,包括数据说明次序、语句中变量顺序检查
C.
程序结构检查,程序应采用基本的控制结构、避免不必要的转移控制等
D.
程序逻辑检查,阅读源代码,比较实际程序控制流与程序设计控制流的区别
正确答案: [“D”]
一般用于对文件、方法、数据结构和算法进行描述
A.
单行注释
B.
行尾注释
C.
块注释
D.
行前注释
正确答案: [“C”]
如果代码中运算符的优先级不明显,可以采用________来提高代码可读性。
A.
中括号
B.
双引号
C.
小括号
D.
单引号
由于计算机的各层存储容量有限,操作系统采用___D_____来提升各层的数据访问效率。
A.
指针
B.
数组
C.
变量
D.
缓存
算法的评价指标比较多,主要有_____________。
A.
可行性
B.
确定性
C.
有穷性
D.
代码行数
E.
时间复杂度
F.
空间复杂度
正确答案: [“F”]
软件编码的效率可以分为_____________等多个方面。
A.
全局效率
B.
局部效率
C.
编码效率
D.
编译效率
E.
时间效率
F.
空间效率
正确答案: [“A”,“B”,“E”,“F”]
软件测试是一种将_________进行比较、审核的过程
A.
需求分析与软件设计
B.
实际输出与预期输出
C.
软件设计与软件实现
D.
用户预期与完成软件
正确答案: [“B”]
软件测试是一种用来促进鉴定软件_________的过程。
A.
正确性
B.
完整性
C.
安全性
D.
架构设计
E.
质量
F.
可行性
正确答案: [“A”,“B”,“C”,“E”]
软件测试的目标在于____B____________。
A.
向用户证明软件中不存在缺陷
B.
以最少的人力、物力和时间来找出软件中潜在的问题
C.
用来评估软件测试人员的能力
D.
获得一系列关于完成软件系统的数据
在软件开发企业,软件测试人员与开发人员的比例已经达到了_C_______,甚至更多
A.
2:1
B.
3:1
C.
5:3
D.
4:3
软件测试包括___________等阶段
A.
制定软件测试计划
B.
设计测试用例
C.
测试准备
D.
执行测试
E.
测试结果评估
F.
缺陷跟踪
正确答案: [“A”,“B”,“C”,“D”,“E”,“F”]
根据测试用例设计的依据不同,可以将软件测试用例的设计方法分为_________。
A.
模块测试
B.
白盒测试
C.
代码测试
D.
黑盒测试
E.
性能测试
F.
心理测试
正确答案: [“E”]
最常用的静态白盒测试是____A____。
A.
代码审查法
B.
静态结构分析法
C.
静态质量度量法
D.
路径覆盖方法
动态白盒测试是指根据_________来设计测试用例。
A.
用户需求规格说明书
B.
程序的内部结构
C.
软件使用说明书
D.
程序的内部逻辑
E.
软件测试人员的经验
F.
软件开发环境提供的测试手段
正确答案: [“B”,“D”]
由于各种因素的限制,对待测模块进行_C_______是不可能的。
A.
白盒测试
B.
黑盒测试
C.
穷举式测试
D.
暴力测试
B__
是指那些对软件需求规格说明而言是不合理的、无意义的输入数据或操作系列构成的集合。
A.
有效等价类
B.
无效等价类
C.
边界值
D.
错误推测
常见的黑盒测试用例设计方法包括_________等。
A.
等价类划分法
B.
边界值分析法
C.
因果图法
D.
判定表驱动法
E.
错误推测法
F.
程序内部逻辑分析
正确答案: [“A”,“B”,“C”,“D”,“E”]
性能测试的测试用例设计必须依据_________________。
A.
软件架构承诺的性能
B.
程序员编写代码需求
C.
需求规格说明书中的非功能性需求
D.
系统硬件平台性能
正确答案: [“C”]
以下__D_________不是性能测试的别称。
A.
压力测试
B.
强度测试
C.
负载测试
D.
耐力测试
除了通用的软件测试步骤以外,测试人员也可以根据软件测试的不同阶段将软件测试过程顺序地分为________。
A.
单元测试
B.
白盒测试
C.
黑盒测试
D.
集成测试
E.
确认测试
F.
系统测试
正确答案: [“A”,“D”,“E”,“F”]
结构化方法学中的单元是函数,面向对象方法学中的单元是_______。
A.
类或者构件
B.
类与对象
C.
对象
D.
类
正确答案: [“A”]
是在实际工作环境(非开发环境)中对目标软件进行的测试。
A.
α测试
B.
β测试
C.
压力测试
D.
确认测试
正确答案: [“B”]
评估软件可靠性需要考虑多个因素,除了__D__。
A.
规定的条件
B.
规定的时间
C.
规定的功能
D.
软件开发团队
衡量软件可靠性的指标主要_______。
A.
可用性
B.
可靠性
C.
软件开发团队规模
D.
推测残留在程序中的错误数
E.
软件代码质量
F.
健壮性
正确答案: [“A”,“B”,“D”,“F”]
A____
是指在软件投入使用后,软件维护人员对曝露出来的错误进行测试、诊断、定位、纠错以及验证、修改的过程。
A.
纠错型维护
B.
适应型维护
C.
完善型维护
D.
预防型维护
完善型维护是为了____________。
A.
使软件能够适应新的、其它类型的软件、硬件、数据环境和管理环境
B.
满足用户在使用过程中提出的新功能和性能需求
C.
提高软件的可靠性和可维护性
D.
对在开发阶段已发生,但是在测试阶段未能发现的软件错误进行纠正
正确答案: [“B”]
软件维护分为___BDEF________。
A.
使用型维护
B.
纠错型维护
C.
运行型维护
D.
适应型维护
E.
完善型维护
F.
预防型维护
一般而言,软件维护团队由_________组成。
A.
维护管理人员
B.
系统管理人员
C.
维护决策机构
D.
开发人员
E.
维护人员
F.
配置管理人员
正确答案: [“A”,“B”,“C”,“E”,“F”]
B_____
一般是对待维护软件系统特别熟悉的技术人员。
A.
维护管理人员
B.
系统管理人员
C.
维护人员
D.
配置管理人员
软件维护评价的目标主要是___C_____。
A.
评估维护活动的质量,检查维护代码是否和原有系统风格一致
B.
评估维护团队的工作效率,优化维护团队
C.
审核修改过的软件配置是否能够满足维护申请表中的内容。
D.
评估维护费用,为将来的维护提供参考
结构化程序设计主要跟踪__A______的处理过程
A.
数据
B.
业务
C.
需求
D.
逻辑
结构化分析中通常采用软件的_________来建模用户需求
A.
功能模型
B.
业务模型
C.
用户描述
D.
数据模型
E.
逻辑模型
F.
行为模型
正确答案: [“A”,“D”,“F”]
B____
用于表示软件对外部事件响应的软件行为。
A.
功能模型
B.
行为模型
C.
数据模型
D.
函数模型
在人类语言学中,关于处理的动作一般采用____C____来表示
A.
名词
B.
形容词
C.
动词
D.
副词
结构化分析方法建模需求时,需求分析人员需要重点把握____B____在软件系统中被处理的过程。
A.
需求
B.
数据
C.
变量
D.
逻辑
为了准确地描述用户需求,便于软件开发人员理解问题,需求分析人员可以采用___C_____对目标软件的需求内容进行无歧义的描述。
A.
文字描述
B.
语音描述
C.
模型化方式
D.
软件代码
模型由___CE______组成。
A.
用户
B.
目标对象
C.
一组图形符号
D.
模型代表的数据
E.
组织符号的规则
F.
模型应用的场景
目前,处理/加工逻辑说明的主要工具有_________。
A.
结构化语言
B.
流程图
C.
数据流图
D.
判定树
E.
判定表
F.
伪代码
正确答案: [“A”,“D”,“E”]
在设计判定树时,需求分析人员可以根据条件的___A_____产生各类分支。
A.
取值不同
B.
取值范围
C.
应用场景
D.
作用对象
判定表由_______组成。
A.
条件桩
B.
动作桩
C.
条件项
D.
动作项
E.
取值范围
F.
取值条件
正确答案: [“A”,“B”,“C”,“D”]
通常而言,可以将程序中的_______理解为程序的“状态”。
A.
判断
B.
关键变量
C.
程序逻辑值
D.
运行结果
正确答案: [“B”]
以下___C_____不是状态转换图中的状态。
A.
初始状态
B.
中间状态
C.
临时状态
D.
最终状态
在事件的表达式中,_______用于表示事件触发时必须满足的条件。
A.
事件名
B.
参数表的参数
C.
守卫条件
D.
动作表达式
正确答案: [“C”]
以下__C_____不是数据模型包含的内容。
A.
数据的结构
B.
数据之间的关系
C.
数据模型案例
D.
数据项的组成
数据之间的关系是指某类数据与另外一类数据的关联关系,描述了数据之间彼此相互连接的方式。以下___A__不是常见的数据关联关系。
A.
1
对0(1:0)
B.
1
对1(1:1)
C.
1
对多(1:N)
D.
多对多(M:N)
在数据模型中,数据项的内容组成方式________。
A.
顺序
B.
选择
C.
替换
D.
重复
E.
可选
F.
避免
正确答案: [“A”,“B”,“D”,“E”]