As the complexity of software systems is increasing;software maintenance is becoming a challenge for software practitioners.The prediction of classes that require high maintainability effort is of utmost necessity to ...As the complexity of software systems is increasing;software maintenance is becoming a challenge for software practitioners.The prediction of classes that require high maintainability effort is of utmost necessity to develop cost-effective and high-quality software.In research of software engineering predictive modeling,various software maintainability prediction(SMP)models are evolved to forecast maintainability.To develop a maintainability prediction model,software practitioners may come across situations in which classes or modules requiring high maintainability effort are far less than those requiring low maintainability effort.This condition gives rise to a class imbalance problem(CIP).In this situation,the minority classes’prediction,i.e.,the classes demanding high maintainability effort,is a challenge.Therefore,in this direction,this study investigates three techniques for handling the CIP on ten open-source software to predict software maintainability.This empirical investigation supports the use of resampling with replacement technique(RR)for treating CIP and develop useful models for SMP.展开更多
As one of the most important attributes of software quality, software maintainability has been widely recognized.However,the existing maintainability evaluation methods are mostly based on subjectively judgment. Thus ...As one of the most important attributes of software quality, software maintainability has been widely recognized.However,the existing maintainability evaluation methods are mostly based on subjectively judgment. Thus it is inapplicable or unbelievable. To evaluate software maintainability objectively,the software configuration management( SCM) data are collected to establish a maintainability model. Based on the hidden Markov chain( HMC), a three-state maintainability estimation model is constructed. To validate the feasibility of the model,a real software example of software maintenance activity is given and the result from the example shows the effectiveness of the proposed method.展开更多
Software maintainability is one of the most important factors of software quality,but it is seriously difficult to evaluate the maintainability. Without evaluation,it is impossible to control. To estimate software mai...Software maintainability is one of the most important factors of software quality,but it is seriously difficult to evaluate the maintainability. Without evaluation,it is impossible to control. To estimate software maintainability state,parameter system of software was built up and maintainability state was defined into three states.Thought of application on maintainability evaluation based on hidden Markov chain( HMC) and fuzzy inference was presented.Three-state maintainability estimation model was constructed. To testify the feasibility of the model, a real example of software maintenance activity was carried out and the result from the example validated that the results of this study were applicable.展开更多
Software system can be classified into many function modules from the perspective of user. Unified modeling language( UML) class diagram of each function module was extracted,and design characteristic metrics which in...Software system can be classified into many function modules from the perspective of user. Unified modeling language( UML) class diagram of each function module was extracted,and design characteristic metrics which influenced software maintainability were selected based on UML class diagram.Choosing metrics of UML class diagram as predictors,and mean maintenance time of function module was regarded as software maintainability parameter. Software maintainability models were built by using back propagation( BP) neural network and radial basis function( RBF) neural network, respectively and were simulated by MATLAB. In order to evaluate the performance of models,the training results were analyzed and compared with leaveone-out cross-validation and model performance evaluation criterion. The result indicated that RBF arithmetic was superior to BP arithmetic in predicting software maintainability.展开更多
The Ethereum blockchain’s smart contract is a programmable transaction that performs general-purpose computations and can be executed automatically on the blockchain.Leveraging this component,blockchain technology(BT...The Ethereum blockchain’s smart contract is a programmable transaction that performs general-purpose computations and can be executed automatically on the blockchain.Leveraging this component,blockchain technology(BT)has grown beyond the scope of cryptocurrencies and can now be applicable in various industries other than finance.In this paper,we investigated the current trends in Ethereum-based decentralized applications(DApps)to be able to categorize and analyze the DApps to measure the complexity of smart contracts behind them,their level of security and their correlation to the maintainability of the DApps.We leveraged the source code analysis,security analysis,and the developmental metadata of the DApps to infer this correlation.Based on our findings,we concluded that the maintainability of Ethereum DApps is proportional to the code size,number of functions,and,most importantly,the number of outgoing invocations and statements in the smart contracts.展开更多
文摘As the complexity of software systems is increasing;software maintenance is becoming a challenge for software practitioners.The prediction of classes that require high maintainability effort is of utmost necessity to develop cost-effective and high-quality software.In research of software engineering predictive modeling,various software maintainability prediction(SMP)models are evolved to forecast maintainability.To develop a maintainability prediction model,software practitioners may come across situations in which classes or modules requiring high maintainability effort are far less than those requiring low maintainability effort.This condition gives rise to a class imbalance problem(CIP).In this situation,the minority classes’prediction,i.e.,the classes demanding high maintainability effort,is a challenge.Therefore,in this direction,this study investigates three techniques for handling the CIP on ten open-source software to predict software maintainability.This empirical investigation supports the use of resampling with replacement technique(RR)for treating CIP and develop useful models for SMP.
文摘As one of the most important attributes of software quality, software maintainability has been widely recognized.However,the existing maintainability evaluation methods are mostly based on subjectively judgment. Thus it is inapplicable or unbelievable. To evaluate software maintainability objectively,the software configuration management( SCM) data are collected to establish a maintainability model. Based on the hidden Markov chain( HMC), a three-state maintainability estimation model is constructed. To validate the feasibility of the model,a real software example of software maintenance activity is given and the result from the example shows the effectiveness of the proposed method.
文摘Software maintainability is one of the most important factors of software quality,but it is seriously difficult to evaluate the maintainability. Without evaluation,it is impossible to control. To estimate software maintainability state,parameter system of software was built up and maintainability state was defined into three states.Thought of application on maintainability evaluation based on hidden Markov chain( HMC) and fuzzy inference was presented.Three-state maintainability estimation model was constructed. To testify the feasibility of the model, a real example of software maintenance activity was carried out and the result from the example validated that the results of this study were applicable.
文摘Software system can be classified into many function modules from the perspective of user. Unified modeling language( UML) class diagram of each function module was extracted,and design characteristic metrics which influenced software maintainability were selected based on UML class diagram.Choosing metrics of UML class diagram as predictors,and mean maintenance time of function module was regarded as software maintainability parameter. Software maintainability models were built by using back propagation( BP) neural network and radial basis function( RBF) neural network, respectively and were simulated by MATLAB. In order to evaluate the performance of models,the training results were analyzed and compared with leaveone-out cross-validation and model performance evaluation criterion. The result indicated that RBF arithmetic was superior to BP arithmetic in predicting software maintainability.
文摘The Ethereum blockchain’s smart contract is a programmable transaction that performs general-purpose computations and can be executed automatically on the blockchain.Leveraging this component,blockchain technology(BT)has grown beyond the scope of cryptocurrencies and can now be applicable in various industries other than finance.In this paper,we investigated the current trends in Ethereum-based decentralized applications(DApps)to be able to categorize and analyze the DApps to measure the complexity of smart contracts behind them,their level of security and their correlation to the maintainability of the DApps.We leveraged the source code analysis,security analysis,and the developmental metadata of the DApps to infer this correlation.Based on our findings,we concluded that the maintainability of Ethereum DApps is proportional to the code size,number of functions,and,most importantly,the number of outgoing invocations and statements in the smart contracts.