Field Experiences with eXtreme Programming: Developing an Emergency Response System
- 1 April 2006
- journal article
- Published by Taylor & Francis Ltd in Journal of Management Information Systems
- Vol. 22 (4), 39-68
- https://doi.org/10.2753/mis0742-1222220403
Abstract
EXtreme Programming (XP) is a well-known agile software development method. While a number of reports have been published on explaining the XP methodology and the perceived benefits when using XP for system development in recent years, less is known about the actual operationalization of the XP principles. This paper presents an action research study reporting on the experiences of implementing the XP methodology in a development project for a Web-based, distributed information system. The goal of this research was to increase the understanding of how to effectively operationalize XP techniques so that the system being developed catered to today's fast-paced technological environment by allowing the developers to respond quickly to innovative and changing requirements. Overall, the research indicates that most of the XP principles could be effectively implemented; however, three of the principles required modification (i.e., testing, pair programming, customer collocation). Several benefits resulted from the usage of XP. The rapid prototyping enabled information technology developers and users to clarify system requirements, communicate openly, quickly build rapport, and create an interface that was easy to use and learn. Further, the research found that where the technology was new or foreign to the development team and the user, the XP process was flexible enough to support several iterations of technology and produce prototypes in a timely manner. Pair programming appeared to work effectively and offer value; however, it is not always practically feasible.Keywords
This publication has 12 references indexed in Scilit:
- Value-Based Software EngineeringPublished by Springer Science and Business Media LLC ,2006
- Matching methodology to problem domainCommunications of the ACM, 2004
- A Unified Model of Requirements ElicitationJournal of Management Information Systems, 2004
- Integrating Collaborative Processes and Quality Assurance Techniques: Experiences from Requirements NegotiationJournal of Management Information Systems, 2004
- Are agile methods good for design?Interactions, 2004
- On the economic evaluation of XP projectsPublished by Association for Computing Machinery (ACM) ,2003
- Recognizing and responding to "bad smells" in extreme programmingPublished by Association for Computing Machinery (ACM) ,2002
- Agile software development: the business of innovationComputer, 2001
- A Dynamic Framework for Classifying Information Systems Development Methodologies and ApproachesJournal of Management Information Systems, 2000
- A spiral model of software development and enhancementComputer, 1988