The cost of standardizing components for software reuse

ACM Stand. Pub Date : 1997-06-01 DOI:10.1145/260558.260561
G. Succi, Francesco Baruchelli
{"title":"The cost of standardizing components for software reuse","authors":"G. Succi, Francesco Baruchelli","doi":"10.1145/260558.260561","DOIUrl":null,"url":null,"abstract":"m Software reuse can be an important step towards increasing productivity and quality. A necessary condition for its success is standardization of reusable components at each level of the software lifecycle. Standardization can be looked at in two different ways: externally (the interface), and internally (functionality). Both of these are fundamental, and imply extra costs in the development of components. The external perspective is the usual one—it considers the appearance of the components and the ways they are related to the rest of the world. The internal perspective is strongly related to reuse: here a component is considered standard when its functionality is common among all systems belonging to a particular domain; such components are usually discovered following domain analysis. A qualitative analysis of these two approaches to standards and reuse led us to a simple model showing the extra costs of standardizing reusable software components. he reuse of existing software in the development of new systems is widely studied. Despite its benefits, software reuse is not a guaranteed success, and is generally a cost-intensive investment. Among the many factors that can affect the success of a reuse program is the design and realization of the components likely to be reused, and particularly their adequate standardization. When dealing with standards and resuable software, we must first see a component as not only a code module, but as all the other products of the software lifecycle, as for instance the design and requirements. The higher the level of the component, the greater the benefits of its reuse. Given a software component in a reuse context, we can choose more than one perspective from which to determine whether or not it is standard. We can look at the interface or at its functionality. Both are equally important for the success of a reuse program. In fact, a component without an interface that is immediately understandable and easy to integrate and adapt, i.e., a component not designed with a “plug and play” philosophy, implies adaptation and integration costs which can easily overrun the value of the component. At the same time, a perfect “plug and play” interface can be nearly useless if it is used for a component that is almost unique and thus has practically no chance of being reused. In the following we will define more precisely a standard reusable software component from the two perspectives, and perform a qualitative analysis of the cost of its standardization.","PeriodicalId":270594,"journal":{"name":"ACM Stand.","volume":"72 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1997-06-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"11","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"ACM Stand.","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/260558.260561","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 11

Abstract

m Software reuse can be an important step towards increasing productivity and quality. A necessary condition for its success is standardization of reusable components at each level of the software lifecycle. Standardization can be looked at in two different ways: externally (the interface), and internally (functionality). Both of these are fundamental, and imply extra costs in the development of components. The external perspective is the usual one—it considers the appearance of the components and the ways they are related to the rest of the world. The internal perspective is strongly related to reuse: here a component is considered standard when its functionality is common among all systems belonging to a particular domain; such components are usually discovered following domain analysis. A qualitative analysis of these two approaches to standards and reuse led us to a simple model showing the extra costs of standardizing reusable software components. he reuse of existing software in the development of new systems is widely studied. Despite its benefits, software reuse is not a guaranteed success, and is generally a cost-intensive investment. Among the many factors that can affect the success of a reuse program is the design and realization of the components likely to be reused, and particularly their adequate standardization. When dealing with standards and resuable software, we must first see a component as not only a code module, but as all the other products of the software lifecycle, as for instance the design and requirements. The higher the level of the component, the greater the benefits of its reuse. Given a software component in a reuse context, we can choose more than one perspective from which to determine whether or not it is standard. We can look at the interface or at its functionality. Both are equally important for the success of a reuse program. In fact, a component without an interface that is immediately understandable and easy to integrate and adapt, i.e., a component not designed with a “plug and play” philosophy, implies adaptation and integration costs which can easily overrun the value of the component. At the same time, a perfect “plug and play” interface can be nearly useless if it is used for a component that is almost unique and thus has practically no chance of being reused. In the following we will define more precisely a standard reusable software component from the two perspectives, and perform a qualitative analysis of the cost of its standardization.
标准化组件以实现软件重用的成本
m软件重用是提高生产力和质量的重要步骤。其成功的必要条件是在软件生命周期的每个层次上实现可重用组件的标准化。标准化可以从两种不同的角度来看待:外部(接口)和内部(功能)。这两种方法都是基本的,并且在开发组件时意味着额外的成本。外部视角是常用的视角——它考虑组件的外观以及它们与外部世界的关联方式。内部透视图与重用密切相关:在这里,当一个组件的功能在属于特定领域的所有系统中是通用的时,它就被认为是标准的;这些组件通常是在域分析之后发现的。对这两种实现标准和重用的方法进行定性分析后,我们得到了一个简单的模型,该模型显示了标准化可重用软件组件的额外成本。现有软件在新系统开发中的重用问题得到了广泛的研究。尽管有好处,但软件重用并不能保证成功,而且通常是一项成本密集的投资。在影响重用计划成功的众多因素中,有一个是可能被重用的组件的设计和实现,特别是它们的适当的标准化。在处理标准和可重用软件时,我们必须首先将组件视为不仅仅是代码模块,而是软件生命周期的所有其他产品,例如设计和需求。组件的级别越高,其重用的好处就越大。给定一个在重用上下文中的软件组件,我们可以选择多个透视图来确定它是否是标准的。我们可以看界面或者它的功能。两者对于重用程序的成功同样重要。事实上,如果一个组件没有一个可以立即理解并易于集成和调整的接口,也就是说,一个组件没有按照“即插即用”的理念设计,这意味着调整和集成成本很容易超过组件的价值。与此同时,如果一个完美的“即插即用”界面被用于一个几乎独一无二的组件,那么它几乎是无用的,因此几乎没有机会被重用。在下文中,我们将从这两个角度更精确地定义一个标准的可重用软件组件,并对其标准化的成本进行定性分析。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信