第1章软件开发方法三软件开发技术内容摘要:

同编译器实现的构件,可以通过 对象请求代理 ORB进行连接,形成一个跨平台的应用。  CORBA一般有两层意思:一是指对象管理组织 OMG提出的分布式对象体系结构标准;另一层意思是按这种体系结构开发的中间件产品。 CORBA作为一种应用级的互联标准得到了广泛的认同和应用。  CORBA是一套规约,而不是一个产品,开发商可以开发不同的产品来实现 CORBA规约。 例如, IBM公司的ComponentBroker等。 下一页 上一页 停止放映 第 27|83页 OMG  OMG是一个开放标准的非盈利组织,其目标是制定行业标准和对象管理标准,为应用开发提供一个公共框架,推动构件市场的发展。 OMG成立于1989年,目前已拥有会员近千个,包括许多研究机构、大学和大公司,如 IBM, HP等。 下一页 上一页 停止放映 第 28|83页 CORBA的发展  CORBA规约的第一代主要集中在为分布式对象定义一个基础,其核心是 ORB和 IDL。  CORBA ORB互操作性规约 ,主要是基于 TCP/ IP的 IIOP协议(因特网 ORB互联协议)。 1995年。  CORBA COM/CORBA互操作规范。 1997年。  CORBA 对象适配器 POA和 IDL到 Java语言的映射规约。 与此同时, 对象管理体系结构 OMA中增加了领域接口。 1998年。  CORBA CORBA构件模型 CCM(与 COM+和 EJB核心概念相似),提供容器(为构件提供运行环境)作为构件的运行环境,而诸如事务处理、安全处理、事件处理等公共服务都是通过公共 API访问。 2020年。  但是,目前还没有成熟的、完全实现 CORBA。 下一页 上一页 停止放映 第 29|83页 CORBA的主要特征  在 CORBA环境下应用系统间的互联是以对象或程序的调用方式进行的,实现系统间实时互操作。 原则上,一个系统内部能够完成的操作,在系统之间通过 CORBA都可以实现。  CORBA的 OO的特点还保证了各对象的封装性和内部细节的隐蔽性。 这不仅可以简化各种功能的使用,还提高了系统的安全性。  CORBA比较适合于分层结构的应用集成,这一技术比较适合于互联网应用系统核心业务逻辑的应用程序的集成。 此外,由于目前应用服务器大多提供 CORBA接口,这样利用 CORBA技术完成应用程序和平台之间的无缝连接也比较容易。 下一页 上一页 停止放映 第 30|83页 OMA基准模型  CORBA的基准模型是 OMA。 该模型描述了分布式对象系统的基本成分,有四个主要层次: • 对象服务 是一组系统级的对象,为实现和管理对象提供了基本的功能,包括名字、生存周期服务、事务服务、安全服务等。 • 对象请求代理 ORB是核心,它提供了一种机制,使得对象可以透明地发送请求和接受响应。 ORB与对象服务相结合,确保符合 CORBA基准的应用构件之间有效的通信。 • 公共设施 是适用于众多应用领域的通用构件,例如信息管理、系统管理、任务管理和用户界面等。 • 应用对象 是专用于特定领域的应用构件, OMG没有为它制定标准。 下一页 上一页 停止放映 第 31|83页 接口定义语言 IDL  OMG IDL是 CORBA的重要组成部分,是一种严格定义的接口定义语言。 用 OMG IDL编写的接口定义能完整地定义接口,并完备地说明每个操作的参数。 OMG IDL已被 ISO ORB采纳,自 1991年公布以来,基本上没有改变。  OMG IDL是独立于具体编程语言的,一个 IDL文件可以向多种编程语言映射。 CORBA包含 IDL向具体编程语言的映射规约,例如, IDL到 C, C++, Java等的映射。  OMG IDL是独立于平台的,由 IDL定义的接口可以在不同的 ORB和平台上一致地表达。  OMG IDL是一个纯规约,不涉及实现问题, IDL定义的接口不对对象实现进行任何约束。 IDL将客户从对象实现细节中清晰地分离出来,从而更利于软件复用,因此被广泛接受。 下一页 上一页 停止放映 第 32|83页 软件复用技术  软件复用是指在软件开发过程中重复使用相同或相似软件元素的过程。 软件复用是在软件开发中避免重复劳动的解决方案,它使得应用系统的开发不再采用一切从零开始的模式,而是以已有的工作模式为基础,充分利用过去应用系统开发中积累的知识和经验,从而将开发的重点集中于应用的特有构成成分。  为了能够在软件开发过程中重用已有的复用件,必须不断地进行复用件的积累,并将它们组织成复用件库。 因此,软件复用不仅要解决如何检索所需的复用件,还要解决如何选取复用件、如何组织复用件库等问题。 这类项目通常称为软件复用项目。  软件重用过程可借助于支持软件重用的 CASE工具,其主要任务是:用某种组织结构实现复用件库的存储,提供友好的人机界面,帮助用户浏览、检索和修改复用件库,并且对用户感兴趣的复用件进行解释。 下一页 上一页 停止放映 第 33|83页 软件复用方式分类 ⑴ 依据复用的对象分类;可以分为: • 产品复用 指复用已有的软件构件,通过构件集成得到新系统。 产品复用是目前现实的、主流的途径。 • 过程复用 指复用已有的软件开发过程,过程复用依赖于软件自动化技术的发展。 ⑵ 依据对可复用信息进行复用的方式分类,可分为: • 白盒复用 指已有构件并不能完全符合用户要求,需要根据用户需求进行适应性修改后才能使用。 • 黑盒复用 指对已有构件不需作任何修改,通过构件组装的方式直接进行复用。 这是目前的研究热点,也是将来的发展趋势。 下一页 上一页 停止放映 第 34|83页 可复用的复用件 Caper Jones定义了可候选的十种复用件: ⑴ 项目计划 :计划的基本结构和内容(如, SQA计划)。 ⑵ 成本估计 :有可能复用对某个功能的成本估计。 ⑶ 体系结构 :可能创建一组类属的体系结构模板(例如,事务处理体系结构),并将模板作为可复用的设计框架。 ⑷ 需求模型和规约 :类和对象的模型和规约是可复用的,用传统软件工程方法开发的分析模型(例如,数据流图)也是可复用的。 ⑸ 设计 :用传统方法开发的体系结构、数据、接口和过程化设计是复用的候选者,更常见的是,系统和对象设计是可复用的。 ⑹ 源代码 :验证过的程序构件(用兼容的程序设计语言书写的)。 ⑺ 用户和技术文档 :对特定的不同应用,可复用大部分用户和技术文档。 ⑻ 用户界面 :可能是最广泛被复用的(例如 GUI)。 ⑼ 数据 :包括:内部表、列表和记录结构,以及文件和完整的数据库。 ⑽ 测试用例 :一旦设计或代码构件将被复用,相关的测试用例也可复用。 下一页 上一页 停止放映 第 35|83页 建立复用途径的一些建议 ⑴ 建立内部的软件复用计划。 这样一个计划可以帮助组织控制软件的质量和成本。 ⑵ 要求将软件复用作为任何技术和管理培训的内容。 对 OO的培训尤其应该如此。 ⑶ 按照内部的软件复用计划,寻求对软件复用有积极贡献的工具和库。 ⑷ 鼓励采用已被证明为可以促进软件复用的方法和工具。 ⑸ 跟踪并测度软件复用以及软件复用的影响;应客观评价,而不是主观臆测。 ⑹ 管理上必须积极地鼓励软件的复用。 ⑺ 认识除 “ 模块 ” 外,工具、测试数据、设计、计划、环境及其他软件均可复用。 ⑻ 最重要的是认识到软件复用不是 “ 平常的业务 ” ,大多数技术和管理人员是不接受软件复用的概念的。 下一页 上一页 停止放映 第 36|83页 软件复用面临的问题 ⑴ 管理问题。 没有相应的鼓励机制等。 ⑵ 复用的障碍。 ⑶ 技术方面的问题 ⑷ 法律问题  显然,很多其他相关问题对复用也有影响,政治的、文化的、财政的、市场的、以及产品化等方面的问题也必须考虑。 下一页 上一页 停止放映 第 37|83页 复用的障碍  自负;太多的开发。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。