How extreme does extreme programming have to be? Adapting XP practices to large-scale projects
Lan Cao, K. Mohan, Peng Xu, Balasubramaniam Ramesh
Abstract
Lan Cao, K. Mohan, Peng Xu, Balasubramaniam Ramesh
Abstract
The need to develop software at Internet speed and accommodate changes during the entire software development life cycle has made lightweight or agile development methodologies like extreme programming popular. However, such methodologies have been considered to be beneficial for small and medium sized projects, with small teams. In this paper, based on a case study in an organization that develops large-scale, complex software using a modified form of extreme programming, we highlight the key differences between agile principles proposed in prior literature and the agile practices that are suitable for large-scale, complex software development. Based on these differences, we propose general guidelines on tailoring agile development methodologies to make them suitable for the development of large, complex software systems.
OpenAlex reports 109 citations for this work. Citation counts describe recorded attention and do not establish research quality.
A contribution statement is not available in the OpenAlex record.
Method details are not available in the OpenAlex metadata.
Findings are not separately available in the OpenAlex metadata.
Limitations are not available in the OpenAlex metadata.
Application details are not available in the OpenAlex metadata.
The need to develop software at Internet speed and accommodate changes during the entire software development life cycle has made lightweight or agile development methodologies like extreme programming popular. However, such methodologies have been considered to be beneficial for small and medium sized projects, with small teams. In this paper, based on a case study in an organization that develops large-scale, complex software using a modified form of extreme programming, we highlight the key differences between agile principles proposed in prior literature and the agile practices that are suitable for large-scale, complex software development. Based on these differences, we propose general guidelines on tailoring agile development methodologies to make them suitable for the development of large, complex software systems.
Key concepts: Extreme programming, Agile software development, Extreme programming practices, Software development, Computer science, Software engineering, User story, Software development process