您好,欢迎来到筏尚旅游网。
搜索
您的当前位置:首页系统架构设计师考试试题

系统架构设计师考试试题

来源:筏尚旅游网
2012年系统架构设计师考试真题(案例分析)

一、请详细阅读有关数据架构方面的描述,回答问题1至问题3。 【说明】

某软件公司欲开发一个基T Web 2.0的大型社交网络系统。就该系统的数据架构而言, 李工决定采用公司熟悉的数据架构,使用通用的商用关系型数据库,系统内部数据采用中央 集中方式存储。

该系统投入使用后,初期用户数量少,系统运行平稳。6个月后,用户数出现了爆炸式 增长,系统暴露出诸多问题,集中表现在:

(1) 用户执行读写操作时,响应时间均变得很慢;

(2) 随着系统功能的扩充,原有数据格式发生变化,乂出现新的数据格式,维护困难; (3) 数据容量很快超过系统原有的设计上限,数据库扩容困难; (4) 软件系统不断出现宕机,整个系统可用性较差。

经过多次会议讨论,公司的+:工建议采用NoSQL数据库来替代关系数据库,以解决上述 问题。但李工指出NoSQL数据库出现时间不长,在使用上可能存在风险。公司技术人员对 NoSQL数据库产品进行了认真测试,最终决定采用NoSQL数据库来替代现有的数据库系统。 【问题1】(11分)

分别解释产生问题(1) ~ (4)的原因。 【问题2】(8分)

请针对问题(1)~(4),分别指出NoSQL数据库的哪些特点促使公司最终采用了 NoSQL 数据库。

【问题3】(6分)

请指出该系统采用NoSQL数据库时可能存在的问题.

二、阅读以下关于面向对象系统建模的叙述,在答题纸上回答问题1至问题3。 【说明】

某软件企业为影音产品销售公司W开发一套在线销售系统,以提升服务的质量和效率。 项目组经过讨论后决定采用面向对象方法开发该系统。在设计建模阶段需要满足以下设计要 求:

(1) W公司经常进行促销活动。根据不同的条件(如订单总额、商品数量、产品种类 等),公司可以提供百分比折扣或现金减免等多种促销方式供提交订单的用户选择。实现每 种促销活动的代码量很大,ri会随促销策略不同经常修改。系统设计中需要考虑现有的促销 和新的促销,而不用经常地重写控制器类代码。

(2) 该在线销售系统需要计算每个订单的税率,不同商品的税率及计算方式会有所区

别。所以W公司决定在系统中直接调用不同商品供应商提供的税率计算类,但每个供应商的 类提供了不同的调用方法。系统设计中需要考虑如果公司更换了供应商,应该尽可能少地在 系统中修改或创建新类。

项目组架构师决定采用设计模式来满足上述设计要求,并确定从当前己经熟练掌握的设 计模式中进行选择,这些设计模式包括:适配器模式(Adapter)、构造器模式(Builder)、 命令模式(Command)、外观模式(Facade)、中介模式(Mediator)、原型模式(Prototype)、 代理模式(Proxy)、状态模式(State)和策略模式(Strategy)等。 【问题1】(6分)

设计模式按照其应用模式可以分为三类:创建型、结构型和行为型,清用200字以内文 字说明三者的作用。 【问题2】(9分)

请将项目组己经掌握的设计模式按照其作用分别归类到创建型、结构型和行为型模式 中。 【问题3】(10分)

针对题目中所提出的设计要求(I)和(2),项目组应该分别选择何种设计模式?请分 别用

200字以内文字说明具体的解决方案。

三、请详细阅读有关嵌入式软件架构设计方面的描述,回答问题1和问题2。 【说明】

在嵌入式系统中,软件采用升放式架构己成为新的发展趋势。软件架构设计的优劣将直 接影响软件的重用和移植能力。

某软件公司主要从事宇航领域的嵌入式软件研发工作。经二十多年的发展,其软件产品 已被广泛应用于各种航天飞行器中。该公司积累了众多成熟软件,但由于当初没宥充分考虑 软件的架构,原有软件无法被再利用,为适应嵌入式软件技术发展需要,该公司决策层决定 成立宇航嵌入式软件开放式架构研究小组,为公司完成开放式架构的定义与设计,确保公司 软件资源能得到充分利用。

应川软

fl

4D 系统 ________________________ 服务 4D XOS服务 6 8 ___ 121 操作系统服务 3D 资源访问服务 (W动程序) 物理熨源 IL 1D [ 物珅资源 | ID 1 ♦ 物理资源物理资源

IL

[ ID 图3-1 G0A开放式架构

研究小组查阅了大量的国外资料和标准,最终将研究重点集中在了 SAE AS4893《通用 开放式架构(GOA)框架》标准,图3T给出了 GOA定义的架构图。 【问题1】(9分)

请用300字以内的文字简要说明开放式架构的四个基本特点。 【问题2】(16分)

如图3-1所示,G0A框架规定了软件、硬件和接口的结构,以在不同应用领域中实现系 统功能° G0A框架规定了一组接II,其重要特点是建立了关键组件及组件间接II关系,这些 接口的确定可用于支持软件的可移植性和可升级性,以满足功能的增加和技术的更新要求。 除操作系统服务与扩展操作系统之间的接口(3X)夕卜,GOA将其它接口分为两类:即直接接 口 (iD

(i=l, 2, 3,…))和逻辑接口 (iL (i=l, 2, 3,…)),直接接口定义了信息传 输方式;逻辑接II定义了对等数据交换的要求,逻辑接II没有定义真正的信息传输方式,其 传输发生在一个或多个直接接口。根据图3T所标注的接口在框架中的具体位置,清填写表 3-1的(1)〜(8)处空白。

表3-1 GOA中的接口与功能

序号 范例 1 2 接口功能描述 实现处理机之间有效的通信方式,操作系统服务和操作 系统扩展服务之间的接口 (1) 一组对等的物理资源之间数据交换接口/协议的要求组成 的接口,它能实现通信链路物理资源访问(物理资源逻 辑接口) —组软件(操作系统)访问硬件资源的服务接口。该组 接口为软件与硬件资源之间定义了一个边界(系统服务 到资源访问直接接口) 提供在任何处理机中应用软件与其他应用软件之间的接 口。也包括不同系统间的应用软件之间的接口(应用逻 辑接口) (5) (6) 根据对等信息/数据交换要求。在同一处理机或不同处理 机间,资源访问服务之间的对等操作服务的接口(资源 访问服务逻辑接口) 由服务于硬件指令机制和寄存器使用的资源访问服务组 成的接口(资源服务到物理资源直接接口) 接口名称 3X 4D (2) 3 (3) 4 5 6 (4) 1D 3L (7) (8) 7 8 四、阅读以下关于分布式系统设计的说明,在答题纸上回答问题1至问题3。 【说明】

某软件公司拟开发一套电信领域的分布式系统,该系统后台多个功能模块同时运行时的 计算负裁较大,且需要控制不同的特定电信硬件设备,11]于硬件体积和I/O端I I冲突等原因, 这些设备需要分散安装在多个不同计算机系统中。该系统上线运行后将为企业最终用户提供

7X24小时的不间断服务,而用户的单次接入服务往往需要后台多个模块共同协作完成。基 于上

述原因,该系统后台软件模块需分布在局域网内的多台计算机上。

项目组决定基于ISO的开放分布进程(ODP)规范来进行系统架构的设计与开发,近期项H

组召开了多次会议,对架构设计阶段的关键问题进行了讨论分析。 【问题1】(10分)

ODP从5个标准的视点组织分析系统的架构,这些视点描述了同一系统的不同重要方面, 请

根据图2T中不同视点所关注的核心内容,将备选的架构视点填入图中的(1) ' (5)。

图2-1 0DP架构视点示意图

备选答案:技术选择架构、企业业务架构、分布式工程架构、计算接口架构、逻辑信息 架构 【问题2】(9分)

在技术选择架构规划时,王工认为系统应基于现有分布式基础设施(分布式中间件)来 构

建,因为这样可以充分利用现有基础设施提供的各种支撑,在更短时间内构造出质量更高 的分布式系统;而李工则认为可基于基本的进程间通信机制自主开发系统的支撑平台,这样 可以避免对特定中间件的依赖,项目组经过认真讨论,最终采用了王工的方案。清用400 字以内文字,从构件管理支持、互操作支持以及公共服务支持三个方面说明现有分布式基础 设施为构建分布式系统所提供的基本支撑。 【问题3】(6分)

由于系统后台模块的分布式特性,后台分布式对象之间的互操作机制是需要考虑的核心 问题之一。图2-2所示是当前分布式基础设施中支持分布式对象互操作的基本机制,请将相 应部件名称填入图中(1) ' (2);基于图2-2给出的结构,用300字以内文字说明完成一 次分布式对象调用的详细步骤。

I ----------------------- 1 I ----------------------- 1

_______

:进程边界

可以自动生成

图2・2分布式对象互操作基本机制

【问题3】

(1) 存根/桩 (2) 框架 或 (1) 代理 (2) 存根

一次远程调用的过程如下:

① 客户程序将调用请求发送给客户端桩,对于客户程序来说,桩就是服务程序在客户 端的代理。

② 客户端桩负责将远程调用请求进行编组并发送给通信总线。 ③ 调用请求经通信总线传送到服务端框架。

④ 服务端框架将调用诸求解组并分派给真正的远程对象实现(服务程序)。 ⑤ 服务程序完成客户端的调用请求,将结果返回给服务端框架。 ⑥ 服务端框架将调用结果编组并发送给通信总线。 ⑦ 调用结果经通信总线传送到客户端桩。

⑧ 客户端桩将调用结果解组并返回给客户程序,客户程序得到调用结果。 五、阅读以下关于软件架构风格的说明,在答题纸上回答问题1和问题2。 【说明】

某软件公司为其新推出的字处理软件设计了一种脚本语言,专门用于开发该字处理软件 的附加功能插件。为了提高该语言的编程效率,公司组织软件工具开发部门为脚本语言研制 一套集成开发环境。软件工具开发部门根据字处理软件的特点,对集成开发环境进行了需求 分析,总结出以卜-3项核心需求:

(1)集成开发环境需要提供对脚本语言的编辑、语法检查、解释、执行和调试等功能 的支持,并要实现各种功能的灵活组合、配置与替换。

(2) 集成开发环境需要提供一组可视化的编程界面,用户通过对界面元素拖拽和代码 填

充的方式就可以完成功能插件核心业务流程的编写与组织。

(3) 在代码调试功能方面,集成开发环境需要实现在脚本语言编辑界面中的代码自动 定位功能。具体来说,在调试过程中,编辑界面需要响应调试断点命中事件,并自动跳转到 当前断点处所对应的代码。

针对上述需求,软件工具开发部门对集成开发环境的架构进行分析与设计,王工认为该 集成升发环境应该采用管道-过滤器的架构风格实现,李工则认为该集成开发环境应该采用 以数据存储为中心的架构风格来实现。公司组织专家对王工和李工的方案进行了评审,最终 采用了李工的方案。

【问题1】(12分)

靖用200字以内的文字解释什么是软件架构风格,并从集成开发环境与用户的交互方 式、集成开发环境的扩展性、集成开发环境的数据管理三个方面说明为什么最终采用J'李工 的设计方案。

【问题2】(13分)

在对软件系统架构进行设计时,要对架构需求进行分析,针对特定需求选择最为合适的 架构风格,因此实际的软件系统通常会混合多种软件架构风格。请对核心需求进行分析,说 明为了满足需求(2)和(3),分别应采用何种架构风格,并概要说明采用相应架构风格后 的架构设计过程。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- efsc.cn 版权所有

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务