高级系统架构设计师下午试题(Ⅰ)模拟题.pdf
《高级系统架构设计师下午试题(Ⅰ)模拟题.pdf》由会员分享,可在线阅读,更多相关《高级系统架构设计师下午试题(Ⅰ)模拟题.pdf(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、高级系统架构设计师下午试题(I)模拟15试题一阅读以下关于设计模式应用的叙述,根据要求回答下面问题。说明PH软件公司承接了某企业二期信息化软件开发项目,工程项目的研发任务之一是建设采购分级审批系统。该企业采购审批是根据采购金额的不同由不同层次的主管人员来审批,主任可以审批8万元以下(不包含8万元)的采购单,副董事长可以审批8 15万 元(不包含15万元)的采购单,董事长可以审批15 45万元(不包含45万元)的采购单,45万元及以上的采购单就需要企业高层开会讨论决定。PH公司架构师采用某种设计模式设计的类图如下图所示。某企业采购分级审批类图1、请用350字以内的文字指出该公司架构师所采用的设计
2、模式的具体名称、设计意图及其优缺点。2、请用300字以内的文字指出该公司架构师所采用的设计模式的适用性,以及图中需要考虑哪些实现 问题?3、结合你的系统架构经验,请用300字以内的文字指出command模式、Observer模式、Chain ofResponsibility模式和Mediator模式在发送者和接收者解耦方面的区别。试题二阅读以下关于面向服务架构的应用叙述,根据要求回答下面问题。说明某航空公司的主要业务系统(如订票系统、航班调度系统等)始建于二十世纪七八十年代,之后随着信息化的进展,陆续积累了许多异构的遗产信息系统。这些系统部分采用了J2EE、.NET等技术进行开发,分布在不同的
3、地理位置,采用不同的协议进行数据传输。近年来,该公司在企业集成方面也是煞费苦心,已经在几个主要的核心系统之间构建了用于信息集成的信息Hub(工nformationHub),其他业务应用之间也有不少点到点的集成。尽管这些企业集成技术在一定程度上增进了系统间的信息共享,但是面对历史异构的遗产信息系统,企业的业务整合、功能整合仍是困难重重,主要表现如下。4由于大部分核心应用构建在主机之上,因此工nformation Hub是基于主机技术开发,很难被开放系统使用。5工nformation Hub对事件支持不强,被集成的系统间的事件以点到点流转为主,被集成系统间耦合性强。6牵扯到多个系统间的业务协作以硬
4、编码为主,将业务活动自动化的成本高,周期长,被开发的业务活动模块重用性差。某软件开发公司承接了该航空公司应用系统的集成任务,项目组经过多方讨论和论证之后,决定采用以面向服务为中心的企业集成技术,一步步解决该公司所面临的企业集成问题。4、项目组在讨论架构方案时,某位架构师提出采用企业服务总线(ESB.架构模式,通过ESB的事件服 务(Event Service)完成订阅发布,使应用程序间的事件集成不再需要原来的点到点方式,从而解耦组件之间的依赖关系,降低软件系统互连的复杂性。结合你的系统架构设计经验,请用400字以内的文字简要说明在ESB环境中组件之间典型的交互过程,以及ESB具有的核心功能。5
5、、将彼此关联的业务活动组成自动化流程可以进一步提高该航空公司业务活动的效率。以服务为中心的企业集成通过流程服务来完成业务流程集成。结合你的系统架构设计经验,请用300字以内的文字列举出3种SOA架构中的流程服务内容,并给出简要说明。6、若项目组采用Web Service作为基于SOA集成方法的实现技术,请根据该航空公司目前的实际情况,用300字以内的文字说明系统应该分为哪几个层次,并简要说明每个层次的功能。试题三阅读以下关于数据库应用系统性能分析方面的说明,根据要求回答下面问题。说明某大中型企业采用。racle数据库建立一个经济信息统计方面的大型数据库应用系统。尽管配置了比较良好的硬件和网络环
6、境,但该数据库应用系统实施后的整体性能表现较差。特别是随着业务量与信息量的迅速扩大,数据库系统的存取速度显著减慢,存储效率也明显下降。该企业通过反复实践与摸索,并邀请数据库专家一起会诊,认为可以从以下4个方面进一步优化数据库应用系统。7由于数据库应用中最主要的查询与修改数据操作大多需通过工/O来完成,因此需要通过调整服务器配置(即对硬件设备进行升级)、操作系统配置与数据库管理系统的有关参数,优化系统的工/O性能,尤其是改进磁盘工/。的效率与性能。8优化 索引的建立与使用机制,尽可能提高数据查询的速度或效率。9合理使用聚类(Culster),改进查询响应时间和系统的综合性能。其中,聚类是指把单独
7、组织的,但在逻辑上经常需要连接的,较为稳定的几个基本表聚集在一起(在物理上实现邻近存放),可以显著减少数据的搜索时间,从而提高性能。10对应用系统中使用的SQL语句进行调优,针对每条SQL语句都建立对应的索引等。7、许多开发技术人员由于缺乏经验,通常在建立实体(如基本表、索引或表空间等)时,都习惯于使用DBMS提供的 缺省参数,结果常常会引起数据库应用系统性能较差的隐患。结合你的系统架构设计经验,请用200字以内的文字简要说明使用DBMS缺省参数的缺点。8、在该企业所邀请的数据库专家的会诊建议中,选取合适的 索引字段,对于索引实现的效率具有相当重要的作用。结合你的系统架构设计经验,请用200字
8、以内的文字,指出选用具有哪些特征的字段作为索引手段较为合适。9、在该企业所邀请的数据库专家会诊意见中,针对每条SQL语句都建立索引的建议是否合适?请简要说明理由。(2)结合你的系统架构设计经验,请列举出4条SQL语句优化的基本策略。10、在数据库中,当某个业务表中的数据量很大且急速膨胀时,为了保持较高的数据响应速度,可以对该数据表进行分片设计。请用300字以内的文字简要说明对数据表分片需要满足的条件,以及常见的数据表分片方法。试题四阅读以下关于嵌入式实时操作系统软件的选型分析方面的叙述,回答下面问题。说明某研究所承担了一项宇航嵌入式系统的研制任务,本项任务技术难度大,可靠性要求高,进度要求紧,
9、预计软件规模约在一万行以上。而该所原先承担的相关项目均是用汇编语言编写的(软件规模较小,一般是几百行)。项目主管工程师将软件开发的论证工作分别布置给了架构师阮工和刘工,要求他们根据本项目的技术要求,在一周内分别提出软件的实施方案。11该宇航嵌入式系统由数据处理机、信号处理机及数据采集模块组成。信号处理机主要通过数据采集模块将大量不固定时间周期的外部数据采集进来,进行预处理(如FFT变换)后提交给数据处理机;数据处理机根据功能要求完成各种计算处理工作,并将结果输出。为了达到数据处理机和信号处理机的标准化,这两类处理机均采用同种处理机的体系结构(如PowerPC 7410)0整个系统工作的最大周期
10、为1s,最小周期为5ms。数据处理机上的任务分布如下表所示。数据处理机上的任务分布表工作周期任务数(个)共占时间(ms)51110244028503910002312一周后,架构师阮工和刘工提交了各自的实施方案,其共同之处在于二者均提出采用操作系统及相应的软件开发环境。但是,阮工和刘工在选择什么样的操作系统及开发环境方面出现了较大分歧。阮工的实施方案指出,为了满足本项目的技术要求,并有利于本所软件的长期发展,应选用具有硬实时处理能力的嵌入式实时操作系统及开发环境(例如VxWorks等);而刘工的实施方案指出,操作系统主要完成对计算机资源的管理与分配工作,考虑到人们对操作系统及软件开发工具的熟悉
11、程度,本项目应选用具有大众化的,开发人员容易上手的嵌入式操作系统(例如Windows CE、Linux等)。13在两人争执不下的情况下,项目主管工程师组织了相关专家对阮工和刘工提交的实施方案进行了评审。最后,专家组一致认为阮工的方案切实可行,操作系统的选型论证充分、客观,可以作为本所未来几年中相关项目的软件开发的基本环境。同时专家组还就具体实施选择嵌入式实时操作系统及开发环境产品时应着重考虑的相关问题提出了几点建议。11、为什么专家组一致认为阮工的实施方案切实可行?请用200字以内的文字简要说明。12、选择实时嵌入式操作系统及开发环境时应考虑哪几方面的问题?请用200字以内的文字简要论证。13
12、、根据本项目中任务的时间性能参数,请用200字以内的文字(也可用图示)描述任务的被调度关系,并分析系统是否可调度(暂不考虑操作系统的时间开销)?试题五阅读以下关于体系结构设计的叙述,根据要求回答下面问题。说明某大中型电子商务公司的主要业务是在线购物,包括书籍、服装、家电和日用品等。随着公司业务规模不断增大,公司决策层决定重新设计并实现其网上交易系统。PH软件公司承担了该项目软件开发任务,负责系统开发的杜工和赵工分别给出了两种不同的设计方案,分别如第一个图和第二个图所示。杜工设计的体系结构示意图赵工设计的体系结构示意图公司的架构师和开发者针对这两种设计方案,从服务器负载情况、业务逻辑的分离性、系
13、统可靠性,以及实现简单性等方面进行讨论与评估,综合考虑后最终采用了赵工给出的方案。14、结合你的系统架构设计经验,请分析比较杜工、赵工两种方案的优点和不足,将下表中(1)(6)空缺处的内容填写完整。架构方案对比表股务相负世,社工速谍的体东街枸方参即 硬 沌 曲 虻 和 践 葭 阳;中於:;公 滤 A ,幅 八 二小看:逢 立,::匚为 江 二 一 二二二二一”三;5二si工璋讥的悻系库构方案与 己 忌 量 上 学 ,菊三 合1由出国I怦谷物;注业务连较的分谈性(3(4)系统的国林性乘用手自Wbb联务揖,快个索物的可拉住较差实现的单性步要利用本塔吉与出向对象饰程的吉相姑令.相对复杂15、如何架构
14、高性能Web应用系统是PH公司项目组面临的另一个问题。结合你的系统架构设计经验,请用200字以内的文字列举两个主要影响着Web应用系统服务端执行效率的技术因素,并针对每个因素提出相应的解决方案以提高系统性能。16、REST(REpresentational State Transfer)是从几种基于网络的架构风格中衍生出来的一种混合架构风格。采用这种方法设计的Web应用系统能够结合REST风格和面向服务思想的优点。结合你的系统架构设计经验,请用300字以内的文字简要说明与传统的Web服务相比,采用REST服务构建的Web应用具有哪些优势和不足。答案:试题一1、名称:Chain ofRespon
15、sibilityr(职责链)模式设计意图:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系:将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。优缺点:降低了耦合度;增加了给对象指定责任的灵活性:类的集合可以作为一个整体;不保证被接收等 解析Chain of Responsibility(职责链)模式可以在系统中建立一个链,这样消息就可以在首先接收到它的级别处被处理,或者可以定位到可以处理它的对象。依题意,该企业的采购审批是分级进行的,可以采用职责链(Chain of Responsibility)设计模式对该采购审批过程进行设计,设计后得到的类图如图
16、所示。Chain of Responsibility(职责链)模式的设计意图是:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系;将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。换而言之,其目的是为了将一个请求发送给一个对象集合,对象被组织成一条链,而负责处理该请求的对象将获取请求消息并加以处理,其余对象则仅仅负责将该请求消息按照责任链的顺序传递到下一个对象。因此责任链模式的关键在于组织不同的对象成为一条链并传递消息。根据题干给出的不同层次主管人员的审批额度 主任:8万元以下,副董事长:8万 元 15万元,董事长:15万 元 45万元,开会讨论:4
17、5万元及以上,对象在职责链中的顺序应该为:Director-Vicepresident-Presiden-Congress Meeting。由于主任的审批额度最小,因 止 匕审批的请求应该从主任(Director)开始。Chain of Responsibility模式具有以下一些优点和缺点。(1)降低了耦合度。该模式使得一个对象无须知道是其他哪一个对象处理其请求。对象仅需知道该请求会被 正确 地处理。接收者和发送者都没有对方的明确的信息、,且链中的对象不需要知道链的结构。结果是,职责链可简化对象的相互连接。它们仅需要保持一个指向其后继者的引用,而不需要保持它所有的候选接收者的引用。(2)增力
18、口了给对象指定责任(Responsibility)的灵活性。当在对象中分派职责时,职责链给出更多的灵活性。可以通过在运行时刻对该链进行动态的增加或修改来增加或改变处理一个请求的那些职责。可以将这种机制与静态的特例化处理对象的继承机制结合起来使用。(3)由于在一个类中产生的事件可以被发送到组成中的其他类处理器上,因此类的集合可以作为一个整体。(4)不保证被接收。既然一个请求没有明确的接收者,那么就不能保证它一定会被处理一该请求可能一直到链的末端都得不到处理。一个请求也可能因为该链没有被正确配置而得不到处理。2、适用性:多个对象可以处理一个请求,而其处理器却是未知的;想要在不指定确切的请求接收对象
19、的情况下,向几个对象中的一个发送请求:可以动态地指定能够处理请求的对象集等。考虑的实现问题:实现后继者;连接后继者:表示请求;在Smalltalk中自动转发 解析在以下情况中,应该使用Chain of Responsibility模式。(1)多个对象可以处理一个请求,而其处理器却是未知的。(2)想要在不指定确切的请求接收对象的情况下,向几个对象中的一个发送请求。(3)可以动态地指定能够处理请求的对象集等。依题意,在图中,需要考虑以下一些职责链模式的实现问题。(1)实现后继者。链有两种方法可以实现后继者链:定义新的链接(通常在类Approver中定义,但也可由类Director、类Vicepre
20、sident、类Presiden和类Congress来定义);使用已有的链接。通常情况下,可使用已有的对象引用来形成后继者链。例如,在一个部分一整体层次结构中,父构件引用可定义一个部件的后继者,窗口组件(Widget)结构可能早已有这样的链接。在Composite模式中更详细地讨论了父构件引用。当已有的链接能够支持所需的链时,完全可以使用它们。这样就不需要明确定义链接,而且可以节省空间。但如果该结构不能反映应用所需的职责链,那么就必须定义额外的链接。(2)连接后继者。如果没有已有的引用可定义个链,那么就必须自己引入它们。这种情况下类Approver不仅定义该请求的接口,通常也维护后继链接。类A
21、pprover就提供了ApproverRequest,的缺省实现,ApproverRequest向后继者(如果有的话)转发请求。如果类Director的子类对该请求不感兴趣,它不需要重定义转发操作,因为它的缺省实现可进行无条件的转发。(3)表示请求。可以用不同的方法表示请求。最简单的形式是:请求是一个硬编码的(hard-coded)操作调用。这种形式方便而且安全,但只能转发Approver类定义的固定的一组请求。另一选择是使用一个处理函数,这个函数以一个请求码(如一个整型常数或一个字符串)为参数。这种方法支持请求数目不限。唯一的要求是发送方和接收方在请求如何编码问题上应达成一致。该方法更为灵活
22、,但它需要用条件语句来区分请求代码以分派请求。另外,无法用类型安全的方法来传递请求参数,因此它们必须被手工打包和解包。显然,相对于直接调用一个操作而言,它不太安全。为解决参数传递问题,可以使用独立的请求对象来封装请求参数。Request类可明确地描述请求,而新类型的请求可用它的子类来定义。这些子类可定义不同的请求参数。处理者必须知道请求的类型(即它们正使用哪一个Request子类)以访问这些参数。为了标识请求,Request可定义一个访问器(Accessor)函数以返回该类的标识符。或者,如果实现语言支持的话,接收者可使用运行时的类型信息。(4)在Smalltalk中自动转发。你可以使用Sma
23、lltalk中的doseNotUnderstand机制转发请求。没有相应方法的消息被doseNotUnderstand的实现捕捉(Trap In),此实现可被重定义,从而可向一个对象的后继者转发该消息。这样就不需要手工实现转发;类仅处理它感兴趣的请求,而依赖doesNotUnderstand转发其他所有的请求。3 Command模式使用一个Command对象来定义一个发送者和一个接收者之间的绑定关系,从而支持解耦。Observer模式通过定义一个接口来通知目标中发生的改变,从而将发送者(目标)与接收者(观察者)解耦。Chain of Responsibility模式通过沿一个潜在接收者链传递请
24、求而将发送者与接收者解耦。Mediator模式让对象通过一个Mediator对象间接的互相引用,从而对它们解耦。解析当合作的对象直接互相引用时,它们变得互相依赖,这可能会对一个系统的分层和重用性产生负面影响。Command模式、Observer模式、Chain of Responsibility模式和Mediator模式都涉及如何对发送者和接收者解耦,但它们又各有不同的权衡考虑。命令模式使用一个Command对象来定义一个发送者和一个接收者之间的绑定关系,从而支持解耦,如下图所示。Command对象提供了一个提交请求的简单接口(即Execute操作)。将发送者和接收者之间的连接定义在一个单独的
25、对象,使得该发送者可以与不同的接收者一起工作。这就将发送者与接收者解耦,使发送者更易于复用。此外,可以复用Command对象,用不同的发送者参数化一个接收者。虽然Command模式描述了避免使用生成子类的实现技术,但是每一个发送者一接收者连接都需要一个子类。anlnvokersender)aReceiverreceiver)aCommandCommand模式解耦示意图观察者模式通过定义一个接口来通知目标中发生的改变,从而将发送者(目标)与接收者(观察者)解耦,如下图所示。Observer定义了一个比Command更松的发送者一接收者绑定,因为一个目标可能有多个观察者,并且其数目可以在运行时变化
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高级 系统 架构 设计师 下午 试题 模拟
限制150内