Modelling and measuring code smells in enterprise applications using TISM and two-way assessment

Modelling and measuring code smells in enterprise applications using TISM and two-way assessment
复制标题

使用 TISM 和双向评估对企业应用程序中的代码异味进行建模和测量

DOI:
--
复制
发表时间:
2016
影响因子:
2
通讯作者:
Deepak Kumar
Deepak Kumar
中科院分区:
--
文献类型:
--
作者:
Viral Gupta;P. K. Kapur;Deepak Kumar

文献摘要

被引文献

相似文献

代码气味是设计中降低代码可维护性的错误。在企业应用程序实现的设计和开发阶段,识别和控制这些代码气味是必不可少的,以实现更高的代码可维护性和质量。这篇研究论文提出了一个框架,从事建模和测量各种代码气味,使从业者可以集中精力在最关键的代码气味,从而实现更高的代码可维护性和质量。该框架使用全面解释结构建模(TISM)来建模和结构化各种代码气味。TISM有助于识别这些代码气味之间的相互关系。使用MICMAC分析,这些代码气味被分为四个集群的基础上,他们的驱动力和依赖力。双向评估通过基于两组涉众的专家意见导出效用度量来帮助度量代码气味。在一个企业应用项目上进行了一个实验,并使用双向评估来测量代码气味。结果表明,具有较高驱动力的代码气味得到优化,从而提高了企业应用程序的整体代码可维护性。建议的框架优化的过程中,提高整体代码的可维护性,识别最关键的代码气味具有较高的驱动力,然后优化它们。
Code smells are the faults in design that reduces the code maintainability. It is essential to identify and control these code smells during the design and development stages of enterprise application implementation in order to achieve higher code maintainability and quality. This research paper presents a framework that engages in modelling and measuring various code smells so that practitioners can focus their efforts on most critical code smells and thus achieve higher code maintainability and quality. The framework uses Total Interpretive Structural Modelling (TISM) for modelling and structuring various code smells. TISM helps in identifying Interrelationship among these code smells. Using MICMAC analysis, these code smells are classified into four clusters based on their driving power and dependence power. Two-way assessment helps in measuring the code smells by deriving the utility measure based on the expert opinion of two set of stakeholders. An experiment is conducted on an enterprise application project and code smells are measured using two-way assessment. It is demonstrated that the code smells having high driving power are optimized which resulted in the elevation of the overall code maintainability of the enterprise applications. The proposed framework optimizes the process of enhancing the overall code maintainability by identification of most critical code smells having higher driving power and then optimizing them.