Abstract
From the perspective of a ‘sympathetic sceptic’, this talk will discuss the issues around the development of critical systems – systems where the costs of failure are very high – and whether or not extreme programming practices can be adapted and used in critical systems engineering. I will start by discussing the characteristics of critical systems development, such as the need to justify claims about the system dependability, and the differences in development culture between XP and critical systems development. I will then go on to discuss how different XP practices reduce or increase the risks of software failure, especially when the reality of implementing XP is considered. I will identify weaknesses in the XP process, such as the use of user stories for requirements definition, that have to be addressed before XP practices will be considered by the critical systems community. I will then suggest how the cultural barriers between the communities might be broken down and will propose how it might be possible to adapt XP practice to the development of some types of critical system by introducing ‘dependability spikes’ into the XP process.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2005 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Sommerville, I. (2005). Extreme Programming for Critical Systems?. In: Baumeister, H., Marchesi, M., Holcombe, M. (eds) Extreme Programming and Agile Processes in Software Engineering. XP 2005. Lecture Notes in Computer Science, vol 3556. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11499053_23
Download citation
DOI: https://doi.org/10.1007/11499053_23
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-26277-0
Online ISBN: 978-3-540-31487-5
eBook Packages: Computer ScienceComputer Science (R0)