Home > Software Quality News > Suggestions for scaling agile
Software Quality News:
EMAIL THIS

Suggestions for scaling agile

By Colleen Frye, News Writer
08 Oct 2008 | SearchSoftwareQuality.com

Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   

Continued from "What it takes to scale agile development".

Damon Poole, founder of AccuRev
Damon Poole, founder, AccuRev

Both Ambler and Poole recommend practices to help better scale agile. Ambler said some upfront, lightweight modeling is key.

"Traditional development is based on the concept that you need to think through everything up front in detail, which is a wonderful theory, but practice shows that's not the case," Ambler said. "Detailed upfront modeling increases risk, and you end up implementing functionality [that] stakeholders don't want. With agile modeling, you get value from modeling, but you're not taking the hit of extraneous documentation and extraneous detail."

Ambler also said some extra coordination is required to scale agile. At the project level, "Scrum masters have to interact and make sure sub-teams are going in the same direction, and product owners of each team have to negotiate priorities to make sure teams are working in the right order."

There also has to be coordination at the architectural level as interfaces and requirements evolve, he said, to negotiate technical issues, "so architectural coordinators on each team have to interact."

One agile practice that Poole said doesn't scale well is continuous integration (CI), which is why he recommends multi-stage CI. With multiple teams all doing continuous integration, he explained, the impact on the teams and the mainline code grows exponentially. With multi-stage CI, "you as the individual developer don't get changes from everyone all the time and check in your changes all the time. You check in [code] when it's working and get other's changes when you're ready."

How to make agile software development work
You hear people talking about agile software development, but what does it really mean? This guide explains how to implement agile development, how agile differs from traditional development methods, and tools to help agile projects succeed.

Read the guide

The idea is to compartmentalize, he said. "It's implemented with branches. With multi-stage CI you have a branch for each team, and they check in code like that's their mainline. If it goes well, you move the change on immediately, so you're moving as fast as you can but no faster. But if your team has a problem, it doesn't affect other teams."

What about those 3x5 cards and standup meetings? If a large team is split into smaller, co-located subteams, those methods can still work, Poole said, but they are clearly more problematic for distributed teams.

Agile practices in traditional environments
Interestingly, Poole said organizations that do traditional development can incorporate some agile practices that will help scale a project, such as breaking the project into smaller teams, co-locating teams, and holding stand-up meetings.

"I'm a fan of agile, but to me it doesn't matter whether agile is successful," he said. "It only matters if software development in general is more successful, and agile brings more tools to the table."



Tags: Implementing agileAgile software developmentScrum software developmentVIEW ALL TAGS

Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   


RELATED CONTENT
Implementing agile
How to be an agile project manager (PM)
Lean economic times call for Lean, agile software development
Agile development: It isn't just for small projects
How to switch your team to Agile
Software development groups take many routes to Agile
Even Shatner says development needs to be flexible
Using iterations to help balance priority and risk
Agile development: Not just for 'agilists' anymore
Agile Software Development: The Cooperative Game, 2nd Edition -- Chapter 3, Communicating, Cooperating Teams
Case study: Agile development moves at Rackspace

Agile software development
Agile development growing, but problems remain
Agile, IBM tools boost Merge Healthcare's software quality
Agile development reshaping requirements
Agile software development tutorial: How to transition to agile
Agile software development tutorial: Pros and cons of agile
Agile software development tutorial: Agile requirements gathering
Agile software development tutorial: Agile project management, tools
Agile software development tutorial: Agile testing
Reporter's Notebook: Jack Vaughan on agile methodology
Best practices for moving testers from waterfall to agile development

Scrum software development
Agile development growing, but problems remain
Turning agile skeptics to believers at Blueprint Systems
How Covad made the switch to a distributed agile development process
Can traditional project management and agile development coexist?
How teams transition to agile development methodologies
Agile methodology benefits software outsourcing providers
Big Blue dog learns new tricks: How IBM Software Group moved to agile
Agile development: It isn't just for small projects
Clean Code: A Handbook of Agile Software Craftsmanship, Chapter 1 -- What Is Clean Code?
Static analysis tool helps software engineers find bugs during builds

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
acceptance test  (SearchSoftwareQuality.com)
iteration  (SearchSoftwareQuality.com)
planning board  (SearchSoftwareQuality.com)
planning game  (SearchSoftwareQuality.com)
release  (SearchSoftwareQuality.com)
release plan  (SearchSoftwareQuality.com)
spike  (SearchSoftwareQuality.com)
stand-up  (SearchSoftwareQuality.com)
story  (SearchSoftwareQuality.com)
timebox  (SearchSoftwareQuality.com)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary



Software Development Methods - Extreme Programming, Agile Programming, Scrum
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2006 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts