2017上半年系统分析师考试真题及答案-下午卷.doc
《2017上半年系统分析师考试真题及答案-下午卷.doc》由会员分享,可在线阅读,更多相关《2017上半年系统分析师考试真题及答案-下午卷.doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2017上半年系统分析师考试真题及答案-下午卷试题一(25 分)必答题阅读以下关于基于微服务的系统开发的叙述,在答题纸上回答问题1至问题3。【说明】某公司拟开发一个网络约车调度服务平台,实现基于互联网的出租车预约与管理。公司的系统分析师王工首先进行了需求分析,得到的系统需求列举如下:系统的参与者包括乘客、出租车司机和平台管理员三类;系统能够实现对乘客和出租车司机的信息注册与身份认证等功能,并对乘客的信用信息进行管理,对出租车司机的违章情况进行审核;系统需要与后端的银行支付系统对接,完成支付信息审核、支付信息更新与在线支付等功能;针对乘客发起的每一笔订单,系统需要实现订单发起、提交、跟踪、撤销、
2、支付、 完成等业务过程的处理:系统需要以短信、微信和电子邮件多种方式分别为系统中的用户进行事件提醒。在系统分析与设计阶段,公司经过内部讨论,一致认为该系统的需求定义明确,建议尝试采用新的微服务架构进行开发,并任命王工为项目技术负责人,负责项目开发过程中的技术指导工作。【问题 1】(12 分)请用 100 字以内的文字说明一个微服务中应该包含的内容,并用 300 字以内的文字解释基于微服务的系统与传统的单体式系统相比的 2 个优势和带来的 2 个挑战。微服务中应该包含的内容有:资源、对资源的操作的一组 API 集合微服务的优势:(1)通过分解巨大单体式应用为多个服务方法解决了复杂性问题。它把庞大
3、的单一模块应用分解为一系列的服务,同时保持总体功能不变。(2)让每个服务能够独立开发,开发者能够自由选择可行的技术,提供 API 服务。(3)微服务架构模式是每个微服务独立的部署。开发者不再需要协调其它服务部署对本服务的影响。这种改变可以加快部署速度。(4)微服务使得每个服务独立扩展。你可以根据每个服务的规模来部署满足需求的规模。甚至你可以使用更适合于服务资源需求的硬件。微服务架构带来的挑战:(1)并非所有的系统都能转成微服务。例如一些数据库层的底层操作是不推荐服务化的。(2)部署较以往架构更加复杂:系统由众多微服务搭建,每个微服务需要单独部署,从而增加部署的复杂度,容器技术能够解决这一问题。
4、(3)性能问题:由于微服务注重独立性,互相通信时只能通过标准接口,可能产生延迟或调用出错。例如一个服务需要访问另一个服务的数据,只能通过服务间接口来进行数据传输,如果是频繁访问,则可能带来较大的延迟。(4)数据一致性问题:作为分布式部署的微服务,在保持数据一致性方面需要比传统架构更加困难。【问题 2】 (8 分)识别并设计微服务是系统开发过程中的一个重要步骤,请对题干需求进行分析,对微服务的种类和包含的业务功能进行归类,完成表1-1 中的(1)(4)。(1)乘客信息注册、乘客身份认证、乘客信用信息管理(2)出租车司机信息注册、出租车司机身份认证、司机违章情况审核(3)支付管理(4)订单发起、订
5、单提交、订单跟踪、订单撤销【问题 3】(5 分)为了提高系统开发效率,公司的系统分析师王工设计了一个基于微服务的软件交付流程,其核心思想是将业务功能定义为任务,将完成某个业务功能时涉及到的步骤和过程定义为子任务,只有当所有的子任务都测试通过后改业务功能才能上线交付。请基于王工设计的在线支付微服务交付流程,从(a)(f)中分别选出合适的内容填入图 1-1 中的(1)(5)处。选项:(a)提交测试 (b)全量上线 (c) 对接借记卡(d) 获取个人优惠券 (e)试部署 (f)对账(1)f (2)c (3)d (4)a (5)b试题二(共 25分)阅读以下关于系统数据分析与建模的叙述,在答题纸上回答
6、问题1 至问题 3。【说明】某软件公司受快递公司委托,拟开发一套快递业务综合管理系统,实现快递单和物流信息的综合管理。项目组在系统逻辑数据模型设计中,需要描述的快递单样式如图 2-1 所示,图 2-2 是项目组针对该快递单所设计的候选实体及其属性。【问题 1】(6 分)数据库设计主要包括概念设计、逻辑设计和物理设计三个阶段,请用 200 字以内文字说明这三个阶段的主要任务。问题 1(6 分)系统分析师教程 P179概念设计也称为概念结构设计,其任务是在需求分析阶段产生的需求说明书的基础上,按照特定的方法将它们抽象为一个不依赖于任何 DBMS 的数据模型,即概念模型。概念模型的表现形式即 ER
7、模型。逻辑设计也称为逻辑结构设计,其主要任务是将概念模型转换为某个特定的 DBMS 上的逻辑模型。设计逻辑结构时,首先为概念模型选定一个合适的逻辑模型(如:关系模式或层次模型),然后将其转化为由特定 DBMS 支持的逻辑模型,最后对逻辑模型进行优化。物理设计也称为物理结构设计,其任务是对给定的逻辑模型选取一个最适合应用环境的物理结构,所谓数据库的物理结构,主要是指数据库在物理设备上的存储结构和存取方法。【问题 2】(11 分)根据快递单样式图,请说明:1) 图 2-2 中三个候选实体对应的主属性 PK1、PK2 和 PK3 分别是什么?2) 图 2-2 中应设计哪些实体之间的联系,并说明联系的
8、类型。PK1:证件号PK2:编号PK3:证件号联系1:寄件人与快递单之间应有联系,联系类型:1:N。联系2:收件人与快递单之间应有联系,联系类型:1:N。【问题 3】(8 分)在图 2-2 中添加实体之间的联系后,该实体联系图是否满足第一范式、第二范式和第三范式中的要求(对于每种范式判定时,假定己满足低级别范式要求)。如果不满足,请用 200 字以内文字分别说明其原因。寄件人,收件人均满足第3范式,因为这两个关系均消除了部分函数依赖与传递函数依赖。快递单满足第2范式,但不满足第3范式,总计是个派生属性,可由前边的保价金额、代收货款、运费、加急费、包装费、保价费等计算得出,所以存在传递函数依赖,
9、不满足3NF。试题三(共 25 分)阅读以下关于嵌入式多核程序设计技术的描述,回答问题 1 至问题 3。【说明】近年来,多核技术己被广泛应用于众多安全关键领域(如:航空航天等)的电子设备中,面向多核技术的并行程序设计方法已成为软件人员急需掌握的主要技能之一。某宇航公司长期从事宇航电子设备的研制工作,随着宇航装备能力需求的提升,急需采用多核技术以增强设备的运算能力、降低功耗与体积,快速实现设备的升级与换代。针对面向多核开发,王工认为多核技术是对用户程序透明的,开发应把重点放在多核硬件架构和硬件模块设计上面,而软件方面,仅仅需要选择一款支持多核处理器的操作系统即可。而李工认为,多核架构能够使现有的
10、软件更高效地运行,构建一个完善的软件架构是非常必要的。提高多核的利用率不能仅靠操作系统,还要求软件开发人员在程序设计 中考虑多进程或者多线程并行处理的编程问题。【问题 1】(12 分)请用 300 字以内文字说明什么是多核技术和多线程技术,并回答李工的意见是否正确,为什么?多核是多微处理器核的简称,是将两个或更多的独立处理器封装在一起,集成在一个电路中。多核处理器是单枚芯片(也称为硅核),能够直接插入单一的处理器插槽中,但操作系统会利用所有相关的资源,将它的每个执行内核作为分立的逻辑处理器。通过在多个执行内核之间划分任务,多核处理器可在特定的时钟周期内执行更多任务。多线程是指从软件或者硬件上实
11、现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。李工的意见是正确的。多核处理器虽然带来了强大的计算能力,但如果无法实现程序的并行,那么,大量计算资源将被闲置,造成巨大的浪费。所以在开发中,要注重多核编程技术,从并行计算、共享资源分布式计算、任务分解与调度、Lock-Free编程等方面充分考虑相关问题,以便将多核处理器的性能充分发挥出来。【问题 2】(6 分)在多核环境下,线程的活动有并行和并发两种方式,请用 300 字以内的文字说明这两种方式的含义及差别。行。如果某个系统支持两个或者多个动作(Action)同时存在,那么这个系
12、统就是一个并发系统,即系统中同时有多个线程,可以认为是并发的情况。如果某个系统支持两个或者多个动作同时执行,那么这个系统就是一个并行系统。当系统中有多个线程,并在同一时刻有两个,或两个以上的线程在运行状态,可认为是并行系统。【问题 3】(7 分)请根据自己所掌握的多核、多线程的知识,判别表 3-1 给出的说法是否正确,并将答案写在答题纸上对应空白处(填写正确或错误)。(1) (2) (3) (4) (5) (6) (7)试题四(共 25 分)阅读以下关于数据库分析与建模的叙述,在答题纸上回答问题 1至问题 3。【说明】某电子商务企业随着业务不断发展,销售订单不断增加,每月订单超过了 50 万笔
13、,急需开发一套新的互联网电子订单系统。同时该电商希望建立相应的数据中心,能够对订单数据进行分析挖掘,以便更好地服务用户。王工负责订单系统的数据库设计与开发,初步设计的核心订单关系模式为:orders(order_no,customer_no ,order_date,product_no,price,. .);考虑订单数据过多,单一表的设计会对系统性能产生较大影响,仅仅采用索引不足以解决性能问题。因此,需要将订单表拆分,按月存储。王工采用反规范化设计方法来解决,给出了相应的解决方案。李工负责数据中心的设计与开发。李工认为王工的解决方案存在问题,建议采用数据物理分区技术。在解决性能问题的同时,也为
14、后续的数据迁移、数据挖掘和分析等工作提供支持。【问题 1】 (8 分)常见的反规范化设计包括增加冗余列、增加派生列、重新组表和表分割。为解决题干所述需求,王工采用的是哪种方法?请用 300 字以内的文字解释说明该方法,并指出其优缺点。王工采用的是表分割方式中的水平分割(分割参数是:“月”)表分割包括水平分割与垂直分割两种形式:水平分割:按记录进行分割,不同的记录可以分开保存,每个子表的列数相同。分割的条件可能是某列或多列数据的值,如时间参数。垂直分割:按进行分割,即把一条记录分开多个地方保存,每个子表的行数相同。把主键和一些行放到一个表,然后把主键和另外的列放到另一个表中,通过主键进行关联。【
15、问题 2】 (8 分)物理数据分区技术一般分为水平分区和垂直分区,数据库中常见的是水平分区。水平分区分为范围分区、哈希分区、列表分区等。请阅读下表,在(1)(8) 中填写不同分区方法在数据值、数据管理能力、实施难度与可维护性、数据分布等方面的特点。(1)连续(2)离散(3)弱(4)强(5)好(6)好(7)不均匀(8)均匀【问题 3】(9 分)根据需求,李工宜选择物理水平分区中的哪种分区方法?请用 300字以内的文字分别解释说明该方法的优缺点。李工宜选择范围分区方式。范围分区优点:1、分区表可以将表存储到多个表空间内,各个分区维护各自的本地索引,查询语句可以根据索引进行分区范围查找,提高了查询速
16、度;2、可以对单个分区进行备份、归档或者清除过期的数据,利于维护;3、实现容易,而且可以方便的对表的分区进行添加、删除、拆分和合并操作。范围分区缺点:数据分布不均匀所以可以与哈希分区组合应用。试题五(共 25 分)阅读以下关于 Web 系统架构设计的叙述,在答题纸上回答问题1 至问题 3。【说明】某公司开发的 B2C 商务平台因业务扩展,导致系统访问量不断增大,现有系统访问速度缓慢,有时甚至出现系统故障瘫痪等现象。面对这一情况,公司召开项目组讨论会议,寻求该商务平台的改进方案。讨论会上,王工提出可以利用镜像站点、CDN 内容分发等方式解决并发访问量带来的问题。而李工认为,仅仅依靠上述外网加速技
17、术不能完全解决系统现有问题,如果访问量持续增加,系统仍存在崩渍的可能。李工提出应同时结合 Web 内网加速技术优化系统改进方案,如综合应用负载均衡、缓存服务器、Web 应用服务器、分布式文件系统、分布式数据库等。经过讨论,公司最终决定采用李工的思路,完成改进系统的设计方案。【问题 1】 (10 分)针对李工提出的改进方案,从 a j 中分别选出各技术的相关描述和对应常见支持软件填入表 5-1 中的(1) (10) 处。a)保存静态文件,减少网络交换量,加速响应请求b)可采用软件级和硬件级负载均衡实现分流和后台减压c)文件存储系统,快速查找文件d)FastDFSe)HAProxyf)JBossg
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2017 上半年 系统分析 考试 答案 下午
限制150内