Why Agile Development Isn't Enough - InformationWeek

InformationWeek is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Mobile // Mobile Business
09:06 AM
Andi Gutmans
Andi Gutmans
Connect Directly

Why Agile Development Isn't Enough

To maintain development speed and flexibility, companies should consider an API-centric architecture and cloud-centric deployment.

We live in a moment of history where change is so speeded up that we begin to see the present only when it is already disappearing. – R. D. Laing

It seems like only yesterday that agile development was the hot new thing. How can this useful, essential process already be inadequate?

The answer is that agile development will no longer suffice. The entire enterprise has gone agile. Business conditions are constantly changing, requiring organizations to adapt and iterate their applications and systems at a moment's notice. Companies must move quickly, or else they risk losing their competitive edge.

When development releases an app to the ops department, agility cannot simply grind to a halt. Agile delivery is the next step. It is the ability to deliver that shiny new app or new capability all the way to market, in rapid order. To seize the web and mobile opportunity, agile delivery is a must.

The code for agility
Agile delivery doesn't come intuitively to many organizations. Rather, companies must start with an agile process and an architectural model for their apps that give them enough flexibility to deliver changes to market on a continual, iterative basis. Enterprises must build a new system for bringing apps to market. They must design your apps in a flexible fashion and deliver them on a continuous basis. It is also important to build everything on the most elastic possible infrastructure, namely the cloud, to avoid flexibility and scalability issues.

[ How is the cloud like a successful fighter pilot? See Cloud Lets You Test Business Ideas Faster . ]

Bringing apps to market
The right application design for agile delivery is based on an API-centric architecture. APIs support data from multiple backend systems and communicate to any number of frontend devices. They also allow for the machine-to-machine communication that provides the data necessary for mobile apps, whether native or web-based. This makes them indispensable for web and mobile apps.

APIs also contribute to efficiency. They take care of backend services -- enabling companies to develop their user interfaces independently. The same API-driven capabilities and data will power different user experiences on a variety of devices, such as tablets, mobile phones, and on the web.

Developers don't have to reinvent the wheel all the time. In fact, they can use APIs as the building blocks for new functionalities, expanding their ecosystems to support an ever-greater range of new apps. They can also easily reuse capabilities at a later time; thus an API-centric architecture is an important way to future-proof your application design.

Continuous delivery
Continuous delivery is what happens when development and operations teams work together like a well-oiled machine to bring apps from code to production. Oiling a machine may be easy, but achieving continuous delivery is not.

The idea is to release a new or updated app, a patch, an updated web page, a campaign, or any other digital media without any more manual intervention than necessary. At the same time, release software faster and with higher quality. There are several steps to doing this.

One is to automate as many steps in the application delivery processes as makes sense. You should also look to implement best-practices, for example in application deployment processes, to systemize the rapid delivery of high-quality apps. Also take the time to zoom out and get a sense of how mature your continuous development processes are and where there is room for improvement.

The net result is an agile, coordinated delivery process that delivers robust apps that address rapidly changing requirements. It takes a little bit of doing to get there, but it will be well worth it in the end. Developers are freed up to innovate. That innovation, in turn, is necessary for agility, which requires companies to always iterate their apps and push new features.

Cloud-centric deployment
The cloud is a key infrastructural enabler for continuous and agile delivery. Companies can scale and flex their apps as business needs require, making the cloud the ultimate agile backend.

Making agility happen
On the surface, agility seems imposing. By breaking it into its component parts -- a flexible API-centric design, continuous delivery, cloud-centric deployment -- companies can address the steps required, and enjoy greater competitive advantage as a result.

Want to relegate cloud software to edge apps or smaller businesses? No way. Also in the new, all-digital Cloud Software: Where Next? special issue of InformationWeek: The tech industry is rife with over-the-top, groundless predictions and estimates. (Free registration required.)

We welcome your comments on this topic on our social media channels, or [contact us directly] with questions about the site.
Comment  | 
Print  | 
More Insights
Newest First  |  Oldest First  |  Threaded View
User Rank: Apprentice
12/9/2013 | 6:11:10 PM
Cloud avoids flexibility and availability issues?
Cloud does not make your application agile... nor does it make it scalable - you still have to architect your solution allow for scalability.

I annoys me when people attempt to sell the cloud as the "magic bullet" to all of businesses problems - it is a cog in a machine, not a cure-all.  In some cases, it actually causes as many issues as some claim it negates.


Also, what is with "API".  Is this just another re-brand (using an older term) of webservices?  It's like AppsWorld in 2012 - MS referred to applications written in C# and XAML.  So WPF then.. "Oh but WPF kind burned, so we want to call it something else now.."

IT is like reading the Silmarillion - every 2 chapters someone moves to another town and gives themselves a new name....


User Rank: Strategist
11/19/2013 | 5:01:47 PM
Andi Gutmans, the basketball player
Hey, Andi, listen to this. I walked into the breakfast hall at Amazon's Re:Invent in the Venetian, a cavernous room designed to seat 9,000, and sit down at a table with one person, Liran Kessel, founder and CEO of Rizotec in Israel. He's busy on his smartphone, but nevertheless, we strike up a conversation. I mention the last time I went to Israel, I had to cancel a meeting with Andi Gutmans due to passport problems. "Gutmans," he says in disbelief. He looked up your picture on his phone. "We played basketball together at the American School." He said you were a strong teammate.
User Rank: Strategist
11/19/2013 | 2:26:35 AM
Connecting the dots...
Andi Gutmans has hit upon a chain of related ideas, often presented in isolation. It's hard to get to DevOps without Agile development, and its hard to achieve continuous delivery of new software without a cloud architecture. Bravo for connecting the dots.
User Rank: Apprentice
11/19/2013 | 12:53:17 AM
Re: "The entire enterprise has gone agile" - really?
Agile itself cannot happen as a process dictated from above. The whole point of being agile is to have as little process as possible. While Continuous delivery and DevOps movement is looking at optimizing the process between developers and operations a much bigger cultural change is needed. What organizations should do is to move towards "Dev-Centric" culture http://www.aviransplace.com/2013/10/28/dev-centric-culture-breaking-down-the-walls/ which then can pave the way to continuous delivery
User Rank: Ninja
11/18/2013 | 3:58:43 PM
Re: "The entire enterprise has gone agile" - really?
Actually, you'd be hard-pressed to find a CIO or CTO who doesn't oversee "agile development", just like you're unlikely to find a CIO or CTO with a data center who doesn't have a "private cloud". So in name, yes, but in practice, often not.
User Rank: Apprentice
11/18/2013 | 2:53:42 PM
Laing quotation
Great quotation by R. D. Laing! Amazingly, he wrote that in 1967. I wonder how he'd update it given the rate of change today.
Lorna Garey
Lorna Garey,
User Rank: Author
11/18/2013 | 1:21:27 PM
DevOps Required?
Hi Andi -- Do you think this is doable without a formal DevOs program? As we all know, the faster you move, the more likelihood there will be problems.
David F. Carr
David F. Carr,
User Rank: Author
11/18/2013 | 11:28:12 AM
"The entire enterprise has gone agile" - really?
I'm sure there are plenty of companies where the entire enterprise is nowhere near agile, let alone ready to take the next step.
Rodney Brown
Rodney Brown,
User Rank: Author
11/18/2013 | 9:48:59 AM
Well said
Thank you for saying this Andi. I have felt for some time now that agile is already the default condition for any kind of IT development. I have even started to see the core concepts of agile development get renamed and repackaged as something new for a specific industry sector, when it is really nothing more than agile development.
Rethinking Technology Road Maps for the Second Half of 2020
Andrew Froehlich, President & Lead Network Architect, West Gate Networks,  7/2/2020
The Best Way to Get Started with Data Analytics
John Edwards, Technology Journalist & Author,  7/8/2020
IT Trade Shows Go Virtual: Your 2020 List of Events
Jessica Davis, Senior Editor, Enterprise Apps,  5/29/2020
White Papers
Register for InformationWeek Newsletters
Current Issue
Key to Cloud Success: The Right Management
This IT Trend highlights some of the steps IT teams can take to keep their cloud environments running in a safe, efficient manner.
Flash Poll