复用的研究在软件的应用开发领域研述.docVIP

  • 5
  • 0
  • 约3.23千字
  • 约 8页
  • 2018-10-15 发布于福建
  • 举报

复用的研究在软件的应用开发领域研述.doc

复用的研究在软件的应用开发领域研述

复用的研究在软件的应用开发领域研述   摘要:软件重用是近年来软件工程一个很活跃的研究领域。实践证明,软件重用是从根本上提高软件生产率、降低成本、提高质量的有效途径;同时也说明,软件重用需要在关键技术、管理、指标等很多方面引入注重实效的变革。本文首先介绍了软件重用的概念以及可重用的软件成分,随即介绍了软件重用技术,最后提出了在实际应用中使用软件重用技术的要点。   关键词:软件重用;模块;面向对象;类 构件      20世纪70年代以来,一些机构认识到复用研究在软件开发应用领域具有重要应用价值。软件重用是复用研究的最后意义课题之一。80年代以后软件重用技术已被广泛认为能成倍提高软件生产率的重要技术。目前软件重用技术已经成为内容非常广泛的研究领域,是当今软件工程领域中的一个研究热点。比起重新开发一个软件,软件重用技术能大大缩短开发时间,节约人力、物力,提高软件可靠性。      一、软件重用技术的基本概念      最初的计算机中,由于软件依赖于具体的硬件结构,重用的可能性很小;随着系统的开发和软件的不断丰富,人们开始在更高一层的虚拟机器上开发软件,此时软件不再依赖具体的机器结构,这就使重用成为可能,当今由于软件系统越来越来庞大,重用显得更为重要。软件重用是指在两次或多次不同的软件开发过程中重复使用相同或相似的软件成分的过程。简单的说就是使用现已存在的软件成分构成新的软件系统。广义的讲,软件重用可分为3个层次:知识重用、方法和标准的重用、软件成分的重用。这里仅讨论软件成分的重用。      二、软件成分可重用的必要条件      1、 独立性强。   只有在模块化的系统结构中,模块内部的修改和局部系统的重构才能不影响系统的整体面貌。模块必须功能完整且唯一,并经过反复测试被确认为正确,它应该是不受或少受外界干扰的封装体。   2、 高度可塑性。   在模块化的结构的前提下,这样的系统可以吧依赖于具体运行环境的部分集中在少数几个模块内,一旦环境变化可以用其他模块替代。从而使重用因素能适应各种环境,提供为适应特定需求二扩充或修改已有构建的机制,而且所提供的机制必须使用起来简单方便。   3、 结构清晰。   具有适当的规模,易读,易理解。同时接口必须清晰、简单、可靠。   4、 建立在标准的统一的数据界面上。   以标准的数据模式为依据,可以减少系统中模块之间的数据交换和相互依赖关系,是数据的操作集中在几个模块内   统一管理。      三、软件可重用成分分析      1、 代码。人们谈论最多的是代码重用,通常把它理解为调用库中的模块(比如标准数据库)。实际上代码重用可以采用源代码剪贴、源代码包含、继承三种形式。   2、 数据。采用标准的数据交换格式有利于软件重用,尤其是在当前阶段声音、图像等也被定义为数据。因为如果数据是标准的形式,应用程序无需依据格式和内容的事先一致就可以利用数据。   3、 程序结构。有效的重用需要一个结构出发点,而不仅是将模块组合连接。   4、 程序设计。可用的描述公共应用程序设计类型的构造方法与通用程序设计的参考资料。这种重用有助于把一个应用系统移植到完全不同的软硬件平台上。   5、 程序分析结果。重用某个软件系统的分析模型。这种重用特别适用于拥护需求未改变,但体统体系结构发生了变化的场合。   6、 可重用的软件可重用的不仅仅是软件成分,整个软件系统也可重用。就是说,在环境和功能需求发生变化时,可以通过一些局部性的修改,在仍然保持整体稳定的前提下,适应型的环境和需求。      四、软件重用关键技术分析      软件的重用技术可分为三个层次:知识重用、方法和标准的重用、软件成分的重用。就软件成分的重用可分为:代码重用、设计结果重用、分析结果重用。当前阶段来说,实现软件重用的技术途径有三种,一种是基于软件的自主生成,另一种是将中用技术。   1、 软件组合技术   该技术就是按照一定规则把可重用的软件成分组合在一起,构成软件系统或新的可中用成分。特点是,可重用的软件成分作为被动的原子模块适用,它们在整个组合过程中保持中保持不变。用底层不见库法和上层组合法可把软构件组合成所需的软件。   2、 软件生成技术   该技术是按照形式化的软件功能描述和一定的生成机理,由生成器系统主动的生成目标程序。这种方法所适用的可重用部件是生成器本身的代码模板或隐藏在变换规则及种种的模板。这种技术抽象级别高,需要由可重用软件库和知识库的支持。   3、 面向对象的软件中用技术   面向对象的软件技术是重用技术中最成功的一个,它可以通过提高方法的聚合性、减小方法的规模和交互耦合的程度,以及利用继承机制、委托和封装等来提高软件的可重用性。

文档评论(0)

1亿VIP精品文档

相关文档