首页> 外文OA文献 >Une approche pragmatique pour mesurer la qualité des applications à base de composants logiciels
【2h】

Une approche pragmatique pour mesurer la qualité des applications à base de composants logiciels

机译:一种基于软件组件的实用方法来衡量应用程序的质量

摘要

Over the past decade, many companies proceeded with the introduction of component-oriented software technology in their development environments. The component paradigm that promotes the assembly of autonomous and reusable software bricks is indeed an interesting proposal to reduce development costs and maintenance while improving application quality. In this paradigm, as in all others, architects and developers need to evaluate as soon as possible the quality of what they produce, especially along the process of designing and coding. The code metrics are indispensable tools to do this. They provide, to a certain extent, the prediction of the quality of « external » component or architecture being encoded. Several proposals for metrics have been made in the literature especially for the component world. Unfortunately, none of the proposed metrics have been a serious study regarding their completeness, cohesion and especially for their ability to predict the external quality of developed artifacts. Even worse, the lack of support for these metrics with the code analysis tools in the market makes it impossible to be used in the industry. In this state, the prediction in a quantitative way and « a priori » the quality of their developments is impossible. The risk is therefore high for obtaining higher costs as a consequence of the late discovery of defects. In the context of this thesis, I propose a pragmatic solution to the problem. Based on the premise that much of the industrial frameworks are based on object-oriented technology, I have studied the possibility of using some « conventional » code metrics unpopular to component world, to evaluate component-based applications. Indeed, these metrics have the advantage of being well defined, known, equipped and especially to have been the subject of numerous empirical validations analyzing the predictive power for imperatives or objects codes. Among the existing metrics, I identified a subset of them which, by interpreting and applying to specific levels of granularity, can potentially provide guidance on the compliance of developers and architects of large principles of software engineering, particularly on the coupling and cohesion. These two principles are in fact the very source of the component paradigm. This subset has the ability to represent all aspects of a component-oriented application : internal view of a component, its interface and compositional view through architecture. This suite of metrics, identified by hand, was then applied to 10 open-source OSGi applications, in order to ensure, by studying of their distribution, that it effectively conveyed relevant information to the component world. I then built predictive models of external quality properties based on these internal metrics : reusability, failure, etc. The development of such models and the analysis of their power are only able to empirically validate the interest of the proposed metrics. It is also possible to compare the « power » of these models with other models from the literature specific to imperative and/or object world. I decided to build models that predict the existence and frequency of defects and bugs. To do this, I relied on external data from the history of changes and fixes a panel of 6 large mature OSGi projects (with a maintenance period of several years). Several statistical tools were used to build models, including principal component analysis and multivariate logistic regression. This study showed that it is possible to predict with these models 80% to 92% of frequently buggy components with reminders ranging from 89% to 98%, according to the evaluated projects. Models for predicting the existence of a defect are less reliable than the first type of model. This thesis confirms thus the interesting « practice » of using common and well equipped metrics to measure at the earliest application quality in the component world.
机译:在过去的十年中,许多公司着手在其开发环境中引入面向组件的软件技术。促进自动和可重用软件模块组装的组件范例确实是一个有趣的提议,它可以降低开发成本和维护,同时提高应用程序质量。在此范式中,与其他所有范式一样,架构师和开发人员需要尽快评估其产品的质量,尤其是在设计和编码过程中。代码指标是执行此操作必不可少的工具。它们在一定程度上提供了对“外部”组件或要编码的体系结构的质量的预测。文献中已经针对度量提出了一些建议,尤其是对于组件世界。不幸的是,所提出的度量标准中没有一个是关于其完整性,内聚性,尤其是其预测已开发工件的外部质量的能力的认真研究。更糟糕的是,由于缺乏市场上代码分析工具对这些指标的支持,因此无法在行业中使用。在这种状态下,不可能进行定量的预测和“先验”其发展的质量。因此,由于缺陷的发现较晚,获得更高成本的风险很高。在本文的背景下,我提出了一个务实的解决方案。基于许多工业框架都是基于面向对象技术的前提,我研究了使用某些组件领域不受欢迎的“常规”代码度量来评估基于组件的应用程序的可能性。实际上,这些度量的优点是定义明确,已知,配备精良,尤其是成为许多针对命令或目标代码的预测能力进行分析的经验验证的主题。在现有的指标中,我确定了其中的一个子集,这些子集通过解释和应用于特定的粒度级别,可以潜在地为开发人员和软件工程大原则的架构师的合规性提供指导,尤其是耦合和内聚性。这两个原则实际上是组件范式的真正来源。该子集具有表示面向组件的应用程序各个方面的能力:组件的内部视图,其接口以及通过体系结构的组合视图。然后,将这套手工确定的度量标准应用于10个开源OSGi应用程序,以便通过研究它们的分布来确保它有效地将相关信息传达到了组件世界。然后,我基于这些内部指标(可重用性,失败等)建立了外部质量属性的预测模型。此类模型的开发及其功能分析只能凭经验验证所提出指标的兴趣。也可以将这些模型的“力量”与特定于命令性和/或对象世界的文献中的其他模型进行比较。我决定建立模型来预测缺陷和错误的存在以及发生的频率。为此,我依靠变更历史记录中的外部数据并修复了由6个大型成熟OSGi项目组成的小组(维护周期为几年)。几个统计工具被用来建立模型,包括主成分分析和多元逻辑回归。这项研究表明,根据评估的项目,使用这些模型可以预测80%到92%的频繁越野车组件,提醒的范围从89%到98%。预测缺陷存在的模型不如第一种模型可靠。因此,本论文证实了使用通用且装备精良的度量标准来衡量组件世界中最早的应用程序质量的有趣“实践”。

著录项

  • 作者

    Hamza Salma;

  • 作者单位
  • 年度 2014
  • 总页数
  • 原文格式 PDF
  • 正文语种 fr
  • 中图分类

相似文献

  • 外文文献
  • 中文文献
  • 专利

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号