1、高级系统架构设计师下午试题()-8 及答案解析(总分:75.00,做题时间:90 分钟)一、B试题一/B(总题数:1,分数:15.00)说明PH软件公司承接了某企业二期信息化软件开发项目,工程项目的研发任务之一是建设采购分级审批系统。该企业采购审批是根据采购金额的不同由不同层次的主管人员来审批,主任可以审批 8万元以下(不包含 8万元)的采购单,副董事长可以审批 815 万元(不包含 15万元)的采购单,董事长可以审批 1545万元(不包含 45万元)的采购单,45 万元及以上的采购单就需要企业高层开会讨论决定。PH 公司架构师采用某种设计模式设计的类图如下图所示。(分数:15.00)(1).
2、请用 350字以内的文字指出该公司架构师所采用的设计模式的具体名称、设计意图及其优缺点。(分数:5.00)_(2).请用 300字以内的文字指出该公司架构师所采用的设计模式的适用性,以及图中需要考虑哪些实现问题?(分数:5.00)_(3).结合你的系统架构经验,请用 300字以内的文字指出 command模式、Observer 模式、Chain of Responsibility模式和 Mediator模式在发送者和接收者解耦方面的区别。(分数:5.00)_二、B试题二/B(总题数:1,分数:15.00)说明某航空公司的主要业务系统(如订票系统、航班调度系统等)始建于二十世纪七八十年代,之后随
3、着信息化的进展,陆续积累了许多异构的遗产信息系统。这些系统部分采用了 J2EE、.NET 等技术进行开发,分布在不同的地理位置,采用不同的协议进行数据传输。近年来,该公司在企业集成方面也是煞费苦心,已经在几个主要的核心系统之间构建了用于信息集成的信息 Hub(Information Hub),其他业务应用之间也有不少点到点的集成。尽管这些企业集成技术在一定程度上增进了系统间的信息共享,但是面对历史异构的遗产信息系统,企业的业务整合、功能整合仍是困难重重,主要表现如下。(1)由于大部分核心应用构建在主机之上,因此 Information Hub是基于主机技术开发,很难被开放系统使用。(2)Inf
4、ormation Hub对事件支持不强,被集成的系统间的事件以点到点流转为主,被集成系统间耦合性强。(3)牵扯到多个系统间的业务协作以硬编码为主,将业务活动自动化的成本高,周期长,被开发的业务活动模块重用性差。某软件开发公司承接了该航空公司应用系统的集成任务,项目组经过多方讨论和论证之后,决定采用以面向服务为中心的企业集成技术,一步步解决该公司所面临的企业集成问题。(分数:15.00)(1).项目组在讨论架构方案时,某位架构师提出采用企业服务总线(ESB)架构模式,通过 ESB的事件服务(Event Service)完成订阅发布,使应用程序间的事件集成不再需要原来的点到点方式,从而解耦组件之间
5、的依赖关系,降低软件系统互连的复杂性。结合你的系统架构设计经验,请用 400字以内的文字简要说明在 ESB环境中组件之间典型的交互过程,以及 ESB具有的核心功能。(分数:5.00)_(2).将彼此关联的业务活动组成自动化流程可以进一步提高该航空公司业务活动的效率。以服务为中心的企业集成通过流程服务来完成业务流程集成。结合你的系统架构设计经验,请用 300字以内的文字列举出3种 SOA架构中的流程服务内容,并给出简要说明。(分数:5.00)_(3).若项目组采用 Web Service作为基于 SOA集成方法的实现技术,请根据该航空公司目前的实际情况,用 300字以内的文字说明系统应该分为哪几
6、个层次,并简要说明每个层次的功能。(分数:5.00)_三、B试题三/B(总题数:1,分数:15.00)说明某大中型企业采用 Oracle数据库建立一个经济信息统计方面的大型数据库应用系统。尽管配置了比较良好的硬件和网络环境,但该数据库应用系统实施后的整体性能表现较差。特别是随着业务量与信息量的迅速扩大,数据库系统的存取速度显著减慢,存储效率也明显下降。该企业通过反复实践与摸索,并邀请数据库专家一起会诊,认为可以从以下 4个方面进一步优化数据库应用系统。(1)由于数据库应用中最主要的查询与修改数据操作大多需通过 I/O来完成,因此需要通过调整服务器配置(即对硬件设备进行升级)、操作系统配置与数据
7、库管理系统的有关参数,优化系统的 I/O性能,尤其是改进磁盘 I/O的效率与性能。(2)优化“索引”的建立与使用机制,尽可能提高数据查询的速度或效率。(3)合理使用聚类(Culster),改进查询响应时间和系统的综合性能。其中,“聚类”是指把单独组织的,但在逻辑上经常需要连接的,较为稳定的几个基本表聚集在一起(在物理上实现邻近存放),可以显著减少数据的搜索时间,从而提高性能。(4)对应用系统中使用的 SQL语句进行调优,针对每条 SQL语句都建立对应的索引等。(分数:15.00)(1).许多开发技术人员由于缺乏经验,通常在建立实体(如基本表、索引或表空间等)时,都习惯于使用DBMS提供的“缺省
8、参数”,结果常常会引起数据库应用系统性能较差的隐患。结合你的系统架构设计经验,请用 200字以内的文字简要说明使用 DBMS缺省参数的缺点。(分数:3.75)_(2).在该企业所邀请的数据库专家的会诊建议中,选取合适的“索引字段”,对于索引实现的效率具有相当重要的作用。结合你的系统架构设计经验,请用 200字以内的文字,指出选用具有哪些特征的字段作为索引手段较为合适。(分数:3.75)_(3).(1)在该企业所邀请的数据库专家会诊意见中,针对每条 SQL语句都建立索引的建议是否合适?请简要说明理由。 (2)结合你的系统架构设计经验,请列举出 4条 SQL语句优化的基本策略。(分数:3.75)_
9、(4).在数据库中,当某个业务表中的数据量很大且急速膨胀时,为了保持较高的数据响应速度,可以对该数据表进行分片设计。请用 300字以内的文字简要说明对数据表分片需要满足的条件,以及常见的数据表分片方法。(分数:3.75)_四、B试题四/B(总题数:1,分数:15.00)说明某研究所承担了一项宇航嵌入式系统的研制任务,本项任务技术难度大,可靠性要求高,进度要求紧,预计软件规模约在一万行以上。而该所原先承担的相关项目均是用汇编语言编写的(软件规模较小,一般是几百行)。项目主管工程师将软件开发的论证工作分别布置给了架构师阮工和刘工,要求他们根据本项目的技术要求,在一周内分别提出软件的实施方案。(1)
10、该宇航嵌入式系统由数据处理机、信号处理机及数据采集模块组成。信号处理机主要通过数据采集模块将大量不固定时间周期的外部数据采集进来,进行预处理(如 FFT变换)后提交给数据处理机;数据处理机根据功能要求完成各种计算处理工作,并将结果输出。为了达到数据处理机和信号处理机的标准化,这两类处理机均采用同种处理机的体系结构(如 PowerPC 7410)。整个系统工作的最大周期为 1s,最小周期为 5ms。数据处理机上的任务分布如下表所示。 B数据处理机上的任务分布表/B工作周期 任务数(个) 共占时间(ms)5 1 110 2 440 2 850 3 91000 2 3(2)一周后,架构师阮工和刘工提
11、交了各自的实施方案,其共同之处在于二者均提出采用操作系统及相应的软件开发环境。但是,阮工和刘工在选择什么样的操作系统及开发环境方面出现了较大分歧。阮工的实施方案指出,为了满足本项目的技术要求,并有利于本所软件的长期发展,应选用具有硬实时处理能力的嵌入式实时操作系统及开发环境(例如 VxWorks等);而刘工的实施方案指出,操作系统主要完成对计算机资源的管理与分配工作,考虑到人们对操作系统及软件开发工具的熟悉程度,本项目应选用具有大众化的,开发人员容易上手的嵌入式操作系统(例如 Windows CE、Linux 等)。(3)在两人争执不下的情况下,项目主管工程师组织了相关专家对阮工和刘工提交的实
12、施方案进行了评审。最后,专家组一致认为阮工的方案切实可行,操作系统的选型论证充分、客观,可以作为本所未来几年中相关项目的软件开发的基本环境。同时专家组还就具体实施选择嵌入式实时操作系统及开发环境产品时应着重考虑的相关问题提出了几点建议。(分数:15.00)(1).为什么专家组一致认为阮工的实施方案切实可行?请用 200字以内的文字简要说明。(分数:5.00)_(2).选择实时嵌入式操作系统及开发环境时应考虑哪几方面的问题?请用 200字以内的文字简要论证。(分数:5.00)_(3).根据本项目中任务的时间性能参数,请用 200字以内的文字(也可用图示)描述任务的被调度关系,并分析系统是否可调度
13、(暂不考虑操作系统的时间开销)?(分数:5.00)_五、B试题五/B(总题数:1,分数:15.00)说明某大中型电子商务公司的主要业务是在线购物,包括书籍、服装、家电和日用品等。随着公司业务规模不断增大,公司决策层决定重新设计并实现其网上交易系统。PH 软件公司承担了该项目软件开发任务,负责系统开发的杜工和赵工分别给出了两种不同的设计方案,分别如图 1和第图 2所示。图 1 杜工设计的体系结构示意图(分数:15.00)(1).结合你的系统架构设计经验,请分析比较杜工、赵工两种方案的优点和不足,将下表中空缺处的内容填写完整。(分数:5.00)_(2).如何架构高性能 Web应用系统是 PH公司项
14、目组面临的另一个问题。结合你的系统架构设计经验,请用 200字以内的文字列举两个主要影响着 Web应用系统服务端执行效率的技术因素,并针对每个因素提出相应的解决方案以提高系统性能。(分数:5.00)_(3).REST(REpresentational State Transfer)是从几种基于网络的架构风格中衍生出来的一种混合架构风格。采用这种方法设计的 Web应用系统能够结合 REST风格和面向服务思想的优点。结合你的系统架构设计经验,请用 300字以内的文字简要说明与传统的 Web服务相比,采用 REST服务构建的 Web应用具有哪些优势和不足。(分数:5.00)_高级系统架构设计师下午试
15、题()-8 答案解析(总分:75.00,做题时间:90 分钟)一、B试题一/B(总题数:1,分数:15.00)说明PH软件公司承接了某企业二期信息化软件开发项目,工程项目的研发任务之一是建设采购分级审批系统。该企业采购审批是根据采购金额的不同由不同层次的主管人员来审批,主任可以审批 8万元以下(不包含 8万元)的采购单,副董事长可以审批 815 万元(不包含 15万元)的采购单,董事长可以审批 1545万元(不包含 45万元)的采购单,45 万元及以上的采购单就需要企业高层开会讨论决定。PH 公司架构师采用某种设计模式设计的类图如下图所示。(分数:15.00)(1).请用 350字以内的文字指
16、出该公司架构师所采用的设计模式的具体名称、设计意图及其优缺点。(分数:5.00)_正确答案:(名称:Chain of Responsibility(职责链)模式 设计意图:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系;将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。 优缺点:降低了耦合度;增加了给对象指定责任的灵活性;类的集合可以作为一个整体;不保证被接收等)解析:解析 Chain of Responsibility(职责链)模式可以在系统中建立一个链,这样消息就可以在首先接收到它的级别处被处理,或者可以定位到可以处理它的对象。依题意,该企业的
17、采购审批是分级进行的,可以采用职责链(Chain of Responsibility)设计模式对该采购审批过程进行设计,设计后得到的类图如图所示。 Chain of Responsibility(职责链)模式的设计意图是:使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系;将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。换而言之,其目的是为了将一个请求发送给一个对象集合,对象被组织成一条链,而负责处理该请求的对象将获取请求消息并加以处理,其余对象则仅仅负责将该请求消息按照责任链的顺序传递到下一个对象。因此责任链模式的关键在于组织不同的对象成为一条链并
18、传递消息。根据题干给出的不同层次主管人员的审批额度“主任:8 万元以下,副董事长:8 万元15 万元,董事长:15 万元45万元,开会讨论:45 万元及以上”,对象在职责链中的顺序应该为:DirectorVicepresidentPresidenCongress Meeting。由于主任的审批额度最小,因此审批的请求应该从主任(Director)开始。 Chain of Responsibility 模式具有以下一些优点和缺点。 (1)降低了耦合度。该模式使得一个对象无须知道是其他哪一个对象处理其请求。对象仅需知道该请求会被“正确”地处理。接收者和发送者都没有对方的明确的信息,且链中的对象不需
19、要知道链的结构。结果是,职责链可简化对象的相互连接。它们仅需要保持一个指向其后继者的引用,而不需要保持它所有的候选接收者的引用。 (2)增加了给对象指定责任(Responsibility)的灵活性。当在对象中分派职责时,职责链给出更多的灵活性。可以通过在运行时刻对该链进行动态的增加或修改来增加或改变处理一个请求的那些职责。可以将这种机制与静态的特例化处理对象的继承机制结合起来使用。 (3)由于在一个类中产生的事件可以被发送到组成中的其他类处理器上,因此类的集合可以作为一个整体。 (4)不保证被接收。既然一个请求没有明确的接收者,那么就不能保证它一定会被处理该请求可能一直到链的末端都得不到处理。
20、一个请求也可能因为该链没有被正确配置而得不到处理。(2).请用 300字以内的文字指出该公司架构师所采用的设计模式的适用性,以及图中需要考虑哪些实现问题?(分数:5.00)_正确答案:(适用性:多个对象可以处理一个请求,而其处理器却是未知的;想要在不指定确切的请求接收对象的情况下,向几个对象中的一个发送请求;可以动态地指定能够处理请求的对象集等。 考虑的实现问题:实现后继者;连接后继者;表示请求;在 Smalltalk中自动转发)解析:解析 在以下情况中,应该使用 Chain of Responsibility模式。 (1)多个对象可以处理一个请求,而其处理器却是未知的。 (2)想要在不指定确
21、切的请求接收对象的情况下,向几个对象中的一个发送请求。 (3)可以动态地指定能够处理请求的对象集等。 依题意,在图中,需要考虑以下一些职责链模式的实现问题。 (1)实现后继者。链有两种方法可以实现后继者链:定义新的链接(通常在类 Approver中定义,但也可由类 Director、类 Vicepresident、类 Presiden和类 Congress来定义);使用已有的链接。 通常情况下,可使用已有的对象引用来形成后继者链。例如,在一个部分一整体层次结构中,父构件引用可定义一个部件的后继者,窗口组件(Widget)结构可能早已有这样的链接。在 Composite模式中更详细地讨论了父构件
22、引用。当已有的链接能够支持所需的链时,完全可以使用它们。这样就不需要明确定义链接,而且可以节省空间。但如果该结构不能反映应用所需的职责链,那么就必须定义额外的链接。 (2)连接后继者。如果没有已有的引用可定义一个链,那么就必须自己引入它们。这种情况下类 Approver不仅定义该请求的接口,通常也维护后继链接。类 Approver就提供了 ApproverRequest,的缺省实现,ApproverRequest向后继者(如果有的话)转发请求。如果类 Director的子类对该请求不感兴趣,它不需要重定义转发操作,因为它的缺省实现可进行无条件的转发。 (3)表示请求。可以用不同的方法表示请求。
23、最简单的形式是:请求是一个硬编码的(hard-coded)操作调用。这种形式方便而且安全,但只能转发Approver类定义的固定的一组请求。 另一选择是使用一个处理函数,这个函数以一个请求码(如一个整型常数或一个字符串)为参数。这种方法支持请求数目不限。唯一的要求是发送方和接收方在请求如何编码问题上应达成一致。该方法更为灵活,但它需要用条件语句来区分请求代码以分派请求。另外,无法用类型安全的方法来传递请求参数,因此它们必须被手工打包和解包。显然,相对于直接调用一个操作而言,它不太安全。 为解决参数传递问题,可以使用独立的请求对象来封装请求参数。Request 类可明确地描述请求,而新类型的请求
24、可用它的子类来定义。这些子类可定义不同的请求参数。处理者必须知道请求的类型(即它们正使用哪一个 Request子类)以访问这些参数。为了标识请求,Request 可定义一个访问器(Accessor)函数以返回该类的标识符。或者,如果实现语言支持的话,接收者可使用运行时的类型信息。 (4)在 Smalltalk中自动转发。你可以使用 Smalltalk中的 doseNotUnderstand机制转发请求。没有相应方法的消息被 doseNotUnderstand的实现捕捉(Trap In),此实现可被重定义,从而可向一个对象的后继者转发该消息。这样就不需要手工实现转发;类仅处理它感兴趣的请求,而依
25、赖 doesNotUnderstand转发其他所有的请求。(3).结合你的系统架构经验,请用 300字以内的文字指出 command模式、Observer 模式、Chain of Responsibility模式和 Mediator模式在发送者和接收者解耦方面的区别。(分数:5.00)_正确答案:(Command 模式使用一个 Command对象来定义一个发送者和一个接收者之间的绑定关系,从而支持解耦。 Observer 模式通过定义一个接口来通知目标中发生的改变,从而将发送者(目标)与接收者(观察者)解耦。 Chain of Responsibility 模式通过沿一个潜在接收者链传递请求而
26、将发送者与接收者解耦。 Mediator 模式让对象通过一个 Mediator对象间接的互相引用,从而对它们解耦。)解析:解析 当合作的对象直接互相引用时,它们变得互相依赖,这可能会对一个系统的分层和重用性产生负面影响。Command 模式、Observer 模式、Chain of Responsibility 模式和 Mediator模式都涉及如何对发送者和接收者解耦,但它们又各有不同的权衡考虑。命令模式使用一个 Command对象来定义一个发送者和一个接收者之间的绑定关系,从而支持解耦,如图 1所示。Command 对象提供了一个提交请求的简单接口(即 Execute操作)。将发送者和接收
27、者之间的连接定义在一个单独的对象,使得该发送者可以与不同的接收者一起工作。这就将发送者与接收者解耦,使发送者更易于复用。此外,可以复用 Command对象,用不同的发送者参数化一个接收者。虽然 Command模式描述了避免使用生成子类的实现技术,但是每一个发送者一接收者连接都需要一个子类。*图 1 Command模式解耦示意图观察者模式通过定义一个接口来通知目标中发生的改变,从而将发送者(目标)与接收者(观察者)解耦,如图 2所示。Observer 定义了一个比 Command更松的发送者一接收者绑定,因为一个目标可能有多个观察者,并且其数目可以在运行时变化。观察者模式中的 Subject和
28、Observer接口是为了处理 Subject的变化而设计的,因此当对象间有数据依赖时,最好用观察者模式来对它们进行解耦。*图 2 Observer模式解耦示意图职责链模式通过沿一个潜在接收者链传递请求而将发送者与接收者解耦,如图 3所示。因为发送者和接收者之间的接口是固定的,职责链可能也需要一个定制的分发策略。因此它与 Mediator一样存在类型安全的问题。如果职责链已经是系统结构的一部分,同时在链上的多个对象中总有一个可以处理请求,那么职责链将是一个很好地将发送者和接收者解耦的方法。此外,因为链可以被简单的改变和扩展,从而为该模式提供了更大的灵活性。*图 3 Chain of Respo
29、nsibility模式解耦示意图中介者模式让对象通过一个 Mediator对象间接的互相引用,从而对它们解耦,如图 4所示。一个Mediator对象为各 Colleague对象间的请求提供路由并集中它们的通信。因此各 Colleague对象仅能通过 Mediator接口相互交谈。因为这个接口是固定的,为了增加灵活性,Mediator 可能不得不实现它自己的分发策略。可以用一定的方式对请求编码并打包参数,使得 Colleague对象可以请求的操作数目不限。中介者模式可以减少一个系统中的子类生成,因为它将通信行为集中到一个类中而不是将其分布在各个子类中。然而,特别的分发策略通常会降低类型安全性。*
30、图 4 Mediator模式解耦示意图二、B试题二/B(总题数:1,分数:15.00)说明某航空公司的主要业务系统(如订票系统、航班调度系统等)始建于二十世纪七八十年代,之后随着信息化的进展,陆续积累了许多异构的遗产信息系统。这些系统部分采用了 J2EE、.NET 等技术进行开发,分布在不同的地理位置,采用不同的协议进行数据传输。近年来,该公司在企业集成方面也是煞费苦心,已经在几个主要的核心系统之间构建了用于信息集成的信息 Hub(Information Hub),其他业务应用之间也有不少点到点的集成。尽管这些企业集成技术在一定程度上增进了系统间的信息共享,但是面对历史异构的遗产信息系统,企业
31、的业务整合、功能整合仍是困难重重,主要表现如下。(1)由于大部分核心应用构建在主机之上,因此 Information Hub是基于主机技术开发,很难被开放系统使用。(2)Information Hub对事件支持不强,被集成的系统间的事件以点到点流转为主,被集成系统间耦合性强。(3)牵扯到多个系统间的业务协作以硬编码为主,将业务活动自动化的成本高,周期长,被开发的业务活动模块重用性差。某软件开发公司承接了该航空公司应用系统的集成任务,项目组经过多方讨论和论证之后,决定采用以面向服务为中心的企业集成技术,一步步解决该公司所面临的企业集成问题。(分数:15.00)(1).项目组在讨论架构方案时,某位
32、架构师提出采用企业服务总线(ESB)架构模式,通过 ESB的事件服务(Event Service)完成订阅发布,使应用程序间的事件集成不再需要原来的点到点方式,从而解耦组件之间的依赖关系,降低软件系统互连的复杂性。结合你的系统架构设计经验,请用 400字以内的文字简要说明在 ESB环境中组件之间典型的交互过程,以及 ESB具有的核心功能。(分数:5.00)_正确答案:(交互过程:先由服务请求者触发一次交互过程,产生一个服务请求消息,并将该消息按照ESB的要求标准化,然后将标准化的消息发送给服务总线。ESB 根据请求消息中的服务名(或接口名)进行目的组件查找,将消息转发至目的组件,并最终将处理结
33、果逆向返回给服务请求者。 核心功能: 提供位置透明性的消息路由和寻址服务。 提供服务注册和命名的管理功能。 支持多种消息传递范型。 传输协议转换。 支持多种数据格式及其相互转换。 提供日志和监控功能等)解析:解析 企业服务总线(Enterprise Service Bus,ESB)是由中间件技术实现的支持面向服务架构(SOA)的基础软件平台,支持异构环境中的服务以基于消息和事件驱动模式的交互,并且具有适当的服务质量和可管理性。ESB 技术的基本思想是:提供一种标准的软件底层架构,各种程序组件能够以服务单元的方式“插入”到该平台上运行,并且组件之间能够以标准的消息通信方式来进行交互。 在 ESB
34、环境中组件之间的典型交互过程是:首先由服务请求者触发一次交互过程,产生一个服务请求消息,并将该消息按照 ESB的要求标准化,然后标准化的消息被发送给服务总线。ESB 根据请求消息中的服务名或者接口名进行目的组件查找,将消息转发至目的组件,并最终将处理结果逆向返回给服务请求者。 这种交互过程不再是点对点的直接交互模式,而是由事件驱动的消息交互模式。通过这种方式,ESB 在最大限度上解耦了组件之间的依赖关系,降低了软件系统互连的复杂性。连接在总线上的组件无须了解其他组件和应用系统的位置及交互协议,只需要向服务总线发出请求,消息即可获得所需服务。服务总线事实上实现了组件和应用系统的位置透明和协议透明
35、。技术人员可以通过开发符合 ESB标准的组件(适配器)将外部应用连接至服务总线,实现与其他系统的互操作。同时,ESB 以中间件的方式,提供服务容错、负载均衡、QoS 保障和可管理功能。 对 ESB的基本核心功能归纳如下。 (1)提供位置透明性的消息路由和寻址服务。 (2)提供服务注册和命名的管理功能。 (3)支持多种消息传递范型(如请求/响应、发布/订阅等)。 (4)支持多种可以广泛使用的传输协议(即传输协议转换)。 (5)支持多种数据格式及其相互转换(即多种平台下多种集成方式的支持)。 (6)提供日志和监控功能。(2).将彼此关联的业务活动组成自动化流程可以进一步提高该航空公司业务活动的效率
36、。以服务为中心的企业集成通过流程服务来完成业务流程集成。结合你的系统架构设计经验,请用 300字以内的文字列举出3种 SOA架构中的流程服务内容,并给出简要说明。(分数:5.00)_正确答案:(1)编排服务:通过预定义的流程逻辑控制流程中业务活动的执行,并帮助业务流程从错误中恢复。 (2)事务服务:用于保证流程执行中的事务特性(ACID)。对于短流程,通常采用传统的两阶段提交技术:对于长流程,一般采用补偿的方法。 (3)人工服务:用于将人工的活动集成到流程中,即通过关联的交互服务使得人工可以参与到流程执行中,并且管理由于人工参与而带来的管理任务(如任务分派、授权和监管等)。)解析:解析 企业部
37、门内部的 IT系统通过将业务活动自动化来提高业务活动的效率。但是这些部门的业务活动并不是独立的,而是和其他部门的活动彼此关联的。将彼此关联的业务活动组成自动化流程可以进一步提高业务活动的效率。以服务为中心的企业集成通过流程服务来完成业务流程集成。在业务流程集成中,粒度的业务逻辑被组合成业务流程,流程服务提供自动执行这些业务流程的能力。在参考架构中,流程服务包括以下内容。 (1)编排服务(Choreography Service):通过预定义的流程逻辑控制流程中业务活动的执行,并帮助业务流程从错误中恢复。 (2)事务服务(Transaction Service):用于保证流程执行中的事务特性(A
38、CID)。对于短流程,通常采用传统的两阶段提交技术;对于长流程,一般采用补偿的方法。 (3)人工服务(Staff Service):用于将人工的活动集成到流程中。一方面,它通过关联的交互服务使得人工可以参与到流程执行中;另一方面,它需要管理由于人工参与带来的管理任务,如任务分派、授权和监管等。(3).若项目组采用 Web Service作为基于 SOA集成方法的实现技术,请根据该航空公司目前的实际情况,用 300字以内的文字说明系统应该分为哪几个层次,并简要说明每个层次的功能。(分数:5.00)_正确答案:(1)底层传输层,主要负责消息的传输机制。 (2)服务通信协议层,用于描述并定义服务之间
39、进行消息传递所需的技术标准。 (3)服务描述层,负责以一种统一的方式描述服务的接口与消息交换方式。(4)服务层,负责将遗产系统进行包装,并通过发布的 WSDL接口描述被定位和调用。 (5)业务流程层,支持服务发现、服务调用和点到点的服务调用,并将业务流程从 Web Service的底层调用抽象出来。 (6)服务注册层,使服务提供者能够通过 WSDL发布服务定义,并支持服务请求者查找所需的服务信息)解析:解析 在采用 Web Service作为 SOA的实现技术时,根据该航空公司目前的实际情况,从功能角度考虑,该系统应该至少分为 6个层次,分别为底层传输层、服务通信协议层、服务描述层、服务层、业
40、务流程层和服务注册层,如下表所示。 BWeb Service各层次功能及相关标准/B层次 功能 相关标准底层传输层(Transport) 主要负责消息的传输机制HTTP、SMTP、FTP 和JMS等服务通信协议层(ServiceCommunication Protocol)描述并定义服务之间进行消息传递所需的技术标准 SOAP和 REST协议服务描述层(ServiceDescription)主要以一种统一的方式描述服务的接口与消息交换方式WSDL服务层(Service)将遗产系统进行包装,并通过发布的 WSDL接口描述被定位和调用业务流程层(BusinessProcess)支持服务发现、服务调
41、用和点到点的服务调用,并将业务流程从 Web Service的底层调用中抽象出来WS-BPEL(BPEL4WS)服务注册层(ServiceRegistry)使服务提供者能够通过 WSDL发布服务定义,并支持服务请求者查找所需的服务信息UDDI三、B试题三/B(总题数:1,分数:15.00)说明某大中型企业采用 Oracle数据库建立一个经济信息统计方面的大型数据库应用系统。尽管配置了比较良好的硬件和网络环境,但该数据库应用系统实施后的整体性能表现较差。特别是随着业务量与信息量的迅速扩大,数据库系统的存取速度显著减慢,存储效率也明显下降。该企业通过反复实践与摸索,并邀请数据库专家一起会诊,认为可
42、以从以下 4个方面进一步优化数据库应用系统。(1)由于数据库应用中最主要的查询与修改数据操作大多需通过 I/O来完成,因此需要通过调整服务器配置(即对硬件设备进行升级)、操作系统配置与数据库管理系统的有关参数,优化系统的 I/O性能,尤其是改进磁盘 I/O的效率与性能。(2)优化“索引”的建立与使用机制,尽可能提高数据查询的速度或效率。(3)合理使用聚类(Culster),改进查询响应时间和系统的综合性能。其中,“聚类”是指把单独组织的,但在逻辑上经常需要连接的,较为稳定的几个基本表聚集在一起(在物理上实现邻近存放),可以显著减少数据的搜索时间,从而提高性能。(4)对应用系统中使用的 SQL语句进行调优,针对每条 SQL语句都建立对应的索引等。(分数:15.00)(1).许多开发技术人员由于缺乏经验,通常在建立实体(如基本表、索引或表空间等)时,都习惯于使用DBMS提供的“缺省参数”,结果常常会引起数据库应用系统性能较差的隐患。结合你的系统架构设计经验,请用 200字以内的文字简要说明使用 DBMS缺省参数的缺点。(分数:3.75)_正确答案:(若使用默认参数,在进行查询时会产生大量不必要