- 1、本文档共32页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 第十章 第十章软件重用和构件技术 软件重用技术 10 10.1 软件重用概述 软件重用就是将已有的软件成分用于构造新的软件系统,以达到提高软件系统的开发质量与效率,降低开发成本的目的。 可重用的软件成分,也称为可重用构件(Reusable Component)可从旧软件中提取,也可以专门为重用而开发。 软件重用不仅是对程序的重用,它包括对软件生产过程中任何活动所产生的制成品的重用。如:项目计划、可行性报告、需求定义、分析模型、详细说明、源程序和测试用例等等。 代码的重用 设计结果的重用 分析结果的重用 测试信息的重用 高 抽 象 程 度 低 10.1.1 软件重用的级别 包括目标代码,也包括文本形式的源代码。 受实际环境影响小,可重用机会多,所需修改少。 可被重用的分析结果是针对问题域的某些事物或某些问题的抽象程度更高的解法。 主要包括测试用例(test case)的重用和测试过程信息的重用。 三种方式重用: 从现有系统的分析结果中提取可重用构件用于新系统的分析; 用一份完整的分析文档作为输入,成生针对不通软硬件平台和其它实现条件的多项设计; 独立于具体应用,专门开发一些可重用的分析构件。 软件生产过程主要是正向过程,即软件产品从抽象级别较高的形态向抽象级别较低的形态演化,所以较高级别的重用容易带动较低级别的重用,反之则不然。 重用级别越高,可得到的回报也越大,因此分析软件(Analysis Ware)和设计软件(Design Ware)的重用备受重视。 软件重用的优点: (1)提高软件生产率,降低软件生产代价; (2)提高软件质量; (3)互操作性好; (4)推动标准化; (5)支持原型开发。 10.1.2软件重用的形式 一、按照重用活动所跨越的应用领域的类型分 1.横向重用(horizontal reuse)也称为水平重用,是指重用活动的范围跨越了几个不同的应用领域,重用的软件产品主要包括数据结构、通用算法、人机界面等软件元素。 2.纵向重用(vertical reuse)也称为垂直重用,是指重用活动的范围限制在同一个应用领域或者是一类具有较多共性的应用领域内。 二、基于软件重用的软件开发过程的角度分 1.生产者重用(product reuse) 指建立、获取或者重新设计可重用构件的活动。涉及到的活动包括:重用的规划、领域分析、构件的开发、构件库的组织和管理。 2.消费者重用(consumer reuse) 指使用可重用的构件建立新的系统的活动。涉及到的活动包括:应用系统的规划、构件的检索和选择、应用系统中非重用部分的开发、应用系统的组装。 建立构件 组装应用 生产者重用 消费者重用 (为重用开发构件) (使用构件开发应用) 生产者重用与消费者重用 重用具有许多明显的优点,目前应用不广泛的主要原因是: (1)技术因素 构件与应用系统之间的差异; 构件要达到一定的规模,才能支持有效的重用; 发现合用构件的困难; 基于重用的软件开发方法和软件过程需要一些新的理论、技术及支持环境。 10.1.3 软件重用的困难 (2)人的因素 喜欢自己创造而不喜欢使用别人的东西。 重用具有许多明显的优点,目前应用不广泛的主要原因是: 10.1.3 软件重用的困难 (4)教育因素 软件科学技术的教育与培训中,缺乏关于软件重用的内容,缺少专门教材和课程。 (3)管理因素 把重用构件和一般软件构件同等看待,把重用看作可有可无的事。 10.2 软件构件与构件工程 基于软件构件的软件工程也称为构件工程,是以面向对象的方法为基础,实现软件重用,构造新系统的过程。 为了实现软件重用,基于软件构件的软件工程强调领域工程与软件工程同时进行。 领域工程创建应用领域的模型,标识、构造、分类和传播一组可重用的软件。 图2 领域分析 设计软件 体系结构 开发可重用 的软件成分 中心库 可重用软件 成分/构件 领域 模型 结构 模型 系统分析 规格说明 与设计 建造 系统规 格说明 分析与 设计模型 应用 软件 用户 需求 软件工程 领域工程 重用的过程模型 典型的重用的过程模型,描述了领域工程与软件工程的关系。 一个软件只有在多个系统中被使用才可称为“可重用构件”,必须具备的条件: (1)独立性 解决一个相对独立的问题,或大问题中某个相对独立的部分; (2)完整性 提供较完整的解决,不要遗留很多缺口,让重用者做大量补充; (3)可标
文档评论(0)