admin 管理员组

文章数量: 887021


2024年2月6日发(作者:designdoll安装)

书山有路勤为径,学海无涯苦作舟! 住在富人区的她

2022年职业考证-软考-系统架构设计师考试全真模拟易错、难点剖析AB卷(带答案)

一.综合题(共15题)

1.

单选题

软件架构风格是描述某一特定应用领域中系统组织方式的惯用模式,按照软件架构风格,物联网系统属于( )软件架构风格。

问题1选项

A.层次型

B.事件系统

C.数据线

D.C2

【答案】A

【解析】

由于物联网从架构角度来看,是分三层的:

感知层:识别物体、采集信息。如:二维码、RFID、摄像头、传感器(温度、湿度)

网络层:传递信息和处理信息。通信网与互联网的融合网络、网络管理中心、信息中心和智 能处理中心等

应用层:解决信息处理和人机交互的问题

所以应属于层次型架构风格。

2.

A.优先级调度算法

B.抢占式优先级调度算法

C.最晚截止期调度算法

D.最早截止期调度算法

【答案】C

【解析】本题考查的是嵌入式操作系统调度算法。

实时系统存在多种调度算法。

A选项优先级调度算法:系统为每个任务分配一个相对固定的优先顺序,然后调度程序根据优先级的高低排序,按时间顺序进行高优先级任务优先调度。

B选项抢占式优先级调度算法:是在优先级调度算法基础上,允许高优先级任务抢占低优先级任务而运行。

C选项最晚截止期调度算法:指调度程序按每个任务的最接近其截止期末端的时间进行调度,本题描述的就是最晚截止期调度算法。

D选项最早截止期调度算法:指调度程序按每个任务的截止期时间,选择最早到截止期头端时间的任务进行调度。

3.

单选题

某嵌入式实时操作系统采用了某种调度算法,当某任务执行接近自己的截止期(deadline)时,调度算法将把该任务的优先级调整到系统最高优先级,让该任务获取CPU资源运行。请问此类调度算法是( )。

问题1选项

单选题

数据库的安全机制中,通过提供( )供第三方开发人员调用进行数据更新 ,从而保证数据库的关系模式不被第三方所获取。

问题1选项

A.索引

B.视图

C.存储过程

D.触发器

【答案】C

【解析】本题考查的是数据库基础知识。

索引是数据库中提高查询效率的一种机制,不能进行数据更新。

视图一般是提供查询数据的,具有一定安全机制,但是不能进行数据更新。

书山有路勤为径,学海无涯苦作舟! 住在富人区的她

触发器可以作为更新机制,但是无法避免数据库的关系模式被第三方所获取,并不安全。

存储过程方式,可以定义一段代码,从而提供给用户程序来调用,具体更新过程通过代码调用,避免了向第三方提供系统表结构的过程,体现了数据库的安全机制。所以本题选择C选项。

4.

单选题

在三层C/S架构中,( )是应用的用户接口部分,负责与应用逻辑间的对话功能;( )是应用的本体,负责具体的业务处理逻辑。

问题1选项

A.表示层

B.感知层

C.设备层

D.业务逻辑层

问题2选项

A.数据层

B.分发层

C.功能层

D.算法层

【答案】第1题:A

第2题:C

【解析】 三层C/S体系结构是将应用功能分成表示层、功能层和数据层三个部分。

(1)表示层

表示层是应用的用户接口部分担负与应用逻辑间的对话功能。它用于用户从工作站输入的数据,并显示应用输出的数据。为使用户能直观地进行操作,一般要使用图形用户界面(GUI),在变更用户界面时,只需改写显示控制和数据检查程序,而不影响业务逻辑。

(2)功能层

功能层是应用的本体,它负责具体的业务处理逻辑,例如在制作订购合同时要计算合同金额。表示层和功能层之间的数据互交要尽可能简洁。例如,用户检索数据时,要将有关检索要求的信息一次性地传送给功能层,检索结果数据也由功能层一次性地传送给表示层。

(3)数据层

数据层通常是数据库管理系统,负责管理对数据库数据的读写。数据库系统必须能迅速执行大量数据的更新和检索。

三层C/S的解决方案对这三层进行明确分割,不同层构件相互独立,层间的接口简洁,适合复杂事务处理。

5.

单选题

在Web服务器的测试中,反映其性能的指标不包括:( ),常见的 Web服务器性能评测方法有基准性能测试、压力测试和( )。

问题1选项

A.链接正确跳转

B.最大并发连接数

C.响应延迟

D.吞吐量

问题2选项

A.功能测试

B.黑盒测试

C.白盒测试

D.可靠性测试

【答案】第1题:A

第2题:D

【解析】

书山有路勤为径,学海无涯苦作舟! 住在富人区的她

在Web服务器的测试中,反映其性能的指标主要有:最大并发连接数、响应延迟和吞吐量等。常见的Web服务器性能评测方法有基准性能测试、压力测试和可靠性测试。

6.

单选题

针对二层C/S软件架构的缺点,三层CIS架构应运而生。在三层CIS架构中,增加了一个()。三层CS架构是将应用功能分成表示层、功能层和()三个部分。 其中()是应用的用户接口部分,担负与应用逻辑

D.功能层

【答案】第1题:A

第2题:B

第3题:A

【解析】第1题:本题考查的是C/S架构风格的相关知识。

C/S架构是基于资源不对等,且为实现共享而提出来的,是20世纪90年代成熟起来的技术,C/S结构将应用一分为二,服务器(后台)负责数据管理,客户机(前台)完成与用户的交互任务。

间的对话功能。

问题1选项

A.应用服务器

B.分布式数据库

C.内容分发

D.镜像

问题2选项

A.硬件层

B.数据层

C.设备层

D.通信层

问题3选项

A.表示层

B.数据层

C.应用层

C/S软件架构具有强大的数据操作和事务处理能力,模型思想简单,易于人们理解和接受。但随着企业规模的日益扩大,软件的复杂程度不断提高,传统的二层C/S结构存在以下几个局限:

1.二层C/S结构为单一服务器且以局域网为中心,所以难以扩展至大型企业广域网或Internet;

2.软、硬件的组合及集成能力有限;

3.服务器的负荷太重,难以管理大量的客户机,系统的性能容易变坏;

4.数据安全性不好。因为客户端程序可以直接访问数据库服务器,那么,在客户端计算机上的其他程序也可想办法访问数据库服务器,从而使数据库的安全性受到威胁。

正是因为二层C/S有这么多缺点,因此,三层C/S结构应运而生。三层C/S结构是将应用功能分成表示层、功能层和数据层三个部分。

表示层是应用的用户接口部分,它担负着用户与应用间的对话功能。它用于检查用户从键盘等输入的数据,并显示应用输出的数据。在变更用户接口时,只需改写显示控制和数据检查程序,而不影响其他两层。检查的内容也只限于数据的形式和取值的范围,不包括有关业务本身的处理逻辑。

功能层相当于应用的本体,它是将具体的业务处理逻辑编入程序中。而处理所需的数据则要从表示层或数据层取得。表示层和功能层之间的数据交往要尽可能简洁。

数据层就是数据库管理系统,负责管理对数据库数据的读写。数据库管理系统必须能迅速执行大量数据的更新和检索。因此,一般从功能层传送到数据层的要求大都使用SQL语言。

第2题:

第3题:

7.

单选题

某文件系统文件存储采用文件索引节点法。假设文件索引节点中有8个地址项iaddr[0]~iaddr[7],每个地址项大小为4字节,其中地址项iaddr[0]~iaddr[4]为直接地址索引,iaddr[5]~iaddr[6]是一级间接地址索引,iaddr[7]是二级间接地址索引,磁盘索引块和磁盘数据块大小均为1KB。若要访问文件的逻辑块号分别为1、518,则系统应分别采用( )。

问题1选项

A.直接地址索引、直接地址索引

书山有路勤为径,学海无涯苦作舟! 住在富人区的她

B.直接地址索引、一级间接地址索引

C.直接地址索引、二级间接地址索引

D.一级间接地址索引、二级间接地址索引

【答案】C

【解析】直接索引范围:1KB×5=5KB ,对应逻辑块号:0-4;

一级间接索引范围:(1KB/4B)×1KB×2=512KB ,对应逻辑块号:5-516;

二级间接索引范围:(1KB/4B)× (1KB/4B)×1KB=65536KB ,对应逻辑块号:517以及上。

8.

单选题

考虑软件架构时,重要的是从不同的视角(perspective) 来检查,这促使软件设计师考虑架构的不同属性。例如,展示功能组织的()能判断质量特性, 展示并发行为的()能判断系统行为特性。选择的特定视角或视图也就是逻辑视图、进程视图、实现视图和()。 使用()来记录设计元素的功能和概念接口,设计元素的功能定义了它本身在系统中的角色,这些角色包括功能、性能等。

问题1选项

A.静态视角

B.动态视角

C.多维视角

D.功能视角

问题2选项

A.开发视角

B.动态视角

C.部署视角

D.功能视角

问题3选项

A.开发视图

B.配置视图

C.部署视图

D.物理视图

问题4选项

A.逻辑视图

B.物理视图

C.部署视图

D.用例视图

【答案】第1题:A

第2题:B

第3题:B

第4题:A

【解析】第1题:本题是对软件架构相关知识的考查。

当考虑架构时,重要的是从不同的视角(perspective)来检查,这促使设计师考虑具体架构的不同属性。例如:展示功能组织的静态视角能判断质量特性,展示并发行为的动态视角能判断系统行为特性。在ABSD(基于架构的软件设计)方法中,使用不同的视角来观察设计元素,一个子系统并不总是一个静态的架构元素,而是可以从动态和静态视角观察的架构元素。将选择的特定视角或视图与Kruchten提出的类似,也就是逻辑视图、进程视图、实现视图和配置视图。使用逻辑视图来记录设计元素的功能和概念接口,设计元素的功能定义了它本身在系统中的角色,这些角色包括功能性能等。进程视图也称为并发视图,使用并发视图来检查系统多用户的并发行为。使用“并发”来代替“进程”,是为了强调没有对进程或线程进行任何操作,一旦这些执行操作,则并发视图就演化为进程视图。使用的最后一个视图是配置视图,配置视图代表了计算机网络中的节点,也就是系统的物理结构。

第2题:

第3题:

第4题:

书山有路勤为径,学海无涯苦作舟! 住在富人区的她

9.

单选题

一个完整的软件系统需从不同视角进行描述,下图属于软件架构设计中的( ),用于( )视图来描

C.物理

D.用户

述软件系统 。

问题1选项

A.对象图

B.时序图

C.构件图

D.类图

问题2选项

A.进程

B.开发

【答案】第1题:D

第2题:B

【解析】第1题:本题第一空选择D选项。

图示展示的是类图的结构。

注意区分类图和对象图。对象图标记的是对象名,命名形式 对象名:类名,或者 :类名。这里没有出现冒号,表示的是类图。

对象图(object diagram)。对象图描述一组对象及它们之间的关系。对象图描述了在类图中所建立的事物实例的静态快照。和类图一样,这些图给出系统的静态设计视图或静态进程视图,但它们是从真实案例或原型案例的角度建立的。

类图(class diagram)。类图描述一组类、接口、协作和它们之间的关系。在OO系统的建模中,最常见的图就是类图。类图给出了系统的静态设计视图,活动类的类图给出了系统的静态进程视图。

本题第二空选择B选项。

“4+1”视图模型从五个不同的视角来描述软件架构,每个视图只关心系统的一个侧面,五个视图结合在一起才能反映软件架构的全部内容。

(1)逻辑视图。逻辑视图主要支持系统的功能需求,即系统提供给最终用户的服务。在逻辑视图中,系统分解成一系列的功能抽象,这些抽象主要来自问题领域。这种分解不但可以用来进行功能分析,而且可用作标识在整个系统的各个不同部分的通用机制和设计元素。在OO技术中,通过抽象、封装和继承,可以用对象模型来代表逻辑视图,用类图来描述逻辑视图。逻辑视图中使用的风格为面向对象的风格,在设计中要注意保持一个单一的、内聚的对象模型贯穿整个系统。

(2)开发视图。开发视图也称为模块视图,在UML中被称为实现视图,它主要侧重于软件模块的组织和管理。开发视图要考虑软件内部的需求,例如,软件开发的容易性、软件的复用性和软件的通用性,要充分考虑由于具体开发工具的不同而带来的局限性。开发视图通过系统I/O关系的模型图和子系统图来描述。其中类图属于开发视图。

(3)进程视图。进程视图侧重于系统的运行特性,主要关注一些非功能性需求,例如,系统的性能和可用性等。进程视图强调并发性、分布性、系统集成性和容错能力,以及从逻辑视图中的主要抽象如何适合进程结构等,它也定义了逻辑视图中的各个类的操作具体是在哪一个线程中被执行的。进程视图可以描述成多层抽象,每个级别分别关注不同的方面。

(4)物理视图。物理视图在UML中被称为部署视图,它主要考虑如何把软件映射到硬件上,它通常要考虑到解决系统拓扑结构、系统安装和通信等问题。当软件运行于不同的物理节点上时,各视图中的构件都直接或间接地对应于系统的不同节点上。因此,从软件到节点的映射要有较高的灵活性,当环境改变时,对系统其他视图的影响最小化。

(5)场景视图。场景视图可以看作是那些重要系统活动的抽象,它使四个视图有机联系起来,从某种意义上说场景视图是最重要的需求抽象。场景视图对应UML中的用例视图。在开发软件架构时,它可以帮助架构设计师找到构件及其相互关系。同时,架构设计师也可以用场景来分析一个特定的视图,或描述不同视图的构件之间是如何相互作用的。场景视图可以用文本表示,也可以用图形表示。

第2题:

书山有路勤为径,学海无涯苦作舟! 住在富人区的她

10.

单选题

某公司欲开发-一个在线教育平台。在架构设计阶段,公司的架构师识别出3个核心质量属性场景。其中“网站在并发用户数量10万的负载情况下,用户请求的平均响应时间应小于3秒”这一场景主要与()质量属性相关,通常可采用()架构策略实现该属性:“主站宕机后,系统能够在10秒内自动切换至备用站点并恢复正常运行”主要与()质量属性相关,通常可采用()架构策略实现该属性; “系统完成上线后,少量的外围业务功能和界面的调整与修改不超过10人●月”主要与()质量属性相关。

问题4选项

A.记录/回放

B.操作串行化

C.心跳

问题1选项

A.性能

B.可用性

C.易用性

D.可修改性

问题2选项

A.抽象接口

B.信息隐藏

C.主动冗余

D.资源调度

问题3选项

A.性能

B.可用性

C.易用性

D.可修改性

D.增加计算资源

问题5选项

A.性能

B.可用性

C.易用性

D.可修改性

【答案】第1题:A

第2题:D

第3题:B

第4题:C

第5题:D

【解析】第1题:本题主要考查考生对质量属性的理解和质量属性实现策略的掌握。

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

第2题:

第3题:

第4题:

第5题:

书山有路勤为径,学海无涯苦作舟! 住在富人区的她

11.

单选题

SDN(Software Defined Netwok)的网络架构中不包含( )。

问题1选项

A.逻辑层

B.控制层

C.转发层

D.应用层

【答案】A

【解析】SDN(Software Defined Netwok)的网络架构中包含:控制层、转发层和应用层。

12.

单选题

通过信息隐蔽可以提高软件的( )、可测试性和( ) 。

问题1选项

A.可修改性

B.可扩充性

C.可靠性

D.耦合性

问题2选项

A.封出性

B.安全性

C.可移植性

D.可交互性

【答案】第1题:A

第2题:B

【解析】本题考查的是质量属性及相应设计策略。

信息隐藏是提高可修改性的典型设计策略,又因为信息隐藏可以有一定保密作用,所以也可以提高安全性。

常考质量属性及相应设计策略如下:

1、性能

性能(performance)是指系统的响应能力,即要经过多长时间才能对某个事件做出响应,或者在某段时间内系统所能处理的事件的个数。

代表参数:响应时间、吞吐量 设计策略:优先级队列、资源调度

2、可用性

可用性(availability)是系统能够正常运行的时间比例。经常用两次故障之间的时间长度或在出现故障时系统能够恢复正常的速度来表示。

代表参数:故障间隔时间 设计策略:冗余、心跳线

3、安全性

安全性(security)是指系统在向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。安全性又可划分为机密性、完整性、不可否认性及可控性等特性。

设计策略:追踪审计

4、可修改性

可修改性(modifiability)是指能够快速地以较高的性能价格比对系统进行变更的能力。通常以某些具体的变更为基准,通过考察这些变更的代价衡量可修改性。

主要策略:信息隐藏

5、可靠性

可靠性(reliability)是软件系统在应用或系统错误面前,在意外或错误使用的情况下维持软件系统的功能特性的基本能力。主要考虑两个方面:容错、健壮性。

代表参数: MTTF、MTBF 设计策略:冗余、心跳线

13.

单选题

某公司拟开发一个个人社保管理系统,该系统的主要功能需求是根据个人收入、家庭负担、身体状态等情况,预估计算个人每年应支付的社保金,该社保金的计算方式可能随着国家经济的变化而动态改变,针对上述需求描述,该软件系统适宜采用( )架构风格设计,该风格的主要特点是( )。

问题1选项

书山有路勤为径,学海无涯苦作舟! 住在富人区的她

d system

flow

system

-based system

问题2选项

A.将业务逻辑中频繁变化的部分定义为规则

B.各构件间相互独立

C.支持并发

D.无数据不工作

【答案】第1题:D

第2题:A

【解析】

本题考查架构风格应用,根据题目描述,最核心的业务特点是变化大,变化之后要能及时响应变化。此时,可以理解为,可以自行定义计算的方式与规则,所以使用虚拟机风格较为合适,题目中提到的规则系统属于虚拟机风格。该风格最显著的特点是会把变化的内容定义为规则。

14.

单选题

基于构件的软件开发中,构件分类方法可以归纳为三大类:( )根据领域分析的结果将应用领域的概念按照从抽象到具体的顺序逐次分解为树形或有向无回路图结构 ;( )利用Facet描述构件执行的功能、被操作的数据、构件应用的语境或任意其他特征;( )使得检索者在阅读文档过程中可以按照人类的联想思维方式任意跳转到包含相关概念或构件的文档。

问题1选项

A.关键字分类法

B.刻面分类法

C.语义匹配法

D.超文本方法

问题2选项

A.关键字分类法

B.刻面分类法

C.语义匹配法

D.超文本方法

问题3选项

A.关键字分类法

B.刻面分类法

C.语义匹配法

D.超文本方法

【答案】第1题:A

第2题:B

第3题:D

【解析】第1题:本题考查的是构件管理相关知识。目前,已有的构件分类方法可以分为三大类,分别是关键字分类法、刻面分类法和超文本组织方法。关键字分类法:是一种最简单的构件库组织方法,其基本思想是:根据领域分析的结果将应用领域的概念按照从抽象到具体的顺序逐次分解为树状或有向无回路图结构。每个概念用一个描述性的关键字表示。不可分解的原子级关键字包含隶属于它的某些构件。第一空描述的是关键字分类法,选择A选项。刻面分类法:在刻面分类机制中,定义若干用于刻画构件特征的“面”(facet),每个面包含若干概念,这些概念表述构件在面上的特征。刻画可以描述构件执行的功能、被操作的数据、构件应用的语境或任意其他特征。第二空描述的是刻面分类法,选择B选项。超文本组织方法:超文本组织方法与基于数据库系统的构件库组织方法不同,它基于全文检索技术,主要思想是:所有构件必须辅以详尽的功能或行为说明文档;说明中出现的重要概念或构件以网状链接方式相互连接;检索者在阅读文档的过程中可按照人类的联系思维方式任意跳转到包含相关概念或构件的文档;全文检索系统将用户给出的关键字与说明文档中的文字进行匹配,实现构件的浏览式检索。第三空描述的是超文本

书山有路勤为径,学海无涯苦作舟! 住在富人区的她

方法,选择D选项。

第2题:本题考查的是构件管理相关知识。目前,已有的构件分类方法可以分为三大类,分别是关键字分类法、刻面分类法和超文本组织方法。关键字分类法:是一种最简单的构件库组织方法,其基本思想是:根据领域分析的结果将应用领域的概念按照从抽象到具体的顺序逐次分解为树状或有向无回路图结构。每个概念用一个描述性的关键字表示。不可分解的原子级关键字包含隶属于它的某些构件。第一空描述的是关键字分类法,选择A选项。刻面分类法:在刻面分类机制中,定义若干用于刻画构件特征的“面”(facet),每个面包含若干概念,这些概念表述构件在面上的特征。刻画可以描述构件执行的功能、被操作的数据、构件应用的语境或任意其他特征。第二空描述的是刻面分类法,选择B选项。超文本组织方法:超文本组织方法与基于数据库系统的构件库组织方法不同,它基于全文检索技术,主要思想是:所有构件必须辅以详尽的功能或行为说明文档;说明中出现的重要概念或构件以网状链接方式相互连接;检索者在阅读文档的过程中可按照人类的联系思维方式任意跳转到包含相关概念或构件的文档;全文检索系统将用户给出的关键字与说明文档中的文字进行匹配,实现构件的浏览式检索。第三空描述的是超文本方法,选择D选项。

第3题:本题考查的是构件管理相关知识。目前,已有的构件分类方法可以分为三大类,分别是关键字分类法、刻面分类法和超文本组织方法。关键字分类法:是一种最简单的构件库组织方法,其基本思想是:根据领域分析的结果将应用领域的概念按照从抽象到具体的顺序逐次分解为树状或有向无回路图结构。每个概念用一个描述性的关键字表示。不可分解的原子级关键字包含隶属于它的某些构件。第一空描述的是关键字分类法,选择A选项。刻面分类法:在刻面分类机制中,定义若干用于刻画构件特征的“面”(facet),每个面包含若干概念,这些概念表述构件在面上的特征。刻画可以描述构件执行的功能、被操作的数据、构件应用的语境或任意其他特征。第二空描述的是刻面分类法,选择B选项。超文本组织方法:超文本组织方法与基于数据库系统的构件库组织方法不同,它基于全文检索技术,主要思想是:所有构件必须辅以详尽的功能或行为说明文档;说明中出现的重要概念或构件以网状链接方式相互连接;检索者在阅读文档的过程中可按照人类的联系思维方式任意跳转到包含相关概念或构件的文档;全文检索系统将用户给出的关键字与说明文档中的文字进行匹配,实现构件的浏览式检索。第三空描述的是超文本方法,选择D选项。

15.

i)系统需要针对代码仓库的所有操作进行详细记录;便于后期查阅与审计;

j)更改系统web界面风格需要在4人天内完成;

k)系统本身需要提供远程调试接口,支持开发团队进行远程排错;

在对系统需求、质量属性和架构特性进行分析的基础上,该公司的系统果构师给出了两种候选的架构设计方案,公司目前正在组织相关专家对候选系统架构进行评估。

【问题1】(13分)

针对该系统的功能,李工建议采用管道过滤器(pipe and fiter)的架构风格,而王工则建议采用仓库(repository) 架构风格。请指出该系统更适合采用哪种架构风格,并针对系统的主要功能,从数据处理方式、系统的可扩展性和处理性能三个方面对这两种架构风格进行比较与分析,填写表1-1中的 (1) ~

(4)空白处。

【问题2】(12分)

在架构评估过程中,质量属性效用树(utility tree)是对系统质量属性进行识别和优先级排序的重要工具。请将合适的质量属性名称填入图1-1中(1)、 (2)空白处,并选择题干描述的(a) ~ (k)填入(3) ~ (6) 空白处,完成该系统的效用树。

案例题

某公司拟开发一套在线软件开发系统,支持用户通过浏览器在线进行软件开发活动。该系统的重要功能包括代码编辑、语法高亮显示、代码编译、系统调试、代码仓库管理等,在需求分析与架构设计阶段,公司提出的需求和质量属性描述如下:

a)根据用户的付费情况对用户进行分类,并根据类别提供相应的开发功能;

b)在正常负载情况下,系统应该在0.2s内对用户的界面操作请求进行响应;

c)系统应该具备完善的安全防护措措施,能够对黑客的攻击行为进行检测和防御;

d)系统主站点断电后应在3s内将请求重定向到备用站点;

e)系统支持中文昵称,但用户名必须以字母开头,长度不少于8个字符;

f)系统宕机后,需要在15s内发现错误,并启用备用系统;

g)在正常负载情况下,户的代码提交请求应在0.5s内完成;

h)系统支持硬件设备灵活扩容,应保证在2人天内完成所有的部署与测试工作;

书山有路勤为径,学海无涯苦作舟! 住在富人区的她

【答案】【问题1】

1.应该采用仓库风格。(5分)

2.表(1)-(4)空的空白分别为:(8分)

该系统更适合采用仓库架构风格。

(1)数据存储在中心仓库,处理流程独立,支持交互式处理。

(2)数据与处理紧密关联,调整处理流程需要系统重新启动。

(3)数据与处理分离,需要加载数据,性能降低。

(4)数据处理组件之间一般无依赖关系,可并发调用,提高性能。

【问题2】(12分)

(1)安全性

(2)可修改性

(3)g

(4)i

(5)f

(6)j

【解析】本题考查的是架构设计过程中涉及到的一些质量属性,以及架构风格的对比。

【问题1】

在管道/过滤器风格的软件体系结构中,每个构件都有一组输入和输出,数据输入构件,经过内部处理,然后产生数据输出。因此,这里的构件被称为过滤器,这种风格的连接件就像是数据流传输的管道,将一个过滤器的输出传到另一过滤器的输入。

在仓库(repository)风格中,有两种不同的构件:中央数据结构说明当前状态,独立构件在中央数据存储上执行。一方面,若构件控制共享数据,则仓库是一传统型数据库;另一方面,若中央数据结构的当前状态触发进程执行的选择,则仓库是一黑板系统。

通过交互方式、数据结构、控制结构和扩展方法分别对仓库风格和管道过滤器风格进行对比,如下所示:

交互方式:管理过滤器很明显是顺序结构或循环结构,数据在管理中进行传递。而仓库结构是数据在中心位置,所有的处理均是中心结点与周边结点之间的交互,从形态来看,是星型的。

数据结构:从数据结构来看,仓库风格会使用一个文件将数据保存起来,所有的操作围绕这个文件进行。而管道过滤器则是在过滤器之间传递数据流。

控制结构:从控制结构来说仓库风格是业务功能驱动,而管道过滤器是由数据流驱动的。

扩展方法:从扩展方法来讲,管道过滤器是通过过滤器提供标准接口与其它过滤器对接,而数据仓库风格,要共享数据,扩展功能,只要功能的操作与数据模型本身是匹配的就行了,就像我们要共享一个数据库做系统集成,此时共享同一数据库的多个应用系统所用的数据模型一定会是一致的,否则无法去共享。

【问题2】

本题主要考查考生对于软件质量属性的理解、掌握和应用。

本题考查的是架构设计过程中涉及到的一些质量属性,以及架构风格的对比。常用的质量属性包括:

1、性能

性能(performance)是指系统的响应能力,即要经过多长时间才能对某个事件做出响应,或者在某段时间内系统所能处理的事件的个数。

2、可靠性

可靠性(reliability)是软件系统在应用或系统错误面前,在意外或错误使用的情况下维持软件系统的功能特性的基本能力。

3、可用性

可用性(availability)是系统能够正常运行的时间比例。经常用两次故障之间的时间长度或在出现故障时系统能够恢复正常的速度来表示。

4、安全性

安全性(security)是指系统在向合法用户提供服务的同时能够阻止非授权用户使用的企图或拒绝服务的能力。安全性又可划分为机密性、完整性、不可否认性及可控性等特性。

5、可修改性

可修改性(modifiability)是指能够快速地以较高的性能价格比对系统进行变更的能力。通常以某些具体的变更为基准,通过考察这些变更的代价衡量可修改性。

6、易用性

软件开发工具应有十分友好的用户界面,用户乐于使用;工具应能剪裁和定制,以适应特定用户的需要;工具应能提示用户的交互操作,提供简单有效的执行方式;工具还应能检查用户的操作错误,尽可能自动改正错误。

识别软件架构质量属性是进行架构设计的重要步骤。根据对相关质量属性的定义和含义,其中:“c)系统应该具备完善的安全防护措措施,能够对黑客的攻击行为进行检测和防御”、“i)系统需要针对代码仓

书山有路勤为径,学海无涯苦作舟! 住在富人区的她

“h)系统支持硬件设备灵活扩容,应保4人天内完成”这描述的是系统的可修改性;内完成”描述的是性能属性。

库的所有操作进行详细记录;便于后期查阅与审计”属于安全性;证在2人天内完成”、“j)更改系统web界面风格需要在“g)在正常负载情况下,户的代码提交请求应在0.5s


本文标签: 系统 视图 构件 数据 功能