Talking last year with Scott Ambler who is IBM’s global lead for Agile development at the company’s Rational Software Conference, I made the mistake of suggesting that the methodologies and processes behind Agile almost form a kind of religion for developers who follow its creed.
If you look back at my report last year, you’ll see that I tried to work this issue in. Ambler in fact told me in no uncertain terms that it is not a question of faith and I spoke to him again this week at length to find out what I should have said.
“Agile is a process and is sometimes thought of as a religion, but this just gets in the way in my opinion – I want to get past the rhetoric and get down to fact-based arguments,” said Ambler.
… and I tell you, Ambler is a really relaxed and laid back guy – but he’s straight down the line with this one and he’s not prepared to mess around.
IBM’s Scott Ambler
We actually started having this discussion on the basis of how SCM dovetails with Agile if it needs to scale. The argument being that SCM becomes even more important in Agile because of the large amount of shared artefacts. So as Agile works in a very iterative manner it’s critical to be able to lock this stuff and feed into and out of a central code repository.
“To really scale Agile you need to address architecture issues and think about scaling from the start as you strategically break up teams. You need to be doing systems integration between these teams on a regular basis – and there needs to be a major focus on teamwork and collaboration,” said Ambler.
Well, we know IBM can’t say the words ‘teamwork and collaboration’ enough. It has themed it’s last four global developer conferences around team structure and integration.
“In terms of scaling requirements – there is no such thing as a really large team, there are only teams made up of sub teams, each looking after building their own sub systems. Each sub system will have its own requirements and cross team requirements must not clash in terms of their dependencies on the central code base - NOT only this, but they must also all work in tandem with the overall macro scale requirements of the entire project. Plus, of course, these requirements will always change over time,” said Ambler.
To be honest with you, we had this discussion outside of the context of any press release or conference of any shape – and that made it so much of a better briefing. Religion or not, I was impressed by Ambler’s refusal to adopt a cute branding tag to promote his technology and insist upon a resolute focus on facts – and just the facts.
It’s not all good news for Agile fans (whoops – almost said disciples!) though and as I was on the hunt for Agile opinions I spoke to analyst Jon Collins from Freeform Dynamics who pointed me to an opinion he had stated previously.
According to Collins, “Agile approaches are not just something you can pick up and run with. There is little room for error: timescales are divided into variously named short periods (e.g. ‘sprints’, or ‘timeboxes’), which are kicked off with a prioritisation exercise as to what is to be delivered and finished off with a delivery. If something goes wrong, there can be a domino effect on other parts of the project. To all intents and purposes, Agile approaches can be intense and rewarding, but the one thing they are reliant on is a level of structure and co-ordination.”
For a nice leveling statement I also spoke late on Thursday to Dave Robertson who is VP of International for SCM specialists Perforce. He told me, “For all the recent excitement on the subject, the principle values of Agile software development were enshrined by a number of leading software engineers in the ‘Manifesto for Agile Software Development’ back in early 2001. Crucial to these values are that individuals and interactions are more important than the processes and tools being used.”
… and guess what? Borland wanted to send me an opinion too, so leaving out the lovely bits of news they sent me about their latest awards, global rankings, speed and price, here’s the technology comment freshly prepared for ZDNet.co.uk…
“Borland has transitioned 65% of our 300-person distributed development organisation to Agile. As a result, we have achieved a 100% increase in product releases per year; reducing ‘open’ issues from release to release by 50% and streamlined reporting and project administration. We’re not saying Agile is easy or without its challenges – the transformation process takes time and commitment in order to achieve results. Yet, done properly, an ‘Agile Shift’ can revolutionise the way a business operates, not just in software development or IT, but across the wider organisation,” said Andy Seager, global vice president of product strategy at Borland.
So there you have it. Don’t people get passionate when they talk about Agile though? It’s good isn’t it? I mean, I wish we could get this fired up about every aspect of software development.
I was on the phone to a guy from a hosting company yesterday and he told me that his software looked after the automated billing function for virtualised services and that it wasn’t the sexiest aspect of the technology offering from his company. I told him it was – it’s the commercial front end!
Anyway, don’t they say to never talk about sex, politics or religion if you want to avoid an argument? Perhaps we should bring all three into technology reporting to stoke up the fire then!