2024年11月架构设计师综合知识真题回顾,附参考答案、解析及所涉知识点(一)
软考高级系统架构设计师考试包含三个科目:信息系统综合知识、系统架构设计案例分析和系统架构设计论文。考试形式为机考。本文主要回顾2024年下半年(2024-11-10)系统架构设计师考试上午综合知识科目的选择题,同时附带参考答案、解析和所涉知识点。
由于机考时题目顺序是打乱的,本文题目所标序号只为区分不代表实际顺序。
综合知识
1~2、安全性可划分为多种特性。其中()保证信息不泄露给未授权的用户、实体或过程;()保证信息的完整和准确,防止信息被非法修改。
问题1
A. 不可否认性 B. 机密性
C. 可控性 D. 完整性
问题2
A. 可控性 B. 不可否认性
C. 机密性 D. 完整性
所属章节:系统架构设计师教程(第二版)->第8章 系统质量属性与架构评估->8.1 软件系统质量属性->8.1.2 面向架构评估的质量属性
参考答案:B、D
答案解析:
安全性(Security)是指系统在向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。安全性可根据系统可能受到的安全威胁类型来分类。安全性又可划分为机密性、完整性、不可否认性及可控性等特性。其中,机密性保证信息不泄露给未授权的用户、实体或过程;完整性保证信息的完整和准确,防止信息被非法修改;不可否认性是指信息交换的双方不能否认其在交换过程中发送信息或接收信息的行为;可控性保证对信息的传播及内容具有控制的能力,防止为非法者所用。【系统架构设计师教程(第二版)第273页】
知识点:
3、下列选项中不能作为预防死锁措施的是()。
A. 破坏“循环等待"条件
B. 破坏“不可抢占”条件
C. 破坏“互斥”条件
D. 破坏“请求和保持”条件
参考答案:C
答案解析:
破坏“互斥”条件不能作为预防死锁的措施。这是因为互斥条件是资源使用的基本特性,它确保了资源的独占性和数据的完整性。在多任务操作系统中,进程或线程需要独占某些资源(如打印机、文件等)以防止数据竞争和不一致。
如果取消互斥条件,允许多个进程同时访问同一资源,虽然可以避免死锁的发生,但会引发其他严重问题,如数据损坏、资源争用冲突和优先级反转等。因此,破坏互斥条件并不是一个可行的死锁预防策略。
相反,为了预防死锁,通常会采取其他措施来破坏产生死锁的其他三个必要条件之一或多个:
- 请求和保持条件:可以通过实施资源分级策略或静态分配法来破坏。例如,要求进程在开始运行前一次性申请其在整个运行期间所需的全部资源,或者在提出新资源请求前释放已占有的资源。
- 不可抢占条件:可以允许进程抢占已经分配给其他进程的资源,但这通常需要复杂的管理机制来处理资源的抢占和恢复。
- 循环等待条件:可以通过全局资源排序策略来破坏,即给系统中的所有资源编号,并要求进程按递增顺序申请资源。
此外,还可以通过银行家算法等动态检测和避免死锁的方法来确保系统的稳定性和高效性。
综上所述,破坏“互斥”条件并不是预防死锁的有效措施,而应该通过其他方法来破坏产生死锁的必要条件。
知识点:
死锁问题
死锁是指多个进程之间互相等待对方的资源,而在得到对方资源之前又不释放自己的资源,造成循环等待的一种现象。如果一个进程在等待一个不可能发生的事件,则进程就死锁了。如果一个或多个进程产生死锁,就会造成系统死锁。
死锁发生的必要条件
产生死锁的根本原因在于系统提供的资源个数少于并发进程所要求的该类资源数。产生死锁有4个必要条件:互斥条件、不可抢占条件、保持与等待条件(部分分配条件)、循环等待条件。
(1)互斥条件:资源是独占的,即一个资源每次只能被一个进程使用。
(2)保持与等待条件:有一个进程已获得了一些资源,但因请求其他资源被阻寨时对已获得的资源保持不放。
(3)不可抢占条件:有些系统资源是不可抢占的,当某个进程已获得这种资源后系统不能强行收回,只能由进程使用完时自己释放。
(4)循环等待条件:若干个进程形成环形链,每个都占用对方要申请的下一个资源。
银行家算法
背景:银行家算法是由计算机科学家艾兹格·迪杰斯特拉在1965年提出的,其灵感来源于银行家在向客户贷款时需要确保银行有足够的资金满足所有客户的最大可能需求,以避免资金周转不灵的风险。
核心思想:在为进程分配资源之前,系统会模拟分配过程,判断此分配是否会使系统进入不安全状态。只有在确保系统仍处于安全状态时,才实际分配资源。
4、路由器在OSI模型的()。
A. 网络层
B. 物理层
C. 传输层
D. 数据链路层
所属章节:系统架构设计师教程(第二版)->第2章 计算机系统基础知识->2.5 计算机网络->2.5.4 组网技术
参考答案:A
答案解析:
路由器工作在OSI体系结构中的网络层,它可以在多个网络上交换和路由数据包。路由器可通过在相互独立网络中交换路由信息以生成路由表来达到数据包的路径选择。路由表包含网络地址、连接信息、路径信息和发送代价等属性。路由器通常用于广域网或广域网与局域网的互连。【系统架构设计师教程(第二版)第71页】
知识点:
网络设备及其工作层级
网络设备是连接到网络中的物理实体。网络设备的种类繁多,且与日俱增。基本的网络设备有集线器、中继器、网桥、交换机、路由器和防火墙等。
1)集线器
集线器是最简单的网络设备。在集线器中,从一个端口收到的数据被转送到所有其他端口,无论与端口相连的系统是否准备好。集线器还有一个端口被指定为上联端口,用来将该集线器连接到其他集线器或路由设备等以便形成更大的网络。
2)中继器
中继器是局域网互连设备,工作于OSI体系结构的物理层,它接收并识别网络信号,然后再生信号,将其发送到网络的其他分支上。为了保证中继器正常工作,需要保证每一个分支中的数据包和逻辑链路协议相同。此外,中继器可以用来连接不同物理介质,并在各种物理介质中传输数据包。
3)网桥
网桥工作于OSI体系的数据链路层。OSI模型数据链路层以上各层的信息对网桥来说是透明的。网桥包含了中继器的功能和特性,不仅可以连接多种介质,还能连接不同的物理分支,如以太网、令牌网,能将数据包在更大的范围内进行传送
4)交换机
交换机是一种工作在OSI七层协议中的数据链路层,为接入交换机的任意两个网络结点提供独享的转发通路,将从一个端口接收的数据通过内部处理转发到指定端口。交换机具备自动寻址和交换的功能,同时具有避免端口冲突、提高网络吞吐(Throughput)的能力。
5)路由器
路由器工作在OSI体系结构中的网络层,它可以在多个网络上交换和路由数据包。路由器可通过在相互独立网络中交换路由信息以生成路由表来达到数据包的路径选择。路由表包含网络地址、连接信息、路径信息和发送代价等属性。路由器通常用于广域网或广域网与局域网的互连。
6)防火墙(Firewall)
防火墙是网络中一种重要设备,它通常作为网络的门户,为网络的安全运行提供保障。通过在防火墙设置若于安全规则实现对进出网络的数据进行监视和过滤。在网络中通常采用硬件防火墙。硬件防火墙是指把防火墙程序做到芯片里面,由硬件执行这些功能,能减少CPU的负担,使路由更稳定。它的安全和稳定,直接关系到整个网络的安全。
5、执行本单位的任务所完成的职务发明创造,包括退休、调离原单位后或者劳动、人事关系终止后()内作出的,与其在原单位承担的本职工作或者原单位分配的任务有关的发明创造。
A. 3个月
B. 1年
C. 6个月
D. 18个月
参考答案:B
答案解析:
《中华人民共和国专利法实施细则》
第十三条 专利法第六条所称执行本单位的任务所完成的职务发明创造,是指:
(一)在本职工作中作出的发明创造;
(二)履行本单位交付的本职工作之外的任务所作出的发明创造;
(三)退休、调离原单位后或者劳动、人事关系终止后1年内作出的,与其在原单位承担的本职工作或者原单位分配的任务有关的发明创造。
专利法第六条所称本单位,包括临时工作单位;专利法第六条所称本单位的物质技术条件,是指本单位的资金、设备、零部件、原材料或者不对外公开的技术信息和资料等。
6~7、基于软件系统的生命周期,可以将软件系统的质量属性分为开发期质量属性和运行期质量属性两个部分,其中,()关注软件因适应新需求或需求变化而增加新功能的能力;()是关注软件系统同时兼顾向合法用户提供服务,以及阻止非授权使用的能力。
问题1
A. 安全性 B. 可扩展性 C. 性能 D. 可重用性
问题2
A. 可测试性 B. 安全性 C. 可移植性 D. 可用性
所属章节:系统架构设计师教程(第二版)->第8章 系统质量属性与架构评估->8.1 软件系统质量属性->8.1.1 质量属性概念
参考答案:B、B
答案解析:
开发期质量属性“可扩展性”指的是软件因适应新需求或需求变化而增加新功能的能力,也称为灵活性;运行期质量属性“安全性”指软件系统同时兼顾向合法用户提供服务,以及阻止非授权使用的能力。
知识点:
软件系统质量属性(Quality Attribute)是一个系统的可测量或者可测试的属性,用来描述系统满足利益相关者(Stakeholders)需求的程度。基于软件系统的生命周期,可以将软件系统的质量属性分为开发期质量属性和运行期质量属性2个部分。
8、在软件的使用过程中,用户往往会对软件提出新的功能与性能要求。为了满足这些要求,需要修改或再开发软件,以扩充软件功能、增强软件性能、改进加工效率、提高软件的可维护性。这种情况下进行的维护活动称为()。
A. 预防性维护
B. 适应性维护
C. 完善性维护
D. 改正性维护
参考答案:C
答案解析:
改正性维护【修BUG】:识别和纠正软件错误/缺陷,测试不可能发现所有错误。
适应性维护【应变】:指使应用软件适应环境变化【外部环境、数据环境】而进行的修改。
完善性维护【新需求】:扩充功能和改善性能而进行的修改。
预防性维护【针对未来】:为了适应未来的软硬件环境的变化,应主动增加预防性的新的功能,以使系统适应各类变化而不被淘汰。
知识点:
在软件工程中,把维护分为4种类型,即排错性维护、适应性维护、完善性维护和预防性维护。一般在系统运行初期,排错性维护和适应性维护比较多,而到后来,完善性维护和预防性维护就会比较多。【系统架构设计师教程(第二版)第110页】
9、关系操作中,操作的对象和结果都是()。
A. 元组
B. 记录
C. 集合
D. 列
所属章节:系统架构设计师教程(第二版)->第6章 数据库设计基础知识->6.2 关系数据库->6.2.2关系运算
参考答案:C
答案解析:
关系操作的特点是操作对象和操作结果都是集合。【系统架构设计师教程(第二版)第227页】
相关知识点:
关系代数运算符有4类:集合运算符、专门的关系运算符、算术比较符和逻揖运算符。根据运算符的不同,关系代数运算可分为传统的集合运算和专门的关系运算。传统的集合运算是从关系的水平方向进行的包括并、交、差及广义笛卡儿积。专门的关系运算既可以从关系的水平方向进行运算,又可以向关系的垂直方向运算,括选择、投影、连接以及除法。
5种基本的关系代数运算包括并、差、笛卡儿积、投影和选择,其他运算可以通过基本的关系运算导出。
10、数据库中有一张人员信息表包含性别属性,要求这个属性的值只能是男或者女,这属于()。
A. 关系完整性
B. 用户定义完整性
C. 参照完整性
D. 实体完整性
所属章节:系统架构设计师教程(第二版)->第6章 数据库设计基础知识->6.2 关系数据库->6.2.1关系数据库基本概念
参考答案:B
答案解析:
题目中提到的“人员信息表包含性别属性,且这个属性的值只能是男或者女”,这是一个具体的约束条件,用于限制性别属性的取值范围。这个约束不是由数据库系统自带的,而是根据实际应用需求自定义的。
知识点:
完整性规则提供了一种手段来保证当授权用户对数据库做修改时不会破坏数据的一致性。因此,完整性规则防止的是对数据的意外破坏。关系模型的完整性规则是对关系的某种约束务件。
关系的完整性约束共分为3类:实体完整性、参照完整性(也称引用完整性)和用户定义完整性。
(1)实体完整性(Entity Integrity),实体完整性规则要求每个数据表都必须有主键,而作为主键的所有字段,其属性必须是唯一旦非空值。
(2)参照完整性(Referential Integrity),现实世界中的实体之间往往存在某种联系,在关系模型中实体及实体间的联系是用关系来描述的,这样自然就存在着关系与关系间的引用。
(3)用户定义完整性(User Defined Integrity)。就是针对某一具体的关系数据库的约束条件,反映某一具体应用所涉及的数据必须满足的语义要求,由应用的环境决定。【系统架构设计师教程(第二版)第226页】
11、在仓库体系结构风格中,()用于说明当前数据的状态。
A. 黑板
B. 中央数据结构
C. 独立构件
D. 知识源
所属章节:系统架构设计师教程(第二版)->第7章 系统架构设计基础知识->7.3 软件架构风格->7.3.4 以数据为中心的体系结构风格
参考答案:B
答案解析:
中央数据结构说明当前数据的状态以及一组对中央数据进行操作的独立构件。
知识点:
仓库体系结构风格
仓库(Repository)是存储和维护数据的中心场所。在仓库风格中,有两种不同的构件:中央数据结构说明当前数据的状态以及一组对中央数据进行操作的独立构件,仓库与独立构件间的相互作用在系统中会有大的变化。这种风格的连接件即为仓库与独立构件之间的交互。
12、在UML用例图中,参与者之间存在()关系。
A. 聚合
B. 包含
C. 继承
D. 扩展
参考答案:C
答案解析:
用例图(Use Case Diagram)展现了一组用例、参与者(Actor)以及它们之间的关系。用例图通常含以下内容:(1)用例、(2)参与者、(3)用例之间的扩展关系(<<extend>>)和包含关系(<<include>>),参与者和用例之间的关联关系,用例与用例以及参与者与参与者之间的泛化关系。【以上出自软件设计师教程第5版第368页原文】而在UML中,继承关系的表示与泛化相同,也是用带空心箭头的实线表示,但箭头方向是从子类指向父类。
知识点:
-
继承关系(泛化关系):当多个参与者具有共同的行为特征时,可以使用继承关系来抽象出一个更一般的参与者,其他具体的参与者继承这个一般参与者的特性。例如,在一个图书馆管理系统中,“借阅者” 是一个一般的参与者类别,“学生借阅者” 和 “教师借阅者” 可以继承 “借阅者” 的基本行为(如借书、还书等),同时又可以有自己特定的行为(如学生借阅者可能有借阅数量限制,教师借阅者可能借阅期限更长等)。
-
聚合关系:聚合关系主要用于描述整体与部分的关系,通常用于类与类之间,而不是参与者之间。例如,在汽车类和轮胎类之间可以是聚合关系,汽车是整体,轮胎是部分,但这种关系不适合参与者。
-
包含关系(include):包含关系是用例之间的关系,不是参与者之间的关系。它用于表示一个用例包含另一个用例的行为。例如,在一个购物系统中,“完成购物” 用例可能包含 “结算” 用例。
-
扩展关系(extend):扩展关系也是用例之间的关系。它表示一个用例可以在特定条件下扩展另一个用例的行为。例如,在一个会员管理系统中,“普通会员购买商品” 是一个用例,“高级会员购买商品并享受折扣” 可以看作是对 “普通会员购买商品” 用例的扩展。
13、在体系结构描述中,典型的4+1视图模型包括()。
A. 逻辑视图、进程视图、开发视图、物理视图和场景
B. 逻辑视图、进程视图、开发视图、部署视图和场景
C. 逻辑视图、进程视图、开发视图、物理视图和类视图
D. 逻辑视图、进程视图、开发视图、物理视图和部署视图
所属章节:系统架构设计师教程(第二版)->第7章 系统架构设计基础知识->7.1 软件架构概念->7.1.2 软件架构设计与生命周期
参考答案:A
答案解析:
把体系结构描述语言和多视图结合起来描述系统的体系结构,使系统更易于理解,方便系统相关人员之间进行交流,并且有利于系统的一致性检测以及系统质量属性的评估。学术界已经提出若干多视图的方案,典型的包括4+1模型(逻辑视图、进程视图、开发视图、物理视图,加上统一的场景)、Hofmesiterd的4视图模型(概念视图、模块视图、执行视图和代码视图)、CMU-SEI的 Views and Beyond 模型(模块视图、构件和连接子视图、分配视图)等。【系统架构设计师教程(第二版)第249页】
易混淆点:
RUP(统一过程模型)采用下图所示的“4+1”视图模型来描述软件系统的体系结构。在“4+1”视图模型中,分析人员和测试人员关心的是系统的行为,会侧重于用例视图;最终用户关心的是系统的功能,会侧重于逻辑视图;程序员关心的是系统的配置、装配等问题会侧重于实现视图;系统集成人员关心的是系统的性能、可伸缩性、吞吐率等问题,会侧重子进程视图;系统工程师关心的是系统的发布、安装、拓扑结构等问题,会侧重于部署视图。【系统架构设计师教程(第二版)第184页】
14、在多道批处理系统中有P1和P2两个作业,执行顺序如下,P1(计算40ms,I/O操作60ms,计算20ms),P2(计算100ms,1/0操作40ms,计算40ms),P2比P1晚20ms到达,在不考虑调度和切换时间的情况下完成两道作业最少需要()时间。
A. 240ms
B. 200ms
C. 260ms
D. 220ms
所属章节:系统架构设计师教程(第二版)->第2章 计算机系统基础知识->2.3 计算机软件->2.3.2操作系统
参考答案:D
答案解析:
知识点:
多道批处理操作系统允许多个作业装入内存执行,在任意一个时刻,作业都处于开始点和终止点之间。每当运行中的一个作业由于输入/输出操作需要调用外部设备时,就把CPU交给另一个等待运行的作业,从而将主机与外部设备的工作由串行改变为并行,进一步避免了因主机等待外设完成任务而浪费宝贵的CPU时间。多道批处理系统主要有3个特点:多道、宏观上并行运行和微观上串行运行。
15、下面关于SQL注入的说法错误的是()。
A. 使用ORM框架可以自动处理查询和参数化输入,但无法减少SQL注入的风险
B. SQL注入是一种常见的攻击方式
C. 使用预处理语句和参数化查询是防范SQL注入的有效方法
D. 通过使用UNION关键字,攻击者可以将多个查询结果合并,从而获取数据库中的敏感信息
所属章节:系统架构设计师教程(第二版)->第13章 层次式架构设计理论与实践->13.4 数据访问层设计->13.4.3 ORM、Hibernate与CMP2.0设计思想
参考答案:A
答案解析:
使用ORM框架可以减少直接编写SQL语句的需求,从而降低SQL注入的风险。
知识点:
ORM(Object-Relation Mapping 对象关系映射)在关系型数据库和对象之间作一个映射,这样,在具体操纵数据库时,就不需要再去和复杂的 SQL语句打交道,只要像平时操作对象一样操作即可。在使用ORM之后,ORM框架已经把数据库转变成了我们熟悉的对象,我们只需要了解面向对象开发就可以实现数据库应用程序的开发,不需要浪费时间在SOL上。同时也可减少代码量,减少数据层出错机会。
16、Web服务描述语言WSDL描述了Web服务的三个基本属性,包括()。
A. 谁要访问服务、如何访问服务和服务位于何处
B. 服务做什么、谁要访问服务和服务位于何处
C. 服务做什么、如何访问服务和谁要访问服务
D. 服务做什么、如何访问服务和服务位于何处
所属章节:系统架构设计师教程(第二版)->第15章 面向服务架构设计理论与实践->15.4 SOA主要协议和规范->15.4.2 WSDL规范
参考答案:D
答案解析:
WSDL(Web Services Description Language,Web服务描述语言),是一个用来描述Web服务和说明如何与Web服务通信的XML语言。它是 Web服务的接口定义语言,由Ariba、Intel、IBM和MS等共同提出,通过WSDL,可描述Web服务的三个基本属性。
(1)服务做些什么——服务所提供的操作(方法)。
(2)如何访问服务——和服务交互的数据格式以及必要协议
(3)服务位于何处——协议相关的地址,如URL。
17、一个模块内的处理元素是相关的,而且必须以特定次序执行,则称为()。
A. 通信内聚
B. 逻辑内聚
C. 过程内聚
D. 时间内聚
所属章节:系统架构设计师教程(第二版)->第5章 软件工程基础知识->5.3 系统分析与设计->5.3.1 结构化方法
参考答案:C
答案解析:
过程内聚:处理元素相关,而且必须按特定的次序执行。
知识点:
内聚表示模块内部各代码成分之间联系的紧密程度,是从功能角度来度量模块内的联系,一个好的内聚模块应当恰好做目标单一的一件事情,模块的内聚类型通常也可以分为7种,根据内聚度从高到低的排序如下图所示,
顺序内聚和过程内聚的区分:顺序内聚强调数据流的传递,每个步骤依赖于前一个步骤的输出。过程内聚控制流从一个动作流向另一个动作,各个处理元素之间通过控制流连接。
18、信息化需求包含三个层次,即()。
A. 战略需求、运作需求和信息资源开发
B. 战略需求、运作需求和技术需求
C. 战略需求、信息资源开发和技术需求
D. 信息资源开发、运作需求和技术需求
参考答案:B
答案解析:
信息化需求包含3个层次,即:战略需求、运作需求和技术需求。
知识点:
战略需求:组织信息化的战略需求的目标是提升组织的竞争能力、为组织的可持续发展提供一个支持环境。从某种意义上来说,信息化对组织不仅仅是服务的手段和实现现有战略的辅助工具,信息化可以把组织战略提升到一个新的水平,为组织带来新的发展契机。特别是对于企业,信息化战略是企业竞争的基础。
运作需求:组织信息化的运作需求是组织信息化需求非常重要且关键的一环,它包含三方面的内容:一是实现信息化战略目标的需要;二是运营策略的需要;三是人才培养的需要。
技术需求:由于系统开发时间过长等问题在信息技术层面上对系统的完善、升级、集成和整合提出了需求。也有的组织,原来基本上没有大型的信息系统项目,有的也只是一些单机应用,这样的组织的信息化需求,一般是从头开发新的系统。
19、()不属于调用/返回体系结构风格的子风格。
A. 层次型体系结构风格
B. 主程序/子过程体系结构风格
C. 黑板体系结构风格
D. 面向对象体系结构风格
所属章节:系统架构设计师教程(第二版)->第7章 系统架构设计基础知识->7.3 软件架构风格->7.3.3 调用/返回体系结构风格
参考答案:C
答案解析:
调用/返回体系结构风格主要包括主程序/子程序风格、面向对象风格、层次型风格以及客户端/服务器风格。
以数据为中心的体系结构风格主要包括仓库体系结构风格和黑板体系结构风格。
知识点:
调用/返回体系结构风格
调用/返回风格是指在系统中采用了调用与返回机制。利用调用-返回实际上是一种分而治之的策略,其主要思想是将一个复杂的大系统分解为若干子系统,以便降低复杂度,并且增加可修改性。程序从其执行起点开始执行该构件的代码,程序执行结束,将控制返回给程序调用构件。调用/返回体系结构风格主要包括主程序/子程序风格、面向对象风格、层次型风格以及客户端/服务器风格。
20、分段允许程序员把内存视为由这个地址空间或段组成,其中段的大小是()。
A. 固定的
B. 不可变的
C. 相等的
D. 动态可变的
参考答案:D
答案解析:
段的大小是可变的。在段式存储管理系统中,段的大小可以根据需要动态改变,与分页管理不同。分页管理中的页大小通常是固定的。(详细概念见软件设计师教程第5版第208页)
21、给出关系模式R(A,B,C,D)和其属性之间的函数依赖(A→C,BC→D),则R的码是()。
A. B
B. C
C. AB
D. A
参考答案:C
答案解析:
从下图中可以很直观地看出,入度为零的节点是A与B,从这两个节点的组合出发,能遍历全图,所以AB组合键为候选码。
22、有两个关系R(a,b,c)和S(b,c,d),将R和S进行自然连接,得到的结果包含()列。
A. 4
B. 6
C. 2
D. 5
所属章节:系统架构设计师教程(第二版)->第6章 数据库设计基础知识->6.2 关系数据库->6.2.2 关系运算
参考答案:A
答案解析:
题目所讲的是自然连接,自然连接的规则是把参与运算的两个关系模式R与S的相同名称列找出来,即:b与c,
然后针对R与S做b与c属性的等值连接,这样产生的结果记录为:(a,b,c,d),所以得到的结果包含4列。
知识点:
自然连接(Natural Join)是一种特殊的等值连接,它要求两个关系中进行比较的分量必须是相同的属性组,并且在结果集中将重复属性列去掉。特别需要说明的是:一般连接是从关系的水平方向运算,而自然连接不仅要从关系的水平方向,而且也要从关系的垂直方向运算,因为自然连接要去掉重复属性,如果没有重复属性,那么自然连接就转化为笛卡儿积。
23、以下关于设计模式描述正确的是()。
A. 装饰器模式属于行为型模式
B. 原型模式属于创建型模式
C. 解释器模式和代理模式属于同一类型模式
D. 观察者模式属于结构型模式
所属章节:软件设计师教程(第5版)->第7章 面向对象技术->7.3 设计模式(题目虽然是高级架构设计师考试的题,但是具体的知识点在中级软件设计师的教程上。)
参考答案:B
答案解析:
装饰器模式是结构型模式;原型模式属于创建型模式;解释器模式属于行为型模式,代理模式属于结构型模式,两者不属于同一类型模式;观察者模式属于行为型模式;综上可得选项B是正确的。
知识点:
设计模式确定了所包含的类和实例,它们的角色、协作方式以及职责分配。每一个设计模式都集中于一个特定的面向对象设计问题或设计要点,描述了什么时候使用它,在另一些设计约束条件下是否还能使用,以及使用的效果和如何取舍。按照设计模式的目的可以分为三大类:创建型模式与对象的创建有关;结构型模式处理类或对象的组合;行为型模式对类或对象怎样交互和怎样分配职责进行描述。具体分类如下图所示。
24~25、在软件架构评估中,()方法采用效用树这一工具来对质量属性进行分类和优先级排序。效用树的结构包括:()。
问题1
A. SAEM B. ATAM C. SAAM D. CBAM
问题2
A. 树根--质量属性--属性分类--质量属性场景(叶子节点)
B. 树根--属性分类--属性描述--质量属性场景(叶子节点)
C. 树根--质量属性--属性描述--质量属性场景(叶子节点)
D. 树根--功能需求--需求描述--质量属性场录(叶子节点)
所属章节:系统架构设计师教程(第二版)->第8章 系统质量属性与架构评估>8.2 系统架构评估>8.2.2 系统架构评估方法
参考答案:B、A
答案解析:
ATAM 方法采用效用树这一工具来对质量属性进行分类和优先级排序。
效用树的结构包括:树根一质量属性一属性分类一质量属性场景(叶子节点)。
知识点:
架构权衡分析方法(Architecture Tradeoff Analysis Method,ATAM)是在SAAM的基础上发展起来的,主要针对性能、实用性、安全性和可修改性,在系统开发之前,对这些质量属性进行评价和折中。
ATAM方法采用效用树(Utility tree)这一工具来对质量属性进行分类和优先级排序。效用树的结构包括:树根一质量属性一属性分类一质量属性场景(叶子节点)。需要注意的是,ATAM 主要关注4类质量属性:性能、安全性、可修改性和可用性,这是因为这4个质量属性是利益相关者最为关心的。
【由于篇幅较长,剩下的题将放到后面的第二篇和第三篇。】