Why Agile Is a Double-Edged Sword When It Comes to Quality
When new methodologies or concepts gain steam (and approach the point of universal acclaim), you assume that implementing them will help just about every aspect of your organization. Whenever you hear someone preach the good word of agile, you’re told about integrating development and testing, pushing out releases much more quickly, and better overall team communication.
And when it comes to quality, agile very often leads to better applications and just stronger testing overall. However, the rapidity of agile can make it even more difficult to keep up with bugs since you’re iterating at speeds teams often just aren’t used to.
Speaking in an interview with StickyMinds, Sam Kaufman, the founder and CTO of BugReplay, explained why agile (and DevOps) can lead to plenty of bugs slipping through the cracks.
“Agile is definitely a double-edged sword in regards to bugs. Just the name says a lot about the actual goal, which is shipping a lot of software, fast,” Kaufman detailed. “There’s simply no way to ship software fast without also shipping bugs.”
That speed is a key reason why agile isn’t automatic—it takes time, effort, patience, and proper coaching in order to successfully implement. Kaufman went on to point out just how many bug fixes you now see in an average application’s latest update.
“For example, if you look at the Chromium project’s changelog, each release is packed with bug fixes, meaning that the previous releases introduced bugs that merited fixing despite the fact that they place a high priority on unit and automated testing,” Kaufman continued. “Rapid development is why a lot of agile shops do focus on writing tests, which do go a long way towards catching bugs before they hit production.”
Thankfully, as we continue to better understand agile and DevOps, we’ll continue to create solutions that spot these bugs and quality concerns before they become problems. As Kaufman explains, a new wave of DevOps software for application performance monitoring (such as New Relic and Sentry) are allowing teams to pinpoint these anomalies within the early stages of software releases.
Agile, for most software teams, is a net positive. However, you need to be aware of what that speed can do in terms of quality and find solutions before you start letting too many bugs break through.