计算机科学软件工程中的可重用性(reusability),是指可以重新使用以某种软件开发过程下产生的已有“资产”(assets)。“资产”是指在软体开发生命周期中产生的产品以及副产品,可以是程式码、软体模组、测试套件、设计以及文件。代码复用就是程式码可重用性的呈现。另外一种概念称为“杠杆”(leverage),是指为了符合特定的系统需求,修改现有的资产。因为重用可以减少同一资产的不同版本,因此在版本管理上会比杠杆要好[1]

以程式码来说,子程序函式是可以重用的最小单位。一长串的程式码一般会用模块命名空间进行管理,区分为不同的层次。一些支持者认为对象以及软体组件是可重用性更高的型式。不过很难客观的衡量可重用性,为其定义等级或是评分。

可重用性非常依赖由较小的部份建构出较大东西的能力,而且要可以识别出这些部份的共性英语commonality。可重用性是系统平台软体必要的特质。可重用性也带出许多软件开发中的不同层面,若没有可重用性,这些层面可以不需要考虑。

可重用性表示对于软体组建包装分销安装程式组态英语computer configuration软件部署软体维护升级,有一些具体的管理方式。若没有考虑这些议题,可能在软件设计的观点来看,可以复用程式,但在实务上仍然无法复用。

软体可重用性更多的是指软体单元(或是许多软体单元)在设计上的特质,这个特质使其适合于复用。

许多复用的设计原则是在WISR的workshop中提出的[2]

以下是一些软体重用旳设计特征:

有关上述特征中,哪一个比较重要,或是在特定应用下,那一个议题影响比较大,目前也还没有共识。

相关条目

编辑

参考资料

编辑
  1. ^ Lombard Hill Group. What is Software Reuse. www.lombardhill.com. Lombard Hill Group. October 22, 2014 [22 October 2014]. (原始内容存档于2014-10-22). 
  2. ^ Design for Reuse and Object Oriented Reuse Methods. Umcs.maine.edu. 1995-01-20 [2012-07-31]. (原始内容存档于1997-07-15).