Feeds

XP daddy: go incremental on design

Safe steps for hectic times

Internet Security Threat Report 2014

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.

Remote control for virtualized desktops

More from The Register

next story
Be real, Apple: In-app goodie grab games AREN'T FREE – EU
Cupertino stands down after Euro legal threats
Download alert: Nearly ALL top 100 Android, iOS paid apps hacked
Attack of the Clones? Yeah, but much, much scarier – report
Microsoft: Your Linux Docker containers are now OURS to command
New tool lets admins wrangle Linux apps from Windows
Bada-Bing! Mozilla flips Firefox to YAHOO! for search
Microsoft system will be the default for browser in US until 2020
Facebook, working on Facebook at Work, works on Facebook. At Work
You don't want your cat or drunk pics at the office
Soz, web devs: Google snatches its Wallet off the table
Killing off web service in 3 months... but app-happy bonkers are fine
prev story

Whitepapers

Why cloud backup?
Combining the latest advancements in disk-based backup with secure, integrated, cloud technologies offer organizations fast and assured recovery of their critical enterprise data.
Getting started with customer-focused identity management
Learn why identity is a fundamental requirement to digital growth, and how without it there is no way to identify and engage customers in a meaningful way.
How to determine if cloud backup is right for your servers
Two key factors, technical feasibility and TCO economics, that backup and IT operations managers should consider when assessing cloud backup.
High Performance for All
While HPC is not new, it has traditionally been seen as a specialist area – is it now geared up to meet more mainstream requirements?
How to simplify SSL certificate management
Simple steps to take control of SSL certificates across the enterprise, and recommendations centralizing certificate management throughout their lifecycle.