软件重用——复用

11.3    软件重用

11.3.1    概述

1.重用

    重用也叫再用或复用,是指同一事物不作修改或稍加改动就多次重复使用,广义地说,软件重用可分为以下3个层次:

(1)知识重用(例如,软件工程知识的重用)

(2)方法和的标准的重用(例如,面向对象方法或国家制定的软件开发规范的重用

(3)软件成分的重用

    前两个重用层次属于知识工程研究的范畴,本节仅计论软件成分重用问题

2.软件成分的重用级别

软件成分的重用可以进一步划分成以下3个级别:

(1)代码重用
人们谈论得最多的是代码重用,通常把它理解为调库中的模块,实际上,代码重用也可以采用下列几种形式中的任何一种

*源代码剪贴:这是最原始的重用形式。这种重用方式的缺点,是复制或修改原有代码时可能出错,更糟糕的是,存在严重的配置管理问题,人们几平无法跟踪原始代码块多次修改重用的过程。

*源代码包含:许多程序设计语言都提供包含(include)库中源代码的机制,使用这种重用形式时,配置管理问题有所缓解,因为修改了库中源代码之后,所有包含它的程序自然都必须重新编译

*継承:利用继承机制重用类库中的类时,无须修改已有的代码,就可以扩充或具体化在库中找出的类,因此,基本上不存在配置管理问题

(2)设计结果重用

    设计結果重用指的是,重用某个教件系统的设计模型(即求解域模型).这个级别的重用有助于把一个应用系统移植到完全不同的软硬件平台上

(3)分析结果重用

    这是一种更高级别的重用,即重用某个系统的分析模型,这种重用特别适用于用户需求未改变,但系统体系结构发生了根本变化的场合

3.典型的可重用软件成分

更具体地说,可能被重用的软件成分主要有以下10种:

(1)项目计划,软件项目计划的基本结构和许多内容(例如,教件质量保证计划)都是可以跨项目重用的。这样做减少了用于制定计划的时间,也降低了与建立进度表和进行风险分析等活动相关联的不确定性。

(2)成本估计。因为在不同项目中经常含有类似的功能,所以有可能在只做极少修改或根本不做修改的情况下,重用对该功能的成本估计结果

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

(4)需求模型和规格说明。类和对象的模型及规格说明是明显的重用的候选者,此外,用传软件工程方法开发的分析模型(例如,数据流图),也是可重用的。

(5)设计,用传統方法开发的体系结构、数据、接口和过程设计结果,是重用的候选者,更常见的是,系统和对象设计是可重用的。

(6)源代码,用兼容的程序设计语言书写的、经过验证的程序构件,是重用的候选者
(7)用户文档和技术文档。即使针对的应用是不同的,也经常有可能重用用户文档和技术文档的大部分。

(8)用户界面。这可能是最广泛被重用的软件成分,GUI(图形用户界面)软件经常被重用。因为它可占到一个应用程序的60%的代码量,因此,重用的效果非常显著。


(9)数据。在大多数经常被重用的软件成分中,被重用的数据包括:内部表、列表和记录结构,以及文件和完整的据库。

(10)测试用例,一且设计或代码构件将被重用,相关的测试用例应该“附属于”它们也被重用
 

发布了39 篇原创文章 · 获赞 38 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/FRESHET/article/details/105474583
今日推荐