Where Agile development works and where it doesn't: A user story

Agile development is continuing to gain momentum in the software development industry, for British Airways, whom recently joined the agile ranks, there are still areas where waterfall is their preferred methodology.

Whether you're a tester, developer or a regular Joe, you are probably familiar with the headache of booking flights

and air travel in general. Software testers and developers often fall victim to similar deployment and iteration issues. Everyone just wants to get off the ground in the quickest, least stressful way while still enjoying the journey.

When British Airways (BA) experienced some take-off issues in software development, software engineer Mike Croucher was called in to find a way to sort them out quickly. He found that, despite having a willing and capable development team, there were serious organization and communication ailments. These ailments were delaying application delivery, prolonging tests and adding to a surplus of new functional features that were being forced to the back burners. In particular, BA needed to improve delivery schedules, employee tracking and numerous aspects of BA's website, BA.com.

Croucher already had a 30-year career in airline software development behind him. In fact, he was already working for BA as IT relationship manager. Taking on the role of chief software engineer, he analyzed BA's development process. "I recognized flaws in the way in which our iterations were constructed and deployed. We were missing the benefits of flexibility and predictability; everything seemed poorly scripted," he said.

Croucher recommended a move to agile development. He'd been keen on agile since first hearing of it in 2002. "In that time, there were many developers talking about going lean and providing scalability in iterations," he said.

Next, Croucher's team set about finding and hiring a reputable firm to handle BA's in a transition to agile. Five major agile consultancy firms were evaluated; but BA chose emergn, a smaller firm with familiar names and a positive track record.

Both Croucher and emergn's consultants agreed there are areas of development where agile is not an appropriate choice or, in some cases, even an option. "Approximately 25% of our organization has already changed over to agile. And we are still working to grow that number; but in the process of growing that number we've identified areas where we are certain waterfall development is our only choice," Croucher said.

Choosing the best agile team
Emergn helped BA 's management analyze each development team member, specifically searching for attributes useful in agile development.

"We try to identify individuals we feel have best embraced the cultural change agile poses," said Phil Black, vice president of delivery for emergn. "We work closely with them, teaching them proven tactics to make iterations compile smoothly and at an accelerated rate."

According to Black, people who are strong candidates for becoming agile coaches have many of the following traits:
  • They are self-starters
  • They're self-motivated
  • They are passionate
  • They're quick to assist others and make suggestions
  • They have great verbal and nonverbal communication skills
"We look at the people who communicate their ideas well and work collaboratively without being instructed to," Black said. "We train these individuals to become team leaders and agile coaches within the group."

BA chooses to use the waterfall methodology in areas where there are a lot of requirements that can't be altered; where user communities are long established and the existing infrastructure is functioning at a level that can't be easily topped; and where major operational integration software has been built around an SOA foundation. "These are the 'big bang' areas where a tremendous amount of continuous integration is required and there is no room for discussion or testing of barriers," said Croucher.

So the obvious question becomes, "How do you know when agile is the best choice for a development initiative?"

Go with agile when there's an area where your user base is requiring speed, flexibility and customer-oriented design; when you've identified an area where small functionality can be developed and deployed earlier, Croucher advises.

After the initial agile transition tasks were completed, the project changed gears, and the development team focused on improving other functions of BA.com, including improving online flight booking, air mile calculators and British Airways web channel. The guiding philosophy was not to alter the customer experience on BA.com, just to improve all aspects of it.
Moving development projects to agile helped BA bring an idea into production within eight weeks. Previously, projects took an average of nine months for delivery.

Dig deeper on Agile Software Development (Agile, Scrum, Extreme)

Pro+

Features

Enjoy the benefits of Pro+ membership, learn more and join.

0 comments

Oldest 

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

SearchSOA

TheServerSide

SearchCloudApplications

SearchAWS

SearchBusinessAnalytics

SearchFinancialApplications

SearchHealthIT

Close