object oriented metrics
Recently Published Documents


TOTAL DOCUMENTS

160
(FIVE YEARS 21)

H-INDEX

19
(FIVE YEARS 1)

2022 ◽  
pp. 1-20
Author(s):  
Salim Moudache ◽  
◽  
Mourad Badri

This work aims to investigate the potential, from different perspectives, of a risk model to support Cross-Version Fault and Severity Prediction (CVFSP) in object-oriented software. The risk of a class is addressed from the perspective of two particular factors: the number of faults it can contain and their severity. We used various object-oriented metrics to capture the two risk factors. The risk of a class is modeled using the concept of Euclidean distance. We used a dataset collected from five successive versions of an open-source Java software system (ANT). We investigated different variants of the considered risk model, based on various combinations of object-oriented metrics pairs. We used different machine learning algorithms for building the prediction models: Naive Bayes (NB), J48, Random Forest (RF), Support Vector Machines (SVM) and Multilayer Perceptron (ANN). We investigated the effectiveness of the prediction models for Cross-Version Fault and Severity Prediction (CVFSP), using data of prior versions of the considered system. We also investigated if the considered risk model can give as output the Empirical Risk (ER) of a class, a continuous value considering both the number of faults and their different levels of severity. We used different techniques for building the prediction models: Linear Regression (LR), Gaussian Process (GP), Random forest (RF) and M5P (two decision trees algorithms), SmoReg and Artificial Neural Network (ANN). The considered risk model achieves acceptable results for both cross-version binary fault prediction (a g-mean of 0.714, an AUC of 0.725) and cross-version multi-classification of levels of severity (a g-mean of 0.758, an AUC of 0.771). The model also achieves good results in the estimation of the empirical risk of a class by considering both the number of faults and their levels of severity (intra-version analysis with a correlation coefficient of 0.659, cross-version analysis with a correlation coefficient of 0.486).


2021 ◽  
pp. 63-69
Author(s):  
Atica M. Altaie ◽  
Asmaa Yaseen Hamo ◽  
Rasha Gh. Alsarraj

A fault is an error that has effects on system behaviour. A software metric is a value that represents the degree to which software processes work properly and where faults are more probable to occur. In this research, we study the effects of removing redundancy and log transformation based on threshold values for identifying faults-prone classes of software. The study also contains a comparison of the metric values of an original dataset with those after removing redundancy and log transformation. E-learning and system dataset were taken as case studies. The fault ratio ranged from 1%-31% and 0%-10% for the original dataset and 1%-10% and 0%-4% after removing redundancy and log transformation, respectively. These results impacted directly the number of classes detected, which ranged between 1-20 and 1-7 for the original dataset and 1-7 and 0-3) after removing redundancy and log transformation. The Skewness of the dataset was deceased after applying the proposed model. The classified faulty classes need more attention in the next versions in order to reduce the ratio of faults or to do refactoring to increase the quality and performance of the current version of the software.


Author(s):  
Amit Sharma, Et. al.

In modern era, maintainability is an important part for software development that covers approx. 70-75% of development cost of the software system. It can allow the customer to adapt the software quickly and easily in an agile manner. Object oriented software metrics plays an important role for the designing of software development. Its features can be categorized into the object oriented metrics and the hierarchies of the class. In this paper, a tool named as COIN can help for evaluating the maintainability factors of object oriented software system using metrics like cohesion, coupling, inheritance and other object oriented metrics as well as through which we can analyzed the all metrics for the software system for evaluating the maintainability factors and testability also.


Author(s):  
Sharif, K.Y Et.al

Code changes due to software change requests and bug fixing are inevitable in software lifecycle. The code modification may slowly deviate the code structure from its original structure that leads to unreadable code. Even though the code structure does not affect the software behaviour, it affects the code understandability and maintainability of software. Code refactoring is typically conducted to enhance the code structure; however, this task needs a lot of developers’ effort. Thus, this paper aims at developing a tool that will help programmers identify possible code refactoring.Weconsider two aspects of refactoring:(i) refactoring activities, and (ii) refactoring prediction model. In terms of refactoring activity, we focus on Extract Class. The object-oriented metrics are used to predict the possibility of code refactoring. The combination of two refactoring aspects recommends the possible refactoring effort and identify classes that are involved. As a result, we managed to get 79% percent of accuracy based on the 11 correct results out of 14 that the tool correctly detected. On top of supporting programmers in improving codes, this work also may give more insight into how refactoring improvessystems.


Author(s):  
G. L. Saini ◽  
Deepak Panwar ◽  
Sandeep Kumar ◽  
Vijander Singh ◽  
Ramesh Chandra Poonia

Component-based software development (CBSD) is an efficient approach used by software developers to develop new software. The commercial off the shelf (COTS) and open-source software (OSS) are two styles to implement CBSD. The COTS provides the interface and depicts the black-box behavior, but does not support several software quality characteristics. On the other hard, OSS is a more efficient approach compared to COTS due to its source code availability. This research aims to identify the reusability level of OSS components from an online repository of OSS. The OSS components are classified based on Chidamber and Kemerer reusability metrics (CK-metrics). This paper proposed a mathematical model to establish the relationship between the reusability of CK-metrics. Reusability level of OSS component has been measured and most effective CK-metrics obtained by applying the Taguchi design and analysis of variance (ANOVA). The input parameters for the experimental design are evaluated based on the OSS repository. Performance analysis has been carried out based upon the interaction effect between the reusability of CK-metrics. Main effect plots are created to identify the most reusable component of the OSS. The genetic algorithm (GA) is used to predict the optimized value of the different control parameters. The results indicate that the OSS component reusability level is 0.698194. The reusability of software has a significant effect on the quality of software. The quality of software can be improved by increasing the reusability of software components.


2020 ◽  
Vol 9 (6) ◽  
pp. 3925-3931
Author(s):  
S. Sharma ◽  
D. Rattan ◽  
K. Singh

Sign in / Sign up

Export Citation Format

Share Document