首页> 外文期刊>Arabian Journal for Science and Engineering. Section A, Sciences >Restructuring Object‑Oriented Software Systems Using Various Aspects of Class Information
【24h】

Restructuring Object‑Oriented Software Systems Using Various Aspects of Class Information

机译:使用类信息的各个方面重组面向对象的软件系统

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

摘要

Frequent modifications in a software system generally deteriorate the design of the source code and consequently increase the complexity of the system. In object-oriented software, one of the symptoms of design degradation is that the package structure of the source code drifts away from design principles. To improve the deteriorated design, systems are generally restructured by reorganizing the classes into packages based on good design principles. Coupling and cohesion are the two important package design principles widely used to assess software design quality. Most of the existing package restructuring approaches use either structural, lexical, or change history class information to compute coupling and cohesion of software system. Moreover, these approaches compute coupling and cohesion without considering multiple dimensions of structural, lexical, and change history information. In this article, we utilize different types of structural, lexical and change history class information and integrate them as per their relative importance to compute coupling and cohesion. To automate the restructuring process, we formulate the restructuring problem as a multi-objective optimization problem and solve it by using non-dominated sorting genetic algorithm (NSGA-II). The proposed approach is applied to five object-oriented software applications. The obtained restructuring is compared with authoritative restructuring and restructuring suggested by external developers. The obtained restructuring is also compared with some existing multi-objective software restructuring approaches. Overall, findings indicate that the proposed approach can be a good approach to improve the design of software systems whose quality is under suspicion.
机译:软件系统中的频繁修改通常会恶化源代码的设计,从而提高了系统的复杂性。在面向对象的软件中,设计劣化的症状之一是源代码的包装结构远离设计原则。为了改善劣化的设计,通过基于良好的设计原则重新组织课程,通常通过重新组织进入包装来改组。耦合和凝聚力是两种重要的包装设计原则,广泛用于评估软件设计质量。大多数现有包重构方法使用结构,词汇或将历史级别信息使用,以计算软件系统的耦合和凝聚力。此外,这些方法在不考虑结构,词汇和改变历史信息的多个维度的情况下计算耦合和内聚力。在本文中,我们利用不同类型的结构,词汇和改变历史级信息,并根据其相对重视来计算耦合和凝聚力。为了自动化重组过程,我们将重组问题标准为多目标优化问题,并通过使用非主导的分类遗传算法(NSGA-II)来解决它。该方法应用于五种面向对象的软件应用程序。将获得的重组与外部开发人员建议的权威重组和重组进行比较。与一些现有的多目标软件重组方法相比,所获得的重组。总体而言,调查结果表明,该方法可以是改善质量受到怀疑的软件系统设计的良好方法。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号