Creating useful software is a craft. There is no black and white formula for success. Yet, there are certain Agile engineering practices that, if used thoughtfully, have shown to repeatedly add value to a business. In this article, I’ll share 4 specific ways that your business can benefit today from Agile Engineering practices.
(If we use the basic formula of Scrum + Extreme Programming (XP) = Agile, I am referring to the XP piece of the equation when I say Agile Engineering Practices. Things like Test Driven Development, Pair Programming, & Continuous Integration.)
In a brilliantly simple blog post, James Shore claims:
"Scrum is easier and less threatening than XP(Extreme Programming), so I see a lot more people starting out with Scrum. On the downside, the teams that start with Scrum tend to struggle more than the teams that start with XP. The XP teams experience more pain starting out, but then get to a high performance state within the first year."
Yet often, a VP of Engineering or CTO will approach me and say “I want my engineering team to get better at Agile engineering practices so that we can go faster.”
I agree with James Shore that XP is a struggle at first, which in fact goes counter to the idea that Agile helps teams move faster. In fact, XP has a steep learning curve, and by it’s nature, learning takes time and learning XP is achieved by going slower than a team that isn’t doing any learning.
So, if “going faster” isn’t the true value of Agile engineering practices, then what is?
I believe that the true business value of Agile engineering practices is that they allow a company to embrace change in a way that actually becomes a competitive advantage.