Applying soft computing for effort estimation in agile software projects - Literature review
Baumgartner, Axel (2022)
Baumgartner, Axel
2022
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi-fe2022101662175
https://urn.fi/URN:NBN:fi-fe2022101662175
Tiivistelmä
Effort estimation is a challenging and essential part of any software development project. For this reason, the subject has been extensively researched and several techniques have been developed to facilitate the work. For agile software projects, expert judgement is the most popular method of conducting the effort estimation. The method is relying on the experience and knowledge of experts. Despite the popularity of the method, its results are seen as relatively poor. This work explores the possibility of improving the estimation process by utilizing computing power.
In agile software projects, value-producing changes can be made to the product throughout the project. Planning and documenting is conducted incrementally to avoid wasting resources in case of changes. The data and parameters required by algorithmic methods are often not available because few details are known about the final product. Thus, the utilization of computing power for effort estimation in agile projects is challenging. The lack of data is also the reason for the popularity of expert judgement, where the knowledge and experience of experts is the main resource for the estimation method. Soft computing aims to mimic the way the human brain deals with approximations and uncertainties, which enables it to function with partial and noisy data. This is what makes soft computing a potential approach for utilizing computing power in the agile effort estimation process.
The first objective of this thesis is to find out what is the state-of-art in utilizing soft computing techniques for effort estimation in agile projects. The research is conducted as a literature review, and the results are compared to older similar studies. The other objective is to focus on how soft computing has been utilized for planning poker in particular. Planning poker is chosen, because it is the most popular method for using expert judgement in agile teams.
The results imply that the number of publications on the subject has increased since the last related literature review in 2016. The publications were divided into the following categories according to topics: literature reviews, optimization of existing estimates, machine learning models, tools for team use, and the use of non-agile methods by utilizing soft computing. The selected articles did not include any studies focusing explicitly on expert systems or genetic algorithms. Three publications were found that were seen to present a solution that had been used or was intended to be used in planning poker by the development team.
In agile software projects, value-producing changes can be made to the product throughout the project. Planning and documenting is conducted incrementally to avoid wasting resources in case of changes. The data and parameters required by algorithmic methods are often not available because few details are known about the final product. Thus, the utilization of computing power for effort estimation in agile projects is challenging. The lack of data is also the reason for the popularity of expert judgement, where the knowledge and experience of experts is the main resource for the estimation method. Soft computing aims to mimic the way the human brain deals with approximations and uncertainties, which enables it to function with partial and noisy data. This is what makes soft computing a potential approach for utilizing computing power in the agile effort estimation process.
The first objective of this thesis is to find out what is the state-of-art in utilizing soft computing techniques for effort estimation in agile projects. The research is conducted as a literature review, and the results are compared to older similar studies. The other objective is to focus on how soft computing has been utilized for planning poker in particular. Planning poker is chosen, because it is the most popular method for using expert judgement in agile teams.
The results imply that the number of publications on the subject has increased since the last related literature review in 2016. The publications were divided into the following categories according to topics: literature reviews, optimization of existing estimates, machine learning models, tools for team use, and the use of non-agile methods by utilizing soft computing. The selected articles did not include any studies focusing explicitly on expert systems or genetic algorithms. Three publications were found that were seen to present a solution that had been used or was intended to be used in planning poker by the development team.
Kokoelmat
- 512 Liiketaloustiede [502]