An algorithmic-based software change effort prediction model using change impact analysis for software development

Software changes are inevitable due to the dynamic nature of the software development project itself. Some software development projects practice their own customised methodology but mostly adopt two kinds of methodologies; Traditional and Agile. Traditional methodology emphasizes on detailed planni...

Full description

Saved in:
Bibliographic Details
Main Author: Basri, Muhammad Sufyan
Format: Thesis
Language:English
Published: 2016
Subjects:
Online Access:http://eprints.utm.my/id/eprint/81777/1/MuhammadSufyanBasriPAIS2016.pdf
http://eprints.utm.my/id/eprint/81777/
http://dms.library.utm.my:8080/vital/access/manager/Repository/vital:125868
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Software changes are inevitable due to the dynamic nature of the software development project itself. Some software development projects practice their own customised methodology but mostly adopt two kinds of methodologies; Traditional and Agile. Traditional methodology emphasizes on detailed planning, comprehensive documentation and extensive design that resulted a low rate of changes acceptance. In contrast, Agile methodology gives high priority on accepting changes at any point of time throughout the development process as compared to the Traditional methodology. Among the primary factor that has direct impact on the effectiveness of the change acceptance decision is the accuracy of the change effort prediction. There are two current models that have been widely used to estimate change effort which are algorithmic and non-algorithmic models. The algorithmic model is known for its formal and structural way of estimation and best suited for Traditional methodology. While non-algorithmic model is widely adopted for Agile methodology of software projects due to its easiness and requiring less work in term of effort predictability. The main issue is that none of the existing change effort prediction models is proven to suits for both, Traditional and Agile methodology. Additionally, there is as yet no clear evidence of the most accurate change effort prediction model for software development phase. One of the method to overcome these challenges is the inclusion of change impact analysis in the estimation process. The aim of the research is to overcome the challenges of change effort prediction for software development phase: inconsistent states of software artifacts, repeatability using algorithmic approach and applicability for both Traditional and Agile methodologies. This research proposed an algorithmic change effort prediction model that used change impact analysis method to improve the accuracy of the effort estimation. The proposed model used a current selected change impact analysis method for software development phase which is the SDP-CIAF (Software Development Phase-Change Impact Analysis Framework). A software prototype was also developed to support the implementation of the model. The proposed model was evaluated through an extensive experimental validation using case scenarios of six real Traditional and Agile methodologies software projects. A comparative study was also conducted for further validation and verification of the proposed model. The analysis result showed an accuracy improvement of 13.44% average mean difference for change effort prediction over the current selected change effort prediction model. The evaluation results also confirmed the applicability for both Traditional and Agile methodologies.