Gupta Aakanshi, Suri Bharti, Kumar Vijay, Misra Sanjay, Blažauskas Tomas, Damaševičius Robertas
Department of Computer Science and Engineering, Amity School of Engineering and Technology, New Delhi 110061, India.
University School of Information, Communication and Technology, Guru Gobind Singh Indraprastha University, New Delhi 110078, India.
Entropy (Basel). 2018 May 17;20(5):372. doi: 10.3390/e20050372.
The current era demands high quality software in a limited time period to achieve new goals and heights. To meet user requirements, the source codes undergo frequent modifications which can generate the bad smells in software that deteriorate the quality and reliability of software. Source code of the open source software is easily accessible by any developer, thus frequently modifiable. In this paper, we have proposed a mathematical model to predict the bad smells using the concept of entropy as defined by the Information Theory. Open-source software Apache Abdera is taken into consideration for calculating the bad smells. Bad smells are collected using a detection tool from sub components of the Apache Abdera project, and different measures of entropy (Shannon, Rényi and Tsallis entropy). By applying non-linear regression techniques, the bad smells that can arise in the future versions of software are predicted based on the observed bad smells and entropy measures. The proposed model has been validated using goodness of fit parameters (prediction error, bias, variation, and Root Mean Squared Prediction Error (RMSPE)). The values of model performance statistics ( R 2 , adjusted R 2 , Mean Square Error (MSE) and standard error) also justify the proposed model. We have compared the results of the prediction model with the observed results on real data. The results of the model might be helpful for software development industries and future researchers.
当前时代要求在有限的时间内获得高质量的软件,以实现新的目标和高度。为了满足用户需求,源代码需要频繁修改,这可能会在软件中产生不良代码异味,从而降低软件的质量和可靠性。开源软件的源代码任何开发者都可以轻松访问,因此可以频繁修改。在本文中,我们提出了一个数学模型,利用信息论中定义的熵的概念来预测不良代码异味。计算不良代码异味时考虑了开源软件Apache Abdera。使用检测工具从Apache Abdera项目的子组件中收集不良代码异味,并计算不同的熵度量(香农熵、雷尼熵和Tsallis熵)。通过应用非线性回归技术,基于观察到的不良代码异味和熵度量来预测软件未来版本中可能出现的不良代码异味。所提出的模型已使用拟合优度参数(预测误差、偏差、方差和均方根预测误差(RMSPE))进行了验证。模型性能统计量(R²、调整后的R²、均方误差(MSE)和标准误差)的值也证明了所提出模型的合理性。我们将预测模型的结果与实际数据的观察结果进行了比较。该模型的结果可能对软件开发行业和未来的研究人员有所帮助。