首页> 外文期刊>IEEE Transactions on Software Engineering >API-Based and Information-Theoretic Metrics for Measuring the Quality of Software Modularization
【24h】

API-Based and Information-Theoretic Metrics for Measuring the Quality of Software Modularization

机译:基于API和信息论的度量标准,用于衡量软件模块化的质量

获取原文
获取原文并翻译 | 示例

摘要

We present in this paper a new set of metrics that measure the quality of modularization of a non-object-oriented software system. We have proposed a set of design principles to capture the notion of modularity and defined metrics centered around these principles. These metrics characterize the software from a variety of perspectives: structural, architectural, and notions such as the similarity of purpose and commonality of goals. (By structural, we are referring to intermodule coupling-based notions, and by architectural, we mean the horizontal layering of modules in large software systems.) We employ the notion of API (application programming interface) as the basis for our structural metrics. The rest of the metrics we present are in support of those that are based on API. Some of the important support metrics include those that characterize each module on the basis of the similarity of purpose of the services offered by the module. These metrics are based on information-theoretic principles. We tested our metrics on some popular open-source systems and some large legacy-code business applications. To validate the metrics, we compared the results obtained on human-modularized versions of the software (as created by the developers of the software) with those obtained on randomized versions of the code. For randomized versions, the assignment of the individual functions to modules was randomized
机译:我们在本文中提出了一套新的度量标准,用于度量非面向对象的软件系统的模块化质量。我们提出了一组设计原则,以捕获模块化和围绕这些原则定义的指标的概念。这些指标从多种角度描述软件的特征:结构,体系结构和概念,例如目的的相似性和目标的共同性。 (在结构上,我们指的是基于模块间耦合的概念,在体系结构上,我们指的是大型软件系统中模块的水平分层。)我们将API(应用程序编程接口)的概念用作结构指标的基础。我们提供的其余指标均支持基于API的指标。一些重要的支持指标包括那些根据模块提供的服务目的的相似性来表征每个模块的指标。这些度量基于信息理论原理。我们在一些流行的开源系统和一些大型遗留代码业务应用程序上测试了指标。为了验证指标,我们将在软件的人类模块化版本(由软件开发人员创建)上获得的结果与在代码的随机版本上获得的结果进行了比较。对于随机版本,将各个功能分配给模块是随机的

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号