Access the full text.
Sign up today, get DeepDyve free for 14 days.
BRIEFING by Duncan Pierce EXTREME PROGRAMMING (XP) is a lightweight software development process which enables small teams to work closely with customers to deliver high quality systems to regular milestones. XP is well established in the USA and is doing well in Europe and especially in the UK, where it is making the transition from early adopters typically small companies to big business. After leading the adoption of object-oriented technologies a decade ago, the financial sector is driving XP take-up, with some teams already well established and a number of pilot projects beginning. The problem with traditional development is that too many projects fail to deliver usable oversimplification. As ever, it is easier to add complexity than to remove it. Quality is promoted through aggressive automated testing. It is customary in XP to write automated tests for every new feature before implementing it. Ensuring the test fails before the feature is implemented even helps to validate the test itself. Test writing is also used to drive the design by using the test as a kind of mini-use case for the code. Another major technique for promoting quality is refactoring: improving the design and structure of existing code without changing what it does. In conjunction with a comprehensive suite of automated tests, refactoring makes it possible to make radical design changes in safety. Recent improvements in tool support make this a surprisingly quick process. XP exploits refactoring to provide `just in time', or perhaps more accurately `just enough' design for the system to implement its requirements cleanly and simply. Maintaining design documentation can be difficult and costly. Because of this, documentation often falls into disuse. For developers, XP favours maintaining a well structured codebase and a shared verbal understanding of its architecture. Rather than showing customers design documents, XP shows them the system that has been developed so far. XP works hard to bring customers closer to the development process, stipulating that every project should have ready access to an on-site customer, and even arranging the development process around regular customer-driven planning sessions at the start of each iteration. There are many advantages for developers, too. They contribute to the process at every level they are the technical architects, the testers and everything in between and there are many opportunities to extend skills and experience. Another boon for over-stretched programmers is the insistence on a 40-hour working week. Tired developers make mistakes. But for developers, XP is not without a price: it is a more disciplined and intensive style of working than many will be used to. XP cannot be regarded as a panacea, but it should give renewed hope to organisations struggling to manage their software projects. Duncan Pierce is a senior consultant at Escala, a consultancy and training company specialising in XP Java and XML-related technologies. He helped , organise the UK's first XP workshop last December. The BCS Sussex Branch has started a local forum on extreme programming: see page 8. solutions, because they respond slowly to business changes. For long running projects, changing business priorities and processes often drastically reduce the value of the systems they eventually deliver. Some projects get so bogged down in changes that they fail to deliver anything at all. XP tackles this by promoting regular feedback using an iterative process. Each iteration provides a complete cycle, from requirements capture through coding and testing to delivery to the customer and typically takes just three weeks. Small, incremental investments made in conjunction with three-week milestones drastically cut the risk of a project running out of control. Requirements capture and planning take place at the start of each iteration. The presence of a working though incomplete system helps customers to analyse their requirements, because they gain rapid feedback on what their previous requests mean in software terms. This avoids another serious risk with more traditional processes: customers soon get what they really needed instead of the first thing they asked for. Along with feedback, simplicity is another major theme in XP A popular slogan is, `What is . the simplest thing that could possibly work?' It often turns out that it actually does work, and the time saved more than makes up for the occasional 28 The Computer Bulletin May 2002
ITNow (formerly The Computer Bulletin) – Oxford University Press
Published: May 1, 2002
You can share this free article with as many people as you like with the url below! We hope you enjoy this feature!
Read and print from thousands of top scholarly journals.
Already have an account? Log in
Bookmark this article. You can see your Bookmarks on your DeepDyve Library.
To save an article, log in first, or sign up for a DeepDyve account if you don’t already have one.
Copy and paste the desired citation format or use the link below to download a file formatted for EndNote
Access the full text.
Sign up today, get DeepDyve free for 14 days.
All DeepDyve websites use cookies to improve your online experience. They were placed on your computer when you launched this website. You can change your cookie settings through your browser.