Faster ROI, Competitive Advantage, Reduced Risk using Agile Development and the Windows Azure platform

Faster ROI, Competitive Advantage, Reduced Risk using Agile Development and the Windows Azure platform


Companies use Agile methods like Scrum and eXtreme Programming (XP) to deliver business value through software. Agile methods adopt an incremental approach where large complex projects are broken down into simpler mini projects that are delivered in iterations. These iterations can be one to four weeks in duration. The business person responsible for driving the project (known as the Product Owner or Customer) can align features with his/her business’ strategy by prioritising them for delivery accordingly in each iteration.

Agile development methodologies versus Waterfall

If a competitor is releasing a particular feature or service your Agile development team can respond by changing direction quickly to deliver features that can help your business compete. The Agile team deliver production quality, fully tested software in each iteration so if the customer does require this to be released to live there is the potential this can be done. In a waterfall project, if this change in direction was requested by the Customer it would firstly require a change request which usually incurs additional cost. Once further analysis and design of this change has been conducted you then go into the development and testing phase. The elapsed time for this means you have lost the opportunity to gain the desired competitive advantage.

Whilst traditional approaches mean you are spending the first months of a project doing analysis and design, in an Agile approach you have already successfully delivered a number of “production ready” and potentially deployable iterations of your project. 

Combining Agile and Azure

There are many other benefits to using an Agile methodology but the ones I wish to explore further are speed to market and risk reduction. I think that Microsoft’s new Azure Cloud Computing platform and using an Agile methodology such as Scrum is a really powerful and compelling proposition for anyone looking to build almost any new piece of complex software.

If you are looking to launch a new online service or offering using an Agile methodology can help reduce your exposure financially, deliver features quicker, realise early ROI on your development spend, promote and build your service faster than your competitors can.

A simple scenario – Your company is launching a new online music service. You would like to ensure that people are able to register an interest so that when the service is ready to go live you have an audience already interested. How are you going to satisfy the “As an interested potential customer I would like to register an interest in the new online music service” requirement? The customer decides a simple form to register your interest would be a good idea. If you look at this from a waterfall perspective this requirement would have to be analysed, designed, scheduled, built and tested into the overall solution before you can deploy it. This requirement is only going to be satisfied at the end of the project which could be months away.

Using an Agile approach this requirement would be prioritised for completion in an early iteration of the project which when delivered and deployed would allow for interested customers to sign up for updates about your service.

This is a simple example of how your company can realise ROI early on development spend by prioritising key features to align (in this case) with marketing strategy to ensure you are maximising early exposure of your new service.

So where does the Windows Azure platform come into play? Bear in mind regardless of which development methodology you choose to employ your new online music service it is going to require some physical hardware / infrastructure to run on.

Using an Agile methodology like Scrum and/or XP requires there to be infrastructure in place in the Iteration 0 phase so that your development team are ready to deploy your production quality iteration at *any* time if so requested by the customer. Windows Azure gives you the option to have this infrastructure available from day one. Yes you can purchase hosting from a hosting provider but are you going to purchase the real production hardware when you start the development phase? This is going to have an impact on your project budget. Windows Azure offers the ability to have a small infrastructure in the cloud and then allows you to ramp up your infrastructure by buying more roles of the required type instead of having to purchase your entire production system early. If you decide to buy hardware which is not the same as your real production hardware there is a risk that this is not suitable and you may have to change this configuration which may impact your project by delays in time and/or cost. Bear in mind when using Azure you are deploying on the real production hardware. A good point made by @drmarcustillett is that the time taken to get production hardware ready takes typically 1-2 weeks involving architects, developers and infrastructure specialists. A hosted solution also requires supporting software, patching and service packs to be installed. This all takes time and money. The fact that you are deploying to a consistent platform in terms of operating system and service packs is another risk reducing factors of developing on Azure and helps make the goal of a lightning quick deployment of your production code a reality.

Microsoft has a number of programmes including MSDN Subscriptions and BizSpark that help with the costs of Azure during the development phase. Microsoft have recently announced more free hours on the Azure platform if you sign up for a trial before June 2011  

You can also get a 1 month Azure Pass using this link and the promo code in the blog

Another scenario to consider is you have purchased or leased the complete production infrastructure for the aforementioned online music service and it is not successful for whatever reason. You have already paid for or are in a contractual agreement for leasing of this infrastructure. Windows Azure is an attractive option as you haven’t purchased your production hardware up front and it can also scale down if your service is not successful or the expected uptake has been slower than you realised. If you decided to host your online music service internally you would have also recruited staff to manage this infrastructure at a cost.

If your project is an overnight success at any stage of your project, this could be due to the release of a killer feature in a particular iteration or the final release, you could be struggling to keep up with demand in a hosted scenario and be losing out on revenue. Windows Azure not only gives your benefits if you encounter less interest but also if you encounter a big demand for your service. You can literally with the change of a configuration setting provide more infrastructure to cope with the demand. Like with any hosting provider there are SLA provisions for Windows Azure which can be found here:   

Don’t forget about your Windows Azure resources!

Due to the “pay as you use” nature of Windows Azure if you are looking to use it in any capacity, be mindful of the resources you are running especially whilst you are testing and assessing its feasibility otherwise you could find yourself with an unexpected bill. There is a feature to allow the setting of notification emails to be sent when you reach certain usage thresholds but extra monitoring is worth the time.


Windows Azure coupled with an Agile development methodology is a powerful blend allowing you to maximise the business impact of software development projects whether you are a start-up or an established corporate. The value proposition being you can deliver applications fast; have the ability to change the order of delivery of features all of which is hosted on a cost effective and elastic infrastructure that can respond to changes in demand giving your company the competitive edge over its rivals.

Posted on May 9, 2011, in Uncategorized and tagged , , . Bookmark the permalink. Leave a comment.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: