软件重用的过程与意义

原创 2002年04月09日 09:37:00

软件重用的过程与意义

(本文转载自软件工程专家网www.21cmm.com   

按照重要活动是否跨越相似性较小少的多个应用领域,软件重用可区别为横向和纵向重用。横向重用(horizontalreuse)是指重用不同应用领域中的软件元素,例如数据结构、分类算法、人机界面构件等。标准函数库是一种典型的、原始的横向重用机制。纵向重用是指在一类具有较多公共性的应用领域之间进行软部件重用。因为在两个截然不同的应用领域之间实施软件重用的潜力不大,所以纵向重用才广受瞩目,并成为软件重用技术的真正所在。不难理解纵向重用活动的主要关键点即是域分析;根据应用领域的特征及相似性预测软部件的可重用性。一旦根据域确认了软部件的重用价值,机可进行软部件的开发并对具有重用价值的软部件进行一般化,以便它们能够适应新的类似的应用领域。然后,软部件及其文档即可进入软部件库,成为可供后续开发项目使用的可重用资源。这些部件构成软部件构造活动。显然,它是一个软部件不断积累、不断完善的渐进过程。随着软部件的不断丰富,软部件库的规模会不断扩大,因此,库的组织结构将直接影响软部件的检索效应,特别是当检索手段并不局限于标准函数库所采用的简单名字匹配方法时。可供侯选的软部件从库中别检索出来以后,用户还必须理解其功能及行为,以判别它是否真正适用于当前项目。必要时可考虑对某个与期望的功能/行为匹配程度最佳的软部件进行稍许修改,甚至可以将修改后的软部件加进软部件以替代原有软部件。当然,这要求修改后的软部件比原有软部件具有更高的重用价值。上述软件重用方法的图示见下图。

cyyy.jpg
   显然,软件重用过程可借助计算机的帮助。支持软件重用的CASE工具的主要任务是,用某种组织结构实现软部件库的存储,提供友好的人机界面,帮助用户浏览、检索和修改软部件库,并且读用户赶兴趣的问题进行解释。事实上,现在几乎所有的软件重用活动都是在CASE工具的帮助下进行的。

  使用重用技术可以减少软件开发活动中大量的重复性工作,这样就能够提高软件的生产率,减低开发成本,缩短开发周期。同时,由于软部件大都经过严格的质量认证,并在实际运行环境中得到检验,因此,重用软部件有助于改善软件质量。此外,大量使用软部件,软件的灵活性和标准化程度也渴望得到提高。

C语言接口与实现创建可重用软件的技术读书笔记(1)

这本书是讲的是“如何设计、实现、和有效使用C语言库函数,掌握创建可重用C语言软件模块技术。重点阐述如何用一种与语言无关的方法将接口设计实现独立出来,从而用一种基于接口的设计途径创建可重用的API“。 ...
  • u013800219
  • u013800219
  • 2014年02月27日 11:00
  • 1101

《C语言接口与实现:创建可重用软件的技术》

《C语言接口与实现:创建可重用软件的技术》  C Interfaces and Implementations:Techniques for Creating Reusable Software   ...
  • johnny012011
  • johnny012011
  • 2006年04月26日 23:41
  • 1659

(转)软件公司可重用代码库的建设

相册 广场游戏   这个想法由来已久,也是因为自己在现在效力的公司中能看到一些不良的现象,但自己却不是管理层,没有任何的执行力去改变它。   软件公司管理职位越往上,越不熟悉技术方面,加上此举和重...
  • Last_Impression
  • Last_Impression
  • 2014年04月14日 19:36
  • 1673

软件工程-软件重用

本文参考自自张海藩老师和牟永敏的《软件工程导论》 重用: 定义:同一事务不作修改或稍做修改就多次重复使用。重用的元素: 知识重用:例如软件工程的知识。------属于“知识范畴”方法...
  • time_hunter
  • time_hunter
  • 2013年12月19日 00:10
  • 499

C语言接口与实现-创建可重用软件的技术(笔记12)

Ring_T  环(双向链表) 一个5元素环: /* head永远指向sing[0]. *  一个5元素环: *      lo                ...
  • tge7618291
  • tge7618291
  • 2009年11月22日 00:41
  • 718

C语言接口与实现创建可重用软件的技术读书笔记(2)---接口与实现

在这章中,感觉就是在讲两个文件:一个是.h头文件,一个是.c实现文件。 1、模块 模块分为两个部分,即模块的接口与实现。接口规定了模块做什么。接口会声明标识符、类型和例程,提供给使用模块的代码。实...
  • u013800219
  • u013800219
  • 2014年02月28日 10:56
  • 831

软件的意义

      如果只是看着这个标题进来,或许你进来错了。我不习惯于用过于深厚的理论来探讨一些东西      若干年前,那个时候我在从事于工作流产品的开发,在当时的意识中认为:      软件是辅助和提升...
  • platform
  • platform
  • 2007年02月10日 11:32
  • 1138

软件重用评述

一、软件重用定义    软件重用(Software  Reuse,又称软件复用或软件再用)的概念对于大家并不陌生。早在1968年的NATO软件工程会议上就已 经提出可复用库的思想。软件重用的定义也很多...
  • fcxiao
  • fcxiao
  • 2007年09月15日 11:30
  • 2887

软件资产重用的具体内容

在应用程序生命周期过程中,共有如下资产可以重用: 生命周期活动 可重用资产 资产开发者 ...
  • tyrone1979
  • tyrone1979
  • 2006年03月28日 10:43
  • 2617

看完《C++代码设计与重用》了~~

这本书已经买了很久了,今天花了一天的时间把它读完了,不过老实说对这本书稍稍感觉有些失望,也许是以前常常听到它的盛名,心中期望太高的缘故吧~~我看的这本书是翻译过来的,除了在某些地方感觉翻译上有些生硬,...
  • xiaohan13916830
  • xiaohan13916830
  • 2005年03月13日 09:33
  • 9020
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:软件重用的过程与意义
举报原因:
原因补充:

(最多只允许输入30个字)