DevOps Zone is brought to you in partnership with:

Kelly Waters is Web Technology Director for IPC Media, one of the UK's largest publishers of consumer magazines and web sites. Kelly has been in software development for about 25 years and is a well-known narrator of agile development principles and practices, as a result of his popular blog 'Agile Software Development Made Easy!' (www.agile-software-development.com). Kelly is a DZone MVB and is not an employee of DZone and has posted 40 posts at DZone. You can read more from them at their website. View Full User Profile

7 Reasons why Continuous Delivery needs to be a BUSINESS initiative

11.14.2011
| 6727 views |
  • submit to reddit

One of the key practices of agile and lean teams is the idea of Continuous Delivery.  If not continuous, then at least very frequent!

ThoughtWorks has an area of their web site dedicated to Continuous Delivery, and also a really interesting webinar that talks about what Continuous Delivery really means, why it’s important, and how to do it – at least in principle.

Continuous Delivery might be a technical practice, but its benefits go way beyond the technical team or even the wider project.  The benefits of successfully adopting Continuous Delivery could have a real strategic impact on the competitive advantage of an organisation.

Here are 7 reasons why Continuous Delivery needs to be a BUSINESS initiative:

1. Build the Right Product

Continuous Delivery enables a team to get continuous – if not frequent – feedback from business colleagues, user representatives, and ideally real end users.  Frequent feedback loops mean that it’s possible to incorporate feedback into the build, and affect the relevance, quality and success of the end product.  If Continuous Delivery extends beyond the internal organisation and is released to market, real metrics and insight can be gained from real usage, meaning that more useful features are developed further and less useful features are not.  This saves wasting time on less useful areas of the product.

2. Earlier Benefits

A clear advantage of building software incrementally and adopting a Continuous Delivery approach is that some benefits can be gained much earlier, albeit in smaller pieces.  Releasing some benefits early may mean generating revenue, or cost benefits, that help to fund further development.  Or they may simply give you the edge over your competition.  Past experience has shown the enormous commercial power of first-mover-advantage, meaning first to market often ends up being the long term leader in their chosen space, even if their first product to market was quite basic.

3. Ability to React Quickly and Respond to Change

The only thing in life that is certain is change.  It’s inevitable.  And things are changing faster than ever before.  Two things in particular strike me as particularly challenging in this respect.  The ever faster pace of technology that is almost impossible for companies to keep up with.  And the economic uncertainty in the world we are currently living in.  Both of these things mean that life is even less predictable than ever before.  If you spend too long on anything, by the time you deliver it there is now a high chance that something important has changed.  Maybe the market has changed.  Maybe the customers’ needs have changed.  Maybe your organisation has changed.  Maybe new opportunities have emerged.  Continuous Delivery makes it possible to react to these changes without having a huge amount of time and money sunk into work in progress that now needs to be abandoned due to changing priorities, or worse still continues just because it’s the path you are on.  This also makes it more viable to react to opportunities and explore new ideas and potential new revenue streams.

4. Innovation

By combining Continuous Delivery with frequent user feedback, it is possible to get developers closer to customers or users than ever before, really aligning their understanding of what users really need and maybe even identifying things they didn’t even know they needed!  For instance, customers didn’t originally ask Apple for an iPhone with an App Store, or for a new form of tablet computer like the iPad.  Users may be reasonably satisfied with all they know is currently possible.  However developers may be able to create something entirely new.  This can potentially be a way to drive real innovation.

5. Reliability & Stability

Some people worry about the risk of Continuous Delivery.  In our experience of more traditional methods with infrequent releases, change is a risky thing and often leads to problems.  If we adopt Continuous Delivery, won’t it be chaotic and problematic and cause all sorts of quality and reliability issues?  Actually, it’s ironic, but the opposite is true.  Continuous Delivery can enable you to deliver better reliability and stability by releasing frequently.  Making changes in very small increments substantially reduces the risk of problems being caused.  And keeping the changes in very small releases makes it substantially easier to find and fix problems if they do occur, minimising the time that they have an impact.  The consequence of both is that Continuous Delivery teams can maintain products with even better reliability and stability than before.

 6. More Efficient / Save Time

To achieve Continuous Delivery, teams need to automate deployment tasks.  Often teams do not do this and the impact in terms of effort to create releases, provisioning environments and finding and resolving problems caused by differences or by lack of understanding can have a substantial negative effect.  Since deployment is a task that is ideally repeated many times on a project and on an ongoing basis, it is well worthwhile to automate the process.  This can lead to a lot of efficiencies and save the team time, which can then be spent developing more valuable features for users and delivering more business value.

 7. Strategic Impact

Last but not least, and I guess it’s really a summary of all of the above, is the strategic impact.  Better products due to frequent user feedback, higher benefits due to earlier releases, greater customer focus, speed to market, business agility, innovation, reliability and more efficient.

What business wouldn’t want all of that?!  That’s why we must elevate Continuous Delivery.  We must elevate it to being a key issue for executives – including non IT executives – as a critically important BUSINESS issue.  An initiative to make your business as competitive as it possibly can be.

Kelly.

Published at DZone with permission of Kelly Waters, author and DZone MVB.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Ash Mughal replied on Thu, 2012/01/26 - 2:10am

I love this post! All of these ought to be very inspiring to business sponsors of projects, particularly at SMBs (but with huge impact at large enterprises as well.)

I had actually thought about the business/tech relationship in CD on slightly different terms. More about “what should the business do differently to take advantage of CD.” If you’re interested, it’s this post: http://pagilista.blogspot.com/2011/10/full-monty-continuous-delivery-business.html

advanced java

Lily Marlene replied on Thu, 2012/06/14 - 4:25pm

I heard about continuous delivery a couple of years ago at a conference, there are so many great achievements waiting for your company and you just have to implement some ideas that are proven to be successful. At that conference I also heard for the first time about a lot of other things like technology management or static analysis, since then I started to search for new ideas because in this way I can achieve great results.

Knight Sukn replied on Thu, 2013/07/25 - 4:37am

When you want to make a business you must take into consideration all the factors including the elevate Continuous Delivery which can provide a greater customer focus among a lot of other things vital for your business. I had to check available domain names at Register.com and was lucky because no one bought the domain I wanted, the entire business depended on the name of the website.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.