欢迎光临“超星DevOps导论课后答案(学习通2023完整答案)-五煦查题”,如有问题请及时联系我。

超星DevOps导论课后答案(学习通2023完整答案)

超星DevOps导论课后答案(学习通2023完整答案)

DevOps导论

第一讲 DevOps概述单元测试

1、超星下列描述中,导论答案不属于典型软件发展三大阶段的课后是:
A、软硬件一体化阶段
B、学习软件作坊
C、通完软件成为独立产品
D、整答网络化和服务化

2、超星"Measure twice,导论答案 Cut once" 是哪个阶段的典型开发特征?
A、软硬件一体化阶段
B、课后软件成为独立产品阶段
C、学习软件作坊阶段
D、通完网络化阶段

3、整答关于软件过程管理,超星以下哪一种说法是导论答案比较贴切的:
A、软件过程管理主要关注软件成本和质量目标的课后达成。
B、软件过程管理是软件企业发展到较高层次才需要关心的话题。
C、进入互联网时代,软件过程管理是过于老套的话题。
D、软件过程管理关注的是企业软件过程能力的稳定输出和提升。

4、软件开发的本质难题中哪一个与软件发展阶段没有直接关系?
A、复杂性
B、可变性
C、不可见性
D、一致性

5、"Code and Fix" 是软件发展哪个阶段的典型开发特征?
A、软硬件一体化
B、软件作为独立产品
C、网络化和服务化
D、互联网时代

6、以下哪个因素促成了软件成为独立的产品?
A、个人电脑的出现
B、互联网的出现
C、高级程序设计语言的出现
D、操作系统的出现

7、软件危机和软件工程这两个概念提出时间是?
A、上世纪五十年代
B、上世纪六十年代
C、上世纪七十年代
D、上世纪八十年代

8、以下描述中,哪几种是网络化和服务化这个阶段的典型软件应用特征?
A、用户数量急剧增加
B、快速演化、需求不确定
C、通过CD和DVD等方式支持大容量和快速分发软件拷贝
D、通过SaaS等方式来发布软件系统

9、关于形式化方法的描述当中,不正确的有哪些?
A、这种方法的主要目的是解决软件开发的效率问题
B、这种方法是网络化和服务化阶段用来应对软件开发本质四大难题而提出来的
C、这种方法对开发人员技能有较高的要求
D、这种方法应用范围有限,例如:不适合跟客户讨论需求。

10、关于迭代式方法的说法哪些是比较恰当的?
A、迭代式方法是上世纪九十年代中后期才出现的一种方法
B、迭代式方法主要特征在于将软件开发过程视作一个逐步学习和交流的过程
C、迭代式方法主要是为了解决软件开发的质量问题
D、迭代式方法是指一类具有类似特征的方法

11、DevOps方法的出现具有一定的必然性,与以下哪些软件应用特征相匹配?
A、软件定义世界,软件随处可见
B、软件在社会生活当中扮演了越来越关键的角色
C、软件系统部署环境越来越错综复杂
D、用户需求多变所带来了软件系统的快速演化的要求

12、DevOps的哪些特点可以有效支撑当前社会对软件系统的期望?
A、敏捷开发、精益思想以及看板方法,支持快速开发、交付、迭代和演化
B、微服务架构设计
C、虚拟机技术的大量应用
D、工具链支持高效率的自动化

13、在DevOps化的three ways当中,关注质量问题是第二个阶段才需要考虑的。

14、DevOps中的XaaS特指 SaaS、PaaS以及IaaS这三种。

15、DevOps化的Three ways当中,建立反馈机制是二阶段应该实现的目标。

第二讲 个体软件过程单元测试

1、下述各个度量项中,哪一个不是PSP的基本度量项?
A、规模
B、时间
C、风险
D、缺陷

2、关于面向用户的质量观,我们应该关注如下哪些问题:
A、真实用户是谁?
B、用户期望是否有优先级?
C、用户期望的优先级对软件开发的影响?
D、界面和可操作性是首要的,因为这是用户能直接感受到的。

3、PSP当中为什么用缺陷管理替代质量管理?下述说法中正确的是:
A、因为缺陷管理和质量管理其实是一回事。
B、因为缺陷往往对应了面向用户质量观中的首要用户期望。
C、因为单纯质量管理很难操作。
D、因为缺陷管理相关的活动(例如,测试等)本来就是软件开发中必须要开展的活动。

4、关于PROBE估算法,下述各种说法中,不正确的有哪些?
A、PROBE不能给出精确估算,因而适合用来跟用户讨论需求和规模。
B、PROBE估算结果带着小数,肯定不准确,因而, 不应该在项目估算的时候使用。
C、PROBE方法不需要历史数据。
D、PROBE方法不能用来估算质量。

5、关于质量路径(Quality Journey),下列说法中哪些不恰当。
A、质量路径中所列举的方法都是提升开发质量的有效手段,可以随意选择使用。
B、进入测试之前的高质量,是获得测试之后高质量软件系统的前提条件。
C、高质量软件产品最终还是需要依赖测试来确保。
D、质量路径与个体软件工程师无关,是团队层面的集体努力。

6、关于评审检查表,下述说法中不恰当的是:
A、项目团队所有人应该共用一份评审检查表,体现统一性
B、评审检查表应该是个性化的
C、评审检查表应该定期更新
D、评审检查表应该保持稳定,确保缺陷不会被遗漏

7、关于PQI,下述说法中不恰当的是:
A、PQI越高越好,最好达到1.0
B、PQI可以用来辅助判断模块开发的质量
C、PQI五个分指标都可以超过1.0,比如,设计时间多于编码时间的时候,该分指标就超过1.0了
D、PQI可以为过程改进提供依据

8、关于评审,下述说法中不恰当是:
A、代码的个人评审应该安排在单元测试之后,确保评审对象有着较高的质量,提升评审价值。
B、如果安排了代码的小组评审,那么代码个人评审就可以不用做。
C、代码的个人评审最好交叉进行,因为阅读自己代码容易产生思维定式,不利于缺陷发现。
D、代码的个人评审也应该通过评审检查表来进行。

9、关于质量的各种定义当中,下述哪些质量属性属于内部属性?
A、可移植性
B、可靠性
C、可扩展性
D、安全性

10、PSP鼓励使用瀑布型生命周期模型。

11、对于初学者来说,代码评审速度可以控制到每小时不超过400行。

12、“高质量的软件开发是计划出来的”

第三讲 敏捷软件开发

1、根据敏捷宣言,以下哪项描述了更多的价值?
A、客户协作、遵循计划、可工作的软件、个体交互
B、可工作的软件、个体交互、响应变化、相近的文档
C、个体和交互、可工作的软件、客户协作、响应变化
D、响应变化、个体和交互、流程和工作、客户协作

2、下列哪一项更好地描述了敏捷宣言?
A、它概述了构建软件的最有效方法
B、它包含了许多敏捷团队使用的实践
C、它包含了建立敏捷思维方式的价值观
D、它定义了构建软件的规则

3、你是一家社交媒体公司的开发人员,正在开发一个项目,项目需要一个为企业客户创建私有网站的新功能。 您需要与公司的网络工程师一起确定部署策略,并提出一组工程师可以用于管理站点的服务和工具。 网络工程师希望在你的网络内部部署所有服务,但您和您的团队成员不同意,并且认为服务应该部署在客户的网络上。 为了达成一个协议,该项目的工作已经停止。 哪种敏捷价值最适合这种情况?
A、个体和互动 高于 流程和工具
B、工作的软件 高于 详尽的文档
C、客户合作 高于 合同谈判
D、响应变化 高于 遵循计划

4、你是一个软件团队的开发人员。 一个用户向你的团队询问有关构建新功能的信息,并以规范的形式提供了需求。 她非常确定这个功能要如何工作,并承诺不会有任何变化。 哪种敏捷价值最适用于这种情况?
A、个体和互动 高于 流程和工具
B、工作的软件 高于 详尽的文档
C、客户合作 高于 合同谈判
D、响应变化 高于 遵循计划

5、Sean是一个正在构建财务软件的团队的开发人员。 他的团队被要求开发一个新的交易系统。 他和他的团队召开会议来提出他们正在使用的工作流的图景。 然后,他们将流程放在白板上,流程中的每个步骤都有一列。 经过对团队在白板上的工作项目进行了几周观察,他们注意到这个过程中有几个步骤似乎过载了。对于他们来说,下一步应该做什么?
A、与团队合作,在工作进展缓慢的阶段更好地完成工作
B、在较慢的步骤中使用更多的人力
C、专注于完成看板上的工作
D、对过载步骤中正在进行的工作项目的数量进行限制

6、下列哪一个不是精益原则?
A、消除浪费
B、实施反馈循环
C、尽可能晚的做决定
D、识别所有的步骤

7、下列哪一个更好地描述了如何使用看板?
A、观察特征如何流经过程,以便团队可以确定如何限制WIP并通过工作流程中的步骤确定最均匀的工作流程
B、跟踪WIP限制和当前任务状态,以便团队知道他们还有多少工作要做
C、跟踪缺陷和问题,并创建解决产品问题的最快途径
D、帮助团队自我组织,并了解工作流程中的瓶颈所在

8、以下不是经常出现在Kanban上记事贴中的内容
A、工作项描述
B、团队名词
C、完成时间
D、谁在处理这个工作项

9、一个公司内,各个团队的Kanban列设置应当一致,便于公司管理。

10、在制品规模越小越好,因为这样可以优化前置时间,并且团队的效率会变高。

11、在DevOps中,可以使用Kanban方法,也可以使用Scrum等其他敏捷方法。

12、敏捷软件开发宣言表明,在DevOps中写文档是没有必要的。

第四讲 软件架构演化

1、下面关于软件架构的描述哪个是不正确的?
A、软件架构即一系列重要的设计决策。
B、软件架构包括系统组件、连接件和约束的集合。
C、软件架构是一组特定的架构元素,包括处理元素、数据元素和上下文元素。
D、软件架构包含一系列重要决策,包括软件组织、构成系统的结构要素等。

2、在应用分层架构的软件系统中,最先处理外部请求的是:
A、数据层
B、应用层
C、业务层
D、表现层

3、以下哪个关于面向服务架构的描述是错误的?
A、面向服务架构是一个集中式组件的集合
B、面向服务架构包含服务提供者组件和服务消费者组件
C、在SOA中,服务消费者消费其他组件提供的服务不需要知道其具体的实现细节
D、SOA依赖企业服务总线为服务间的相互调用提供支持环境

4、以下对于微服务优点的描述中,哪一个是错误的?
A、单个微服务很简单,只关注一个业务功能
B、微服务系统测试变得非常简单
C、微服务可以使用RPC进行服务间通信
D、不同的微服务可以使用不同的语言进行开发

5、在微服务架构中,ZooKeeper的主要作用是?
A、开发服务
B、封装服务
C、调用服务
D、注册服务

6、除Spring Boot之外,主流的微服务开发框架还有什么?
A、Apache Dubbo
B、Django
C、Kubernetes
D、MyBaits

7、在组成派看来,软件架构是指?
A、软件架构将系统定义为计算组件及组件间的交互。
B、软件架构包括系统组件、连接件和约束的集合。
C、软件架构是一系列重要决策的集合,包括构成系统的结构要素及其接口的选择。
D、软件架构由软件元素、这些元素的外部可见属性,以及元素之间的关系组成。

8、分层架构将软件系统的组件分成多个互不重叠的层,包括
A、物理层
B、数据层
C、持久层
D、业务层
E、应用层
F、表现层

9、分层架构模式的缺点包括:
A、代码调整通常比较麻烦
B、不易于持续发布和部署
C、软件升级需要暂停整个服务
D、由于层间依赖关系,软件系统的可扩展性差
E、额外的性能开销

10、以下哪几个不是面向服务架构强调的实现原则?
A、服务解耦
B、服务封装
C、服务重用
D、服务简单
E、服务组成
F、服务自治
G、服务去中心化
H、服务无状态

11、以下选项中,哪些属于微服务架构的特点?
A、围绕业务能力组织
B、内聚和解耦
C、中心化
D、基础设施自动化
E、通过服务组件化

12、以下选项中,API网关模式的优点有哪些?
A、为每套客户端提供最优API
B、将从客户端调用多项服务的逻辑转换为从API网关处调用,以简化整个客户端。
C、确保客户端不必关心应用程序的微服务拆分方式
D、增加请求往返次数
E、确保客户端不受服务实例位置的影响

13、与面向服务架构相关的Web服务标准包括:
A、UML
B、HTTPS
C、WSDL
D、SOAP
E、UDDI

14、单体应用的所有功能都被集成在一起作为一个单一的单元。

15、单体架构更多地作为应用的部署架构,单体应用只运行在一个进程中。

16、微服务架构架构风格是一种将一个单一应用程序开发为一个小型服务的方法。

17、本质上,微服务架构是SOA的一种扩展。

18、核心模式即针对采用微服务系统在通用场景下的所有问题,所使用的成熟的架构解决方案集合。

第五章 云原生与容器技术

1、下列哪项不是Docker容器的特点:
A、资源使用较少
B、创建速度很快
C、启动时间是分钟级
D、可以共享操作系统的资源

2、下列哪项不是Docker的网络模式
A、其他全是
B、None模式
C、Host模式
D、Bridge 模式

3、以下哪些是Docker的存储驱动:
A、AUFS
B、OverlayFS
C、Device mapper
D、其他都是

4、以下哪个命令可以查看当前运行容器:
A、docker run
B、docker top
C、docker ps
D、docker logs

5、Kubernetes集群将元数据保存在以下哪个组件:
A、Kube-apiserver
B、Kubelet
C、Etcd
D、以上都不是

6、以下哪些是Kubernetes的控制器:
A、ReplicaSet
B、Deployment
C、Rolling Updates
D、Both ReplicaSet and Deployment

7、以下哪些是Kubernetes的核心概念
A、Pods
B、Services
C、Volumes
D、其他都是

8、Kubernetes里面的Replication控制器的职责是:
A、删除或者更新多个Pod
B、帮助达到预期的状态
C、当已存在的Pod异常退出后,创建新的Pod
D、其他都是

9、如何通过命令行创建一个容器
A、docker start
B、docker create
C、docker run
D、docker poll

10、Dockerfile中的命令 RUN, CMD 和ENTRYPOINT几者有何区别?
A、RUN 执行命令并创建新的镜像层,RUN 经常用于安装软件包。
B、CMD 设置容器启动后默认执行的命令及其参数,但 CMD 能够被 docker run 后面跟的命令行参数替换
C、ENTRYPOINT 配置容器启动时运行的命令
D、其他都是

11、使用Kubernetes带来的好处有哪些
A、自动调度
B、自动回滚
C、横向扩展
D、其他都是

12、以下哪项用于确保pod不会被调度到不适当的节点上?
A、Taints
B、Tolerations
C、Taints 和 Tolerations
D、以上都不是

13、Docker容器的状态有
A、Running
B、Paused
C、Restarting
D、Exited

14、关于Kubernetes的namespace的论述是否正确:命名空间是在多个用户之间划分群集资源的方法

15、以下描述是否正确:多步构建允许在Dockerfile中使用多个FROM指令。两个FROM指令之间的所有指令会生产一个中间镜像,最后一个FROM指令之后的指令将生成最终镜像。中间镜像中的文件可以通过COPY --from=<image-number>指令拷贝,其中image-number为镜像编号,0为第一个基础镜像。没有被拷贝的文件都不会存在于最终生成的镜像,这样可以减小镜像大小,同时避免出现安全问题。

第七讲 DevOps工具链

1、下列哪项不属于DevOps工具生态圈?
A、持续集成
B、监控
C、持续部署
D、编译

2、下列哪项不属于协同开发工具?
A、Kanban
B、Rally
C、JIRA
D、Confluence

3、下列哪种持续集成工具是目前DevOps领域使用最广泛的?
A、Jenkins
B、Travis CI
C、TeamCity
D、VSTS

4、下列哪种版本管理工具不是同宗同源的?
A、GitHub
B、Git
C、GitLab
D、Subversion

5、以下哪项不是Git的文件目录?
A、工作目录
B、加载区
C、.git目录
D、Documents

6、下列哪种编译工具无法编译JAVA语言?
A、Ant
B、MSBuild
C、Gradle
D、Maven

7、下列哪种工具无法实现对远程服务器的配置操作?
A、JIRA
B、Chef
C、Puppt
D、Ansible

8、下列不属于测试的是
A、单元测试
B、API测试
C、SIT部署
D、UI测试

9、使用 工具完成DevOps持续交付流水线编排配置?
A、Java
B、SonarQube
C、Jenkins
D、JUnit

10、Git是何种工具?
A、单元测试工具
B、持续集成工具
C、监控工具
D、版本管理工具

11、以下哪种工具是开源工具?
A、JIRA
B、JUnit
C、Zabbix
D、TeamCity

12、下列哪种工具能模拟市场上主流浏览器的操作?
A、JUnit
B、FitNesse
C、Selenium
D、Jenkins

13、JIRA Software不支持极限编程这种敏捷开发方法。

14、Jenkins支持工作流即代码(pipeline-as-code)。

15、Git使用副本方式存储文件版本。

16、Selenium能实现自动化单元测试。

17、Nagios不属于监控工具。

18、Zabbix有两种工作模式。

19、SonarQube能完成持续交付流水线编排配置

20、Ansible只需要在Server端安装就能实现对远程服务器的配置管理?

DevOps导论 期末考试

DevOps导论 期末考试 客观题部分

1、下列描述中,不属于典型软件发展三大阶段的是:
A、软件作坊
B、软硬件一体化阶段
C、软件成为独立产品
D、网络化和服务化

2、"Measure twice, Cut once" 是哪个阶段的典型开发特征?
A、软硬件一体化阶段
B、软件成为独立产品阶段
C、软件作坊阶段
D、网络化阶段

3、关于软件过程管理,以下哪一种说法是比较贴切的:
A、软件过程管理关注的是企业软件过程能力的稳定输出和提升。
B、软件过程管理主要关注软件成本和质量目标的达成。
C、软件过程管理是软件企业发展到较高层次才需要关心的话题。
D、进入互联网时代,软件过程管理是过于老套的话题。

4、软件开发的本质难题中哪一个与软件发展阶段没有直接关系?
A、不可见性
B、复杂性
C、可变性
D、一致性

5、"Code and Fix" 是软件发展哪个阶段的典型开发特征?
A、软硬件一体化
B、软件作为独立产品
C、网络化和服务化
D、互联网时代

6、以下哪个因素促成了软件成为独立的产品?
A、操作系统的出现
B、个人电脑的出现
C、互联网的出现
D、高级程序设计语言的出现

7、软件危机和软件工程这两个概念提出时间是?
A、上世纪五十年代
B、上世纪六十年代
C、上世纪七十年代
D、上世纪八十年代

8、下述各个度量项中,哪一个不是PSP的基本度量项?
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、Sean是一个正在构建财务软件的团队的开发人员。 他的团队被要求开发一个新的交易系统。 他和他的团队召开会议来提出他们正在使用的工作流的图景。 然后,他们将流程放在白板上,流程中的每个步骤都有一列。 经过对团队在白板上的工作项目进行了几周观察,他们注意到这个过程中有几个步骤似乎过载了。对于他们来说,下一步应该做什么?
A、对过载步骤中正在进行的工作项目的数量进行限制
B、与团队合作,在工作进展缓慢的阶段更好地完成工作
C、在较慢的步骤中使用更多的人力
D、专注于完成看板上的工作

14、下列哪一个不是精益原则?
A、实施反馈循环
B、消除浪费
C、尽可能晚的做决定
D、识别所有的步骤

15、下列哪一个更好地描述了如何使用看板?
A、观察特征如何流经过程,以便团队可以确定如何限制WIP并通过工作流程中的步骤确定最均匀的工作流程
B、跟踪WIP限制和当前任务状态,以便团队知道他们还有多少工作要做
C、跟踪缺陷和问题,并创建解决产品问题的最快途径
D、帮助团队自我组织,并了解工作流程中的瓶颈所在

16、以下不是经常出现在Kanban上记事贴中的内容
A、团队名词
B、工作项描述
C、完成时间
D、谁在处理这个工作项

17、下面关于软件架构的描述哪个是不正确的?
A、软件架构是一组特定的架构元素,包括处理元素、数据元素和上下文元素。
B、软件架构即一系列重要的设计决策。
C、软件架构包括系统组件、连接件和约束的集合。
D、软件架构包含一系列重要决策,包括软件组织、构成系统的结构要素等。

18、在应用分层架构的软件系统中,最先处理外部请求的是:
A、表现层
B、数据层
C、应用层
D、业务层

19、以下哪个关于面向服务架构的描述是错误的?
A、面向服务架构是一个集中式组件的集合
B、面向服务架构包含服务提供者组件和服务消费者组件
C、在SOA中,服务消费者消费其他组件提供的服务不需要知道其具体的实现细节
D、SOA依赖企业服务总线为服务间的相互调用提供支持环境

20、以下对于微服务优点的描述中,哪一个是错误的?
A、微服务系统测试变得非常简单
B、单个微服务很简单,只关注一个业务功能
C、微服务可以使用RPC进行服务间通信
D、不同的微服务可以使用不同的语言进行开发

21、在微服务架构中,ZooKeeper的主要作用是?
A、注册服务
B、开发服务
C、封装服务
D、调用服务

22、除Spring Boot之外,主流的微服务开发框架还有什么?
A、Apache Dubbo
B、Django
C、Kubernetes
D、MyBaits

23、下列哪项不是Docker容器的特点:
A、启动时间是分钟级
B、资源使用较少
C、创建速度很快
D、可以共享操作系统的资源

24、下列哪项不是Docker的网络模式
A、其他全是
B、None模式
C、Host模式
D、Bridge 模式

25、以下哪些是Docker的存储驱动:
A、其他都是
B、AUFS
C、OverlayFS
D、Device mapper

26、以下哪个命令可以查看当前运行容器:
A、docker ps
B、docker run
C、docker top
D、docker logs

27、Kubernetes集群将元数据保存在以下哪个组件:
A、Etcd
B、Kube-apiserver
C、Kubelet
D、其他都不是

28、以下哪些是Kubernetes的控制器:
A、Both ReplicaSet and Deployment
B、ReplicaSet
C、Deployment
D、Rolling Updates

29、以下哪些是Kubernetes的核心概念
A、其他都是
B、Pods
C、Services
D、Volumes

30、Kubernetes里面的Replication控制器的职责是:
A、其他都是
B、删除或者更新多个Pod
C、帮助达到预期的状态
D、当已存在的Pod异常退出后,创建新的Pod

31、如何通过命令行创建一个容器
A、docker run
B、docker start
C、docker create
D、docker poll

32、Dockerfile中的命令 RUN, CMD 和ENTRYPOINT几者有何区别?
A、其他都是
B、RUN 执行命令并创建新的镜像层,RUN 经常用于安装软件包。
C、CMD 设置容器启动后默认执行的命令及其参数,但 CMD 能够被 docker run 后面跟的命令行参数替换
D、ENTRYPOINT 配置容器启动时运行的命令

33、使用Kubernetes带来的好处有哪些
A、其他都是
B、自动调度
C、自动回滚
D、横向扩展

34、以下哪项用于确保pod不会被调度到不适当的节点上?
A、Taints 和 Tolerations
B、Taints
C、Tolerations
D、以上都不是

35、下列哪项不属于DevOps工具生态圈?
A、持续部署
B、持续集成
C、监控
D、编译

36、下列哪项不属于协同开发工具?
A、Confluence
B、Kanban
C、Rally
D、JIRA

37、下列哪种持续集成工具是目前DevOps领域使用最广泛的?
A、Travis CI
B、Jenkins
C、TeamCity
D、VSTS

38、下列哪种版本管理工具不是同宗同源的?
A、Subversion
B、GitHub
C、Git
D、GitLab

39、以下哪项不是Git的文件目录?
A、Documents
B、工作目录
C、加载区
D、.git目录

40、下列哪种编译工具无法编译JAVA语言?
A、MSBuild
B、Ant
C、Gradle
D、Maven

41、下列哪种工具无法实现对远程服务器的配置操作?
A、JIRA
B、Chef
C、Puppt
D、Ansible

42、下列不属于测试的是
A、SIT测试
B、单元测试
C、API测试
D、UI测试

43、使用以下什么工具完成DevOps持续交付流水线编排配置?
A、Jenkins
B、Java
C、SonarQube
D、JUnit

44、Git是何种工具?
A、版本管理工具
B、单元测试工具
C、持续集成工具
D、监控工具

45、以下哪种工具是开源工具?
A、JUnit
B、JIRA
C、Zabbix
D、TeamCity

46、以下选项中,哪一项不属于API网关模式的优点?
A、确保客户端不受服务实例位置的影响。
B、将从客户端调用多项服务的逻辑转换为从API网关处调用,以简化整个客户端。
C、确保客户端不必关心应用程序的微服务拆分方式。
D、增加请求往返次数。

47、以下选项中,哪一项不属于微服务架构的特点?
A、围绕业务能力组织
B、低内聚和高耦合
C、去中心化
D、基础设施自动化

48、以下描述中,哪几种是网络化和服务化这个阶段的典型软件应用特征?
A、用户数量急剧增加
B、快速演化、需求不确定
C、通过SaaS等方式来发布软件系统
D、通过CD和DVD等方式支持大容量和快速分发软件拷贝

49、关于形式化方法的描述当中,不正确的有哪些?
A、这种方法的主要目的是解决软件开发的效率问题
B、这种方法是网络化和服务化阶段用来应对软件开发本质四大难题而提出来的
C、这种方法对开发人员技能有较高的要求
D、这种方法应用范围有限,例如:不适合跟客户讨论需求。

50、关于迭代式方法的说法哪些是比较恰当的?
A、迭代式方法主要是为了解决软件开发的质量问题
B、迭代式方法是上世纪九十年代中后期才出现的一种方法
C、迭代式方法是指一类具有类似特征的方法
D、迭代式方法主要特征在于将软件开发过程视作一个逐步学习和交流的过程

51、DevOps方法的出现具有一定的必然性,与以下哪些软件应用特征相匹配?
A、软件定义世界,软件随处可见
B、软件在社会生活当中扮演了越来越关键的角色
C、软件系统部署环境越来越错综复杂
D、用户需求多变所带来了软件系统的快速演化的要求

52、DevOps的哪些特点可以有效支撑当前社会对软件系统的期望?
A、敏捷开发、精益思想以及看板方法,支持快速开发、交付、迭代和演化
B、微服务架构设计
C、虚拟机技术的大量应用
D、工具链支持高效率的自动化

53、关于面向用户的质量观,我们应该关注如下哪些问题:
A、真实用户是谁?
B、用户期望是否有优先级?
C、用户期望的优先级对软件开发的影响?
D、界面和可操作性是首要的,因为这是用户能直接感受到的。

54、PSP当中为什么用缺陷管理替代质量管理?下述说法中正确的是:
A、因为缺陷往往对应了面向用户质量观中的首要用户期望。
B、因为单纯质量管理很难操作。
C、因为缺陷管理和质量管理其实是一回事。
D、因为缺陷管理相关的活动(例如,测试等)本来就是软件开发中必须要开展的活动。

55、关于PROBE估算法,下述各种说法中,不正确的有哪些?
A、PROBE不能给出精确估算,因而适合用来跟用户讨论需求和规模。
B、PROBE估算结果带着小数,肯定不准确,因而, 不应该在项目估算的时候使用。
C、PROBE方法不需要历史数据。
D、PROBE方法不能用来估算质量。

56、关于质量路径(Quality Journey),下列说法中哪些不恰当。
A、质量路径中所列举的方法都是提升开发质量的有效手段,可以随意选择使用。
B、质量路径与个体软件工程师无关,是团队层面的集体努力。
C、进入测试之前的高质量,是获得测试之后高质量软件系统的前提条件。
D、高质量软件产品最终还是需要依赖测试来确保。v

57、关于评审检查表,下述说法中不恰当的是:
A、项目团队所有人应该共用一份评审检查表,体现统一性
B、评审检查表应该保持稳定,确保缺陷不会被遗漏
C、评审检查表应该是个性化的
D、评审检查表应该定期更新

58、关于PQI,下述说法中不恰当的是:
A、PQI越高越好,最好达到1.0
B、PQI五个分指标都可以超过1.0,比如,设计时间多于编码时间的时候,该分指标就超过1.0了
C、PQI可以用来辅助判断模块开发的质量
D、PQI可以为过程改进提供依据

59、关于评审,下述说法中不恰当是:
A、代码的个人评审应该安排在单元测试之后,确保评审对象有着较高的质量,提升评审价值。
B、代码的个人评审最好交叉进行,因为阅读自己代码容易产生思维定式,不利于缺陷发现。
C、如果安排了代码的小组评审,那么代码个人评审就可以不用做。
D、代码的个人评审也应该通过评审检查表来进行。

60、关于质量的各种定义当中,下述哪些质量属性属于内部属性?
A、可移植性
B、可扩展性
C、可靠性
D、安全性

61、在组成派看来,软件架构是指?
A、软件架构将系统定义为计算组件及组件间的交互。
B、软件架构包括系统组件、连接件和约束的集合。
C、软件架构由软件元素、这些元素的外部可见属性,以及元素之间的关系组成。
D、软件架构是一系列重要决策的集合,包括构成系统的结构要素及其接口的选择。

62、分层架构将软件系统的组件分成多个互不重叠的层,包括
A、数据层
B、持久层
C、业务层
D、表现层
E、物理层
F、应用层

63、分层架构模式的缺点包括:
A、代码调整通常比较麻烦
B、不易于持续发布和部署
C、软件升级需要暂停整个服务
D、由于层间依赖关系,软件系统的可扩展性差
E、额外的性能开销

64、以下哪几个不是面向服务架构强调的实现原则?
A、服务简单
B、服务去中心化
C、服务解耦
D、服务封装
E、服务重用
F、服务组成
G、服务自治
H、服务无状态

65、以下选项中,哪些属于微服务架构的特点?
A、围绕业务能力组织
B、内聚和解耦
C、基础设施自动化
D、通过服务组件化
E、中心化

66、以下选项中,API网关模式的优点有哪些?
A、为每套客户端提供最优API
B、将从客户端调用多项服务的逻辑转换为从API网关处调用,以简化整个客户端。
C、确保客户端不必关心应用程序的微服务拆分方式
D、确保客户端不受服务实例位置的影响
E、增加请求往返次数

67、与面向服务架构相关的Web服务标准包括:
A、HTTPS
B、WSDL
C、SOAP
D、UDDI
E、UML

68、Docker容器的状态有
A、Running
B、Exited
C、Paused
D、Restarting

69、下列哪些工具不能模拟市场上主流浏览器的操作?
A、Selenium
B、JUnit
C、FitNesse
D、Jenkins

70、下面关于软件架构的描述,哪几项是正确的?
A、软件架构即一系列重要的设计决策
B、软件架构包括系统组件、连接件和约束的集合
C、软件架构是一组特定的架构元素,包括处理元素、数据元素和上下文元素
D、软件架构包含一系列重要决策,包括软件组织、构成系统的结构要素等

71、以下对于微服务优点的描述中,哪几项是正确的?
A、单个微服务很简单,只关注一个业务功能
B、微服务系统测试变得非常简单
C、微服务可以使用RPC进行服务间通信
D、不同的微服务可以使用不同的语言进行开发。

72、在DevOps化的three ways当中,关注质量问题是第二个阶段才需要考虑的。

73、DevOps中的XaaS特指 SaaS、PaaS以及IaaS这三种。

74、DevOps化的Three ways当中,建立反馈机制是二阶段应该实现的目标。

75、PSP鼓励使用瀑布型生命周期模型。

76、对于初学者来说,代码评审速度可以控制到每小时不超过400行。

77、“高质量的软件开发是计划出来的”

78、一个公司内,各个团队的Kanban列设置应当一致,便于公司管理。

79、在制品规模越小越好,因为这样可以优化前置时间,并且团队的效率会变高。

80、在DevOps中,可以使用Kanban方法,也可以使用Scrum等其他敏捷方法。

81、敏捷软件开发宣言表明,在DevOps中写文档是没有必要的。

82、单体应用的所有功能都被集成在一起作为一个单一的单元。

83、单体架构更多地作为应用的部署架构,单体应用只运行在一个进程中。

84、微服务架构架构风格是一种将一个单一应用程序开发为一个小型服务的方法。

85、本质上,微服务架构是SOA的一种扩展。

86、核心模式即针对采用微服务系统在通用场景下的所有问题,所使用的成熟的架构解决方案集合。

87、关于Kubernetes的namespace的论述是否正确:命名空间是在多个用户之间划分群集资源的方法

88、以下描述是否正确:多步构建允许在Dockerfile中使用多个FROM指令。两个FROM指令之间的所有指令会生产一个中间镜像,最后一个FROM指令之后的指令将生成最终镜像。中间镜像中的文件可以通过COPY --from=<image-number>指令拷贝,其中image-number为镜像编号,0为第一个基础镜像。没有被拷贝的文件都不会存在于最终生成的镜像,这样可以减小镜像大小,同时避免出现安全问题。

89、JIRA Software不支持极限编程这种敏捷开发方法。

90、Jenkins支持工作流即代码(pipeline-as-code)。

91、Git使用副本方式存储文件版本。

92、Selenium能实现自动化单元测试。

93、Nagios不属于监控工具。

94、Zabbix有两种工作模式。

95、SonarQube能完成持续交付流水线编排配置

96、Ansible只需要在Server端安装就能实现对远程服务器的配置管理?

97、在组成派看来,软件架构是一系列重要决策的集合,包括构成系统的结构要素及其接口的选择。

98、微服务架构的特点包括“围绕业务能力组织”、“内聚和解耦”、“基础设施自动化”等。

99、协同开发工具基于敏捷开发管理框架,将企业、团队日常的开发协作可视化、加强团队的沟通协作、提供敏捷能力的数据分析功能。

100、持续集成是DevOps理念中重要的一个实践环节,它经历了纯脚本驱动到持续集成工具两个发展阶段,目前正向第三个阶段流水线即代码的阶段发展

101、TeamCity是一个开源的持续集成工具,可以实现软件的自动化编译、测试和部署。它以其易用、强大的任务调度功能、丰富的插件库在持续集成工具领域占领大片江山 。

102、Git、GitHub、GitLab是完全不一样的三款版本管理工具

103、Ansible是一款开源的配置管理工具。它采用Server和Client管理模式,Server端和Client端均需要安装Ansible,方能实现软件多节点部署。

DevOps导论 期末考试 主观题部分

1、请谈谈微服务架构与面向服务的架构存在哪些异同?

2、从你的理解出发,谈谈为什么微服务架构具有高可用性、灵活性等优点?

3、请描述一个简单的持续交付流水线所包含的基本步骤。

4、请列举出敏捷软件开发中常见的3中开发方法?

5、请描述敏捷软件开发宣言内容?

6、请解释一下什么是Kanban方法中的WIP?为什么要限制WIP?

7、什么叫做面向用户的质量观?这种观点对软件开发有什么影响?

8、DevOps有哪些常见的质量手段有助于确保最终软件服务的质量?

学习通DevOps导论

随着互联网的快速发展和技术的不断进步,软件在我们的日常生活和工作中已经扮演了越来越重要的角色。DevOps作为软件开发和交付的一种方法,越来越被企业应用和接受。本文将介绍DevOps的概念、原则、好处以及如何学习DevOps。

一、DevOps概念

DevOps是Development和Operations两个词的结合,是一种软件开发和交付的方法论。它强调开发和运维之间的紧密合作,旨在缩短开发周期、提高代码质量和加快产品交付速度。

二、DevOps原则

1.自动化

DevOps的核心原则之一是自动化。通过自动化部署、测试、构建和发布等过程,可以大大降低错误率,提高效率。自动化可以帮助我们自动识别并解决问题,减少手动干预的时间,从而提高了交付速度和可靠性。

2.持续交付

持续交付是DevOps的另一个核心原则。持续交付是指开发团队将代码频繁地交付到生产环境中,而不是将代码保留在开发环境中一段时间后再交付。这样可以更快地获得反馈,并确保产品的快速交付。

3.团队合作

DevOps强调开发团队和运维团队之间的合作。 团队间的密切协作可以减少生产中的问题,并且可以更快地解决问题。DevOps的核心是强调团队合作,从而实现开发和运维之间的更紧密的集成。

4.快速响应

快速响应是DevOps的另一个重要原则。通过自动化和持续交付,可以更快地响应用户需求和市场变化。团队成员需要快速响应,及时解决问题,确保产品的高质量。

三、DevOps的好处

1.快速交付

DevOps的主要目的是缩短产品开发周期,从而更快地交付高质量产品。它通过自动化和持续交付来实现这一目标,从而能够大大减少交付时间。

2.高质量

自动化和持续交付可以减少错误率,提高代码质量。另外,通过持续集成和快速反馈,可以更快地发现和解决问题,从而提高产品的品质。

3.团队合作

DevOps强调团队合作,从而可以更加有效地利用团队的资源和技能,提高产品交付的效率。团队成员之间的密切协作和无障碍沟通可以减少误解和冲突,从而提高整个团队的效率。

四、如何学习DevOps

要学习DevOps,需要掌握一个综合的技能集,包括持续集成、持续交付、自动化、敏捷开发和基础架构知识等。以下是一些学习DevOps的建议:

1.学习开发技能:

DevOps是开发和运维之间的一种协作,因此学习软件开发和编程技能是非常必要的。学习常见的编程语言和开发框架,建立自己的编程技能。

2.学习基础架构知识:

DevOps需要了解基础架构知识,包括服务器、操作系统、网络、数据库和安全等。了解这些基础知识对于理解DevOps过程中的技术和工具是非常有帮助的。

3.学习自动化工具:

DevOps的核心是自动化。学习自动化工具,包括持续集成工具、自动化测试工具、自动化部署工具和配置管理工具等。

4.参加DevOps培训和课程:

参加专业的DevOps培训和课程可以帮助您更快地学习DevOps技术和流程。通过学习DevOps的最佳实践,您可以更好地理解DevOps工程实践。

五、结论

DevOps是软件开发和交付的一种方法论,强调开发和运维之间的紧密合作。自动化、持续交付、团队合作和快速响应是DevOps的核心原则。DevOps的好处包括快速交付、高质量和团队合作。要学习DevOps,需要掌握持续集成、持续交付、自动化、敏捷开发和基础架构知识等。参加DevOps培训和课程可以更快地学习DevOps技术和流程。

来源:本文由五煦查题原创撰写,欢迎分享本文,转载请保留出处和链接!

抢沙发

评论已关闭!