基于构件的软件开发课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《基于构件的软件开发课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 构件 软件 开发 课件
- 资源描述:
-
1、1 长期以来的软件开发状况长期以来的软件开发状况 多数软件都是针对某个具体的应用系统从头进行开发的 导致:出现了大量的同类软件重复开发,造成大量人力、财力的浪费,而且软件的质量也不高 对比:汽车工业的生产模式对比:汽车工业的生产模式 在已有的部件基础上通过组装进行生产:有专门的部件生产工厂,汽车设计者在设计中选择市场上已有的合适的部件 避免了大量的重复劳动,提高了产品质量和生产效率,促进分工合作 我们的目标:将制造业中的组装式生产模我们的目标:将制造业中的组装式生产模式引入到软件开发中式引入到软件开发中2 基于构件的软件开发概述基于构件的软件开发概述 建造可复用构件建造可复用构件 应用系统工程
2、应用系统工程 构件的管理构件的管理 小结小结3 建造可复用构件建造可复用构件 应用系统工程应用系统工程 构件的管理构件的管理 小结小结4 基于构件的软件开发基于构件的软件开发 Component-Based Software Development 简称CBSD 是指使用可复用构件来开发应用软件 基于构件的软件工程基于构件的软件工程 Component-Based Software Engineering 简称CBSE5 Pressman书中的定义:构件是某系统中有价值书中的定义:构件是某系统中有价值的、几乎独立的并可替换的一个部分,它在良的、几乎独立的并可替换的一个部分,它在良好定义的体系结
3、构语境内满足某清晰的功能好定义的体系结构语境内满足某清晰的功能 Brown的定义:构件是一个独立发布的功能部的定义:构件是一个独立发布的功能部分,可以通过其接口访问它的服务分,可以通过其接口访问它的服务“计算机科学技术百科全书计算机科学技术百科全书”的定义:软件构的定义:软件构件是软件系统中具有相对独立功能,可以明确件是软件系统中具有相对独立功能,可以明确标识,接口由规约指定,与语境有明显依赖关标识,接口由规约指定,与语境有明显依赖关系,可独立部署,且多由第三方提供的可组装系,可独立部署,且多由第三方提供的可组装软件实体;软件构件须承载有用的功能,并遵软件实体;软件构件须承载有用的功能,并遵循
4、某种构件模型;可复用构件是指具有可复用循某种构件模型;可复用构件是指具有可复用价值的构件价值的构件6 Commercial off-the-shelf 简称简称COTS 指由第三方开发的满足一定构件标准的,指由第三方开发的满足一定构件标准的,可组装的软件构件可组装的软件构件 7 规格说明:建立在接口概念之上,作为服规格说明:建立在接口概念之上,作为服务提供方与客户方之间的契约务提供方与客户方之间的契约 一个或多个实现一个或多个实现 受约束的构件标准受约束的构件标准 包装方法包装方法 部署方法部署方法8 关于构件的一个指导性模型关于构件的一个指导性模型 由构件的三个不同方面的描述组成由构件的三个
5、不同方面的描述组成 概念(concept):关于“构件做什么”的抽象描述,可以通过概念去理解构件的功能。概念包括接口规约和语义描述两部分,语义描述和每个操作相关联(至少表示为前后置谓词形式)内容(content):概念的具体实现,描述构件如何完成概念所刻画的功能 周境(context):描述构件和外围环境在概念级和内容级的关系,刻画构件的应用环境,为构件的选用和适应性修改提供指导9 REBOOT(Reuse Based on Object_Oriented Technology):基于面向对象技术的复用:基于面向对象技术的复用 一种基于刻面一种基于刻面(facet)的模型的模型 刻面:对领域进
6、行分析,所得到的一组基本的描述特征 刻面可以描述构件执行的功能、所操作的数据、构件应用的周境或任何其它特征 通常的刻面描述限制在不超过7或8个刻面 一个构件通常包括以下刻面:一个构件通常包括以下刻面:抽象(abstraction):它是构件概念的抽象性描述 操作(operation):它是构件所提供的操作的描述 操作对象(operand):它描述操作的对象 依赖(dependency):它描述构件与外界的依赖关系10 CORBA(公共对象请求代理体系结构公共对象请求代理体系结构)Common Object Request Broker Architecture OMG发布的构件标准 核心是OR
7、B(Object Request Broker),定义了异构环境下对象透明地发送请求和接收响应的基本机制 COM+微软开发的一个构件对象模型,提供了在运行于Windows操作系统之上的单个应用中使用不同厂商生产的对象的规约 EJB:一种基于:一种基于Java的构件标准的构件标准 提供了让客户端使用远程的分布式对象的框架 EJB规约规定了EJB构件如何与EJB容器进行行交互1112 领域分析:首先要进行领域分析,收集领域中有代表性领域分析:首先要进行领域分析,收集领域中有代表性的应用样本,分析应用中的公共部分或相似部分,抽取的应用样本,分析应用中的公共部分或相似部分,抽取该领域的应用体系结构该领
8、域的应用体系结构 建立领域特定的基准体系结构模型:在领域分析的基础建立领域特定的基准体系结构模型:在领域分析的基础上,构造该领域的基准体系结构,这个基准体系结构应上,构造该领域的基准体系结构,这个基准体系结构应是可以裁剪和扩充的,并可供该领域的应用复用是可以裁剪和扩充的,并可供该领域的应用复用 标识候选构件:在领域分析和领域基准体系结构模型的标识候选构件:在领域分析和领域基准体系结构模型的基础上标识该领域的候选构件基础上标识该领域的候选构件 泛化泛化(generalization)和可变性和可变性(variability)分析:提高分析:提高其通用性,同时寻找候选构件在不同应用中的变化点其通用
9、性,同时寻找候选构件在不同应用中的变化点(variation point),通过设置参数、继承或其它手段,通过设置参数、继承或其它手段,使可变部分局部化使可变部分局部化13 重建构件:在泛化和可变性分析的基础上,重建构件:在泛化和可变性分析的基础上,重建构件,使它成为可复用构件重建构件,使它成为可复用构件 构件的测试:对重建的可复用的构件要严构件的测试:对重建的可复用的构件要严格测试,以提高其可靠性格测试,以提高其可靠性 构件的包装:经测试的构件应根据构件库构件的包装:经测试的构件应根据构件库的要求,对它进行包装,以便构件库对它的要求,对它进行包装,以便构件库对它分类储存和检索分类储存和检索
10、构件入库:包装后的构件即可存入构件库构件入库:包装后的构件即可存入构件库14 建立应用系统的体系结构模型:可以使用构件建立应用系统的体系结构模型:可以使用构件生产者提供的领域特定的基准体系结构经裁剪生产者提供的领域特定的基准体系结构经裁剪和和/或扩充而获得或扩充而获得 寻找候选构件:根据应用系统的体系结构模型,寻找候选构件:根据应用系统的体系结构模型,从构件库或其它可利用的构件源中寻找候选构从构件库或其它可利用的构件源中寻找候选构件件 评价和选择合适的构件:评价候选构件以判断评价和选择合适的构件:评价候选构件以判断是否适合于待开发的软件是否适合于待开发的软件 构件的修改构件的修改(modify
11、)和特化和特化(specialize):在复:在复用时对构件进行特化以满足特定应用的需要用时对构件进行特化以满足特定应用的需要15 开发未被复用的部分:对新系统中未复用开发未被复用的部分:对新系统中未复用的部分进行开发的部分进行开发 构件的组装:将特化和修改后的可复用构构件的组装:将特化和修改后的可复用构件和新开发的部分组装成一个新的软件系件和新开发的部分组装成一个新的软件系统统 集成测试:对组装后的软件系统进行集成集成测试:对组装后的软件系统进行集成测试测试 评价被复用的构件,并推荐可能的新构件评价被复用的构件,并推荐可能的新构件16 对质量的影响:随着长期的测试和使用,对质量的影响:随着长
12、期的测试和使用,构件能够保证很高的质量,因此可以使系构件能够保证很高的质量,因此可以使系统开发的质量得到保证统开发的质量得到保证 对生产率的影响:一般来说,大约对生产率的影响:一般来说,大约30%50%的复用可使生产率提高的复用可使生产率提高25%40%对成本的影响对成本的影响 与复用相关的成本应由多个采用复用技术的项目来分担 通常要经过23个采用复用的生产周期(大约3年左右)复用才能带来显著的效益17 基于构件的软件开发概述基于构件的软件开发概述 应用系统工程应用系统工程 构件的管理构件的管理 小结小结18 建造构件的目的是为了以后复用构件,即建造构件的目的是为了以后复用构件,即为复用而建造
13、构件为复用而建造构件 在建造构件时仍应遵循抽象、逐步求精、在建造构件时仍应遵循抽象、逐步求精、信息隐蔽、功能独立、结构化程序设计等信息隐蔽、功能独立、结构化程序设计等思想和原则思想和原则 由于面向对象方法具有封装性、继承等特由于面向对象方法具有封装性、继承等特点,能有力地支持复用,所以应尽可能考点,能有力地支持复用,所以应尽可能考虑采用面向对象方法虑采用面向对象方法19 构件的设计应具有较高的通用程度构件的设计应具有较高的通用程度 构件应易于调整构件应易于调整 构件应易于组装构件应易于组装 构件必须具有可检索性构件必须具有可检索性 构件必须经过充分的测试构件必须经过充分的测试20 除应遵循已有
展开阅读全文