<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Continuous Delivery</title>
	<atom:link href="http://continuousdelivery.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://continuousdelivery.com</link>
	<description>Reliable Software Releases through Build, Test and Deployment Automation</description>
	<lastBuildDate>Wed, 28 Jul 2010 06:16:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Agile Tokyo 2010</title>
		<link>http://continuousdelivery.com/2010/07/agile-tokyo-2010/</link>
		<comments>http://continuousdelivery.com/2010/07/agile-tokyo-2010/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 18:42:18 +0000</pubDate>
		<dc:creator>jez</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://continuousdelivery.com/?p=118</guid>
		<description><![CDATA[<p>I&#8217;ve just got back from Tokyo, where I was honoured to be invited to give the keynote at Agile Tokyo 2010. Agile conferences have a short history in Japan &#8211; both Agile Tokyo and Agile Japan are only two years old &#8211; and there was a real buzz of excitement, with lots of smart people [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just got back from Tokyo, where I was honoured to be invited to give the keynote at <a href="http://gihyo.jp/event/2010/agile">Agile Tokyo 2010</a>. Agile conferences have a short history in Japan &#8211; both Agile Tokyo and Agile Japan are only two years old &#8211; and there was a real buzz of excitement, with lots of smart people (280 delegates attended) and interesting conversations. So first of all I&#8217;d like to thank Yoshi Nagase and his wonderful team at <a href="http://www.tech-arts.co.jp/">Technologic Arts</a> for hosting me, Yoko Yoshikawa for taking such good care of me during my time there, <a href="http://gihyo.jp/">Gihyo</a> for organizing the conference and for inviting me, and my fellow presenters for some great discussions.</p>
<div id="attachment_153" class="wp-caption alignnone" style="width: 3274px"><a href="http://continuousdelivery.com/wp-content/uploads/2010/07/agile_tokyo.jpg"><img src="http://continuousdelivery.com/wp-content/uploads/2010/07/agile_tokyo.jpg" alt="" title="Agile Tokyo 2010" width="550" class="size-full wp-image-153" /></a><p class="wp-caption-text">Agile Tokyo 2010 by Yoko Yoshikawa</p></div>
<p>The most surprising discovery for me was that agile is considered new and somewhat subversive in Japan. Japanese IT companies have been doing waterfall on large projects for a long time now, and it is deeply entrenched. Indeed, everybody I spoke to confirmed that waterfall worked perfectly well for them as a software development methodology. This was staggering to me, since outside Japan large software projects run with waterfall routinely go over budget and end up with either cuts in scope or poor quality &#8211; several recent reports, such as <a href="http://www.zdnet.com/blog/projectfailures/study-68-percent-of-it-projects-fail/1175">this one</a>, put IT project failure rates in the range of 60-70%. This appears not to be the case in Japan &#8211; it is perhaps the only country that could make waterfall work reliably and repeatably. As my host, Yoshi Nagase, commented, this is deeply ironic in a country that created Toyota and lean manufacturing.</p>
<p><span id="more-118"></span></p>
<p>However there is certainly an interest in agile now. Several large systems integrators have started running small agile pilot projects, and apparently the results have been successful. Why the sudden interest in agile if waterfall can deliver high quality software on time and on budget? The answer is easily extrapolated from this example of a project plan I saw at one of the companies I visited &#8211; the plan has been changed somewhat to protect the guilty, but not in any essential details &#8211; it is a pretty standard plan following the <a href="http://en.wikipedia.org/wiki/V-Model_(software_development)">V-model</a>.</p>
<p><a href="http://continuousdelivery.com/wp-content/uploads/2010/07/waterfall.png"><img src="http://continuousdelivery.com/wp-content/uploads/2010/07/waterfall.png" alt="" title="V-model" width="550" class="alignnone size-full wp-image-149" /></a></p>
<p>For me, the most egregious problem with this plan is that the planning stage for phase 2 of the project comes before the testing stage for phase 1. So anything discovered during the testing and user acceptance stages cannot be fed in to phase 2 &#8211; it has to wait for phase 3. Effectively, that means that the feedback loop from discovering a problem in your <em>requirements</em> for phase 1 will have to wait until the end of phase 3 to be delivered to users &#8211; a cycle time of 1 year. This makes it extremely hard to respond to customer feedback. Even in the best case scenario, whereby you discover a requirement during the planning stage of a phase, you must wait 6 months for it to be delivered to users.</p>
<p>Japanese companies seem to be realizing that they simply cannot maintain a competitive advantage in the current economic climate with this kind of cycle time. They must get valuable software into the hands of users, and incorporate feedback from them, much faster. This of course is the value proposition of agile methods &#8211; the <a href="http://agilemanifesto.org/principles.html">first principle</a> of the <a href="http://agilemanifesto.org/">agile manifesto</a>, which also inspired the title of <a href="http://continuousdelivery.com/">our book</a>, is this: &#8220;our highest priority is to satisfy the customer through early and continuous delivery of valuable software&#8221;.</p>
<p>The risk is that Japanese companies simply have very little experience doing agile delivery at all, let alone on large projects. Adopting agile in an effective way involves serious organizational change. Cross-functional teams including developers, testers, analysts, testers, operations staff, and project managers must be created. Developers must be trained in practices like test-driven development, continuous integration, refactoring, and incremental development. Testers will have to start collaborating more closely with analysts and developers. Managers will need to be trained in agile delivery methodologies &#8211; and they will need to make mistakes and gain experience. Teams will need new tools. </p>
<p>However if there is any country that can make such a large change in an organized and efficient manner, it is Japan. I&#8217;m really excited to see what agile methodologies do for Japanese IT, and also to see what the Japanese software delivery community does to agile &#8211; no doubt we will see many new ideas and evolutions. It&#8217;s an exciting time to be in IT.</p>
]]></content:encoded>
			<wfw:commentRss>http://continuousdelivery.com/2010/07/agile-tokyo-2010/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Continuous Delivery Talks 2010</title>
		<link>http://continuousdelivery.com/2010/06/continuous-delivery-talks-2010/</link>
		<comments>http://continuousdelivery.com/2010/06/continuous-delivery-talks-2010/#comments</comments>
		<pubDate>Tue, 01 Jun 2010 21:44:21 +0000</pubDate>
		<dc:creator>jez</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://continuousdelivery.com/?p=99</guid>
		<description><![CDATA[<p>Dave and I (Jez) have submitted the final draft of Continuous Delivery, and the people at Addison Wesley are aiming to have it published ready for Agile 2010.</p>
<p>There are going to be a number of talks on the content of the book this year.</p>
<p>Kent Beck, Timothy Fitz and I are doing a webinar on continuous [...]]]></description>
			<content:encoded><![CDATA[<p>Dave and I (Jez) have submitted the final draft of <a href="http://my.safaribooksonline.com/9780321670250">Continuous Delivery</a>, and the people at Addison Wesley are aiming to have it published ready for <a href="http://agile2010.agilealliance.org/">Agile 2010</a>.</p>
<p>There are going to be a number of talks on the content of the book this year.</p>
<p>Kent Beck, Timothy Fitz and I are doing a webinar on continuous deployment hosted by Alan Zeichick of SD Times. It&#8217;s at 1pm EDT on 30 June. You can sign up <a href="http://bzmedia.com/agility/">here</a>.</p>
<p>I&#8217;m giving the keynote at <strong><a href="http://gihyo.jp/event/2010/agile">Agile Tokyo 2010</a><span style="font-weight: normal;">, which is on July 21.</span></strong></p>
<p>Martin Fowler and I are doing a half-day tutorial on continuous delivery on Monday 9 August at <strong>Agile 2010</strong>. More details <a href="http://agile2010.agilealliance.org/schedule.html">here</a>.</p>
<p>Finally (for now), Martin and I will be doing a full day tutorial on continuous delivery at <strong>QCon San Francisco</strong>, 1-2 November. More details will follow <a href="http://qconsf.com/sf2010/tutorials/">here</a>.</p>
<p>I look forward to seeing you at one of the events!</p>
]]></content:encoded>
			<wfw:commentRss>http://continuousdelivery.com/2010/06/continuous-delivery-talks-2010/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Continuous Delivery</title>
		<link>http://continuousdelivery.com/2010/02/continuous-delivery/</link>
		<comments>http://continuousdelivery.com/2010/02/continuous-delivery/#comments</comments>
		<pubDate>Tue, 02 Feb 2010 08:30:31 +0000</pubDate>
		<dc:creator>jez</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://continuousdelivery.com/?p=61</guid>
		<description><![CDATA[<p>The book that Dave Farley and I have been working on for nigh on four years, Continuous Delivery, is finally up as a rough cut on Safari. I&#8217;m also very proud to announce that it has recently been accepted into Martin Fowler&#8217;s Signature Series. The book covers build and deployment automation, continuous integration, test automation, [...]]]></description>
			<content:encoded><![CDATA[<p>The book that Dave Farley and I have been working on for nigh on four years, <em>Continuous Delivery</em>, is finally <a href="http://my.safaribooksonline.com/9780321670250">up as a rough cut on Safari</a>. I&#8217;m also very proud to announce that it has recently been accepted into <a href="http://martinfowler.com/books.html#series">Martin Fowler&#8217;s Signature Series</a>. The book covers build and deployment automation, continuous integration, test automation, managing infrastructure and environments, configuration management, version control practices, data migration automation, and even governance. That&#8217;s a lot of material, and read like this it seems like a bit of a grab-bag of activities that normally gets second billing when you&#8217;re delivering software. However these turn out to be absolutely essential activities if you want to get high quality software into the hands of users as fast as possible, and then keep delivering them valuable new features<sup><a href="#1">1</a></sup>.<br />
<span id="more-61"></span><br />
The book has two themes: automation and collaboration. Delivering software of any complexity involves people with a bunch of skills: testers, developers, and sysadmin / operations personnel. The last group of people often gets left out of the process of delivering software until the end, and even testers are often not as heavily involved in the development process as they should be. It&#8217;s a pattern we see over and over again when helping people deliver software, and it inevitably leads to unacceptable numbers of defects, poor architectural decisions, and lengthy and unpredictable delays to getting releases out of the door. So one of the main aims of the book is getting everybody involved in the delivery process working together right from the beginning<sup><a href="#2">2</a></sup>.</p>
<p>Automation is key to enabling collaboration. If deploying software to testing environments, managing infrastructure, testing, building and releasing your software are manual activities, they are of course terribly error-prone. Worse, delivery teams then typically spend a large proportion of their time fire-fighting to get branches merged and new builds created so that they can be deployed into a production-like environment and tested. This inevitably means that the feedback loop from testing is incredibly slow, and doing things like load testing on staging environments gets left till late in the process, rather than being done from the beginning when problems can be fixed cheaply. Automating as much as possible of the delivery process ensures a much tighter feedback loop, and frees people to focus on high-value activities like evolving an appropriate architecture, exploratory testing, and making deployments and releases low-risk, push-button processes.</p>
<p>There is also an organizing principle for all of these activities: the deployment pipeline<sup><a href="#3">3</a></sup>. The description and elaboration of this pattern forms the core of the book. The idea behind the deployment pipeline is to model the part of your project&#8217;s value stream that goes from check-in to release, and then to automate it. Every check-in triggers a new build, which then passes through the deployment pipeline as shown below (inspired by <a href="http://www.slideshare.net/ChristopherRead/continuous-integration-build-pipelines-and-continuous-deployment">Chris Read</a>).</p>
<p><img src="/wp-content/uploads/2010/01/pipeline_sequence.png" alt="Deployment Pipeline Sequence Diagram (thanks to Chris Read)" /></p>
<p>The deployment pipeline allows everybody involved in delivering software to get fast feedback on the status of every change that is introduced to an application. It makes it simple to trace which builds have been through which environments, what the results were, and what&#8217;s currently in each environment. Finally, it allows testers and operations people to self-service the build of their choice into the environment they control. The upshot is faster feedback, better collaboration within delivery teams, and &#8211; because each process from check-in to release is automated &#8211; fewer errors, more reliable releases, and shorter cycle times.</p>
<p>The book is still in Rough Cuts, which means we&#8217;re actively seeking out feedback to help us improve it. Please let us know what you think: the book has a <a href="http://my.safaribooksonline.com/9780321670250?bookview=feedback">feedback section</a>, and we&#8217;ve created a <a href="http://groups.google.com/group/continuousdelivery">group</a> to discuss the issues we cover in the book. We&#8217;ll be posting outtakes, code examples, and further material from the book here, as well as providing regular updates on the state of the art in this space. We look forward to seeing you here!</p>
<hr/>
<p><sup><a name="1">1</a></sup> We got the idea for the book&#8217;s name from the first of the <a href="http://agilemanifesto.org/principles.html">Twelve Principles behind the Agile Manifesto</a>: &#8220;Our highest priority is to satisfy the customer through early and continuous delivery of valuable software&#8221;.</p>
<p><sup><a name="2">2</a></sup> There&#8217;s a <a href="http://www.devopsdays.org/">whole movement</a> devoted to increasing collaboration between developers and operations types.</p>
<p><sup><a name="3">3</a></sup> Dave, along with Mark Rickmeier, came up with the idea of deployment pipelines back in 2004. The idea then circulated within ThoughtWorks for some time, and was first documented publicly in 2005 (in a blog entry by our colleague <a href="http://www.magpiebrain.com/2009/12/13/a-brief-and-incomplete-history-of-build-pipelines/">Sam Newman</a>). Dave and I have <a href="/wp-content/uploads/2010/01/deployment_production_line.pdf">both</a> <a href="/wp-content/uploads/2010/01/The-Deployment-Pipeline-by-Dave-Farley-2007.pdf">written</a> papers on the subject. More recently, there has been a new variation on the theme in the shape of <a href="http://timothyfitz.wordpress.com/2009/02/08/continuous-deployment/">continuous deployment</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://continuousdelivery.com/2010/02/continuous-delivery/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>
