Usage and perceptions of spikes in agile software development: An exploratory study in an industrial context
Usage and perceptions of spikes in agile software development: An exploratory study in an industrial context
New trends in the software development industry have led many organisations to find a viable solution to their client’s needs while producing quality software in a short period of time using cost effective techniques within a changing and unstable environment. The use of spikes in agile software development (ASD) can enable organisations to produce quality software by employing the required technical expertise, planning the entire development cycle, and ensuring that the client’s requirements are adhered to. Spikes can be an essential component of the agile development cycle because they assist the teams to identify any uncertainty in a user story, leading to a more effective solution to the problem. A spike is a period of time spent investigating aspects of a project, especially relating to a user story, such as the appropriate architecture, user interface or technology to be used, so that these can be identified more precisely. This study aims to examine the use of spikes in ASD empirically. It explores the role, efficiency, and effectiveness of spikes in various software development domains through the application of different agile methods. An exploratory research design is adopted to achieve this purpose, using mixed methods to collect qualitative and quantitative data concurrently from the agile practitioners recruited to the study. Moreover, this study explores the common spikes success factors (CSSFs) influencing their use. This is achieved using semi-structured interviews, focus groups, and questionnaires with software development practitioners. The findings are validated using case studies conducted with three focus groups from different software companies, as well as 17 individual agile practitioners from around the world. The study findings showed the impact of spikes on risk reduction and their role in the estimation process, as well as how their use is related to the team’s understanding, and the consistency and reliability of the story estimate. Also, the study demonstrated that the effective application of spikes might be influenced by various factors related to the project, process, organisation, people, and technical aspects of the software being developed. A variety of statistical test analyses were applied to provide quantitative evidence of the strength of the relationships between variables and detect outliers or other anomalous data points. The study establishes that spikes are primarily used for risk management and are found to be efficient and effective, thereby improving the quality of software products, as demonstrated in Chapter 5 of this thesis. Furthermore, the study identified the CSSFs that enhance the application of spikes in ASD by ensuring that the spike is well-planned, structured, and focused, which aids in achieving the desired outcome. The CSSFs were evaluated by agile practitioners in phase three of this study (see Chapter 8)
University of Southampton
Hashimi, Hussein Ali A
1d347743-bfa9-4133-b23c-45d837f4e00f
April 2023
Hashimi, Hussein Ali A
1d347743-bfa9-4133-b23c-45d837f4e00f
Gravell, Andrew M
f3a261c5-f057-4b5f-b6ac-c1ca37d72749
Hashimi, Hussein Ali A
(2023)
Usage and perceptions of spikes in agile software development: An exploratory study in an industrial context.
University of Southampton, Doctoral Thesis, 314pp.
Record type:
Thesis
(Doctoral)
Abstract
New trends in the software development industry have led many organisations to find a viable solution to their client’s needs while producing quality software in a short period of time using cost effective techniques within a changing and unstable environment. The use of spikes in agile software development (ASD) can enable organisations to produce quality software by employing the required technical expertise, planning the entire development cycle, and ensuring that the client’s requirements are adhered to. Spikes can be an essential component of the agile development cycle because they assist the teams to identify any uncertainty in a user story, leading to a more effective solution to the problem. A spike is a period of time spent investigating aspects of a project, especially relating to a user story, such as the appropriate architecture, user interface or technology to be used, so that these can be identified more precisely. This study aims to examine the use of spikes in ASD empirically. It explores the role, efficiency, and effectiveness of spikes in various software development domains through the application of different agile methods. An exploratory research design is adopted to achieve this purpose, using mixed methods to collect qualitative and quantitative data concurrently from the agile practitioners recruited to the study. Moreover, this study explores the common spikes success factors (CSSFs) influencing their use. This is achieved using semi-structured interviews, focus groups, and questionnaires with software development practitioners. The findings are validated using case studies conducted with three focus groups from different software companies, as well as 17 individual agile practitioners from around the world. The study findings showed the impact of spikes on risk reduction and their role in the estimation process, as well as how their use is related to the team’s understanding, and the consistency and reliability of the story estimate. Also, the study demonstrated that the effective application of spikes might be influenced by various factors related to the project, process, organisation, people, and technical aspects of the software being developed. A variety of statistical test analyses were applied to provide quantitative evidence of the strength of the relationships between variables and detect outliers or other anomalous data points. The study establishes that spikes are primarily used for risk management and are found to be efficient and effective, thereby improving the quality of software products, as demonstrated in Chapter 5 of this thesis. Furthermore, the study identified the CSSFs that enhance the application of spikes in ASD by ensuring that the spike is well-planned, structured, and focused, which aids in achieving the desired outcome. The CSSFs were evaluated by agile practitioners in phase three of this study (see Chapter 8)
Text
Hussein_Al Hashimi_ Final_Thesis_After_Corrections
- Version of Record
Text
PTD_Thesis_Hussein-SIGNED
Restricted to Repository staff only
More information
Published date: April 2023
Identifiers
Local EPrints ID: 476999
URI: http://eprints.soton.ac.uk/id/eprint/476999
PURE UUID: 2729561a-a0da-4cf7-b9c5-c481203cd822
Catalogue record
Date deposited: 23 May 2023 16:35
Last modified: 17 Mar 2024 02:28
Export record
Contributors
Author:
Hussein Ali A Hashimi
Thesis advisor:
Andrew M Gravell
Download statistics
Downloads from ePrints over the past year. Other digital versions may also be available to download e.g. from the publisher's website.
View more statistics