Agile Development Makes Business Technology Come True; It Embodies Business Value In Software

There is no doubt that Agile growth in the market is significant, and the growing daily number of inquiries I’ve been getting on Agile from end user organizations in 2012 gives me the impression that many are moving from tactical to strategic adoption. Why’s that? Many reasons, and you can read about them in our focused research on Agile transformation on the Forrester website. But I’d like to summarize the top five reasons from my recent research “Determine The Business And IT Impact Of Agile Development” :

  • Quality was the top — quite astonishing, but both the survey we ran across 205 Agile “professional adopters” and the interviews across some 21 organizations confirmed this. My read is that this is about functional quality.
  • Change was second to quality. We live in an era where innovation strives and organizations are continuously developing new apps and projects. But your business does not necessarily know what it needs or wants upfront. The business really appreciates the due-course changes that Agile development allows, as they enable the business to experiment and try out various options so it can become more confident about what is really right for the organization. Cutting edge cutting edge systems-of-engagement (Mobile, Web-facing, Social-media, etc) require lots of Change in due course.
  • Customer satisfaction came up third, although customer satisfaction might be a comprehensive reason that includes many things (all of the above and below!). Interestingly, there are no hard-and-fast rules that dictate how to measure customer satisfaction or how often to measure it. But two main approaches emerged: the usual customer surveys as well as instrumented software (SW) that measures usage, sales, or revenue.
  • Better business/IT alignment. A continuous feedback loop and collaboration between app dev teams and the business keeps them aligned on what business functionality the project will deliver. Information transparency and continuous flow enable business and IT to remain aligned through the whole ideation to delivery cycle.
  • Finally, speed! Agile offers greater speed from an engineering perspective (for example, via automation of tools and continuous integration and delivery). However, more importantly, through its frequent release of new features, Agile often gives the business the impression that things are moving fast and bette

 Retrospection on both the survey results as well as the qualitative interviews shows an interesting shift toward business values over IT values. Sounds like it is really time to stop thinking about business and IT values of SW development separately and welcome the era of business technology value. While that sounds exciting, we know that measuring business value has never been an easy task for application development. Sometimes this is because business executives don’t necessarily want to be measured by IT. In other cases, app dev leaders hide behind the excuse that their goals do not measure business value but instead focus on structural values such as productivity and quality. I firmly believe it’s time for both business and app dev leaders (BT leaders) to make the shift and leave old habits behind: In the era of business technology, app dev teams are part of the business, and the business is part of app dev teams. I will soon be publishing two pieces of research that explore how Agile and Lean require a big cultural organizational change and how part of that change will involve shifting measurements toward business-driven ones rather than the usual IT-centric and technical ones. This shift in metrics offers a great opportunity for application development leaders to sit at the table as peers with the business.

Determine The Business And IT impact Of Agile Development” also discusses some of the most advanced ways organizations are finding value in Agile: faster cycle time, improved team morale, increased predictability, etc. Take a look!

What impact has Agile had on your organization?

Beyond Agile development, what else do you think helps organizations develop better applications faster?

Comments

Agile

good summary about Agile, the speed, the qality and adapt to the changes, hopefully, Agile can significantly improve project success rate, also make PM reach high level maturity. thanks

Hello Dear Friend

Brilliant post! I think that agile software is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams. It promotes adaptive planning, evolutionary development and delivery, a time-boxed iterative approach, and encourages rapid and flexible response to change.

Better Apps Faster

Nice post Diego. We're really riding a significant wave of agile adoption here at Mendix, and while people are already talking about post-agile trends - your thoughts on business value, enabling business change, and quality/end user satisfaction are timeless. To answer your question , we've seen quite a few large enterprises see agile adoption as an intimidating change for their IT teams. They're using our aPaaS as stepping stone between their existing methodology and the iterative methods that we believe to be best practice. So in addition to an agile methodology, a technology that supports it (and the adoption of it) also play into the overall speed and quality of apps produced.

Higher quality software

This is a great post, but I think it doesn't emphasize enough the improved quality you get with Agile. In my experience (several years development and quality assurance at Polish software outsourcer, Future Processing) developers put a greater emphasis on quality when working with an Agile method, than with a waterfall or any other method - you did ask for comments on the impact Agile has had on reader's organisations!

I believe the focus of Agile development is producing high-quality software in a time frame that maximises its value to the business. With the traditional approach to development, there were always particular people responsible for testing or quality assurance, whereas with the Agile method the whole team feels responsible for quality: everyone is testing and at many stages too.

If we look at Agile code analysis, code is passed not by one person alone, but by the whole team. Further, there is always more than one stage at which code must passed. Static code analysis tools should also be integrated with continuous integration, giving instant information about the health of the code.

But the static analysis it is just a one stage in the process. Project retrospectives gives developers opportunities to improve it all the time, iteratively. For example, in my teams, if we know that we failed because of something, we perform a root cause analysis and remove the issue, or simply improve our way of developing software.

If we compare traditional methodologies of software development with Agile, the code must wait for all development phases to be completed and before it is delivered to testing. This can be a huge gap. We should remember that in many cases there is not enough time for testing or no time for fixing issues, and at worst this results in not delivering the right product. With Agile this gap is much shorter: early test, early deliver and the client has plenty of opportunity to check his expectations against what is actually being delivered.

Quality improves with Agile

Hi Daniel,
i could not agree more to your comment.
The tight iterations that include all phases of SW development, including continuous build and integration activities, help achieve a better technical quality in the code. In addition, when Agile testing is done right, quality is built in from the very beginning. Many customers tell me : "in our Agile projects I have the feeling we are " testing continuously" throughout sprints and releases, as much as possible all types of testing functional and non functional !...but Agile testing is not easy !

Thanks
Diego

Agile requirements

Hi Diego, thanks for the great post! Adopting Agile methodologies definitely increases a project's chance of success...couldn't agree more. A colleague of mine at Seilevel wrote an interesting blog post recently that explores the benefits of applying the Agile philosophy to requirements gathering that may interest your readers: http://requirements.seilevel.com/blog/2012/01/a-new-years-revolution-for...

Thanks again!