北京大学软件工程MOOC课
第一周:软件工程概论
软件的定义及特点:
- 软件产品与物质产品有很大的区别,软件产品是一种()产品。
A.有形 B.消耗 C.逻辑 D.文档 - 下列关于软件的说法正确的是()
A.软件是通过定制进而生产制造出来的
B.软件没有磨损老化问题。
C.软件开发的成本很高
D.软件开发和运行必须依赖计算机环境 - 下列软件属于系统软件的是()
A.操作系统 B.编译器 C.中间件 D.浏览器 - 下述软件属于支撑软件的是()
A.财务管理软件B.编译器 C.中间件 D.数据库 - 下述软件属于应用软件的是()
A.财务管理软件
B.数据库
C.编译器
D.浏览器
参考答案:
软件工程的起源和概念:
- 软件工程概念的提出是为了解决()。
- 在()年的NATO会议上,软件工程的术语被首次提出。
A.1966 B.1968 C.1970 D.1972 - 软件工程的目的是倡导以工程的原理、原则和方法进行软件开发。
A.√
B.× - 软件工程是一门交叉性学科,下列哪些学科是软件工程涉及的br> A.数学 B.计算机科学 C.管理科学 D.工程科学
参考答案:
软件开发的本质和基本手段:
- 软件开发中实现映射的基本手段是()
A.抽象 B.分层 C.隔离 D.建模 - 软件开发是实现()的概念和处理逻辑到()的概念和处理逻辑的映射。(答案用空格隔开)
- 模型一定是在某种特定意图下、从某种特定的角度对物理环境的抽象。
A.√
B.× - 下列属于软件模型的是()
A.概念模型
B.设计模型
C.实现模型
D.部署模型 - 软件开发中分层的基本动机是控制开发的复杂性。
A.√
B.×
参考答案:
软件工程框架:
- 下列哪项不属于软件工程框架的三元组。()
A.目标 B.范围 C.原则 D.活动 - 软件开发要从客户的需求出发,在满足用户要求的前提下,功能开发的越多越好。
A.√
B.× - 软件需求阶段所要完成的任务包括()
A.需求获取 B.需求完善 C.需求定义 D.需求规约 - 软件设计阶段包括()和()两个阶段。(答案用空格隔开)
- 为了保证开发进度,软件只需要在最终完成后再进行确认即可。
A.√
B.× - 下列哪个不是软件维护的类型。()
A.完善性维护
B.纠错性维护
C.适应性维护
D.更新性维护 - 只有高水平的(),才能生产出高质量的软件产品。
A.软件开发技术
B.软件开发工具
C.软件工程管理
参考答案:
第一周:软件过程
软件生存周期过程的概念
- 获取正确软件的关键是()
A.开发逻辑 B.开发团队 C.人员素质 D.明确需求 - 软件生存周期的含义是表明软件的演化和发展具有周期性,每过一段时间就需要更新。
A.√
B.× - 当软件的一个版本被淘汰时,则该软件的生存周期就结束了。
A.√
B.× - 软件生存周期过程表示软件生存周期内的一个过程。
A.√
B.× - 为了表述软件开发需要做什么映射,引入了三个概念:(请按概念的范围由大到小填写,用空格分隔)
参考答案:
软件生存周期过程的分类:
- 按照(),可以将软件生存周期过程分为基本过程、支持过程和组织过程。
A.软件开发活动的层次关系
B.软件开发工作的主体
C.软件开发项目的结构
D.软件开发任务的重要程度 - 下述过程属于基本过程的是()
A.获取过程
B.开发过程
C.运行过程
D.供应过程 - 支持过程是指那些与软件生产组织有关的活动集。
A.√
B.× - 下列关于软件开发过程说法正确的是()
A.软件生存周期过程就是软件开发过程
B.软件开发过程是软件开发者所从事的一系列活动
C.软件开发过程中还包括了系统需求分析、系统结构设计等系统层面的活动
D.软件开发过程包含了软件升级和演化等活动
参考答案:
软件生存周期模型的概念:
- 软件生存周期模型是对软件生存周期中过程、活动和任务的组织。
A.√
B.× - 软件生存周期模型必须要将所有类型的过程、活动和任务考虑在内,形成满足每个软件项目需要的模型。
A.√
B.× - 软件开发模型是软件开发过程的活动和任务的结构框架。
A.√
B.×
参考答案:
常见的软件生存周期模型:
- 下列关于瀑布模型的说法正确的是()
A.瀑布模型仅能依次经过需求、设计、编码、测试、集成和维护这一路径进行项目开发,不能从后一阶段返回到前面的阶段。
B.瀑布模型在每一阶段都会生成相应的文档。
C.瀑布模型只有在需求阶段和运行阶段才能有获取方和用户参与,其余阶段只能开发团队参加。
D.瀑布模型要求需求在最初阶段就要完整和明确。 - 多选题:下列关于增量模型的说法正确的是()
A.增量模型要求需求在最初阶段就要完整和明确。
B.相比于瀑布模型,采用增量模型开发的项目所需的成本和时间要少。
C.采用增量模型时,每一增量必须按照既定顺序依次开发,不能更改。
D.增量模型能够更早的向用户交付第一个版本的系统。 - 多选题:下列关于演化模型的说法正确的是()
A.演化模型要求需求在最初阶段就要完整和明确。
B.演化模型可以弱化需求和设计文档的编写,以提高开发效率。
C.演化模型在每一次迭代过程中可以采用瀑布模型。
D.相比瀑布模型,演化模型需要获取方和用户更多的参与。 - 单选题:下列软件开发模型中,以面向对象的软件开发方法为基础,以用户的需求为动力,以对象来驱动的模型是()。
A.演化模型
B.瀑布模型
C.喷泉模型
D.增量模型
参考答案:
第二周:软件需求
需求的作用:
- 判断题:相比硬件而言,软件更容易被修改,而且更容易被正确地进行修改。
A.√
B.× - 单选题:与软件工程不同,()是系统工程所追求的目标。
A.最优化 B.系统化 C.一体化 D.情境化 - 判断题:任何软件开发过程必须从软件需求入手。
A.√
B.× - 判断题:采用瀑布模型的开发过程是一种自顶向下的开发方法,而软件构件复用的开发过程是一种自底向上的开发方法。
A.√
B.×
参考答案:
需求的定义:
- 判断题:软件需求是待开发产品或系统的功能描述。
A.√
B.× - 单选题:下面不属于需求的基本性质是()
A.必要性
B.无歧义性
C.可测性
D.可扩展性 - 多选题:下列哪些陈述可以作为软件需求()
A.系统应支持大规模并发用户访问
B.用户需凭用户名和密码登陆之后才可使用系统
C.系统界面要美观大方
D.当用户登录失败时,应弹窗提示失败原因
参考答案:
需求的分类:
- 判断题:非功能需求必须依附于功能需求而存在。
A.√
B.× - 单选题:下列需求属于性能需求的是()
A.并发访问数
B. 络协议
C.异常响应
D.用户友好 - 单选题:下列需求属于外部接口需求的是()
A.第三方插件
B.安全隐私
C.编程语言
D.字体字 - 单选题:下列需求属于设计约束的是()
A.响应时间
B.运行平台
C.错误处理
D.可维护 - 填空题:与其他类型的非功能需求不同,()是必须予以满足的,且对项目规划、所需的附加成本和工作产生直接影响。
- 判断题:质量属性必须要给出量化的测量指标。
A.√
B.×
参考答案:
需求发现:
- 单选题:当无法与用户进行直接交流时,可采用()的需求发现方式。
A.自悟
B.提炼
C.小组会
D.思考 - 多选题:下列哪些是观察这一需求发现的方法可能带来的问题。()
A.无法全面了解需求
B.被客户抵触
C.让客户误以为开发者已经熟悉了业务
D.消耗过多的时间 - 判断题:小组会和交流这两种需求发现方式的区别在于参加人员的多少。
A.√
B.× - 判断题:需求发现常采用多种方式联合进行,但具体某一项需求常采用某一种具体的方式去捕获。
A.√
B.× - 单选题:下述情况分别最适合采取哪种需求发现的方式()
① 为解决生活中遇到的麻烦事而开发的软件
② 有较多繁琐环节的 区医保系统的开发
③ 某小型团体组织开发其内部人员管理系统
④ 某大型连锁集团开发集团人员管理系统
⑤ 某专业化软件外包公司接手烂尾的软件开发项目
A.①-自悟;②-观察;③-交流;④-小组会;⑤-提炼
B.①-观察;②-自悟;③-小组会;④-交流;⑤-提炼
C.①-自悟;②-交流;③-观察;④-提炼;⑤-小组会
D.①-提炼;②-自悟;③-交流;④-观察;⑤-小组会
参考答案:
需求规约的概念和格式:
- 单选题:需求规约是一个软件产品/系统的()
A.开发模型
B.框架模型
C.概念模型
D.功能模型 - 判断题:需求规约是一个软件产品所有需求陈述的正式文档,它是不能被修改的。
A.√
B.× - 多选题:下列哪些是需求规约的性质。()
A.完整性
B.一致性
C.不可修改性
D.稳定性
参考答案:
需求规约的作用:
- 多选题:基于需求规约会产生下述哪两个文档。()
A.初始测试计划
B.系统测试计划
C.用户系统操作描述
D.软件可行性分析 告 - 单选题:在需求分析阶段会形成()的测试计划。
A.单元测试
B.集成测试
C.确认测试
D.系统测试 - 判断题:需求规约是软件开发组织和用户之间的技术合同书,只有当需求规约完成后才能开始产品的设计。
A.√
B.× - 判断题:需求规约对于项目的大多数工作是一个管理控制点,因此需求规约中要给出软件项目的进度和规划。
A.√
B.× - 判断题:需求规约作为设计的一个正式的、受控的起始点,它事实上给出了一份初步的设计文档。
A.√
B.×
参考答案:
第三周:结构化分析方法
结构化分析方法的概念:
- 关于软件开发方法,以下说法正确的是
A.软件开发方法是指软件开发过程所遵循的办法和步骤
B.软件开发活动的目的是有效地得到一个运行的系统及其支持文档,并且满足有关的质量要求
C.软件开发方法学指的是规则、方法和工具的集成
D.以上说法都正确 - 结构化方法包括了
A.结构化分析方法
B.结构化项目管理方法
C.结构化设计方法
D.结构化程序设计方法 - 需求分析的目标不包括
A.解决需求陈述中的歧义、不一致的问题
B.作为开发人员和客户间技术契约的基础
C.给出解决问题的具体算法和数据结构
D.给出问题的形式化或半形式化的描述
** 参考答案:**
结构化分析模型:
- 结构化分析模型中,支持数据抽象的是哪些术语________
①数据流 ②数据存储 ③数据源 ④数据潭 ⑤加工
A.①②
B.③④
C.①②③④
D.③④⑤ - 在结构化分析方法中,与数据流图配合使用的是________
A. 络图
B.数据字典
C.程序流程图
D.加工小说明 - 结构化分析方法使用DFD描述________
A.系统的功能
B.系统的控制流程
C.系统的数据结构
D.系统的基本加工 - 结构化分析阶段,不适用于描述加工逻辑的工具是
A.结构化语言
B.判定表
C.判定树
D.流程图
** 参考答案:**
结构化分析过程:
- 通过______可以完成数据流图的细化
A.结构分解
B.功能分解
C.数据分解
D.系统分解 - 下列关于数据流图的说法中,正确的是
A.在结构化分析中,采用自顶向下逐层分解的思想,从零层数据流图开始逐步精化
B.可以根据加工的编 识别该加工位于哪一层数据流图
C.加工必须有输入和输出
D.数据存储在数据流图中的作用是在各加工之间建立合理的关系 - 数据字典一般不包括下列选项中的________条目
A.数据流
B.数据存储
C.加工
D.数据项 - 以下说法正确的是
A.数据流图中的每个数据流和数据存储必须在数据字典中予以定义
B.数据流图中的每个加工必须在加工小说明中予以定义
C.数据流图中的图元个数应当控制在7+2以内
D.加工小说明中,必须指出该加工的输入数据流和输出数据流
** 答案:**
需求规格说明书:
- 需求分析最终结果是产生______
A.项目开发说明书
B.可行性分析 告
C.需求规格说明书
D.设计说明书 - 需求规格说明书中不应包括_______
A.功能概述
B.算法设计
C.故障处理
D.性能需求 - 需求规约是需求阶段非常重要的文档,它的作用不包括_______
A.软件开发组织和用户之间达成的共识
B.软件后续设计、编码、测试的基本依据
C.软件验收的依据
D.软件可行性分析的依据
参考答案:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!