系统架构设计师模拟题及答案解析第二十一套.docx

上传人:b****3 文档编号:1859038 上传时间:2022-10-24 格式:DOCX 页数:10 大小:25.29KB
下载 相关 举报
系统架构设计师模拟题及答案解析第二十一套.docx_第1页
第1页 / 共10页
系统架构设计师模拟题及答案解析第二十一套.docx_第2页
第2页 / 共10页
系统架构设计师模拟题及答案解析第二十一套.docx_第3页
第3页 / 共10页
系统架构设计师模拟题及答案解析第二十一套.docx_第4页
第4页 / 共10页
系统架构设计师模拟题及答案解析第二十一套.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

系统架构设计师模拟题及答案解析第二十一套.docx

《系统架构设计师模拟题及答案解析第二十一套.docx》由会员分享,可在线阅读,更多相关《系统架构设计师模拟题及答案解析第二十一套.docx(10页珍藏版)》请在冰豆网上搜索。

系统架构设计师模拟题及答案解析第二十一套.docx

系统架构设计师模拟题及答案解析第二十一套

系统架构设计师模拟题及答案解析第二十一套

试题一

1、论面向服务的体系结构在系统集成中的应用

面向服务的体系结构(ServiceorientedArchitecture,SOA.作为一种体系结构模型,将应用程序的不同功能单元通过一些良好定义的接口联系起来。

接口是采用中立的方式进行定义的,它独立于实现服务的硬件平台、操作系统和编程语言。

这使得构建服务可以以一种统一和通用的方式进行交互。

请围绕“SOA在系统集成中的应用“论题,依次从以下的3个方面进行论述:

①概要叙述你参与分析与开发的系统集成项目,以及你在其中所担任的主要工作。

②详细论述SOA中的关键技术,以及你熟悉的工具和环境对soA的支持。

③通过你的切身实践详细论述SOA在系统集成中发挥的作用和优势。

试题二

2、论软件的静态演化和动态演化及其应用

软件演化(SoftwareEvolution)是指软件在其生命周期内的更新行为和过程。

演化是一系列贯穿软件生命周期始终的活动,系统需求改变、功能实现增强、新功能加入、软件架构改变、软件缺陷修复、运行环境改变均要求软件系统能够快速适应变化,具有较强的演化能力。

软件静态演化(StaticEvolution)和动态演化(DynamicEvolution)是目前软件演化的两种重要类型。

请围绕“软件的静态演化和动态演化及其应用”论题,依次从以下3个方面进行论述:

①概要叙述你参与管理和开发的软件项目及你在其中所担任的主要工作。

②请分别对软件静态演化和动态演化的特点进行论述,说明两种软件演化类型各自的优缺点及其应用场合,并举例说明各自的常见演化技术手段。

③具体阐述你参与管理和开发的项目中所进行的软件演化活动的特点、演化的类型,以及所采取的对应演化技术手段,说明具体实施过程及实际应用的效果。

试题三

3、论大规模分布式系统缓存设计策略

大规模分布式系统通常需要利用缓存技术减轻服务器负载、降低网络拥塞、增强系统可扩展性。

缓存技术的基本思想是将客户最近经常访问的内容在缓存服务器中存放一个副本,当该内容下次被访问时,不必建立新的数据请求,而是直接由缓存提供。

良好的缓存设计,是一个大规模分布式系统能够正常、高效运行的必要前提。

在进行大规模分布式系统开发时,必须从一开始就针对应用需求和场景对系统的缓存机制进行全面考虑,设计一个可伸缩的系统缓存架构。

请围绕“大规模分布式系统缓存设计策略”论题,依次从以下3个方面进行论述:

①概要叙述你参与实施的大规模分布式系统开发项目及你所担任的主要工作。

②从不同的用途和应用场景考虑,请详细阐述至少两种常见的缓存工作模式,并说明每种工作模式的适应场景。

③阐述你在设计大规模分布式系统的缓存机制时遇到了哪些问题,如何解决。

试题四

4、论基于REST服务的Web应用系统设计

REST(REpresentationalStateTransfer)是指从几种基于网络的架构风格衍生出来的一种混合架构风格,它是目前互联网的核心架构风格。

基于REST服务(RESTfulService)的Web应用系统设计任务主要包括:

识别并设计REST风格的服务,采用面向服务的思想进行REST服务集成。

采用这种方法设计的Web应用系统能够结合REST风格和面向服务思想的优点,近年来受到了广泛的关注。

请围绕“基于REST服务的Web应用系统设计"论题,依次从以下3个方面进行论述:

①概要叙述你参与实施的Web应用系统开发项目及你所承担的主要工作。

②简要叙述与传统的Web服务相比,采用REST服务构建的Web应用具有哪些优势和不足。

③阐述你在设计基于REST服务的Web应用系统时遇到了哪些问题,如何解决。

试题五

5、论中间件技术在软件开发中的作用

随着软件应用越来越复杂,软件开发“一切从零开始”的开发模式也越来越不能满足应用的要求。

一些著名的软件公司推出自己的中间件产品,如通信中间件、数据库中间件等为软件开发提供有力的支持。

请围绕“中间件技术在软件开发中的作用”这个论题,依次从以下3个方面进行论述:

①概要叙述你参与分析和开发的应用项目,以及你所担任的主要工作。

②具体讨论你在软件开发过程中选取中间件的原则和标准,结合实例详细叙述中间件技术在你的软件开发中的作用。

③假如你在一个软件公司中能够起到影响公司决策的作用,请你结合市场和技术因素,为你的公司设计一个有自主版权的中间件的方案,并评价你的方案。

答案:

试题一

1、[写作要点]

面向服务的体系结构是一种新的体系结构风格,它具有松耦合和面向软件服务的特点,具有很高的重用性和灵活性。

在撰写本文时,要注意以下几个方面:

①简单介绍你参与分析与开发的系统集成项目情况和背景,以及你在其中所担任的主要工作,说明为什么要使用soA。

②详细论述sOA中的关键技术,以及你熟悉的工具和环境对soA的支持。

要注意的是不要逐个地对技术进行讨论,而只是根据你的项目实际情况,具体地讨论2~3个技术的应用就可以了。

③根据你的项目应用情况,详细介绍SoA在系统集成中发挥的作用和优势。

试题二

2、[写作要点]

本题考查的知识点是软件演化。

一个软件系统开发完毕正式投入使用之后,如果需求发生变化,或者要将该系统移植到另一个环境运行,且新环境的需求也有相应的变化时,就要对软件进行修改,这就是软件演化。

软件演化是一个程序不断调节以满足新的软件需求的过程,也就是对一个已有软件不断进行修改、补充、完善以适用新需求和环境变化的过程。

由于软件演化一词并不多见,所以难倒了很多考生。

其实换一种讲法,可能大家就倍感亲切了一软件升级",其实演化的本质就是在升级。

既然是升级,静态演化与动态演化是怎么回事也就好理解了,即升级时是否停止系统的运行。

所以如果有了上面的基础概念理解,写该论文的方向也就明晰了。

文章共分3个部分组织内容。

第一部分,简要叙述作者所参与管理和开发的软件项目,并明确指出在其中承担的主要任务和开展的主要工作。

第二部分,偏理论,需要介绍静态演化和动态演化的基本情况,写作时可参考以下材料。

静态演化(StaticEvolution),静态演化是指软件在停机状态下的演化。

其优点是不用考虑运行状态的迁移,同时也没有活动的进程需要处理。

然而停止一个应用程序就意味着中断它提供的服务,造成软件暂时失效。

软件静态演化是指发生在应用程序停止时的软件修改和更新,即一般意义上的软件维护和升级。

静态演化的优点是没有状态迁移或活动线程的问题要解决,缺陷是停止应用程序意味着停止它所提供的服务,也就是使软件系统暂时失效。

在软件交付之后,静态演化(类似于一般意义上的软件维护)就成为软件变更的一个常规过程。

变更可以是一种更正代码错误的简单变更,也可以是更正设计错误的较大范围的变更,还可以是对描述错误进行修正或提供新需求这样的重大改进。

有3种不同的软件维护:

改正性维护、适应性维护和完善性维护。

维护过程一般包括变更分析、版本规划、系统实现和向客户交付系统等活动。

在面向对象技术中,使用子类型方法来扩展程序,它适合于软件静态演化和代码重用。

子类型化一个类意味着保留父类中的参数和方法,并尽可能地增加新的参数和方法。

另外,使用重载和多态性作为主要的演化机制。

实际上,建立类的新版本,最简单的机制是创建它的子类,然后重载需要变更的方法,最后,使用多态性调用新创建的方法。

在基于构件的软件技术中,构件采取接口和实现相分离技术,构件之间只能通过接口进行通信,这使得具有兼容接口的不同构件实现可以相互取代,从而成为软件静态演化的一条途径。

动态演化(DynamicEvolution),动态演化是指软件在执行期间的软件演化。

其优点是软件不会存在暂时的失效,有持续可用性的明显优点。

但由于涉及状态迁移等问题,比静态演化从技术上更难处理。

动态演化是最复杂也是最有实际意义的演化形式。

动态演化使得软件在运行过程中,可以根据应用需求和环境变化,动态地进行软件的配置、维护和更新,其表现形式包括系统元素数目的可变性、结构关系的可调节性和结构形态的动态可配置性。

软件的动态演化特性对于适应未来软件发展的开放性、动态性具有重要意义。

动态演化是指软件在运行期间的演化。

在许多重要的应用领域中,如金融、电力、电信及空中交通管制等,系统的持续可用性是一个关键性的要求,运行时刻的系统演化可减少因关机和重新启动而带来的损失和风险。

此外,越来越多的其他类型的应用软件也提出了运行时刻演化的要求,在不必对应用软件进行重新编译和加载的前提下,为最终用户提供系统定制和扩展的能力。

动态演化可分为两种类型:

预设的和非预设的。

在Web环境中,软件应用常常需要处理多种类型的信息,因此它们常被设计为可以动态下载并安装插件以处理当前所面临的新类型的信息;而分布式Web应用也常常需要增减内部处理节点的数目以适应多变的负载。

这些动态改变都是软件设计者能够预先设想到的,可实现为系统的固有功能。

另有一些必须对系统配置进行修改和调整的情况是直到系统投入运行以后才发现的,这就要求系统能够处理在原始设计中没有完全预料到的新需求。

这种情况下一般需要关闭整个系统,重新开发、重新装入并重新启动系统。

然而,为了进行局部的修改而关闭整个系统在某些情况下是不允许的(如关键运行系统)或者代价太高。

精心设计的动态演化技术可以在不关闭整个系统的前提下修改系统的结构配置,并尽量使未受影响的部分继续工作以提高系统的可为支持软件的动态演化性,已在语言、机制和环境等方面做了大量工作。

在程序语言的层次上,引进各种机制以支持软件动态演化,例如,动态装载技术允许增加代码到已运行的程序中,延迟绑定是在运行时而不是编译时决定类和对象的绑定。

Javahotswap允许在运行时改变方法:

当一个方法终止时这个方法的新版本可以有效地替换旧版本,在类层次上代码的二进制兼容被支持。

Gilgu1语言也允许更换运行时对象。

但程序语言层次上的动态演化机制仅局限于函数、类方法和对象等小粒度的替换,只支持预设的有限变更,变更由事件触发。

通过标准化运行级构件的规约,依靠构件运行平台(中间件平台)提供的基础设施,使软件在构件层次上的动态演化成为可能。

中间件中具有的如命名服务、反射技术和动态适配等机制,为运行态构件的动态替换和升级提供支撑,从而推动了软件动态演化的发展。

命名服务就是给构件实例提供一个名称,以便客户通过这些名称来获取构件实例。

对工业标准构件EJB和CORBA构件的引用都可以通过中间件平台的命名服务进行。

同一构件标识可以被映射到多个构件实例,从而根据具体情境对某一名字的构件引用导向到不同的构件实例。

反射技术是系统的一种自描述(Self-Representation)

和自推理的技术,它提供了关于自身行为的表示,这种表示可以被检查和调整,且与它所描述的系统行为是因果相联(CausallyConnected)的。

因果相联,意味着对自身表示的改动将立即反映在系统的实际状态和行为中,反之亦然。

将反射性引入中间件能够以可控的方式开放平台内部的实现,从而提高中间件的定制能力和运行时的适应能力。

动态适配机制中比较著名的是CoRBA提供的动态接口服务:

动态调用接口DII和动态骨架接口DSI。

前者支持动态客户请求调用,而后者支持将请求动态指派(Dispatch)给构件。

因此,软件构件化技术使得软件具有良好的构造性,软件演化的粒度更大。

中间件技术则为基于构件的软件动态演化提供了坚实的基础设施和方便的操作界面。

第三部分需要结合作者自身的项目情况进行描述,这部分应是详细描述的部分。

试题三

3、[写作要点]

①论文中要具体介绍项目的总体需求(特别是应用需求中对缓存机制的要求)、系统的逻辑与物理架构、采用的技术等内容和担任的实际工作。

②从不同的用途和应用场景来考虑,大体上可以将缓存分为3种工作模式,即单实例缓存模式(singleInstance)、复制模式(Replication

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1