Feeds

XP daddy: go incremental on design

Safe steps for hectic times

Secure remote control for conventional and virtual desktops

QCon 2008 Age mellows us all and the co-inventor of extreme programming (XP) and an early Smalltalk advocate, Kent Beck, is apparently no exception.

During his presentations at QCon this week Beck advocated the principle of taking "safe steps" in the evolution of a software design to ensure that technical risk is properly managed.

Beck noted wryly that traditional approaches to software development ran contrary to economic realities. Yet, despite bold attempts at change - such as experimental work on URL-driven design (UDD), literally generating HTML code in real time in response to a web request, during the early days of XP - he has settled on a measured approach.

"Received wisdom is that if you spend time up front getting the design right you avoid costs later. But the longer you spend getting the design right the more your upfront costs are and the longer it takes for the software to start earning. So a rational model of software is to design it quickly - the economic pressure to improvise presents an interesting challenge," Beck told QCon.

Referring back to his early work on XP and UDD, Beck said: "I had long been a fan of incremental design - but I'd never thought until then of how you could take it to the limit and push it to this level."

Needless to say, the approach never went beyond a theoretical possibility and Beck's approach now relies on a more measured philisophy. "Design should be easy in the sense that every step should be obviously and clearly identifiable. Simplify elements to make change simple so you can manage the technical risk," Beck said

In his keynote speech on agile development Beck emphasized the importance of teamwork and relationships alongside purely technical expertise. Beck separately told Reg Dev that the main trend in agile development is towards transparency and accountability because deployment cycles are speeding up.

"Organizations want small changes in functionality on a more regular basis. An organization like Flickr deploys a new version of its software every half hour. This is a cycle that feeds on itself. The business looks at it and says: 'Yes we want to be able to respond quickly so give us something today'. Agile development enables us to deliver incremental change - not because it is better but because it matches what is going on outside."

Beck said this mandates a cultural change in software development with an emphasis on more transparency. "You need a cultural change first - developers can still be uncomfortable revealing that they are tracking bugs, which should not have been there."®

The Register is a media sponsor of QCon London 2008.

Choosing a cloud hosting partner with confidence

More from The Register

next story
Microsoft on the Threshold of a new name for Windows next week
Rebranded OS reportedly set to be flung open by Redmond
SMASH the Bash bug! Apple and Red Hat scramble for patch batches
'Applying multiple security updates is extremely difficult'
Business is back, baby! Hasta la VISTA, Win 8... Oh, yeah, Windows 9
Forget touchscreen millennials, Microsoft goes for mouse crowd
Apple: SO sorry for the iOS 8.0.1 UPDATE BUNGLE HORROR
Apple kills 'upgrade'. Hey, Microsoft. You sure you want to be like these guys?
ARM gives Internet of Things a piece of its mind – the Cortex-M7
32-bit core packs some DSP for VIP IoT CPU LOL
Lotus Notes inventor Ozzie invents app to talk to people on your phone
Imagine that. Startup floats with voice collab app for Win iPhone
prev story

Whitepapers

Providing a secure and efficient Helpdesk
A single remote control platform for user support is be key to providing an efficient helpdesk. Retain full control over the way in which screen and keystroke data is transmitted.
Intelligent flash storage arrays
Tegile Intelligent Storage Arrays with IntelliFlash helps IT boost storage utilization and effciency while delivering unmatched storage savings and performance.
Beginner's guide to SSL certificates
De-mystify the technology involved and give you the information you need to make the best decision when considering your online security options.
Security for virtualized datacentres
Legacy security solutions are inefficient due to the architectural differences between physical and virtual environments.
Secure remote control for conventional and virtual desktops
Balancing user privacy and privileged access, in accordance with compliance frameworks and legislation. Evaluating any potential remote control choice.