第10章 软件复用技术(10.3-10.6)

合集下载

浅析软件复用技术

浅析软件复用技术

浅析软件复用技术作者:王茂蛟来源:《电脑知识与技术·学术交流》2008年第14期摘要:软件复用是将已有的软件及其有效成分用于构造新的软件或系统软件,是提高软件质量和生产效率的的基本途径。

本文主要介绍软件复用的基本概念、分类,软件复用技术以及基于复用的软件开发过程。

关键词:软件复用;软件复用技术;基于复用的软件开发过程中图分类号:TP311文献标识码:A文章编号:1009-3044(2008)14-20940-021 软件复用的概念所谓软件复用是指重复使用“为了复用目的而设计的软件”的过程。

而可复用软件则是指为了复用目的而设计的软件。

软件复用更强调的是复用的目的。

它是一种系统化的方法,为了复用而进行设计。

为了复用而开发。

并且要有效地组织和管理这些复用产品。

方便人们查找和使用。

基于复用产品进行开发。

由此可见。

并非所有重复使用软件的行为都是软件复用过程。

例如:重复使用“并非为了复用目的而设计的软件”或在一个应用系统的不同版本间重复使用代码。

这两类行为都不属于严格意义上的软件复用。

软件复用一定要有积累。

首先要为了复用目的设计很多的复用产品,有了一定的积累后才能进行软件复用。

2 软件复用的分类软件复用就是将已有的软件成分用于构造新的软件系统,它不仅仅是对程序的复用,它还包括对软件生产过程中任何活动所产生的成品的复用。

按抽象程度的高低,可以划分为如下的复用级别:2.1 代码的复用包括目标代码和源代码的复用。

当前大部分编程语言的运行支持系统都提供了连接、绑定等功能来支持目标代码的复用。

源代码的复用级别略高于目标代码的复用,程序员在编程时把一些代码段复制到自己的程序中,但这样往往会产生一些新旧代码不匹配的错误。

要想大规模的实现源程序的复用只有依靠含有大量可复用构件的构件库。

比如“对象链接及嵌入”(0LE)技术,既支持在源程序级定义构件并用以构造新的系统,又使这些构件在目标代码的级别上仍然是一些独立的可复用构件,能够在运行时被灵活的重新组合为各种不同的应用。

软件复用

软件复用
火龙果整理
复用技术对oo方法的支持
面向对象的软件开发和软件复用之间的关系是相辅 相成的。一方面,00方法的基本概念、原则与技 术提供了实现软件复用的有利条件;另一方面,软 件复用技术也对面向对象的软件开发提供了有力的 支持。
面向对象技术通过方法、消息、类、继承、封装和
实例等机制构造软件系统,并为软件复用提供强有 力的支持。很多面面向对象语言为应用程序开发着
火龙果整理
(3)分析的复用
这是比设计结果更高级别的复用,可复用的分析 构件是针对问题域的某些事物或某些问题的抽象程 度更高的解法,受设计技术及实现条件的影响很少, 所以可复用的机会更大。复用的途径也有三种,即 从现有系统的分析结果中提取可复用构件用于新系 统的分析;用一份完整的分析文档作输入,产生针 对不同软硬件平台和其它实现条件的多项设计;独 立于具体应用,专门开发一些可复用的分析构件。
火龙果整理
小例子:
一位程序员编写了一些排序程序,通过 不同的参数传递来实现多次调用; C程序员编写了解三角方程的程序,整 个程序共调用了12次正弦函数; 一位Ada程序员编写了一个一段模拟程 序,涉及处理队列和一个处理器数组, 为此查找通用Ada队列和数组程序包, 并将其插入运行Ada环境中,并实例化 队列两次(就绪队列和阻塞队列),实 例化数组一次(处理器数组)。
火龙果整理
按照重用活动所跨越的应用领域类型可以分为横 向复用和纵向复用两种类型。
•横向复用:也成为水平重用,是指复 用活动范围跨越了几个不同应用领域, 如数据结构、算法、人机界面构件等。 •纵向复用:也称为垂直重用,是指重 用活动的范围限制在同一个应用领域或 者是一类具有较多共性的应用领域内。
确定同义词
复审
计算机及信息工程学院Copyright10

《软件复用技术》课件

《软件复用技术》课件

缺点
需要建立统一的组件规范 和技术标准,实现难度较 大。
面向对象编程
面向对据和操作封装在对象中。
优点
02
提高代码的可维护性和可重用性,支持软件进化和发展。
缺点
03
增加了编程的复杂度,可能过度设计。
03 软件复用的实施方法
抽象与泛化
抽象
通过忽略对象的次要细节和具体实现 ,将具有共同特征的对象归纳为更高 级别的概念或类别。
3
跨平台的可移植性
开源软件中的复用技术具有良好的跨平台可移植 性,使得软件应用程序可以在不同的操作系统和 平台上运行。
05 软件复用技术的发展趋势
基于云计算的软件复用
总结词
云计算技术为软件复用提供了更高效、灵活和可扩展的平台。
详细描述
云计算技术通过虚拟化、分布式计算和自动化管理等技术手段,使得软件复用变得更加高效和灵活。 基于云计算的软件复用可以实现跨地域、跨平台的资源共享和协同开发,提高了软件的开发效率和可 维护性。
设计模式与重构
设计模式
针对常见问题的解决方案模板,提供了一种可重用的设计结构。
重构
对代码进行修改和调整,以提高可读性、可维护性和可扩展性,同时保持原有功 能不变。
04 软件复用的应用场景
软件开发过程中的复用
提高开发效率
促进技术积累
通过复用已有的代码和组件,可以减 少开发时间和成本,提高开发效率。
《软件复用技术》 PPT课件
目录
• 软件复用技术概述 • 软件复用的技术手段 • 软件复用的实施方法 • 软件复用的应用场景 • 软件复用技术的发展趋势 • 软件复用技术的挑战与解决方案
01 软件复用技术概述
软件复用的定义

软件复用技术

软件复用技术

论使用复用设计1、引言复用是活动,而不是对象.在创建软件相关的系统的语境中,复用仅仅是非常简单的任何过程,该过程通过复用来自以前开发工作的某些东西来生产(或帮助生产)一个系统。

那么,唯一的问题是:复用什么、什么是导致成功复用的过程。

在软件工程的范围内,复用既是旧概念,也是新概念。

程序员从最早的计算时代已开始复用概念、对象、论据、抽象和过程,但是我们复用的途径是特定的。

本文对软件复用的讨论,将从以下四个方面进行:1)软件工程师可以获得一系列可复用的软件制品,这些包括软件的技术表示(例如,规约、体系结构模型、设计和代码)、文档、测试数据,甚至包括过程相关的任务(如,检查技术)。

2)复用过程包括两个并发的子过程:领域工程和软件工程。

领域工程的目的是在特定应用领域中标识、构造、分类和传播一组软件制品。

然后,软件工程可在新系统开发中选取这些软件制品作为复用。

3)构件复用为软件质量、开发者生产率、以及整个系统成本带来了固有的收益,然而,在复用过程模型被广泛地用于软件产业前,必须克服很多障碍.4)对可复用构件的分析、设计技术采用和在良好的软件工程实践中使用的相同原则和概念。

可复用构件应该在一个环境中设计,该环境为每个应用领域建立标准数据结构、接口协议和程序体系结构。

2、可复用的软件制品软件复用不仅仅涉及源代码,但是,还涉及多少东西呢?CaperJones定义了可作为复用候选的十种软件制品:项目计划。

软件项目计划的基本结构和许多内容(例如,SQA 计划)均是可以跨项目复用的。

这样减少了用于制定计划的时间,也减低了和建立进度表、风险分析和其他特征相关的不确定性.成本估计.因为经常不同项目中含有类似的功能,所以有可能在极少修改或不修改的情况下,复用对该功能的成本估计。

体系结构。

即使当考虑不同的应用领域时,也很少有截然不同的程序和数据体系结构.因此,有可能创建一组类属的体系结构模板(例如,事务处理体系结构),并将那些模板作为可复用的设计框架。

软件复用

软件复用
软件复用
浙江大学计算机系软件所
吴明晖
Email: minghuiwu@
1
软件复用
• 人们开始认识到,要真正实现软件的工业化生 产方式,保证软件生产的高效率和高质量,软 件复用是一条现实可行的途径 • 软件复用的概念是在1968年NATO软件工程会 议上由Mcllroy第一次提出的 • 所谓软件复用是指在开发新的应用系统时使用 以前开发的软件资源,如设计、代码、文档 等,从而提高系统开发效率及软件质量
17
复用带来了软件开发过程的变革
• 由于复用活动的存在使得传统的软件生 存期模型不再适用,软件开发过程分为 两个相互关联的过程,即开发可复用资 源的过程和根据可复用资源开发应用系 统的过程,REBOOT计划中将其称为 DEVELOPING FOR REUSE 和 DEVELOPING WITH REUSE
7
过程复用
• 过程复用指通过采用自动化技术,复用关于软 件系统生成或变换的知识,从而使得可以从需 求描述出发,通过生成或变换,自动生成最终 所需的系统,应用生成器、程序变换器和可执 行规约语言均是过程复用的例子。 • 完全通用的过程复用意味着软件生产的自动 化,这在目前还是不现实的想法,因此过程复 用难度大、投资大、不易实施。 • 当前过程复用的实践大多和领域相关,如特定 领域的应用生成器。过程复用是非常理想的软 件复用方式,但在目前技术发展水平下,仍是 难以企及的目标,产品复用成为主要的研究课 题。
• 概念:关于“构件做什么”的抽象描述,可以通过概念 去理解构件的功能。概念包括接口规约和语义描述两 个部分,语义描述和每个操作相关联(至少表示为前 后置谓词形式)。 • 内容:概念的具体实现,描述构件如何完成概念所刻 划的功能。 • 语景:描述构件和外围环境在概念级和内容级的关系。 语景刻划构件的应用环境,为构件的选用和适应性修 改提供指导。语景进一步可分为:概念语景 (Conceptual Context)描述构件间接口和语义方面的 关系;操作语景(Operational Context)刻划构件中被 操作数据的特征(如类型和操作);实现语景 (Implementation Context)描述构件间在实现方面的依 赖关系。

第10章 软件复用技术(10.1-10.2)(1)

第10章   软件复用技术(10.1-10.2)(1)
复用支持组的建立;
(承担可复用软件制品的建立、获取、验证、分类和管理)
复用库的创建;
(复用库用来对可复用软件制品进行分类、组织、存储和管理 )
复用驱动的方法支持。
(一方面指导可复用制品的建立人员识别复用机会和侯选的可复 用制品,并建立一个可复用制品,另一方面指导应用软件开 发人员寻找可复用制品,并利用它们组装成新的应用。 )
领域工程和应用工程是相互联系的
一方面,领域工程的主要信息来源是通过应用 工程得到的现有系统,包括需求规格说明、设 计、实现等。
另一方面,领域工程和应用工程需要解决一些 相类似的问题,如:如何获取并表示用户需求? 如何设计并表示设计模型等。
领域工程要适用于一族系统,而不只是一个系 统。因此,领域工程比应用工程要复杂,往往 不能事先设计划好,也很难实施管理。
10.1.3 软件复用的内容
软件复用的内容,除了源程序代码外,还 有许多其它软件制品,甚至特定的分析建 模方法、检查技术、质量保证过程等,均 可以被复用。
C.Jones定义了10种可能复用的软件制品: 项目计划、成本估计、体系结构、需求模 型和规格说明、设计、源代码、用户文档 和技术文档、用户界面、数据、测试用例。
) 一致性,维护领域模型。
领域工程参与人员
领域设计人员
(控制整个领域设计过程,根据领域模型和现有的系统开
发出DSSA,验证DSSA的准确性和一致性,建立领域模
10.2.3领域工程参与人员
领域专家
(任务:提供关于领域中应用系统的需求规约和实现的知识,帮助
组织规范的、一致的领域字典,帮助选择样本系统作为领域工程
) 的依据,复审领域模型、DSSA等领域工程产品,等等 领域分析员
(控制整个领域分析过程,进行知识获取,将获取的知识组织到领

软件复用技术及其在软件开发中的应用

软件复用技术及其在软件开发中的应用

软件复用技术及其在软件开发中的应用
朱祺
【期刊名称】《信息与电脑》
【年(卷),期】2017(000)023
【摘要】在我国科技持续更新、不断发展的背景下,计算机软件技术水平也日益提高,一些陈旧的软件开发技术已无法满足现如今复杂多变的应用需求,而软件复用技术的发展可以使软件开发的效率以及质量得到进一步的提升.软件复用技术是在软件规模性开发的时代提出的,是在结构化编程和构件技术的背景下所产生的,它在一定程度上提高了软件开发的质量以及实现对开发过程的科学管理,并且大大降低了软件开发的成本.为此,将对软件复用技术在软件开发中的应用展开探讨.
【总页数】3页(P14-15,19)
【作者】朱祺
【作者单位】常州工程职业技术学院,江苏常州 213164
【正文语种】中文
【中图分类】TP311.52
【相关文献】
1.软件复用技术及其在软件开发中的应用 [J], 林雪海
2.软件复用技术在工业控制设备软件开发中的应用 [J], 林明涛
3.浅谈软件复用技术的教学软件开发中的应用 [J], 张健
4.软件复用技术及其在软件开发中的应用 [J], 冯厚伟;杜鹏宙;刘勇;
5.软件复用技术在工业控制设备软件开发中的应用 [J], 林明涛
因版权原因,仅展示原文概要,查看原文内容请购买。

第10章软件复用方案

第10章软件复用方案

编码与测试
中南大学医药信息系
软件复用的困难
复用具有许多明显的优点,但目前应用不广泛的主要原因是: (1)技术因素
构件与应用系统之间的差异; 构件要达到一定的规模,才能支持有效的复用; 发现合用构件的困难; 基于复用的软件开发方法和软件过程需要一些新的理论、技 术及支持环境。
(2)人的因素 喜欢自己创造而不喜欢使用别人的东西。
(2)构件检索
构件库中检索一个构件和在数据库中检索一个记录是不同 的。
构件库检索的不确定性带来两种相互矛盾的结果:检索的 结果可能是一个较大的构件集合,要从中找到所需的构件仍然 很费力;检索得到的集合没有把真正需要的构件包括在内。
解决方法:
(一)一般构件库系统能对提出的检索条件作广义解释。 建立同义词对照表,例如“商品销售”、“售货”、“卖
应用 软件
构件工程
测试
2. 软件复用的措施
软件复用的重要性
目的:能更快、更好、成本更低地生产软件产品。
实现软件复用应优先采取的措施:
建立支持复用的基础设施(如构件库)。 培训工程师和管理者使用复用软件。 采用促进软件复用的开发方法(如面向对象的开发
方法)。 企业内部采取激励措施。
管理信息系统
第10章 软件复用
中南大学医药信息系
主要内容
1. 软件复用的基本概念 2. 领域工程 3. 基于构件的软件开发 4. 面向对象与软件复用
编码与测试
中南大学医药信息系
10.1 软件复用的基本概念
1. 软件复用的定义
Freeman (1983年) : “在构造新的软件系统过程中,对已存在的软件
输入信息
技术文献 已有应用 专家经验/建议 当前与未来的需求

Part2_Chap10 OOA与软件复用2014-03-27

Part2_Chap10 OOA与软件复用2014-03-27
领域构架及构件
构件/构架库
共性 / 特性分析
问题域 用户需求
可复用的用况
定义用况
类、结构 和包构件
构件提取与 特化
构架 特化
发现对象
定义属性和操作
OOA模型组装
可复用的辅助模型
辅助模型
可复用的模型规约
建立模型规约
1)从构件的开发到构件的存储与管理都比较容易,而且构件
的使用频率和检索效率都会明显地提高。 2)在专向领域的复用中,共性更多,可复用构件的粒度可以 更大。 3)专向领域的复用,还将在更重要的方面使软件复用得到更 高水平,如软件构架。
10.2 专向领域的复用及领域分析
10.2.1 可复用的软件构架
在同一个领域的应用系统之间,不但可以找到共同的软件构
专用构件开发 分析、设计、编程、测试
可复用构件
问题域
用户需求
系统测试
应用系统
10.3 OOA对软件复用的支持
10.3.1 支持软件复用的OO概念与原则
(1)对象和类
(2)抽象
(3)封装 (4)继承与一般-特殊结构 (5)聚合与整体-部分结构 (6)粒度控制 (7)多态性
10.3 OOA对软件复用的支持
10.3.2 支持软件复用的OO方法
与其他软件工程方法相比,面向对象方法的一个重要优 点是:它可以在整个软件生命周期得到概念、原则、术语及 表示法的高度一致。
(1)OOA模型
(2)OOA与OOD分工
(3)对象的表示 (4)一般-特殊结构 (5)整体-部分结构 (6)关联 (7)模型规约 (8)用况
10.4 复用技术对OOA的支持(1)
10.1.1 概述(0 软件复用基本概念)
软件复用 (Software reuse)是将已有软件的各种有关知

软件复用技术的分析复用

软件复用技术的分析复用

全国分站北京上海广州深港南京福建沈阳成都杭州西安长春重庆大庆合肥惠州青岛郑州泰州厦门淄博天津无锡哈尔滨手机电脑数码家电硬件外设企业办公游戏手机安极4GWP专区配件移动电源笔记本超极本平板一体机台式机商用工作站知本家可穿戴相机摄像机单电单反海极社行摄频道GPS潮生活国产平板电视冰箱洗衣机空调净化器盒子厨卫投影生活家电CPU主板显示器音频机电键鼠显卡内存硬盘服务器信息化开发办公打印网络设备商喷方案云计算游戏手机游戏下载游戏硬件动漫网页游戏编程非常有趣,在于它不仅满足了我们内心深处进行创造的渴望,而且愉悦了每个人的内在情感。

但它也是一个许多人痛苦挣扎的焦油坑以及一种乐趣和苦恼共存的创造性活动,对许多人而言,其中乐趣远大于苦恼。

An———— FREDERICK P . BOORKS 《人月神话》摘要:复用即软件复用,是今年来被越来越多程序员重视的技术。

本文通过对软件复用技术的分析,介绍了复用技术在提高软件效率、减轻软件开发压力方面的作用。

软件复用的定义软件复用(或软件重用)是指充分利用过去软件开发中积累的成果、知识和经验,去开发新的软件系统,使人们在新系统的开发中着重于解决出现的新问题、满足新需求,从而避免或减少软件开发中的重复劳动。

软件复用可分为产品式复用和生成式复用。

产品式复用是指对软件开发中中间制品(程序代码,各阶段中的文档或模型,测试用例等)的复用,其实现途径关键是将可复用的程序代码组装(或集成)而生成软件应用系统,因此产品式复用亦称组装式复用;生成式复用主要是将软件的需求进行规约化(或形式化)描述,然后利用可复用的应用程序生成器自动或半自动地生成所需的软件系统。

目前组装式复用是软件复用的主流方式。

在目前主流复用技术中,有一个关键性的名词:软件构件,复用技术中的代码复用过程主要是依赖软件构件来实现复用的。

软件构件(也称软件组件)是软件系统内可标识的、符合某种标准要求的构成成分,类似于传统工业中的零部件。

软件的复用技术及开发方法

软件的复用技术及开发方法

软件的复用技术及开发方法软件的复用技术及开发方法2.1软件的复用技术软件复用是指在开发新的软件系统时,对已有的软件或软件模块重新使用,该软件可以是己经存在的软件,也可以是专门的可复用组件〔8〕。

软件可复用性的高低影响到生产效率的高低、软件质量的好坏和系统可维护性的好坏。

在软件工程中面临的问题不是缺乏复用,而是缺乏广泛的、系统的复用。

软件复用包括构造可复用软件和用可复用软件进行构造。

构造可复用软件,一方面可以从现存的软件系统中抽取,另一方面通过改写或重新设计来实施。

Jones将软件复用的对象分为4种数据复用、体系结构复用、设计复用和程序复用。

这样,软件复用可在实现层、设计层和体系结构层三个层次上实现。

实现层软件复用是指对己有的程序代码进行复用,它包括源代码组件形式。

设计层软件复用是指对已有的软件系统的设计信息进行复用。

而体系结构层软件复用是最有效的软件复用,它主要是软件体系结构形式化的复用,即将软件的框架组织,全局结构设计作为复用对象。

可复用的软件体系结构则通常是显式地复用软件体系结构,并通过集成其他软件体系结构,建立新的更高层次的体系结构。

面向对象的软件复用机制主要有两种:继承和对象组合。

(1)继承继承是指子类可以从父类中直接获得某些特征和行为的能力,继承可作为代码复用和概念复用的手段。

作为代码复用的手段是指:子类通过继承父类的行为,一些代码就不必重写;作为概念复用的手段是指:子类共享父类的方法定义。

作为代码复用和概念复用手段的继承机制,在面向对象技术中,通过面向对象技术的一些主要机制来实现对“支持可维护性的可复用性”的支持。

这些面向对象的主要机制是:数据的抽象化、封装和多态性。

通过运用这些机制,继承可以在高层次上提供(相对于传统的低层次复用)可复用性:数据的抽象化和继承关系使得概念或定义可以复用;多态性使得实现和应用可以复用;而抽象化和封装可以保持和促进系统的可维护性。

这样一来,复用的焦点不再集中在函数和算法等具体实现细节上,而是集中在最重要的含有宏观商业逻辑的抽象层次上。

浅析软件复用技术

浅析软件复用技术

浅析软件复用技术摘要:可复用的软件技术,已经成为大多数程序员不断使用的技术,也出现了专门以提供构件服务的供应商,它已经不再是一种单一的技术,而成为软件产业中的重要生产力、推动力,它不仅减轻了软件开发的重负,也开辟了软件产业链中的新方向。

关键词:软件复用;研究;发展本文简单介绍了软件复用研究的发展与软件复用的主要技术,进而研究了软件复用技术发展的新趋势,特别对软件复用技术研究的最新特点—软插件与软总线模型及其在分布环境中的应用前景进行讨论.1、软件复用的定义我们以前在提起软件复用时,往往把其简单的看作是一种节约企业软件作业的工作量的一种手段,而实际上,软件复用的展开还是提升软件质量的最有效的方式:一个软件模块在得到多次复用之后,其可靠性会不断的提高,软件的出错概率也会越来越低,当然相应的质量风险会越来越小,你的软件也就更加具有竞争力。

而规模化的成本效益和质量也正是产品化软件的最核心的价值所在。

软件构件是软件系统内可标识的、符合某种标准要求的构成成分,类似于传统工业中的零部件。

以上为软件复用过程的直观示例图。

复用成分的管理完成对复用成分库的组织,以期能够有效地组织和扩充软件复用成分.复用成分的实施利用是获取和管理的目的.其过程包括根据要求选择抽象的可复用成分,并对其进行适应性修改,以将其集成到现行开发的软件系统中去。

2、软件复用技术的历史与现状软件复用的历史,大致可划分为萌芽期、发展期和初步实用期3个历史时期。

代末到代末,软件复用技术迅速发展成为软件工程的一个重要的应用领域但由于注意力放在如何收集、提炼和改造软件系统构件上,而忽略了其他方面的问题,以致进展缓慢. 代起,人们不仅已认识到软件复用问题涉及多方面的知识,如软件工程知识、应用领域知识、人类工程学知识和人工智能知识,而且还认识到在软件复用实施中管理因素的重要性这一时期,软件复用在子程序库、报告生成器、编译器等方面都取得了长足进展.同时,人们已对何为软件复用有了一个非形式化、不够完整的概念;对复用信息的提炼、组织和存储进行了初步探讨;已经理解了软件的组装技术及基于对象的设计技术等,但上述理解仍是非形式化的,人们仍不能以任何系统化途径实现复用.这一时期被称为发展期.代后期至今,软件复用领域取得一些实用成果,软件复用进入初步实用期.各厂商开发了许多支持复用的软件系统,如Toshiba的软件工厂, Draco, Genesis系统等.从实现角度看, 代以前,软件复用主要以采用非面向对象技术来实现,复用的效果则主要以软件生产率和软件质量为标准来加以衡量.下图为软件复用技术的现状。

《软件工程》教学课件11软件复用和构件技术

《软件工程》教学课件11软件复用和构件技术
2005.01.10 SOFTWARE ENGINEERING
基于构件的开发
基于构件的开发是指使用可复用构件组 装开发新的应用系统. 装开发新的应用系统. 基于构件的开发由构件的鉴定, 基于构件的开发由构件的鉴定,构件的 调整和构件的组装组成. 调整和构件的组装组成.
2005.01.10
SOFTWARE ENGINEERING
基于构件的开发
构件的鉴定: 构件的鉴定:对打算用于软件开发的构件能 否满足应用的需要, 否满足应用的需要,能否达到应用所需要的 性能,可靠性, 性能,可靠性,质量的要求而进行的相应考 察和鉴别工作. 察和鉴别工作. 构件的调整:根据构件使用的环境, 构件的调整:根据构件使用的环境,对构件 进行必要的调整和修改以满足软件, 进行必要的调整和修改以满足软件,硬件环 境和具体应用的需要. 境和具体应用的需要. 构件的组装: 构件的组装:将经过鉴定和调整的构件集成 到应用系统中去. 到应用系统中去.
2005.01.10 SOFTWARE ENGINEERING
软件复用
把复用的思想用于软件开发,称为软件 把复用的思想用于软件开发, 复用. 复用. 据统计,世上已有1000亿多行程序,无 据统计,世上已有1000亿多行程序, 1000亿多行程序 数功能被重写了成千上万次, 数功能被重写了成千上万次,真是极大 的浪费. 的浪费. 面向对象( Oriented) 面向对象(Object Oriented)学者的 口头禅就是" 口头禅就是"请不要再发明相同的车轮 子了" 子了" .
2005.01.10 SOFTWARE ENGINEERING
软件构件技术的技术规范
工业界中最具有代表性,使用最为广泛 工业界中最具有代表性, 的构件技术规范主要有三种: 的构件技术规范主要有三种: 微软公司的构件对象模型(DNA) 微软公司的构件对象模型(DNA) 对象管理组织(OMG)的公共对象请 对象管理组织(OMG) 求代理体系结构(CORBA) 求代理体系结构(CORBA) SUN公司的EJB(Enterprise Java SUN公司的EJB( 公司的EJB Bean) Bean)

河海大学研究生课程【软件复用技术】软件体系结构

河海大学研究生课程【软件复用技术】软件体系结构
• 典型实例: – Windows 的消息机制
• 9、Other Familiar Architecture
• 10、Heterogeneous Architecture
(1)异构是不可避免的 不同风格的结构适合于不同的应用场合 新系统需要和老系统协调工作
(2)异构体系结构的复合 层次式 以某种体系结构实现的系统,其组成部分 内部可以是另一种体系结构,其连接部分 内部也可以具有体系结构。 对等式 系统以一种体系结构实现一个子系统, 以另外一种体系结构实现另一个子系统
是研究热点,尚未进入成熟阶段 “一门出露端倪的学科” 《Software Architecture》
• 4、目前研究热点
1)软件体系结构描述语言ADL 2)体系结构构造 3)软件体系结构分析、设计、验证 4)软件体系结构发现、演化与复用 5)基于体系结构的软件开发方法研究 6)特定领域的体系结构DSSA 7)软件体系结构支持工具
(2)风格是一种类型系统 Component(构件) Connector(连接器)
(3)风格是一种理论 由公理和推论组成的集合 管道=》两个端点(读、写)
过滤器=》输入断口、输出断口
• 体系结构风格定义了在结构组织中模板阶段的系列; • 体系结构风格定义了:
–构成元素和连接器类型的词汇; –它们如何组合的约束; –一个或多个指明系统的全部属性能够被它的部分属性决定的语义模型;
–包, 子系统
• 其它元素
–符号
• (2)关系 • 依赖 • 关联 • 一般化 • 实现 • (3)扩展机制 • 套用类型 • 特征值 • 约束 • (4)模型,视图,和图表 • (5)图表 • 图表是模型的视图
–表现给投资者看得详细的描述; –提供了系统的局部详细描述; –和别的视图保持语义一致;

软件复用技术的分析与研究

软件复用技术的分析与研究
外再 开发 一个 。 ( )管 理原 因 三 在软 件管 理 中, 从原来 的 使用 与一 些与 复用 的 目标很 不 协 同 的规 则 ,如计 算 工作 量时 ,对 复用 的部 分打 不少 的折 扣 ,有 时候
( )领 域工 程简 介 一 领 域 工程 是实 现大 规模 ,系统 化软 件复 用关键 技 术之 一 。针
计算 机光 盘软 件 与应用
工 程 技 术 C m u e D S fw r n p lc t o s o p t r C o t a e a d A p i a i n 2 1 第 5期 0 1年
软件复用技术的分析与研究
付 明 柏
( 昭通师 范高等专科 学校 ,云南昭通

c n t c e s f r , e a a l o rp y t s .h o t r e s o ny i s ep o e u e e li gi s l icu e o s u t w o waet nC c l t e l u eT es f r n t h n o wa eru en t l s ou et t r c d r ’ rp yn , t l n l d o t oh S t i
1 构 件 的鉴定 .
构件 的鉴 定是对 打算 用于 软件开 发 的构件 能否满 足应用 的需 要 ,达到 应用所 需要 的性 能、可 靠性 、质 量 的保 证进 行相应 的考
先级:
大 多数 的构件分 类模 式可 以归纳 为 以下三种 类型 : 察。 1枚举 分类 . 2 构件 的调整 . 通过 定义一 个层 次结 构来对 构件 进行 分类 。构件 库 中的可 复 通 常在将 构件 复用 到应 用 中时,构 件需 要进行 必要 的调整 和 用构 件按照 某种 标准 被分成 了若 干个 大类 ,而每 个大 类 中的构件 修 改才 能适应 应用 的需要 。 再被 划分成 若干 个小 类 ,依 此类 推 ,这样就 形成 了一 个构件 分类 3 构件 的组装 . 的层 次结构 : 构件 的组 装是将 经过 鉴定和 调整 以后 的构件 组装 到应用 系 统 中。通常 为 了达到此 目的,还 必须建 一个 基础 设施提 供构件 协 同 的模 型和 使构件 能够 交互 并完成 共 同任 务 的特定服 务 。 在 同一个领 域 的应 用系 统之 间 ,不但 可 以找到其共 同的软件 构件 ,而且 可 以发现共 同 的或相 似的 软件体 系结 构 。专 向领 域 的 复用 开拓 了一种 新的 复用境 界 ,被复用 的不 仅是 可实现 某种 局部 功能 的软件 构件 ,而且 可 以是一 些形成 系统 总体 结构 ,并把 各个 可复用构 件连 接到 一起 的软件 构架 。 电子产 品的主 电路板 可看 成 该产 品可 复用 的构 架 ,它把许 多可 复用 的 电子 器件 连接 在一起 。 软件 构架 是 一种 由特 定领 域 的软件 体系 结构所 决定 的软件 构造 框 2刻 面 分类 . 架。 个 刻 面描述构 件某 一 个方 面的特 征 。刻 面 分类则 是从不 同 四、 小结 的侧 面对 构件进 行分 类 ,每一 种分 类方 式称 为一个 刻面 。不 同的 复用 的过程 里有 两个处 于并 发状 态 的子 过程 :领域 工程 以及 刻面 根据 其重 要性可 以设置不 同 的优先 级。对 构件 的每个 刻面 赋 软件 工程 。首先 ,领域 工程 是在 一个特 殊环 境 内标识 、构造 、分 予相 应 的值 ,用 以描 述 该构件 。刻 面分类 具有 较好 的灵 活性 ,易 类 和传 播一 组软 件制 品 。然 后 ,软件工 程可 在新系 统开 发 中选 取 于加 入新 的刻面值 , 因此 刻面 分类 比枚举 分类更 易于 扩展和 修改 。 这 些软 件制 品作 为复用 。对 可复用 构件 的分 析 、设 计技 术采用 和 该方法 首先 是为 构件库 中的所有 构件定 义 一组属 性 ,并赋 予 在 良好 的软件 工程 实践 中使用 的相 同原 则和概 念 。可复用 构件 应 相应 的属性 值 。开发人 员通 过指 定一 组属性 值在 构件库 中对 构件 该在一 个环 境中设 计 , 该环 境为 每个应 用领 域建立 标准 数据 结构 、 进行检 索 。 接 口协议 和程序 体系 结构 。 3 属性一 分类 . 值 五 、结束语 该方 法 首先是 为构件 库 中的所 有构 件定义 一组 属性 ,并赋 予 软件产 品也是一 种精神 的创造产 品 ,它 的出现几 乎完 全是人 相应 的属 性值 。开 发人 员通过 指定 一组 属性值 在构 件库 中对构 件 脑思 考 的产 生 ,它 的存在价 值 ,也几 乎完 全在 于其 中所产 生的 思 进行 检索 。 想 ,人 脑所 能达 到 的复杂程度 ,比人类 制造 的客观 物质 产 品更加 该分类 方法 与刻面 分类 方法 有几 点不 同之处 : 复杂 ,因此 ,采用 软件 的复 用技术 更 为困难 和不 易 。这些和 很多 ( )属性 的数量 没有 限制 ,而刻 面描 述一 般 限制 在 7或 8 1 其 他 问题还 在继 续 困扰 研究 者和产 业专 业人 员 ,他 们 正在努 力使 个刻 面 ; 软件构 件复用 成为 主流 的软件 工程 方法 。 () 2 属性 没有优 先级 , 刻面根 据其 重要 程度 ,有相应 的优 而 参考 文献

第10章 软件复用技术(10.3-10.6)

第10章   软件复用技术(10.3-10.6)
10.3 组件技术概述
我们能如此开 发软件吗?
10.3.1 组件的定义与复用


组件(Component),亦称构件,是指语义完 整、语法正确和有可重用价值的单位软件,它 是语义描述、通信接口和实现代码的复合体。 简单地说,组件是具有一定的功能,能够独立 工作或能同其它组件装配起来协调工作的程序 体,其使用同它的开发、生产无关。 组件可分为源代码组件和二进制代码组件。
10.5.1 COM标准
目的是提高软件的 交互协同工作能力,而不受开发语言和方法、运行环 境和地点的限制。 在Windows系统平台上,一个COM组件或是一个DLL 文件,或是一个EXE文件。 一个组件程序可以包含多个COM对象,每个COM对象 可以实现多个接口。
10.4.3 基于CORBA的软件开发
①编写OMG定义的IDL接口规范说明文件,描述服务对象所支持的 操作和类型; ②编译IDL规格说明文件,生成客户端存根和服务器端骨架; ③编写对象实现程序; ④编写服务器和客户主程序结构; ⑤将对象实现程序,服务主程序和生成的服务器骨架编译连接成 服务端可执行程序; ⑥将客户端主程序和生成的客户端存根编译连接成客户端可执行 程序,且若服务器端是基于 Web和浏览器方式的,则相应地编 写HTML超文本文件,链入编写的客户方Java Applet小程序; ⑦分别运行服务器端和客户端程序。
OMA(层次结构)
Objects Objects Objects Objects
Domain Objects Facilities
Services ORB OS
10.4.1 CORBA的组成
客户程序(Client) 对象实现(Server)
动态调用接口
静态IDL 存根

河海大学研究生课程【软件复用技术】11软件复用(软件方法)

河海大学研究生课程【软件复用技术】11软件复用(软件方法)

计算机与信息学院Copyright2012
4 问题分析法
硕士研究生课程
软件复用
PAM(Problem Analysis Method)问题分析法是80年代 末由日立公司提出的一种软件开发方法。
PAM方法希望能兼顾Yourdon方法、Jackson方法和自底向 上的软件开发方法的优点,而避免它们的缺陷。它的基本 思想是:考虑到输入、输出数据结构,指导系统的分解, 在系统分析指导下逐步综合。这一方法的具体步骤是:从 输入、输出数据结构导出基本处理框;分析这些处理框之 间的先后关系;按先后关系逐步综合处理框,直到画出整 个系统的PAD图。从上述步骤中可以看出,这一方法本质上 是综合的自底向上的方法,但在逐步综合之前已进行了有 目的的分解,这个目的就是充分考虑系统的输入、输出数 据结构。
应用软件复用技术的软件开发方法的研究来解 决这个问题.
计算机与信息学院Copyright2012
课 程 介 绍 硕士研究生课程
软件复用
一、软件开发模型 二、软件开发方法 三、复用驱动的软件开发简介
计算机与信息学院Copyright2012
一、软件开发模型
硕士研究生课程
软件复用
软件开发模型是软件开发全部过程、活动和任务 的结构框架。软件开发模型能清晰、直观地表 达软件开发全过程,明确规定了要完成的主要 活动和任务,用来作为软件开发工作的基础。
软件复用
设计
编码 测试
运行
计算机与信息学院Copyright2012
硕士研究生课程
系统需求
软件复用
1970年,W.Royce 软件需求
将雏型进一步精化
其中:每一阶段具 有以下特征:
•从上一阶段接受工 作对象,即输入;

第10章软件复用与构件技术.ppt

第10章软件复用与构件技术.ppt

10.2.2 软件构件的组织
对收集和开发的软件构件进行分类,并放入可服用构件库的 适当位置。可服用构件库组织应当便于存储和检索,要求如 下:
(1)支持构件库的各种维护操作。增、删、更新构件库的操 作应当不影响构件库的结构。 (2)不仅能支持精确匹配,还应支持相似构件的查询。 (3)不仅能进行简单的语法匹配,而且能查找在功能、行为 上等价或相似的构件。 (4)对应用领域(族)有较强的描述能力和较好的描述精确 度。 (5)便于构件库管理员和用户的使用。 (6)具备自动化的潜力。
为了重用的设计同样要求软件工程师应用已有的设计概念 和原理,但是,也必须考虑应用领域的特征,特别是应该考 虑下述的一系列关键问题。
(1)标准数据。 (2)标准接口协议。 (3)程序模板。
10.2.1开发可复用的软件构件
当重用在应用系统开发中占据主导地位时,就把这样的开发 方法称为基于构件的开发或构件软件。领域工程为基于构件 的开发提供了所需要的可重用构件库,这些可重用的构件中 的一部分是内部开发的,另一部分是从现有的应用系统中抽 取出来的,还有一部分是从第三方获取的。
(3)体系结构:某些应用软件的体系结构往往非常相似,因此 有可能创建一组公共的体系结构模板(如,事务处理体系结 构),并将那些模板作为可复用的设计框架。
(4)需求模型和规约:类和对象模型及其规约是明显的复用候 选者,此外,用传统软件工程方法开发的分析模型(如数据 流图)也是可复用的。
10.1.1 软件复用的定义
对象连接与嵌入(OLE)是COM的一部分,其定义了可重用构 件的标准结构。OLE已经成象语言,因此JavaBean标准比较简洁 、完备。JavaBean具有下述特点。 · 构件模型比较完备。 · 仅支持Java语言。 · 构件运行环境主要由Sun公司提供,其他厂商也可提供运行环 境具较多(例如,Visual Cafe,Visual Age for Java等)。

10-高级

10-高级

纵向复用领域工程的活动
⑵ 开发可复用构件 开发的构件应该具有通用性、可变性、 ◆开发的构件应该具有通用性、可变性、易组装性和可 理解性描述等特性。 理解性描述等特性。 设计构件必须考虑领域的应用特征, ◆设计构件必须考虑领域的应用特征,主要设计构件的 标准数据、标准接口协议和程序模板。 标准数据、标准接口协议和程序模板。 ◆采用流行的构件实现标准。例如,组件对象模型 ( COM) 技术 , 对象链接与嵌入 ( OLE) 结构标准 , ) 技术, 对象链接与嵌入( ) 结构标准, 公 共 对 象 请 求 代 理 体 系 结 构 ( CORBA) 标 准 , ) OpenDoc开放式文档接口标准等。 开放式文档接口标准等。 开放式文档接口标准等
形式化软件开发过程
形式化开发方法是将软件系统的需求描述, 形式化开发方法是将软件系统的需求描述,采用某种规 约的形式化方式,转换成一个可执行程序。 约的形式化方式,转换成一个可执行程序。 在转换过程中, 在转换过程中,形式化描述被逐步求精地转换成有严格 数学方法保证其正确的一系列系统表示, 数学方法保证其正确的一系列系统表示,直到形式化描 述被转换成一个对等的可执行程序。 述被转换成一个对等的可执行程序。
需求定义 形式化描述 形式化转换 集成和系统验证
பைடு நூலகம்
图10.2 形式化的软件开发过程
形式化方法的特点
提供了规约环境的基础——形式化描述的分 ① 提供了规约环境的基础 形式化描述的分 析模型。 析模型。 设计、 ② 设计、实现和单元测试等过程被一个形式化 逐步求精的、 的 、 逐步求精的 、 正确性得到保证的转换过程 所替代。 所替代。 形式化方法特别适合对安全性、可靠性、 ③ 形式化方法特别适合对安全性、可靠性、 保 密性要求极高的系统开发。 密性要求极高的系统开发。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
对象实现
客户端运期间发请求
对象适配器



对象适配器是ORB与对象实现间的接口, 其主要的工作如下: 对象实现的注册; 生成及管理对象引用; 服务器进程激活; 对象激活/撤销/向上调用。
10.4.2 ORB运行机制
1. 开始; 2. 客户获取特定对象实现的对象引用; 3. 如果对象以静态方式实现,则通过IDL存根向对象实现发出请求,然后转6; 4. 将请求发给ORB提供的DII; 5. DII根据接口库的信息将请求传递给对象实现; 6. ORB传递请求; 7. ORB内核在请求到达后做一定的处理,然后将其送给对象实现登记的对象适配器; 8. 对象适配器接收请求; 9. 如果不是本ORB域登记,则转13; 10. 如果有相应的IDL骨架存在,则对象适配器通过IDL骨架调用对象实现中的方法,并转17; 11. 对象适配器通过DSI调用对象实现方法; 12. 转17; 13. 将请求传给DSI; 14. DSI产生一个代理对象; 15. 代理对象将请求转成中间协议表示形式传给目的ORB; 16. 目的ORB将中间协议表示形式转换成本地DII请求,以实现对对象实现中的方法进行调用; 17.将结果按原路返回给客户;
10.3 组件技术概述
我们能如此开 发软件吗?
10.3.1 组件的定义与复用


组件(Component),亦称构件,是指语义完 整、语法正确和有可重用价值的单位软件,它 是语义描述、通信接口和实现代码的复合体。 简单地说,组件是具有一定的功能,能够独立 工作或能同其它组件装配起来协调工作的程序 体,其使用同它的开发、生产无关。 组件可分为源代码组件和二进制代码组件。
10.5 组件对象模型



组件对象模型(Component Object Model, COM) 是微软(Microsoft)的组件软件方案,是为组件的互 操作而定义的二进制组件模型。 分布式组件对象模型(Distribnted Component Object Model,DCOM)是COM的一个分布式扩充, 是在分布式计算环境的远程过程调用的基础上开 发的。 COM+是按COM的标准建立的,并组合了一些工具 的新版本,如MTS(Microsoft Transaction Server)、MSMQ(Microsoft Message Queues)等。
10.4 公共对象请求代理体系结构



公共对象请求代理体系结构(Common Object Request Broker Architecture, CORBA)是由对 象管理组织OMG制定的一个工业规范,其主要 目标是提供一种机制,在此基础上,对象可以 透明地请求和获得应答。 CORBA的实质是远过程调用与面向对象技术的 有机结合。 OMG于1990年制订了OMA(Object Management Architecture),它可用任何方法 来实现,CORBA是其中的一种实现方案。
•module用来引入 一层作用域; •Interface集中一些 相关的操作; •attribute标识了具 有get/set存取器函 数对的数据成员; •in表输入;out表 输出;inout表输入 输出。
}
IDL编译

由IDL编译器根据IDL代码生成相应编程 语言的客户代理(骨架)和服务器代理 (存根)对象等。
客户端ORB格式)
ORB传递且激合对象实现
静态IDL骨架解包 (传输格式→目的编程语言格式)
对象实现
动态调用

动态调用接口 (Dynamic Invocation DII根据接口库提供的IDL接口信息通过函 Interface, DII)和动态 数Create-request动态创建对象请求 骨架接口(Dynamic Skeleton Interface, DSI) ORB传递 可分别被视为通用存根 和通用骨架,它们由 DSI从进入的消息中找出调用的目标对象 及相应的方法,并提供运行时的连接机制 ORB直接提供不依赖于 所调用对象的接口。
10.4.4 CORBA的特点




同时支持分布计算技术和面向对象技术。 支持许多现存的语言并把这些语言混合到一个分 布式应用系统之中。 代理机制使得客户端程序和服务器端程序完全分 离,这样服务器端和客户端程序都可自由地修改 而无需通知对方。 提供了“软件总线”的功能,实现了软件组件的 即插即用。 提供了一种高度的互操作性,保证了建立在不同 CORBA产品之上的分布式样对象能够相互通信。
可复用组件应具备的属性
①有用性——组件必须提供有用的功能; ②可用性——组件必须易于理解和使用; ③质量——组件及其变形必须能正确工作; ④适应性——组件应该易于通过参数化等 方式在不同语境中进行配置; ⑤可移植性——组件应能在不同的硬件运 行平台和软件环境中工作。
组件复用方式


组件复用有白盒和黑盒两种方式。黑盒 是指不作修改的直接引用;白盒指进行 适应性修改的引用。 源代码在大多数情况下是指适应性修改 地引用;二进制代码组件的复用只能采 用黑盒方式,通常只能了解组件的接口 和属性等信息。
IDL


IDL(Interface Definition Language)是 用于说明对象接口的标识语言。 作用:接口概念一方面把对象的使用与 对象的实现彻底分开;另一方面ORB使 用对象的接口描述可在异类环境下实现 不同数据格式的转换;第三,IDL编译程 序能把接口描述直接映射到目标语言, 极大地加快了代码开发。
接口存 储数据 库 GIOP/IIOP
对象适配器
实现存 储数据 库
ORB核
ORB核/ORB接口





ORB(Object Request Broker)该是作为对象互通信的软总 线。 ORB截获服务请求调用,然后识别网络中服务器的位置,即 对象实现的位置。若服务器不在运行,则ORB启动服务器, 并一直等待到它准备接受服务请求为止。 ORB接口是ORB核给出的接口,同时为客户和对象实现方所 见,提供了一些只能由ORB核提供的服务:对象引用操作、 ORB初始化、对象适配器初始化和获取初始对象引用。 ORB之间的互操作则采用GIOP和IIOP实现。 ORB的特性可使客户程序不用考虑:服务器编程语言、服务 器平台、服务器地点和网络协议。 ORB提供了两个用于存储有关对象信息的服务:接口仓库 (接口存储数据库)和实现仓库(实现存储数据库)。
10.5.1 COM标准



COM作为一面向对象的编程模型,目的是提高软件的 交互协同工作能力,而不受开发语言和方法、运行环 境和地点的限制。 在Windows系统平台上,一个COM组件或是一个DLL 文件,或是一个EXE文件。 一个组件程序可以包含多个COM对象,每个COM对象 可以实现多个接口。
上述两种检索方法均基于语法匹配,这要求使用者对组件库中的有关词汇有较全 面的把握和较精确的理解。理想的检索方法是语义匹配:组件库的用户以形式化 的手段描述所需组件的功能或行为的语义,系统通过定理证明或基于知识的推理 来寻找语义上等价的或相近的组件。
10.3.6组件使用


理解组件 (①组件的功能与行为;②相 关的领域知识;③可适应性约束条件与 例外情形;④可以预见的修改部分及修 改方法); 修改组件; 合成组件 (基于功能的合成技术:调用 与参数传递、基于数据的合成技术:调 用与参数传递、面向对象的合成技术: 继承)。
例子
Module Shapes { interface Rectangle { attribute attribute Integer length; integer width; integer void void } interface Square Rectangle { } area( ); draw( ); translate(in integer X, in integer Y);
10.3.2 组件模型


组件模型通常由基于各种语言开发工具、 组件嵌入机制和相关服务(事务、安全、 认证、负载均衡等)组成。 比较成熟的组件模型有OMG的CORBA、 SUN的EJB(Java Bean)和Microsoft的 COM/DCOM/COM+。
三种组件模型间的差别



COM为组件交互定义了一个二进制的标准,只是 Windows平台上广泛采用的模型。 CORBA可以运行在多种不同操作系统上,与平台和 语言无关,但它不是一个二进制的标准。 EJB(Enterprise Java Beans)是一个服务器端组件 模型,Java Beams是一个可供使用的组件,主要用 于构建客户端软件并特别考虑了GUI组件的需要。 EJB和CORBA兼容,并可能相互促进。由于EJB要求 所有组件都要用Java编写,而Java必须运行在Java 虚拟机上,从而会导致Java很难与非Java代码实现 紧密集成。
10.4.3 基于CORBA的软件开发
①编写OMG定义的IDL接口规范说明文件,描述服务对象所支持的 操作和类型; ②编译IDL规格说明文件,生成客户端存根和服务器端骨架; ③编写对象实现程序; ④编写服务器和客户主程序结构; ⑤将对象实现程序,服务主程序和生成的服务器骨架编译连接成 服务端可执行程序; ⑥将客户端主程序和生成的客户端存根编译连接成客户端可执行 程序,且若服务器端是基于 Web和浏览器方式的,则相应地编 写HTML超文本文件,链入编写的客户方Java Applet小程序; ⑦分别运行服务器端和客户端程序。
10.3.3 组件获取与描述

通常可以采用以下途径来获取组件:




从现存组件中获取得符合要求的组件,直接使用 或作适应性修改,得到可复用的组件; 通过遗产工程,将具有潜在复用价值的组件提取 出来,得到可复用的组件; 从市场上购买现成的商业组件,即COTS (Commercial Off-The-Shelf,商业现货)组件; 开发新的符合要求的组件。
相关文档
最新文档