第10章基于组件开发软件工程.pptVIP

  • 10
  • 0
  • 约7.66千字
  • 约 36页
  • 2018-06-06 发布于湖北
  • 举报
第10章基于组件开发软件工程

第10章 基于组件开发的软件工程 概念 基于组件的开发 基于组件的软件工程(CBSE)过程 10.1 有关概念 组件(Component)也称构件,是比对象更高级的抽象。它是对一组类的组合进行封装,并完成一个或多个功能的特定服务,并客户提供了多个接口。 因此组件是可以被直接复用的、由组件接口与组件实现两部分组成软件实体。 组件技术是应用级别的集成技术,涉及到组件的描述方法、调用方法和运行体系。组件技术的基本思想是将应用软件分解成一个个独立的单元,将软件开发的过程转变成为类似于“搭积木”的搭建过程,通过组装不同的软件组件来实现软件的集成。应用软件的开发就成为各种不同组件的集成过程。 软件技术发展过程: 程序 = 算法 + 数据结构 软件 = 程序 + 文档 模块化(构件化)是软件的规模与复杂性 发展到一定程度时产生的必然结果 关注焦点的不同,形成了不同的技术: 数据与操作的封装 面向对象技术 利用网络计算环境 分布计算技术 利用已经开发出的软件 软件复用技术 不论哪种技术 模块形式及模块之间的协作方式是关键问题 面向对象技术: 对象 对象之间的关联 分布计算技术: 不同节点上的运行程序 及程序之间的通讯 软件复用技术: 软件组件 软件组件的组装 基于组件的软件工程(Component-Based Software Engineering,CBSE)强调使用可复用的组件来建造软件系统。从“实现”系统转向“集成”系统,它改变着软件的开发方式和人们的思维方式。它支持“购买”而非“开发”的思想,真正改变了软件生产模式。可实现下述要求: ? 提供一种手段,使的应用软件可用预先编好的、功能明确的产品部件定制而成,并可用不同版本的部件实现应用的扩展和更新。 ? 利用模块化方法,将复杂的难以维护的系统分解为互相独立、协同工作的部件,并努力使这些部件可重用。 ? 突破时间、空间及不同硬件设备的限制,利用客户和软件之间统一的接口实现跨平台的互操作。 组件的技术的关键涉及组件做什么、构建交互的规则、组件存在的环境等。相应的在实现中有各种支撑性的技术: ? 组件模型。研究组件的本质特征及组件间的关系; ? 组件描述语言。以组件模型为基础,解决组件的精确描述、理解和组装问题; ? 组件分类与检索。研究组件的分类策略、组织模式及检索策略,建立组件库系统,支持组件的有效管理。 ? 组件复合组装。包括源代码级的组装和基于组件对象互操作性的运行级组装; ? 标准化。包括组件模型的标准化和组件库的标准化; ? 软件架构。研究如何快速、可靠的应用可复用组件进行系统构造的方式,着重于系统的整体结构和组件级的关联。 组件模型 组件模型定义了组件实现、文档书写以及部署的标准。这些标准为开发者确保组件的互操作性而设立。最重要的模型有:CORBA、Enterprise Java Bean和COM+。 组件模型的基本要素分类为: ? 组件接口要素:规定如何定义组件接口及其包括的要素,如操作名、参数及异常等。同时还指定接口定义的语言(IDL)。 ? 使用组件的需知信息要素:为使组件远程分布和访问,需要给组件一个特定的名字。 COM+用128位标识符, CORBA和EJB用的是“根”为因特网域名的一个层次化的名字。该类要素中还有反映组件本身接口和属性信息的元数据,以供用户访问。 ? 组件部署要素:定义如何打包为一个可独立执行的实体、何时和如何替换的控制规则。 组件模型不仅是标准,同时还是那些支持组件执行的中间件的基础。操作系统提供了一组可被应用使用的通用服务,组件模型的实现提供了类似的共享的服务给组件。 10.2 基于组件的开发 对于业务和商业系统,可复用的实体从细粒度的函数到整个应用系统,而基于组件的开发为进行系统化的复用创造了机会。 组件有两个关键特性:

文档评论(0)

1亿VIP精品文档

相关文档