【软件体系结构】 复习提纲七道题目答案(供参考)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
共1页
1.理解并比较构件分类的三种方法,如何在其中检索构件?每种方法各有什么优缺
点?
关键字分类法:是一种最简单的构件库组织方法,其基本思想是:根据领域分析的结果将应用领域的概念按照从抽象到具体的顺序逐次分解为树形或有向无回路图结构。
优点:简单,易于实现;
缺点:但在某些场合没有应用价值,因为用户往往无法用构建库中已有的关键字描述期望的构建功能或行为,对库的浏览也容易使用户迷失方向;
刻面分类法:主要思想来源于图书馆学,在刻面分类机制中,定义若干用于刻画构件特征的“面”,每个面包含若干概念,这些概念表述构件在面上的特征。刻面可以描述构件执行的功能,被操作的数据,构件应用的语境或任意其他特征。
这种方法的。
优点:易于实现相似构件的查找;
缺点:查询时比较麻烦;
超文本组织方法:其主要思想是所有构件必须辅以详尽的功能或行为说明文档;
说明中出现的重要概念或构件以网状链接方式相互连接;检索者在阅读文档的过程中可按照人类的联想思维方式任意跳转到包含相关概念或构件的文档;全文检索系统将用户给出的关键字与文档中的文字进行匹配,实现构件的浏览式检索。
超文本组织方法为构造构件和重用构件提供了友好,直接的多媒体方式。
优点:由于网状结构比较自由,松散,因此,超文本组织方法比前两种方法更易于修改构件库的结构;
缺点:但在某些情况下用户难以在超文本浏览过程中正确选取构件;
2.详细了解什么是Web服务体系结构?
在因特网上有许多系统和平台,在这些系统和平台上又有更多的应用程序。说得更明白些就是,存在着许多技术,把客户端连接到服务器,这其中包括DCOM、CORBA 和其它各种技术;而Web服务则是在HTTP、XML和SOAP这样的开放标准上形成的,它具有更新和更简单的连接类型
服务注册中心、服务提供者和服务请求者之间的交互和操作构成了Web服务的体系结构。在Web服务模型的解决方案中,服务提供者定义并实现Web服务,使用服务描述语言(WSDL)描述Web服务,然后将服务描述发布到服务请求者或服务注册中心;服务请求者使用查找操作从本地或服务注册中心检索服务描述,然后使用服务描述与服务提供者进行绑定并调用Web服务。服务注册中心是整个模型中的可选角色,它是连接服务提供者和服务请求者的纽带;
Web服务体系结构最重要的优点之一就是允许在不同平台上使用不同编程语言以一种基于标准的技术开发程序,来与其它应用程序通讯;其次具有高度的通用性,易用性和集成性;
第二个答案版本:
Web service是基于HTTP和XML的一种服务,其通信协议主要基于SOAP协议,服务的描述通过WSDL,并通过UDDI来发现和获得服务的元数据。
Web服务就像web上的构件编程,开发人员通过调用web应用编程接口,将web服务集成进他们的应用程序,就像调用本地服务一样。
Web服务的包括五个逻辑层:数据层,数据访问层,业务逻辑层,业务面,监听者。数据层:保存物理数据。
数据访问层:为业务层提供数据。
业务逻辑层:提供业务面使用的服务。
业务面:到底层业务对象的接口。
监听者:接收并解析带有请求服务的信息,发送给业务面相应的方法。
Web服务就外部使用者的角度而言,web服务是一种部署在web上的对象/构件,它具备以下特点:使用标准协议规范,使用协约的规范性,高度集成能力,完好的封装性,松散耦合。
Web服务模型
一个完整的web服务包括三种逻辑构件:
服务代理:起中介作用。是服务的注册构件;
服务请求者:可在应用程序中通过服务代理请求服务,调用所需服务;
服务提供者:提供服务,并进行注册以使服务可用。
相关的操作主要是发布,查找和绑定。
服务提供者向服务代理发布所提供的服务,服务请求者向服务代理发出服务查询请求,最后服务请求者可以编程实现对服务的远程调用。
Web服务开发生命周期包括构建,部署,运行,管理四个阶段。
Web服务栈包括:发现服务,UDDI;描述服务WSDL,消息格式SOAP,编码格式XML,传输协议HTTP等。
Web服务体系结构的优势:高度的通用性和易用性;完全的平台、语言独立性、高度的继承性、容易部署和发布。
Web服务的技术核心:XML可扩展标记语言;解决数据怎么表示的问题。
SOAP简单对象访问协议,解决数据怎么传输的问题。
WSDL web服务描述语言,解决web服务怎么描述的问题。
UDDI统一描述,发现和集成协议,解决在哪里,怎么获
取需要的信息的问题。
3.为什么要引入了软件体系结构?
软件体系结构的引入使软件设计开发更加具体和形象,它的模型更使得软件过程更加方便和多样化。其好处在于:包括程序员在内的绝大多数系统的利益相关人员都借助软件体系结构来进行彼此理解、协商、达成共识或者相互沟通,软件体系机构的模型可以应用到具有相似质量属性和功能需求的系统中,并能够促进大规模软件的系统级复用,在很多方面使得软件开发更加人性化。
第二个答案版本:
目前软件开发的问题日益突出,比如:软件成本日益增长,开发进度难以控制,软件质量差,软件维护困难等。出现这些问题的主要原因有:用户需求不明确,缺乏正确的理论指导,软件规模越来越大,软件复杂度越来越高。大量实践表明,大系统软件开发中的大部分错误是由需求和软件设计阶段引入的,而且错误在系统中存在的时间愈长愈难发现,解决这些错误的代价也越高。软件体系结构的引入,本质上是对软件需求的一种抽象解决方案,它试图在软件系统的需求与系统设计之间建立一座桥梁,实现从系统需求到系统设计的平稳过渡。引入它的好处有很多,包括程序员在内的绝大多数系统的利益相关人员都借助软件体系结构来进行彼此理解、协商、达成共识或者相互沟通,软件体系结构的模型可以应用到具有相似质量属性和功能需求的系统中,并能够促进大规模软件的系统级复用,在很多方面使得软件开发更加人性化。
4.能使用 ADL一个简单系统的体系结构进行描述。
πADL Architechture Specification::=System System_name
[1Type_Specification]
[1Configuration_Specification]
[0+Constraint_Specification]
[End System_Name]
举例:[自行决定是否要看]