2022年软考-系统架构设计师考试题库(难点、易错点剖析)附答案有详解23

上传人:桔**** 文档编号:506317018 上传时间:2022-07-15 格式:DOCX 页数:24 大小:40.81KB
返回 下载 相关 举报
2022年软考-系统架构设计师考试题库(难点、易错点剖析)附答案有详解23_第1页
第1页 / 共24页
2022年软考-系统架构设计师考试题库(难点、易错点剖析)附答案有详解23_第2页
第2页 / 共24页
2022年软考-系统架构设计师考试题库(难点、易错点剖析)附答案有详解23_第3页
第3页 / 共24页
2022年软考-系统架构设计师考试题库(难点、易错点剖析)附答案有详解23_第4页
第4页 / 共24页
2022年软考-系统架构设计师考试题库(难点、易错点剖析)附答案有详解23_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《2022年软考-系统架构设计师考试题库(难点、易错点剖析)附答案有详解23》由会员分享,可在线阅读,更多相关《2022年软考-系统架构设计师考试题库(难点、易错点剖析)附答案有详解23(24页珍藏版)》请在金锄头文库上搜索。

1、2022年软考-系统架构设计师考试题库(难点、易错点剖析)附答案有详解1. 单选题创建型模式支持对象的创建,该模式允许在系统中创建对象,而不需要在代码中标识特定类的类型,这样用户就不需要编写大量、复杂的代码来初始化对象。在不指定具体类的情况下,()模式为创建一 系列相关或相互依赖的对象提供了一个接口。()模式将复杂对象的构建与其表示相分离,这样相同的构造过程可以创建不同的对象。()模式允许对象在不了解要创建对象的确切类以及如何创建等细节的情况下创建自定义对象。问题1选项A.PrototypeB.Abstract FactoryC.BuilderD.Singleton问题2选项A.Prototy

2、peB.Abstract FactoryC.BuilderD.Singleton问题3选项A.PrototypeB.Abstract FactoryC.BuilderD.Singleton【答案】第1题:B第2题:C第3题:A【解析】第1题:本题考查的是设计模式的知识内容。Prototype(原型模式):用原型实例指定创建对象的类型,并且通过拷贝这个原型来创建新的对象。允许对象在不了解创建对象的确切类以及如何创建细节的情况下创建自定义对象。Abstract Factory(抽象工厂模式):提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。Builder(构建器模式):将一个复

3、杂类的表示与其构造相分离,使得相同的构建过程能够得出不同的表示。Singleton(单例模式):保证一个类只有一个实例,并提供一个访问它的全局访问点。所以第一题答案选B抽象工厂模式,第二题答案选C构建器模式,第三题答案选A原型模式。第2题:第3题:2. 标签:题干标签:答案3. 单选题以下关于区块链所用系统中挖矿行为的描述中,错误的是( )问题1选项A.矿工挖矿取得区块链的计账权,同时获得代币B.挖矿本质是尝试计算一个hash碰撞C.挖矿本质是一种工作量证明机制D.防止比特币双花攻击【答案】D【解析】4. 单选题关于敏捷开发方法的特点,不正确的是()。问题1选项A.敏捷开发方法是适应性而非预设

4、性B.敏捷开发方法是面向过程的而非面向人的C.采用迭代增量式的开发过程,发行版本小型化D.敏捷开发中强调开发过程中相关人员之间的信息交流【答案】B【解析】本题考查的是敏捷开发方法的相关知识。敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。敏捷方法特别强调相关人员之间的信息交流。因为项目失败的原因最终都可以追溯到信息没有及时准确地传递到应该接受它的人。特别提倡直接的面对面交流,交流成

5、本远远低于文档的交流。按照高内聚、松散耦合的原则 将项目划分为若干个小组,以增加沟通。(1)敏捷开发方法是“适应性”(Adaptive)而非“预设性”(Predictive)。(2)敏捷开发方法是“面向人”(people oriented)而非“面向过程”(process oriented)。B选项描述错误,本题选择B选项。5. 单选题某公司欲开发-一个在线教育平台。在架构设计阶段,公司的架构师识别出3个核心质量属性场景。其中“网站在并发用户数量10万的负载情况下,用户请求的平均响应时间应小于3秒”这一场景主要与()质量属性相关,通常可采用()架构策略实现该属性:“主站宕机后,系统能够在10秒

6、内自动切换至备用站点并恢复正常运行”主要与()质量属性相关,通常可采用()架构策略实现该属性; “系统完成上线后,少量的外围业务功能和界面的调整与修改不超过10人月”主要与()质量属性相关。问题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.可修改性【答案】第1题:A第2题:D第3题:B第4题:C第5题:D【解析】第1题:本题主要考查考生对质量属性的理解和质量属性实现策略的掌握。对于题干

7、描述:“网站在并发用户数量10万的负载情况下,用户请求的平均响应时间应小于3秒”,主要与性能这一质量属性相关,实现该属性的常见架构策略包括:增加计算资源、减少计算开销、引入并发机制、采用资源调度等。“主站宕机后,系统能够在10秒内自动切换至备用站点并恢复正常运行”主要与可用性质量属性相关,通常可采用心跳、Ping/Echo、主动冗余、被动冗余、选举等架构策略实现该属性。 “系统完成上线后,少量的外围业务功能和界面的调整与修改不超过10人/月”主要与可修改性质量属性相关,通常可采用接口-实现分离、抽象、信息隐藏等架构策略实现该属性。第2题:第3题:第4题:第5题:6. 单选题软件活动主要包括软件

8、描述、( )、软件有效性验证和( ),( )定义了软件功能及使用限制。问题1选项A.软件模型B.软件需求C.软件分析D.软件开发问题2选项A.软件分析B.软件测试C.软件演义D.软件进化问题3选项A.软件分析B.软件测试C.软件描述D.软件开发【答案】第1题:D第2题:D第3题:C【解析】本题考查的是系统开发基础的知识。软件生命周期模型又称软件开发模型(software develop model)或软件过程模型(software process model),它是从某一个特定角度提出的软件过程的简化描述。软件过程模型是软件开发实际过程的抽象与概括,它应该包括构成软件过程的各种活动,也就是对软

9、件开发过程各阶段之间关系的一个描述和表示。软件过程模型的基本概念:软件过程是制作软件产品的一组活动以及结果,这些活动主要由软件人员来完成,软件活动主要有如下一些:1、软件描述。必须定义软件功能以及使用的限制。2、软件开发。也就是软件的设计和实现,软件工程人员制作出能满足描述的软件。3、软件有效性验证。软件必须经过严格的验证,以保证能够满足客户的需求。4、软件进化。软件随着客户的需求不断改进。7. 单选题软件方法学是以软件开发方法为研究对象的学科。其中,( )是先对最高层次中的问题进行定义、设计、编程和测试,而将其中未解决的问题作为一个子任务放到下一层次中去解决。( )是根据系统功能要求,从具体

10、的器件、逻辑部件或者相似系统开始,通过对其进行相互连接、修改和扩大,构成所要求的系统。( )是建立在严格数学基础上的软件开发方法。 问题1选项A.面向对象开发方法B.形式化开发方法C.非形式化开发方法D.自顶向下开发方法问题2选项A.自底向上开发方法B.形式化开发方法C.非形式化开发方法D.原型开发方法问题3选项A.自底向上开发方法B.形式化开发方法C.非形式化开发方法D.自顶向下开发方法【答案】第1题:D第2题:A第3题:B【解析】本题是对软件开发方法相关内容的考查。软件开发方法是指软件开发过程所遵循的办法和步骤,从不同的角度可以对软件开发方法进行不同的分类。从开发风范上开,可分为自顶向下的

11、开发方法和自底向上的开发方法。(在实际软件开发中,大都是两种方法结合,只不过是应用于开发的不同阶段以何者为主而已)“先对最高层次中的问题进行定义、设计、编程和测试,而将其中未解决的问题作为一个子任务放到下一层次中去解决”描述的是自顶向下的开发,第一空选择D选项。“根据系统功能要求,从具体的器件、逻辑部件或者相似系统开始,通过对其进行相互连接、修改和扩大,构成所要求的系统”描述的是自底向上的开发,第二空选择A选项。从性质上看,可分为形式化方法和非形式化方法。形式化方法是一种具有坚实数学基础的方法,从而允许对系统和开发过程做严格处理和论证,适用于那些系统安全级别要求极高的软件的开发。第三空选择B选

12、项。非形式化方法则不把严格性作为其主要着眼点,通常以各种开发模型的形式得以体现。从适应范围来看,可分为整体性方法与局部性方法。适用于软件开发全过程的方法称为整体性方法;适用于开发过程某个具体阶段的软件方法称为局部性方法。8. 单选题以下关于敏捷方法的描述中,不属于敏捷方法核心思想的是( )问题1选项A.敏捷方法是适应型,而非可预测型B.敏捷方法以过程为本C.敏捷方法是以人为本,而非以过程为本D.敏捷方法是迭代代增量式的开发过程【答案】B【解析】敏捷方法是以人为本,而非以过程为本,所以B选项错误。此处注意一个解题技巧,B和C的说法冲突,此时,这两个选项中至少有一个是错误的。9. 单选题按照外部形

13、态,构成一个软件系统的构件可以分为五类,其中,()是指可以进行版本替换并增加构件新功能。问题1选项A.装配的构件B.可修改的构件C.有限制的构件D.适应性构件【答案】B【解析】本题考查构件的基本概念。如果把软件系统看成是构件的集合,那么从构件的外部形态来看,构成一个系统的构件可分为5类:(1)独立而成熟的构件。独立而成熟的构件得到了实际运行环境的多次检验,该类构件隐藏了所有接口,用户只需用规定好的命令进行使用。例如,数据库管理系统和操作系统等。(2)有限制的构件。有限制的构件提供了接口,指出了使用的条件和前提,这种构件在装配时,会产生资源冲突、覆盖等影响,在使用时需要加以测试。例如,各种面向对

14、象程序设计语言中的基础类库等。(3)适应性构件。适应性构件进行了包装或使用了接口技术,把不兼容性、资源冲突等进行了处理,可以直接使用。这种构件可以不加修改地使用在各种环境中。例如ActiveX等。(4)装配的构件。装配(assemble)的构件在安装时,已经装配在操作系统、数据库管理系统或信息系统不同层次上,使用胶水代码(glue code)就可以进行连接使用。目前一些软件商提供的大多数软件产品都属这一类。(5)可修改的构件。可修改的构件可以进行版本替换。如果对原构件修改错误、增加新功能,可以利用重新“包装”或写接口来实现构件的替换。这种构件在应用系统开发中使用得比较多。10. 单选题如果 A 公司购买了一个软件的源程序, A 公司将该软件源程序中的所有标识符做了全面修改后,作为该公司的产品销售,这种行为( )。问题1选项

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号