2018年系统架构设计师下午真题及答案解析

Posted 任铄

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018年系统架构设计师下午真题及答案解析相关的知识,希望对你有一定的参考价值。

试题一(25分)

某文化产业集团委托软件公司开发一套文化用品商城系统,业务涉及文化用品销售、定制、竞拍和点评等板块,以提升商城的信息化建设水平。该软件公司组织项目组完成了需求调研,现已进入到系统架构设计阶段。考虑到系统需求对架构设计决策的影响,项目组先列出了可能影响系统架构设计的部分需求如下:

(a)用户界面支持用户的个性化定制;

(b)系统需要支持当前主流的标准和服务,特别是通信协议和平台接口;

(c)用户操作的响应时间应不大于3秒,竞拍板块不大于1秒;

(d)系统具有故障诊断和快速恢复能力;

(e)用户密码需要加密传输;

(f)系统需要支持不低于2G的数据缓存;

(g)用户操作停滞时间超过一定时限需要重新登录验证;

(h)系统支持用户选择汉语、英语或法语三种语言之一进行操作。

项目组提出了两种系统架构设计方案:瘦客户端C/S架构和胖客户端C/S架构,经过对上述需求逐条分析和讨论,最终决定采用瘦客户端C/S架构进行设计。

问题1(8分)

在系统架构设计中,决定系统架构设计的非功能性需求主要有四类:操作性需求、性能需求、安全性需求和文化需求。请简要说明四类需求的含义。

问题2(8分)

根据表1-1的分类,将题干所给出的系统需求(a)~(h)分别填入(1) ~ (4)。

 

问题3(9分)

请说明瘦客户端C/S架构能够满足题干中给出的哪些系统需求(只需要回答出三个系统需求)。

试题二(25分)

某公司欲建设一个房屋租赁服务系统,统一管理房主和租赁者的信息,提供快捷的租赁服务。本系统的主要功能描述如下:

1. 登记房主信息。记录房主的姓名、住址、身份证号和联系电话等信息,并写入房主信息文件。

2. 登记房屋信息。记录房屋的地址、房屋类型(如平房、带阳台的楼房、独立式住宅等)、楼层、租金及房屋状态(待租赁、已出租)等信息,并写入房屋信息文件。一名房主可以在系统中登记多套待租赁的房屋。

3. 登记租赁者信息。记录租赁者的个人信息,包括:姓名、性别、住址、身份证号和电话号码等,并写入租赁者信息文件。

4. 安排看房。已经登记在系统中的租赁者,可以从待租赁房屋列表中查询待租赁房屋信息。租赁者可以提出看房请求,系统安排租赁者看房。对于每次看房,系统会生成一条看房记录并将其写入看房记录文件中。

5. 收取手续费。房主登记完房屋后,系统会生成一份费用单,房主根据费用单交纳相应的费用。小任老师Q2105639303,免费获取资料,问题解答,考试最新资讯

6. 变更房屋状态。当租赁者与房主达成租房或退房协议后,房主向系统提交变更房屋状态的请求。系统将根据房主的请求,修改房屋信息文件。

 

问题1(12分)

若采用结构化方法对房屋租赁服务系统进行分析,得到如图2-1所示的顶层DFD。使用题干中给出的词语,给出图2-1中外部实体E1~E2、加工P1~P6以及数据存储D1~D4的名称。

问题2(5分)

若采用信息工程(Information Engineering)方法对房屋租赁服务系统进行分析,得到如图2-2所示的ERD。请给出图2-2中实体(1)~ (5)的名称。

图2-2  房屋租赁服务系统ERD

问题3(8分)

(1)信息工程方法中的“实体(entity)” 与面向对象方法中的“类(class)”之间有哪些不同之处?

(2)在面向对象方法中通常采用用例(Use Case)来捕获系统的功能需求。用例可以按照不同的层次来进行划分,其中的Essential Use Cases和Real Use Cases有哪些区别?

试题三(25分)

某公司长期从事宇航领域嵌入式实时系统的软件研制任务。公司为了适应未来嵌入式系统网络化、智能化和综合化的技术发展需要,决定重新考虑新产品的架构问题,经理将论证工作交给王工负责。王工经调研和分析,完成了新产品架构设计方案,提交公司高层讨论。

问题1(14分)

王工提交的设计方案中指出:由于公司目前研制的嵌入式实时产品属于简单型系统,其嵌入式子系统相互独立,功能单一,时序简单。而未来满足网络化、智能化和综合化的嵌入式实时系统将是一种复杂系统,其核心特征体现为实时任务的机理、状态和行为的复杂性。简单任务和复杂任务的特征区分主要表现在十个方面。请参考表3-1给出的实时任务特征分类,用题干中给出的(a)~(t)20个实时任务特征描述,补充完善表3-1给出的空(1)~(14)。小任老师Q2105639303,免费获取资料,问题解答,考试最新资讯

(a)任务属性不会随时间变化而改变;

(b)任务的属性与时间相关;

(c)任务仅可以从非连续集中获取特征变量;

(d)任务变量域是连续的;

(e)功能原理不依赖于上下文;

(f) 功能原理依赖于上下文;

(g)任务行为可以用step-by-step顺序分析方法来理解;

(h)许多任务在产生访问活动时相互间是并发处理的,很难用step-by-step方法分析;

(i) 因果关系相互影响;

(j) 行为特征依赖于大量的反馈机制;

(k)系统内构成、策略和描述是相似的;

(l) 系统内存在许多不同的构成、策略和描述;

(m)功能关系是非线性的;

(n)功能关系是线性的;

(o)不同的子任务是相互独立的,任务内部仅存在少量的交互操作;

(p)不同的子任务有很高的交互操作,要把一个单任务的行为隔离开是困难的;

(q)域特征有非常整齐的原则和规则;

(r)许多不同的上下文依赖于规则;

(s)原理和规则在表面属性上很容易被识别;

(t)原理被覆盖、抽象,而不会在表面属性上被识别。

 问题2(11分)

王工设计方案中指出:要满足未来网络化、智能化和综合化的需求,应该设计一种能够充分表达嵌入式系统行为的、且具有一定通用性的通信架构,以避免复杂任务的某些特征带来的通信复杂性。通常为了实现嵌入式系统中计算组件间的通信,在架构上需要一种简单的架构风格,用于屏蔽不同协议、不同硬件和不同结构组成所带来的复杂性。图3-1给出了一种“腰(Waistline)" 型通信模式的架构风格。腰型架构的关键是基本消息通信(BMTS),通常BMTS的消息与时间属性相关,支持事件触发消息、速率约束消息和时间触发消息。

请说明基于BMTS的消息通信网络的主要特征和上述三种消息的基本含义,并举例给出两种具有时间触发消息能力的网络总线。

 图3-1  “腰”型通信模式架构风格

试题四(25分)

某企业是为城市高端用户提供高品质蔬菜生鲜服务的初创企业,创业初期为快速开展业务,该企业采用轻量型的开发架构(脚本语言+关系型数据库)研制了一套业务系统。业务开展后受到用户普遍欢迎,用户数和业务数量迅速增长,原有的数据库服务器已不能满足高度并发的业务要求。为此,该企业成立了专门的研发团队来解决该问题。

张工建议重新开发整个系统,采用新的服务器和数据架构,解决当前问题的同时为日后的扩展提供支持。但是,李工认为张工的方案开发周期过长,投入过大,当前应该在改动尽量小的前提下解决该问题。李工认为访问量很大的只是部分数据,建议采用缓存工具MemCache来减轻数据库服务器的压力,这样开发量小,开发周期短,比较适合初创公司,同时将来也可以通过集群进行扩展。然而,刘工又认为李工的方案中存在数据可靠性和一致性问题,在宕机时容易丢失交易数据,建议采用Redis来解决问题。在经过充分讨论,该公司最终决定采用刘工的方案。小任老师Q2105639303,免费获取资料,问题解答,考试最新资讯

问题1(9分)

在李工和刘工的方案中,均采用分布式数据库缓存技术来解决问题。请说明分布式数据库缓存的基本概念。

表4-1中对MemCache和Redis两种工具的优缺点进行了比较,请补充完善表 4-1中的空(1)~(6)。

 

问题2(8分)

刘工认为李工的方案存在数据可靠性和一致性的问题,请说明原因。

为避免数据可靠性和一致性的问题,刘工的方案采用Redis作为数据库缓存,请说明基本的Redis与原有关系数据库的数据同步方案。

问题3(8分)

请给出Redis分布式存储的2种常见方案和Redis集群切片的几种常见方式。

试题五(25分)

某银行拟将以分行为主体的银行信息系统,全面整合为由总行统一管理维护的银行信息系统,实现统一的用户账户管理、转账汇款、自助缴费、理财投资、贷款管理、网上支付、财务报表分析等业务功能。但是,由于原有以分行为主体的银行信息系统中,多个业务系统采用异构平台、数据库和中间件,使用的报文交换标准和通信协议也不尽相同,使用传统的EAI解决方案根本无法实现新的业务模式下异构系统间灵活的交互和集成。因此,为了以最小的系统改进整合现有的基于不同技术实现的银行业务系统,该银行拟采用基于ESB的面向服务架构(SOA)集成方案实现业务整合。小任老师Q2105639303,免费获取资料,问题解答,考试最新资讯

问题1(7分)

请说明什么是面向服务架构(SOA)以及ESB在SOA中的作用与特点。

问题2(12 分)

基于该信息系统整合的实际需求,项目组完成了基于SOA的银行信息系统架构设计方案。该系统架构图如图5-1所示:

请从(a)~ (K)中选择相应内容填入图5-1的(1)~(6),补充完善架构设计图。

(a)数据层

(b)界面层

(c)业务层

(d)bind

(e)企业服务总线ESB

(f)XML

(g)安全验证和质量管理

(h)publish

(i)UDDI

(j)组件层

(k)BPEL

问题3(6分)

针对银行信息系统的数据交互安全性需求,列举3种可实现信息系统安全保障的措施。

2018年系统架构设计师下午真题及答案解析

试题一(25分)

问题1(8分)    单击链接查看真题解析视频2021年软考系统架构设计师--下午案例分析历年真题解析视频课程-学习视频教程-腾讯课堂

操作性需要:指用户对系统操作与使用方面的相关需求,如操作的便利性等。

性能需求:指用户对系统响应时间、吞吐量、并发用户数等方面的要求,以达到系统的及时响应和资源的有效利用。

安全性需求:系统为合法用户提供服务并阻止非授权用户使用服务的能力需求。

文化需求:为满足不同人群或种族(文化背景差异)使用系统而形成的系统服务方面的要求。

问题2(8分)

(1)(a)  (b)   (2)(c)  (d)  (f)  (3)(e)(g) (4)(h)

问题3(9分)

(a) (b) (g)

解析:

B/S架构即浏览器/服务器架构。此种架构极少数事务逻辑在前端实现,只需Web浏览器即可,主要事务逻辑在服务器端实现,所以把它看做是瘦客户端架构。小任老师Q2105639303,免费获取资料,问题解答,考试最新资讯

试题二(25分)

问题1(12分)

E1: 房主                E2: 租赁者

P1: 登记房主信息        P2: 登记房屋信息     P3: 登记租赁者信息   

P4: 查询待租赁房屋信息  P5: 安排看房         P6: 变更房屋状态

D1: 房主信息文件        D2:租赁者信息文件    D3: 房屋信息文件

D4: 看房记录文件

问题2(5分)

(1) 房主   (2) 房屋   (3) 房屋信息文件 (4) 租赁者   (5) 看房记录文件

问题3(8分)

(1)实体用于数据建模,而类用于面向对象建模。实体只有属性,类有属性和方法。

(2)基础用例(Real Use Cases)是通过调研用户需求获得到的,与用户需求有对应关系的用例。而抽象用例是当能够从两个或两个以上的基础用例中提取公共行为时,把这个提取出来的公共用例称为抽象用例(Essential Use Cases)。

试题三(25分)

问题1(14分)

(1)(d)     (2)(c)     (3)(e)    (4)(f)

(5)(g)     (6)(h)     (7)(i)     (8)(j)

(9)(k)     (10)(l)     (11)(n)   (12)(m)

(13)(o)    (14)(p)  

问题2(11分)

BMTS的消息通信网络主要特征:能适配不同的传输介质,以及适配不同的协议,屏蔽不同协议之间的差异,简化通信过程降低系统复杂度。

事件触发消息:以事件作为触发方式,事件发生便触发相应消息。

速率约束消息:传输速率固定的消息。

时间触发消息:以时间作为触发方式,到达时间点便触发相应消息。

具有时间触发消息能力的网络总线:航空电子全双工交换式以太网(AFDX)。时间触发以太网(TTE)。小任老师Q2105639303,免费获取资料,问题解答,考试最新资讯

试题四(25分)

问题1(9分)单击链接查看真题解析视频2021年软考系统架构设计师--下午案例分析历年真题解析视频课程-学习视频教程-腾讯课堂

分布式数据库缓存是在内存中管理数据并提供数据的一致性保障,采用数据复制技术实现高可用性,具有较优的扩展性与性能组合。这种数据存储机制,实现了更短的响应时间,同时极大地降低数据库的事务处理负载,极好地解决了大流量情况下数据库服务器和Web服务器之间的瓶颈。

(1)string、hash、set、sortedset、list

(2)不支持

(3)不支持

(4)不支持

(5)有

(6)不支持

问题2(8分)

Memcache不支持数据持久化操作,所以掉电数据会全部丢失,而且无法直接恢复,这存在可靠性问题

Memcache不支持事务,所以操作过程中可能产生数据的不一致性。

同步方案:

读取数据时,先读取Redis中的数据,如果Redis没有,则从原数据库中读取,并同步更新Redis中的数据。写回时,写入到原数据库中,并同步更新至Redis中。

问题3(8分)

Redis分布式存储的2种常见方案:redis主从方案、redis cluster方案。

Redis集群切片的几种常见方式:

  1. 客户端分片:在客户端通过key的hash值对应到不同服务器。
  2. 对数据根据key散列到不同的slot上,不同slot对应不同的服务器。

试题五(25分)

问题1(7分)

面向服务的架构(SOA)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。

  1. 支撑SOA的关键是其消息传递架构--企业服务总线(ESB)。ESB用于实现企业应用不同消息和信息的准确、高效和安全传递。
  2. 面向服务的元数据管理: 他必须了解被他中介的两端,即服务的请求以及请求者对服务的要求,以及服务的提供者和他所提供的服务的描述;
  3. 通信:服务的发布/订阅、响应/请求、同步/异步消息、路由和寻址等
  4. 服务交互:服务接口定义,服务实现的置换,服务消息模型,服务目录和发现等。
  5. 服务安全:认证和授权、不可否认和机密性、安全标准的支持等;

问题2(12 分)

(1)c   (2)i   (3)h  (4)e   (5)g  (6)j

问题3(6分)

1.采用挑战/应答的认证机制,防止重放攻击。

1.采用加密技术保证信息在网络传输过程的安全。

2.采用数字签名技术保证信息传输过程的完整性和不可否认。

以上是关于2018年系统架构设计师下午真题及答案解析的主要内容,如果未能解决你的问题,请参考以下文章

2022年下半年系统架构设计师下午真题及答案解析

2022年下半年系统架构设计师下午真题及答案解析

2018年系统架构设计师上午真题及答案解析

2018年下半年软件设计师下午真题及答案解析

系统架构设计师2009-2018历年综合知识案例分析论文真题及答案详细解析

2021年下半年系统架构设计师上午真题及答案解析