Please use this identifier to cite or link to this item: http://dspace.dtu.ac.in:8080/jspui/handle/repository/21437
Title: EMPIRICAL VALIDATION OF CROSS-PROJECT METHODOLOGIES FOR SOFTWARE QUALITY PREDICTIVE MODELING
Authors: MEENA, SHWETA
Keywords: EMPIRICAL VALIDATION
SOFTWARE QUALITY
PREDICTIVE MODELING
CROSS-PROJECT METHODOLOGIES
Issue Date: Jul-2024
Series/Report no.: TD-7743;
Abstract: Nowadays, the size of software's is increasing every day. The challenge faced by software developers and experts is to develop large and detailed software projects within a reasonable amount of time and with a reasonable amount of resources by satisfying the customer's requirements. These days, the focus of organizations is on the creation of quality software within a specified budget and time. However, the company focuses on delivering quality software considering the quality attributes satisfied by the software from the developer and customer perspective. Thus, developers keep a check on the software quality throughout all the phases of development. Software quality needs to be ensured from the beginning of requirement gathering to the delivery of software to the end user. However, the software requires continuous updates with technological advancements or any kind of updates requested in customer requirements after deployment at the customer site. However, after the deployment of software at the customer site, it also ensures software quality in terms of maintainability, user-friendliness, and reliability. The quality of software is important from every perspective, considering its internal and external qualities. Thus, considering internal quality attributes, software developers focus on aspects related to the software's structure, design, and implementation, such as maintainability, flexibility, scalability, and reusability. Thus, considering external quality attributes, software developers focus on aspects related to the software's behavior and performance as perceived by users, such as functionality, reliability, performance, and usability. Moreover, the software quality is also affected by the amount of data used to develop software. In the initial stages, developers design a prototype considering conventional software. Due to this, the performance of developed software is not much better than conventional v software. One of the ways to improve quality is to develop predictive models using real world data. The prediction models are developed using software's internal properties, such as cohesion, coupling, and inheritance. The prediction models can be developed using Machine Learning (ML) techniques by dividing the data into one part as training data and another part as testing/ validation. It has been seen that researchers tend to validate the ML models from the dataset used for development, which resulted in producing biased and non-generalizable results. Keeping this in view, it is important to develop models using training data from one project and validate the same models using validation data derived from another project. This concept is often known as Cross-Project Validation (CPV). Furthermore, the objective of CPV is to develop prediction models that produce generalized and unbiased results. Thus, this work focuses on developing and validating models using CPV techniques. This research is focused on various techniques to improve the performance of models developed using CPV methodology. Due to the limited availability of data, the idea of cross-project arises. The cross-project prediction model is further categorized into two categories based on types of projects and types of features in train data and test data. The work of this research is to explore Intra-Project validation and Inter Project validation. The feasibility of CPV with Intra-Project validation is analyzed in this research. The research is focused on using existing models for predictions on future data. The analysis conducted in this study considered ML techniques. Also, the primary objective of conducting an experiment in this study is to enhance the quality of software's considering four important aspects defect, change, maintenance, and effort. The study mainly focused on defect and change prediction models. Another focus of this research is to explore and validate the applicability of Transfer Learning (TL). TL is one of the CPV techniques. Using TL concept, the predictive model is to be designed and will be used to validate other project data. The main concept is that one project is used as training data, which will be used for creating vi a prediction model, and that model is used to validate other project data. Lastly, this work focuses on inter-version project validation, where different versions of the same project are used for training and testing data. Thus, a prediction model will be created for the inter-version project validation. Furthermore, the impact of feature selection techniques is also analyzed for cross-project models. A comparison was performed among ranking-based and greedy search algorithms to design efficient cross-project models for unseen datasets. The impact of TL models with cross-project models is also analyzed. The thesis also evaluates the CPV models for enhancing the maintainability and reusability of projects. We believe that this study's research outcomes would help improve the quality of software prediction models based on the concept of cross project methodologies by developing software projects in a reasonable time and cost. This research's findings would benefit academicians, researchers, and industry experts in developing efficient software with better quality.
URI: http://dspace.dtu.ac.in:8080/jspui/handle/repository/21437
Appears in Collections:Ph.D. Computer Engineering

Files in This Item:
File Description SizeFormat 
SHWETA MEENA pH.d..pdf1.69 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.