<?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>Software Configuration Management and Agile Software Development &#187; agile development</title>
	<atom:link href="http://accurev.com/blog/tag/agile-development/feed/" rel="self" type="application/rss+xml" />
	<link>http://accurev.com/blog</link>
	<description>SCM and Agile Software Development Blog</description>
	<lastBuildDate>Thu, 17 May 2012 15:00:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Do You have the Proper Agile Tools?</title>
		<link>http://accurev.com/blog/2010/04/28/agile-tools/</link>
		<comments>http://accurev.com/blog/2010/04/28/agile-tools/#comments</comments>
		<pubDate>Wed, 28 Apr 2010 15:41:29 +0000</pubDate>
		<dc:creator>clucca</dc:creator>
				<category><![CDATA[AccuRev]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[Educational Webinars]]></category>
		<category><![CDATA[SCM Resources]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[agile development]]></category>
		<category><![CDATA[agile project management]]></category>
		<category><![CDATA[agile tools]]></category>
		<category><![CDATA[Rally]]></category>
		<category><![CDATA[webinar]]></category>

		<guid isPermaLink="false">http://www.accurev.com/blog/?p=1514</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2010/04/28/agile-tools/' addthis:title='Do You have the Proper Agile Tools? ' ><a href="//addthis.com/bookmark.php?v=250&#38;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">&#124;</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div>We recently produced a webinar here at AccuRev, co-sponsored by Rally Software, about the Top 10 Factors for a Successful Agile Implementation.  Number 7 addresses the question of a tools stack. Once Agile coaching and training is complete, now we can think about tools. Agile manifest declares:  &#8221;Individuals and interactions over processes and tools.&#8221; But we believe [...]<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2010/04/28/agile-tools/' addthis:title='Do You have the Proper Agile Tools? '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2010/04/28/agile-tools/' addthis:title='Do You have the Proper Agile Tools? ' ><a href="//addthis.com/bookmark.php?v=250&amp;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">|</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div><p>We recently produced a webinar here at <a href="http://www.accurev.com/" target="_blank">AccuRev</a>, co-sponsored by <a href="http://www.accurev.com/rally.html" target="_blank">Rally Software</a>, about the Top 10 Factors for a Successful Agile Implementation.  Number 7 addresses the question of a tools stack. Once Agile coaching and training is complete, now we can think about tools.</p>
<p>Agile manifest declares:  &#8221;Individuals and interactions over processes and tools.&#8221;</p>
<p><em><span style="font-style: normal;">But we believe  that this statement doesn’t mean you should forget your tools stack entirely. It’s really about making sure that your toolstack helps facilitate those interactions between individuals.</span></em></p>
<p>So it’s no surprise to us that when we hear about people rolling out <a href="http://www.accurev.com/agile-scm.html" target="_blank">Agile</a>, they don’t even consider upgrading any of their tools. Studies have shown that new teams that do not invest in Agile tool sets, automated testing and continuous integration, start to struggle around the 10th iteration (4-5 months). The backlog of bugs and to-dos become so great that teams have to stop what they are doing and do a “maintenance” iteration, where they do massive amounts of QA or stop and do code reviews for an entire iterations. If we think about it, this kind of seems like traditional development model doesn’t it? Are you really Agile if you can’t deliver something which is &#8220;done&#8221; after every iteration?</p>
<p>The problem? Your current toolstack was designed by people who had traditional development models in mind.</p>
<p><img class="size-full wp-image-1587  alignleft" src="http://www.accurev.com/blog/wp-content/uploads/2010/04/Tools.jpg" alt="Agile tools must help you build a testable, deploy-able app every 2 weeks like clockwork. " width="193" height="173" title="Do You have the Proper Agile Tools?" /></p>
<p>Your tools don’t actually facilitate shorter development cycles, they actually hinder you by getting in your way. Your tool stack shouldn&#8217;t be the impediment in your Agile rollout.</p>
<p>Lets start with an Agile project management tool. This is the obvious tool to replace in your stack. Converting your traditional issue tracking system to an Agile one will give you the speed and visibility to help your teams practice Agile on a day to day basis.</p>
<p>Traditional source control management systems also hinder the process by following a “waterfall” like model of isolating code changes and leaving them on branches. Most SCM vendors know this is a problem, which is why their solution for an Agile branching methodology is to consolidate <a href="http://www.accurev.com/accurev-branching-merging.html" target="_blank">branches</a>, or have entire teams work on one branch. <strong>This doesn’t make sense.</strong> All of your scrum teams should be able to function together and in parallel, while integrating work together on a regular basis.</p>
<p>Smaller iterations mean a faster paced development cycle. Some of the tasks that you used to do a handful of times over the course of a waterfall will now be done on a weekly, sometimes daily basis. This is where <a href="http://www.accurev.com/continuous-integration.html" target="_blank">continuous integration</a> and test orchestration come into play.</p>
<p>While you’re moving through a 2 week iteration, using continuous integration and automated tests suddenly becomes extremely important. Having these processes in place can help you avoid the 10th iteration problem we talked about earlier. You’re not going to have 4 months to regression test the application by hand in Agile.</p>
<p>The idea here is that your Agile tools must help you build a testable, deploy-able app every 2 weeks like clockwork. You will repeat this process over and over. Isn’t it time your toolstack provided you with clockwork development cycles?</p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2010/04/28/agile-tools/' addthis:title='Do You have the Proper Agile Tools? '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://accurev.com/blog/2010/04/28/agile-tools/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Security Primer &#8211; Anatomy of the AccuRev Admin Trigger</title>
		<link>http://accurev.com/blog/2009/03/27/security-primer-anatomy-of-the-accurev-admin-trigger/</link>
		<comments>http://accurev.com/blog/2009/03/27/security-primer-anatomy-of-the-accurev-admin-trigger/#comments</comments>
		<pubDate>Fri, 27 Mar 2009 16:45:27 +0000</pubDate>
		<dc:creator>rmohr</dc:creator>
				<category><![CDATA[AccuRev]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[Tips and Tricks]]></category>
		<category><![CDATA[AccuRev admin trigger]]></category>
		<category><![CDATA[AccuRev administration]]></category>
		<category><![CDATA[AccuRev security]]></category>
		<category><![CDATA[AccuRev server admin trigger]]></category>
		<category><![CDATA[AccuRev triggers]]></category>
		<category><![CDATA[Admin trigger]]></category>
		<category><![CDATA[agile development]]></category>
		<category><![CDATA[software development process]]></category>

		<guid isPermaLink="false">http://blog.accurev.com/?p=737</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/03/27/security-primer-anatomy-of-the-accurev-admin-trigger/' addthis:title='Security Primer &#8211; Anatomy of the AccuRev Admin Trigger ' ><a href="//addthis.com/bookmark.php?v=250&#38;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">&#124;</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div>by Rob Mohr Do you have the &#8220;Admin Trigger&#8221; installed and running in your AccuRev environment?  I hope so! The &#8220;Admin Trigger&#8221; is the best way for you to restrict those non-ACE&#8217;d (AccuRev Certified Engineer) users from wreaking havoc on the process you&#8217;ve meticulously designed and implemented for your organization.  Make sure you lock it down!  It&#8217;s really [...]<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/03/27/security-primer-anatomy-of-the-accurev-admin-trigger/' addthis:title='Security Primer &#8211; Anatomy of the AccuRev Admin Trigger '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/03/27/security-primer-anatomy-of-the-accurev-admin-trigger/' addthis:title='Security Primer &#8211; Anatomy of the AccuRev Admin Trigger ' ><a href="//addthis.com/bookmark.php?v=250&amp;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">|</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div><p><strong></strong></p>
<p><strong>by Rob Mohr</strong></p>
<p>Do you have the &#8220;Admin Trigger&#8221; installed and running in your AccuRev environment?  I hope so!</p>
<p>The &#8220;Admin Trigger&#8221; is the best way for you to restrict those non-ACE&#8217;d (AccuRev Certified Engineer) users from wreaking havoc on the process you&#8217;ve meticulously designed and implemented for your organization.  Make sure you lock it down!  It&#8217;s really simple to do!</p>
<p>Now, I&#8217;m not talking about taking flexibility away from your developers, they&#8217;ll need to control certain aspects of the process too.  It&#8217;s up to you where the line is drawn in the stream hierarchy and the Admin Trigger is the chalk.</p>
<p>The equator is commonly established on the integration stream.  Since the globe in this case is AccuRev, the line of demarcation runs north and south.  To the West (upstream from integration), ACE&#8217;rs set the rules on workflow, code promotion, stream configurations, and general access control.  To the East (downstream from integration), developers and development teams are free to make their own decisions to best support their process, products, projects, components, patches, bug fixing and development activities.</p>
<p>Have you read the <a title="private prototyping" href="http://blog.accurev.com/2008/11/13/pattern-for-private-prototype-development/" target="_blank">private prototyping</a> or <a title="Stream Per Task" href="http://blog.accurev.com/2007/10/11/stream-per-task-paradigm-with-accurev-software-configuration-management/">stream-per-task</a> blogs by Dave Thomas?  These are good examples of how dev teams and developers control how their activities are organized using streams while adhering to the overall enterprise software development life cycle (SDLC).</p>
<p>The Admin Trigger is a simple if-then-else perl script that fires on the server whenever certain commands are  executed.  Out-of-the-box, the script restricts &#8220;admin type&#8221; commands such as creating users, groups, depots, etc without needing additional customization.</p>
<pre> @cmdlist = qw/mkuser chref chdepot chslice lsacl addmember
                  rmmember mkgroup mkdepot mktrig rmtrig
                  setacl write_schema/;
    # is the user command in the above list?
    if (grep $_ eq $command, @cmdlist) {
    ...</pre>
<p>The admin type commands are typically global in nature, meaning, that a single Admin group is granted permission for these commands.  Stream creation has a more granular scope allowing different groups to control their development process and stream management capabilities.</p>
<p>Simply list the streams in the trigger that only Admins have the ability to &#8220;manage.&#8221;  By default, other streams not listed are managed by the development teams themselves.  There are 2 sections in the trigger to set this up depending upon the commands to control.</p>
<p>Restricts: lock, unlock, chstream, incl, excl, incldo</p>
<pre>    $admin_stream{"replace_with_admin_stream"} = 1;
    $admin_stream{"replace_with_admin_stream"} = 1;
    $admin_stream{"replace_with_admin_stream"} = 1;
    ...</pre>
<p>Restricts: mkstream, mkws</p>
<pre>    $basis_stream_deny{"replace_with_basis_stream_to_deny"} = 1;
    $basis_stream_deny{"replace_with_basis_stream_to_deny"} = 1;
    $basis_stream_deny{"replace_with_basis_stream_to_deny"} = 1;
    ...</pre>
<p>Inside the trigger logic, each command is evaluated and will allow the operation to complete or not.</p>
<p>For example, the following section validates the &#8220;mkstream&#8221; command:</p>
<pre>if ($command eq "mkstream") {
...
 # only a user listed as an administrator can create a new stream
 # based on an existing stream in the "basis_stream_deny" list
 if ( defined($basis_stream_deny{$stream2}) and `$::AccuRev ismember $principal "$admingrp"` == 0 ) {
   print TIO "Basing a new stream on existing stream '$stream2' disallowed:\n";
   print TIO "server_admin_trig: You are not in the $admingrp group.\n";
   close TIO;
   exit(1);
  }
}</pre>
<p>There are other facilities in AccuRev to control the process and workflow too. Stream Locks grant users/groups the ability to promote to and from streams and Access Control Lists (ACLs) grant access to entire depots and subhierarchies.  Setting up these security measures combined with the Admin Trigger provide your organization with the flexible and granular security model it needs for the <a href="http://www.accurev.com/accurev.html" target="_blank">optimum development process</a>.</p>
<p>Drop me a note and let me know the creative ways you&#8217;re using the Server Admin Trigger.</p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/03/27/security-primer-anatomy-of-the-accurev-admin-trigger/' addthis:title='Security Primer &#8211; Anatomy of the AccuRev Admin Trigger '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://accurev.com/blog/2009/03/27/security-primer-anatomy-of-the-accurev-admin-trigger/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AccuRev Teams Up with VersionOne on Agile Webinar Series</title>
		<link>http://accurev.com/blog/2009/03/10/accurev-teams-up-with-versionone-on-agile-webinar-series/</link>
		<comments>http://accurev.com/blog/2009/03/10/accurev-teams-up-with-versionone-on-agile-webinar-series/#comments</comments>
		<pubDate>Tue, 10 Mar 2009 15:45:53 +0000</pubDate>
		<dc:creator>AccuRev</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Educational Webinars]]></category>
		<category><![CDATA[AccuRev]]></category>
		<category><![CDATA[agile development]]></category>
		<category><![CDATA[Agile webinars]]></category>
		<category><![CDATA[Damon Poole]]></category>
		<category><![CDATA[release pattern]]></category>
		<category><![CDATA[release schedule]]></category>
		<category><![CDATA[VersionOne]]></category>

		<guid isPermaLink="false">http://blog.accurev.com/?p=700</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/03/10/accurev-teams-up-with-versionone-on-agile-webinar-series/' addthis:title='AccuRev Teams Up with VersionOne on Agile Webinar Series ' ><a href="//addthis.com/bookmark.php?v=250&#38;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">&#124;</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div>AccuRev CTO, Damon Poole, is a guest speaker for an Agile webinar series, Agile 101: Laying the Foundation for Agile Development, presented by VersionOne. Damon will be presenting this Wednesday on the following topic, and again on April 1 to discuss The Algorithms and Architecture of Agile vs. Traditional Software Development. Breaking the Major Release [...]<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/03/10/accurev-teams-up-with-versionone-on-agile-webinar-series/' addthis:title='AccuRev Teams Up with VersionOne on Agile Webinar Series '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/03/10/accurev-teams-up-with-versionone-on-agile-webinar-series/' addthis:title='AccuRev Teams Up with VersionOne on Agile Webinar Series ' ><a href="//addthis.com/bookmark.php?v=250&amp;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">|</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div><p>AccuRev CTO, Damon Poole, is a guest speaker for an Agile webinar series, <a href="http://www.versionone.com/Resources/Webinars.asp" target="_blank"><span style="color: #800080;">Agile 101: Laying the Foundation for Agile Development</span></a>, presented by <a href="http://www.versionone.com/index.asp" target="_blank"><span style="color: #800080;">VersionOne</span></a>.</p>
<p>Damon will be presenting this Wednesday on the following topic, and again on April 1 to discuss The Algorithms and Architecture of Agile vs. Traditional Software Development.</p>
<p><strong>Breaking the Major Release Habit </strong><br />
March 11th<br />
12:00 – 1:00pm EST</p>
<p>Are you frustrated with your release schedule? Are you considering moving to more frequent releases or wondering if there are ways to tweak your release schedule? Although the traditional pattern for software releases is to have a major release every 6-12 months or more and minor releases in between, there are many other release patterns to choose from. This session will examine the various factors and options involved, discuss their pros and cons, use examples drawn from a wide variety of companies, and give you the information you need to make an informed choice and then implement it.<a href="http://bit.ly/o5Ogb" target="_blank"></a></p>
<p><a href="http://www.versionone.com/Resources/Webinars.asp" target="_blank">Register</a></p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/03/10/accurev-teams-up-with-versionone-on-agile-webinar-series/' addthis:title='AccuRev Teams Up with VersionOne on Agile Webinar Series '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://accurev.com/blog/2009/03/10/accurev-teams-up-with-versionone-on-agile-webinar-series/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Agile Development Transformation Workshop for Managers &#8211; Lexington, MA</title>
		<link>http://accurev.com/blog/2009/02/04/agile-development-transformation-workshop-for-managers-lexington-ma/</link>
		<comments>http://accurev.com/blog/2009/02/04/agile-development-transformation-workshop-for-managers-lexington-ma/#comments</comments>
		<pubDate>Wed, 04 Feb 2009 21:11:07 +0000</pubDate>
		<dc:creator>AccuRev</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[AccuRev]]></category>
		<category><![CDATA[agile adoption]]></category>
		<category><![CDATA[agile coaching]]></category>
		<category><![CDATA[agile development]]></category>
		<category><![CDATA[Agile organizational change]]></category>
		<category><![CDATA[agile tools]]></category>
		<category><![CDATA[Agile Workshop]]></category>
		<category><![CDATA[cross-functional teams]]></category>
		<category><![CDATA[Damon Poole]]></category>
		<category><![CDATA[distributed agile]]></category>
		<category><![CDATA[distributed development]]></category>
		<category><![CDATA[Electric Cloud]]></category>
		<category><![CDATA[Enthiosys]]></category>
		<category><![CDATA[GlobalLogic]]></category>
		<category><![CDATA[Johnny Scarborough]]></category>
		<category><![CDATA[Mitigating Risk]]></category>
		<category><![CDATA[Rally Software]]></category>
		<category><![CDATA[Rich Mironov]]></category>
		<category><![CDATA[Scrum]]></category>

		<guid isPermaLink="false">http://blog.accurev.com/?p=615</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/02/04/agile-development-transformation-workshop-for-managers-lexington-ma/' addthis:title='Agile Development Transformation Workshop for Managers &#8211; Lexington, MA ' ><a href="//addthis.com/bookmark.php?v=250&#38;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">&#124;</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div>AccuRev is co-presenting a one-day seminar on Agile Development Transformation: &#8220;Mitigating Risk with Agile Development: Great Software, Great Business Results.” Where:10 Maguire Rd, Bldg. 1, Lexington, MA When: Thursday, February 26, 9:30 – 3:30 Details and registration Speakers: Rich Mironov (Enthiosys); Johnny Scarborough (GlobalLogic); Damon Poole (AccuRev) Cost: $50 for qualified registrants ( List price [...]<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/02/04/agile-development-transformation-workshop-for-managers-lexington-ma/' addthis:title='Agile Development Transformation Workshop for Managers &#8211; Lexington, MA '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/02/04/agile-development-transformation-workshop-for-managers-lexington-ma/' addthis:title='Agile Development Transformation Workshop for Managers &#8211; Lexington, MA ' ><a href="//addthis.com/bookmark.php?v=250&amp;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">|</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div><p>AccuRev is co-presenting a one-day seminar on <a href="http://www.accurev.com/agile-software-development.html" target="_blank">Agile Development </a>Transformation:</p>
<p><img class="alignleft size-full wp-image-626" title="agile-workshop" src="http://www.accurev.com/blog/wp-content/uploads/2009/02/agile-workshop.png" alt="agile workshop Agile Development Transformation Workshop for Managers   Lexington, MA" width="147" height="88" /><em><br />
<strong>&#8220;Mitigating Risk </strong><strong>with Agile Development: Great Software, Great Business Results.</strong>”</em></p>
<p><strong>Where:</strong>10 Maguire Rd, Bldg. 1, Lexington, MA<br />
<strong>When:</strong> Thursday, February 26, 9:30 – 3:30</p>
<p><em><strong><a class="external-link" href="http://www.accurev.com/workshop-agile.html" target="_blank">Details and registration</a></strong></em></p>
<p><strong>Speakers:</strong> <strong>Rich Mironov (Enthiosys); Johnny Scarborough (GlobalLogic); Damon Poole (AccuRev)</strong><br />
<strong>Cost:</strong> $50 for qualified registrants ( List price $595 ). Seating limited to 50 attendees.</p>
<p>This one-day session will include detailed presentations, interactive exercises and open discussion on:</p>
<ul>
<li>Agile development approaches including distributed agile methods, the history of agile, and agile manifesto</li>
<li>A detailed walk-through of Scrum, one agile approach</li>
<li>The organizational changes required for <a href="http://www.accurev.com/case-studies.html" target="_blank">successful agile adoption</a>: executive commitment, cross-functional teams, and coaching</li>
<li>Hear first-hand from one of your peers about how to bring about agile adoption and improved results.</li>
<li>Roadmaps, releases, iterations and the iron triangle</li>
<li>Business drivers, business value and customer collaboration approaches</li>
<li>How to evaluate technologies when adopting agile</li>
</ul>
<p><strong><em>This seminar is intended for CTOs, Vice Presidents &amp; Directors of:</em></strong></p>
<ul>
<li>Software Development or Engineering</li>
<li>Product Management</li>
<li>Business Units</li>
</ul>
<p>All attendees will receive free copies of two new books:</p>
<p><a class="external-link" href="http://www.amazon.com/review/product/0321458192/ref=cm_cr_dp_all_helpful?%5Fencoding=UTF8&amp;coliid=&amp;showViewpoints=1&amp;colid=&amp;sortBy=bySubmissionDateDescending" target="_blank">Scaling Software Agility: Best Practices for Large Enterprises</a> by Dean Leffingwell<br />
<a class="external-link" href="http://tinyurl.com/5ce65h" target="_blank">The Art of Product Management</a> by Rich Mironov</p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/02/04/agile-development-transformation-workshop-for-managers-lexington-ma/' addthis:title='Agile Development Transformation Workshop for Managers &#8211; Lexington, MA '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://accurev.com/blog/2009/02/04/agile-development-transformation-workshop-for-managers-lexington-ma/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Free Webinar: Emerging SCM Best Practices for Agile Development</title>
		<link>http://accurev.com/blog/2009/02/03/free-webinar-emerging-scm-best-practices-for-agile-development/</link>
		<comments>http://accurev.com/blog/2009/02/03/free-webinar-emerging-scm-best-practices-for-agile-development/#comments</comments>
		<pubDate>Tue, 03 Feb 2009 21:12:53 +0000</pubDate>
		<dc:creator>AccuRev</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Events]]></category>
		<category><![CDATA[SCM Resources]]></category>
		<category><![CDATA[agile development]]></category>
		<category><![CDATA[agile development best practices]]></category>
		<category><![CDATA[agile development webinar]]></category>
		<category><![CDATA[Agile SCM]]></category>
		<category><![CDATA[continuous integration]]></category>
		<category><![CDATA[issue-based development]]></category>
		<category><![CDATA[multi-stage continuous integration]]></category>
		<category><![CDATA[refactoring]]></category>
		<category><![CDATA[SCCM]]></category>
		<category><![CDATA[SCM]]></category>
		<category><![CDATA[SCM best practices]]></category>
		<category><![CDATA[scm metrics]]></category>
		<category><![CDATA[SCM tool]]></category>
		<category><![CDATA[Software Configuration Management]]></category>
		<category><![CDATA[Uttam Narsu]]></category>

		<guid isPermaLink="false">http://blog.accurev.com/?p=590</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/02/03/free-webinar-emerging-scm-best-practices-for-agile-development/' addthis:title='Free Webinar: Emerging SCM Best Practices for Agile Development ' ><a href="//addthis.com/bookmark.php?v=250&#38;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">&#124;</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div>AccuRev is hosting a free Webinar on &#8220;Emerging SCM Best Practices for Agile Development&#8221; on Thursday, February 5 from 1:00 &#8211; 2:00 PM EST. The webinar will introduce the unique demands that agile processes place on legacy SCM tools and ways to build and automate an efficient Agile development process. Damon Poole, AccuRev CTO, and [...]<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/02/03/free-webinar-emerging-scm-best-practices-for-agile-development/' addthis:title='Free Webinar: Emerging SCM Best Practices for Agile Development '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/02/03/free-webinar-emerging-scm-best-practices-for-agile-development/' addthis:title='Free Webinar: Emerging SCM Best Practices for Agile Development ' ><a href="//addthis.com/bookmark.php?v=250&amp;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">|</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div><div id="attachment_609" class="wp-caption alignleft" style="width: 160px"><a href="http://www.accurev.com/agile-software-development.html"><img class="size-full wp-image-609 " title="agile1" src="http://www.accurev.com/blog/wp-content/uploads/2009/02/agile1.gif" alt="More Agile resources" width="150" height="145" /></a><p class="wp-caption-text">More Agile resources</p></div>
<p>AccuRev is hosting a free Webinar on &#8220;<em>Emerging SCM Best Practices for Agile Development</em>&#8221; on <strong>Thursday, February 5 from 1:00 &#8211; 2:00 PM EST</strong>. The webinar will introduce the unique demands that agile processes place on legacy SCM tools and ways to build and automate an efficient Agile development process. Damon Poole, AccuRev CTO, and Uttam Narsu will be presenting.</p>
<p>Mr. Narsu, an industry expert on <a href="http://www.accurev.com/software-configuration-management.html">software configuration management</a> (SCM) best practices and former Forrester/Giga analyst, will discuss the most important aspects to consider when applying <a href="http://www.accurev.com/whitepaper/bestpractices">SCM best practices</a> to an agile world.  Mr. Poole will discuss how Multi-stage <a href="http://www.accurev.com/continuous-integration.html">Continuous Integration</a> can solve some of the underlying impediments to a successful Agile development environment.</p>
<p>&#8220;SCM is critical to Agile success. If your SCM tools don’t provide integrated and seamless support for Agile, you won’t get widespread adoption of <a href="http://www.accurev.com/agile-software-development.html">Agile development</a>,&#8221; said Narsu. &#8220;Development teams require brutally efficient SCM tools, but the tools must still be issue-based, must have support for flexible process models, and enable efficient branching, merging, and refactoring. The <a href="http://www.accurev.com/scm.html">SCM tool</a> should also provide private workspaces and assist continuous integration.&#8221;</p>
<p>Mr. Narsu has worked with hundreds of clients using wildly differing software development environments. While clients who succeed with agile development have strong SCM practices, the best practiced <a href="http://www.accurev.com/agile-scm.html">agile SCM</a>: transparently integrated, flexible, and collaborative.</p>
<p><strong>Specific topics discussed will include:</strong></p>
<ul type="disc">
<li>Typical SCM obstacles to Agile success and how to avoid them;</li>
<li>Key Agile Process requirements for SCM products and specific use case scenarios;</li>
<li>Challenges with <a href="http://www.accurev.com/continuous-integration.html">continuous integration</a>, and how Multi-stage Continuous Integration delivers value and how to adopt it today; and</li>
<li>Key <a href="http://blog.accurev.com/2008/07/16/why-traceability-matters/">SCM metrics</a> for delivering on Agile development goals.</li>
</ul>
<p><strong>Register here for this free webinar taking place on Thursday, February 5th from 1:00-2:00 EST: </strong><a href="http://www.accurev.com/webinar.html">Emerging SCM Best Practices for Agile Development</a>.</p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2009/02/03/free-webinar-emerging-scm-best-practices-for-agile-development/' addthis:title='Free Webinar: Emerging SCM Best Practices for Agile Development '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://accurev.com/blog/2009/02/03/free-webinar-emerging-scm-best-practices-for-agile-development/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Seven Deadly Sins of Software Application Development &#8211; Part 2 of 2</title>
		<link>http://accurev.com/blog/2008/06/27/the-seven-deadly-sins-of-software-application-development-part-2-of-2/</link>
		<comments>http://accurev.com/blog/2008/06/27/the-seven-deadly-sins-of-software-application-development-part-2-of-2/#comments</comments>
		<pubDate>Fri, 27 Jun 2008 16:32:11 +0000</pubDate>
		<dc:creator>lorne cooper</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[AccuRev]]></category>
		<category><![CDATA[agile development]]></category>
		<category><![CDATA[agile process]]></category>
		<category><![CDATA[application development]]></category>
		<category><![CDATA[automated regression test]]></category>
		<category><![CDATA[build process]]></category>
		<category><![CDATA[building a software team]]></category>
		<category><![CDATA[development process]]></category>
		<category><![CDATA[flexible process]]></category>
		<category><![CDATA[offshore application development]]></category>
		<category><![CDATA[Offshore development]]></category>
		<category><![CDATA[regression testing]]></category>
		<category><![CDATA[software application development]]></category>
		<category><![CDATA[software process automation]]></category>
		<category><![CDATA[test process]]></category>

		<guid isPermaLink="false">http://accurev.wordpress.com/?p=216</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/06/27/the-seven-deadly-sins-of-software-application-development-part-2-of-2/' addthis:title='The Seven Deadly Sins of Software Application Development &#8211; Part 2 of 2 ' ><a href="//addthis.com/bookmark.php?v=250&#38;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">&#124;</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div>by Lorne Cooper, CEO, AccuRev    A Top 25 WordPress Blog Post of the Day   In Part 1, we looked at the sins of Building a Weak Team and Ignoring the Future.  Once you’re committed to hiring talent and building a forward-looking process, there are two more sins to avoid.   Sin #6: A [...]<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/06/27/the-seven-deadly-sins-of-software-application-development-part-2-of-2/' addthis:title='The Seven Deadly Sins of Software Application Development &#8211; Part 2 of 2 '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/06/27/the-seven-deadly-sins-of-software-application-development-part-2-of-2/' addthis:title='The Seven Deadly Sins of Software Application Development &#8211; Part 2 of 2 ' ><a href="//addthis.com/bookmark.php?v=250&amp;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">|</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div><p class="MsoNormal" style="margin:0"><strong>by Lorne Cooper, CEO, AccuRev</strong> </p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0"><em><strong>A Top 25 WordPress Blog Post of the Day</strong></em></p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small">In <a title="The Seven Deadly Sins of Software Application Development - Part 1 of 2 " href="http://blog.accurev.com/2008/06/26/the-seven-deadly-sins-of-software-application-development-part-1-of-2/" target="_blank">Part 1</a>, we looked at the sins of Building a Weak Team and Ignoring the Future.<span>  </span>Once you’re committed to hiring talent and building a forward-looking process, there are two more sins to avoid.</span></p>
<p class="MsoNormal" style="margin:0"> </p>
<h2 style="margin:12pt 0 3pt"><em><span style="font-size:large;font-family:Arial">Sin #6: A Long Tail After Development is Complete</span></em></h2>
<p style="margin:12pt 0 3pt"> </p>
<p class="MsoNormal" style="margin:0"><span>We constantly see organizations where the time from “requirements-in” to “feature freeze” is half the time to “solutions-out.”<span>  </span>That 50% “tail” on development provides no direct value to customers, but is there because of limitations in our development process. </span></p>
<p class="MsoNormal" style="margin:0"><span> </span></p>
<p class="MsoNormal" style="margin:0"><span><span>Sometimes that tail is twice the length of the initial development.<span>  </span></span></span></p>
<p class="MsoNormal" style="margin:0"><span> </span></p>
<p class="MsoNormal" style="margin:0"><span>Ironically, while the long heavy tail is grown to protect the organization from delivering bad product, it eventually decreases response time until it becomes an instrument in the organization’s death.</span></p>
<p class="MsoNormal" style="margin:0"><span> </span></p>
<p class="MsoNormal" style="margin:0"><span>But many industries have a long tail, don’t they?<span>  </span>Surely it doesn’t hurt the construction of bridges that the plans are completed long before the bridge is built.</span></p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small">For forty years people have tried to make analogies between software development and more mature engineering disciplines, say, like building buggy whips.<span>  </span>The designer of the buggy whip might make a sample or two to try it out on his children, then send it off to the factory, where a slew of Industrial Buggy Whip Engineers would spend months figuring out how to sew the damn things, buying up horse-hair, and hiring immigrants to sit at sewing machines. A year or so late, Pony Express delivers the new buggy whip to general stores all over the Grand Trunk Railway line.<span>  </span></span></p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">We can all certainly learn a lot from that.</p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">Now try telling your customer that the problem she’s been working around is well understood, and in fact fixed, but she’s not going to get it for three months.<span>  </span>She’ll be looking for alternative suppliers before the screen door has hit your butt.<span>  </span></p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">Everything moves too fast to use that tired old process.<span>  </span>Frankly, I use to blame computers.<span>  </span>Now I blame the Internet.<span>  </span></p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">When you take a hard look at the time it takes to get completed product out the door, you’ll probably find it dominated by two things: testing, and fixing bugs that the testers find.<span>  </span>Both stem from the problem that you’re not doing enough testing during the development process, and you’re trying to test too much at one time.</p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small">I’m no fan of Hawthorn-effects, or what the politically incorrect might call gimmicks, like pair programming or stand-up meetings, but projects that use an Agile development with automated regression test processes are certainly doing more right than wrong.<span>  </span></span></p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">Is it really so hard to manage by tasks/issues, normalize them to a small unit of work, merge in just one set of changes into each build, and test just that perturbation?<span>  </span>What if you knew you would consistently get better code out the back of the process, and therefore make your organization more responsive to your customers?</p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">Your development process must minimize latency, instead of trying to maximize bandwidth.<span>  </span>Don’t miss the changes in requirements and environments that produce opportunities for better products, or sooner or later you’ll end up locked in a suicide pact with a project no one wants.</p>
<p class="MsoNormal" style="margin:0"> </p>
<h2 style="margin:12pt 0 3pt"><em><span style="font-size:large;font-family:Arial">Sin #7: Complacency</span></em></h2>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small">Calais’s stone walls were so thick the city had no fear of invaders, until they showed up with cannons.<span>  </span>Napoleon’s Old Guard was undefeated in battle after battle, until they were cut down by Wellington at Waterloo.<span>  </span>Big Blue’s OS/2 would crush little Microsoft’s Windows product.<span>  </span>Big Microsoft’s Live Search would crush little Google’s search engine.<span>  </span></span></p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">Hubris on ice will leave you with a heck of a hangover.</p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">That brilliant team using that wonderful process you put together last year, is just a few months of complacency away from dysfunction.<span>  </span>People move and, thanks to the 13<sup>th</sup> Amendment to the US Constitution, may leave their jobs and there’s little you can do about it.<span>  </span>Environments change and architectures become outdated.<span>  </span>The marketplace changes and requirements change with them.</p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">One VP Engineering I know told me he asked his off-shore application development partner to give him 110%.<span>  </span>They did, but it turned out to be turnover.</p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">Your process needs to be constantly monitored and upgraded, because everything in the process is changing.<span>  </span>If your offshore partner has high turnover, their part of the process might require more code inspection and knowledge transfer.<span>  </span>If your biggest customer can’t use your product until it supports their new environment, you need to put a special team on building a custom version of the product, and then merge that back into main development.<span>  </span>If you have to replace an old veteran with a rookie, then you might create new integration points and a more rigorous test protocol.</p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">Recognize that everything will change, and the assumptions under which you built your last success are no longer valid.<span>  </span>Make small process changes early and often, or in the long run the big changes will be made by your replacement.</p>
<p class="MsoNormal" style="margin:0"> </p>
<h2 style="margin:12pt 0 3pt"><em><span style="font-size:large;font-family:Arial">Stirring Conclusion</span></em></h2>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">Managing a software development organization is a very challenging task, as tough as playing a violin with your toes, and less fun.<span>  </span></p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">I don’t mean to trivialize important management functions <span>such as</span> customer management, budget and project tracking, running a good meeting, <span>and</span> designing effective compensation structures<span>. And</span> by all means, <span>hiring</span> someone to spend their time doing all of that.</p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">But that won’t protect you from the seven deadly sins.<span>  </span>Only you can do that.</p>
<p class="MsoNormal" style="margin:0"> </p>
<p class="MsoNormal" style="margin:0">I’ll finish with the Four Virtues, which are the antidote to the Seven Sins:</p>
<ol style="margin-top:0" type="1">
<li class="MsoNormal">Hire great people or don’t hire.</li>
<li class="MsoNormal">Plan to build a product that will have a long life.</li>
<li class="MsoNormal">Keep your process nimble, and deliver less, faster.</li>
<li class="MsoNormal">Keep improving everything.</li>
</ol>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/06/27/the-seven-deadly-sins-of-software-application-development-part-2-of-2/' addthis:title='The Seven Deadly Sins of Software Application Development &#8211; Part 2 of 2 '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://accurev.com/blog/2008/06/27/the-seven-deadly-sins-of-software-application-development-part-2-of-2/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Agile &#8211; The Soft Hum of Many Well-Intentioned Voices</title>
		<link>http://accurev.com/blog/2008/04/23/agile-the-soft-hum-of-many-well-intentioned-voices/</link>
		<comments>http://accurev.com/blog/2008/04/23/agile-the-soft-hum-of-many-well-intentioned-voices/#comments</comments>
		<pubDate>Wed, 23 Apr 2008 15:49:14 +0000</pubDate>
		<dc:creator>fran0414</dc:creator>
				<category><![CDATA[AccuRev]]></category>
		<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[Customer Guest Blogs]]></category>
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[agile development]]></category>
		<category><![CDATA[CM]]></category>
		<category><![CDATA[CM tool]]></category>
		<category><![CDATA[configuration management]]></category>
		<category><![CDATA[configuration manager]]></category>
		<category><![CDATA[distributed development team]]></category>
		<category><![CDATA[issue tracking]]></category>
		<category><![CDATA[SCM]]></category>
		<category><![CDATA[SCM tool]]></category>
		<category><![CDATA[version control]]></category>

		<guid isPermaLink="false">http://accurev.wordpress.com/?p=163</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/04/23/agile-the-soft-hum-of-many-well-intentioned-voices/' addthis:title='Agile &#8211; The Soft Hum of Many Well-Intentioned Voices ' ><a href="//addthis.com/bookmark.php?v=250&#38;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">&#124;</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div>If you listen closely, you can almost hear the soft hum of thousands of well-intended voices all intoning the mystical phrase “Agile Development” like a magical mantra that will make everything faster, better and appear more attractive.  This buzz word is coming from managers and their bosses, from PMs and VPs and CMs (Configuration Managers) [...]<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/04/23/agile-the-soft-hum-of-many-well-intentioned-voices/' addthis:title='Agile &#8211; The Soft Hum of Many Well-Intentioned Voices '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/04/23/agile-the-soft-hum-of-many-well-intentioned-voices/' addthis:title='Agile &#8211; The Soft Hum of Many Well-Intentioned Voices ' ><a href="//addthis.com/bookmark.php?v=250&amp;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">|</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div><p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman">If you listen closely, you can almost hear the soft hum of thousands of well-intended voices all intoning the mystical phrase “Agile Development” like a magical mantra that will make everything faster, better and appear more attractive.<span>  </span>This buzz word is coming from managers and their bosses, from PMs and VPs and CMs (Configuration Managers) and other folks with 2-letter title abbreviations, from developers and testers and even the customers.<span>   </span>“We must be Agile!”– so they say.</span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small"><span style="font-family:Times New Roman">As you may have noticed, if you repeat any word or phrase long enough, it tends to lose all meaning.<span>  </span>Unfortunately this seems to be the case with concept of Agile Development.<span>  </span></span></span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small"><span style="font-family:Times New Roman">I once attended a meeting wherein a VP announced that we were going to do agile development “as of today.” There was a lot of cheering and a lot of smiling and a few hands were shaken.<span>  </span>And at the very back of the room, there were a few of us that sat there quietly trying mightily to conceal our shock/disbelief/cynicism and sheer apprehension at the thought of what was about to happen to us.<span>  </span></span></span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman">You see – <a href="http://damonpoole.blogspot.com/search/label/Agile" target="_blank">Agile development </a>is more than just throwing smaller chunks of code into Production faster.<span>  </span>It takes planning, involvement, a solid architecture, good supporting tools – in short, A WHOLE LOT OF WORK – to make agile processes really work for you.<span>  </span>You can’t reap the reward without doing the work first– and if you try, all you’re going to wind up with is a great, big mess. (Not to mention a staff with their updated resumes out on DICE)</span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman">While this post is written a bit tongue-in-cheek, the message is serious.<span>  </span>If you want to be agile, make an investment in the process:</span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in"><span style="font-family:Times New Roman"><span><span style="font-size:small">1)</span><span style="font:7pt">      </span></span><span style="font-size:small">Know your code architecture:<span>  </span>Having all 73,000 files in version control is not the same as KNOWING the architecture of your code. You can’t be truly agile if you don’t know the inter-dependencies of your own code.<span>  </span></span></span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in"><span style="font-family:Times New Roman"><span><span style="font-size:small">2)</span><span style="font:7pt">      </span></span><span style="font-size:small">Know your end-users wants vs. needs: Actively involve the end-users in the release scope.<span>  </span>This is A LOT harder than it sounds.<span>  </span>It takes a good relationship with the end users to separate out their desires from their actual needs, and balance the content of the releases across the two.<span>  </span>Building this relationship is a fundamental component of agility.</span></span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in"><span style="font-family:Times New Roman"><span><span style="font-size:small">3)</span><span style="font:7pt">      </span></span><span style="font-size:small">Implement Tools that support Agile methods:<span>  </span>There is nothing agile about <a href="http://www.daveonscm.com/" target="_blank">merging branches of code </a>all over kingdom-come.<span>  </span>There is nothing agile about having to manually determine what files changed since last Friday at noon, or depending on checksum to figure it out.<span>  </span>Choose your tools wisely, implement them appropriately for your individual situation, and enforce the process globally across all groups, management levels and situations…and do so knowing that everything is subject to change without notice.</span></span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman">I highly recommend AccuRev to support <a href="http://www.accurev.com/webinars/reg/20070719_agile_reg.shtml" target="_blank">agile development</a> methodologies.<span>  </span>It provides a level of flexibility that I’ve never encountered in any other tool, while still enforcing process through an indelible history of every event, and user defined process criteria. </span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman">AccuRev is the ideal tool for distributed development teams, with fast remote updates, the option of full or partial updates to the development workspace, and flexible, developer-defined and controlled sharing of in-process work.</span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman">I’ve setup a lot of projects using a lot of different software <a href="http://www.accurev.com/accurev-sccm.html" target="_blank">configuration management</a> tools, and AccuRev is by far and away, my favorite choice for a <a href="http://www.accurev.com/product-overview.html" target="_blank">SCM tool</a> – particularly when supporting agile processes.</span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman">In closing, here are some words of wisdom from an old-hat Configuration Manager:</span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in"><span style="font-family:Times New Roman"><span><span style="font-size:small">1)</span><span style="font:7pt">      </span></span><span style="font-size:small">If they tell you, “Just load the CM tool on the development server for now.<span>  </span>We’ll find you a permanent server later” – DON’T fall for it.</span></span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in"><span style="font-family:Times New Roman"><span><span style="font-size:small">2)</span><span style="font:7pt">      </span></span><span style="font-size:small">When a prospective employee describes their environment as “dynamic” just know in advance that’s a euphemism for “chaos.”</span></span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in"><span style="font-family:Times New Roman"><span><span style="font-size:small">3)</span><span style="font:7pt">      </span></span><span style="font-size:small">There is no such thing as a “Planned Emergency.”</span></span></p>
<p class="MsoNormal" style="text-indent:-0.25in;margin:0 0 0 0.5in"><span style="font-family:Times New Roman"><span><span style="font-size:small">4)</span><span style="font:7pt">      </span></span><span style="font-size:small">If your manager says, “We’re implementing agile methodologies, and we’re buying <a href="http://www.accurev.com/clearcase-adapter.html" target="_blank">ClearCase</a>, because it’s the best,”….well, in that case, I’ll be seeing your updated resume on DICE…</span></span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="margin:0"><span style="font-size:small;font-family:Times New Roman"> </span></p>
<p class="MsoNormal" style="margin:0"><em><span style="font-size:small"><span style="font-family:Times New Roman">Fran Schmidt is a veteran CM, who’s survived over a decade in the Software Configuration Management field through a combination of good humor, constant education on the newest technologies, and sheer stubbornness.</span></span></em></p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/04/23/agile-the-soft-hum-of-many-well-intentioned-voices/' addthis:title='Agile &#8211; The Soft Hum of Many Well-Intentioned Voices '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://accurev.com/blog/2008/04/23/agile-the-soft-hum-of-many-well-intentioned-voices/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Continuous Integration: The fluffy clouds of Zealotry</title>
		<link>http://accurev.com/blog/2008/04/04/continuous-integration-the-fluffy-clouds-of-zealotry/</link>
		<comments>http://accurev.com/blog/2008/04/04/continuous-integration-the-fluffy-clouds-of-zealotry/#comments</comments>
		<pubDate>Fri, 04 Apr 2008 16:53:27 +0000</pubDate>
		<dc:creator>jsherwood</dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[AccuRev]]></category>
		<category><![CDATA[agile development]]></category>
		<category><![CDATA[agile process]]></category>
		<category><![CDATA[continuous integration]]></category>
		<category><![CDATA[Lean development]]></category>
		<category><![CDATA[SCM]]></category>
		<category><![CDATA[Software Configuration Management]]></category>

		<guid isPermaLink="false">http://blog.accurev.com/?p=136</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/04/04/continuous-integration-the-fluffy-clouds-of-zealotry/' addthis:title='Continuous Integration: The fluffy clouds of Zealotry ' ><a href="//addthis.com/bookmark.php?v=250&#38;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">&#124;</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div>A long, long time ago I started life (okay college life) as an Engineer. Electrical. Analog. For having grown up with always having a computer in my room I was about as far away from the digital world I could get and still be technical. Computing was easy. Oh pascal, if only you could see [...]<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/04/04/continuous-integration-the-fluffy-clouds-of-zealotry/' addthis:title='Continuous Integration: The fluffy clouds of Zealotry '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/04/04/continuous-integration-the-fluffy-clouds-of-zealotry/' addthis:title='Continuous Integration: The fluffy clouds of Zealotry ' ><a href="//addthis.com/bookmark.php?v=250&amp;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">|</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div><p>A long, long time ago I started life (okay college life) as an Engineer. Electrical. Analog. For having grown up with always having a computer in my room I was about as far away from the digital world I could get and still be technical. Computing was easy. Oh pascal, if only you could see me now. Those were wild days, staying up until all hours of the night sitting in a basement computer lab trying to finish an assignment. When I wasn&#8217;t at classes or getting into a variety of trouble, I would spend time with my roommate, a Mac user. He&#8217;d mock my Amiga; &#8220;Do you really need two buttons?&#8221; I&#8217;d mock the Mac (pre-classic) &#8220;Hey I&#8217;ve got 4096 colors&#8221; but we&#8217;d agree on one thing, both were better than that loser IBM machine two dorm rooms down the hall.</p>
<p>Then came real life, I fell into the digital world, and found myself back in school getting a more formal digital education. I found myself in Design Patterns, listening to people around me furiously debating the merits and needs of singletons, factories and observers.</p>
<p>Then came Java, and the arguments continued. Performance, idiosyncracies of langauge (both C++ and Java) etc., etc.</p>
<p>Then came Open Source. Don&#8217;t get me started with open source. If the OS mafia reads anything I write they&#8217;ll try to shutdown our website.</p>
<p>Now we have <a href="http://reddit.com/r/agile/" target="_blank">Agile</a>. And Lean Development. And Continuous Integration (CI). I&#8217;ll lump them together because they are the current arguments I hear today. Yeah, arguments. Developers become elevated and yell out &#8220;You&#8217;re not really agile!&#8221; I read books on what it means to be Lean, and how to identify if you are Lean. I find CI writers muttering under their breath that any build process that occurs hourly isn&#8217;t truly CI.</p>
<p>They&#8217;ve lost focus. Or more importantly their focus should not be your focus.</p>
<p>I wasn&#8217;t hired because I was a Design Patterns zealot. I wasn&#8217;t hired because there was a need for an expert on Lean Development. I wasn&#8217;t hired to support code in the OS movement. I was hired to produce a product. Our customers want our product, they want it yesterday, both features and fixes.</p>
<p>So what&#8217;s the best way to deliver value to the company and customer? To be honest, I may not know the best way, but I know we will do our best to do whatever it takes. I and my coworkers strive to find reasonable solutions in a reasonable time.</p>
<p>But the zealots cry out and tell you what you are doing wrong, not doing right. What they don&#8217;t understand is that if they want to be heard they have to show the value in the changes. You need to give the agile concepts breathing room. This is what really encourages adoption. Agile zealots need to understand why there is resistance, understand people&#8217;s concerns and address them, and believe me they will embrace the positive elements.</p>
<p>On the other side, why listen to these zealots? Because if you can get past the worship and hype, there is value in what they describe. If you listen, you can figure out what elements will be useful.</p>
<p>Agile really is an evolutionary model. Agile isn&#8217;t about anarchy or cowboy developers, but about adopting processes that improve on process management. Agile really helps break logjams where problems seemed intractable or a great unknown, places where development has struggled for decades over thinking problems only to have their solutions fall flat and disappoint customers.</p>
<p>Lean Development has a great focus on continuous refinement. Focus on problem areas and work to make it a little better. After you&#8217;ve done this take another look and make it a little better somewhere else. Very quickly the improvements add up.</p>
<p>And <a href="http://www.accurev.com/scm-white-papers.htm" target="_blank">Continuous Integration</a> keeps simple problems simple, resolving them in a timely manner. CI keeps developers from sitting on problems further compounding integration, testing and deployment.</p>
<p>There are values that are worth a look in all of these movements. Take what they give you, find the value and use it. <a href="http://dotnet.sys-con.com/read/526698_1.htm" target="_blank">Continuous Integration </a>makes your life better. Problems are found (and hopefully fixed) when they happen, not weeks later. You are getting continuous feedback on the health of your project, not monthly or weekly feedback. If your life is better you can spend more time providing value to your company and your customers. If you deal with less pain you have more time to solve the problems you should be solving. And adding the features that your customers are waiting for and wanted yesterday.</p>
<p>What are you waiting for? Don&#8217;t be discouraged thinking you aren&#8217;t using CI &#8216;correctly&#8217;. Take elements and make them work for you, and the value will come quickly.</p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2008/04/04/continuous-integration-the-fluffy-clouds-of-zealotry/' addthis:title='Continuous Integration: The fluffy clouds of Zealotry '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://accurev.com/blog/2008/04/04/continuous-integration-the-fluffy-clouds-of-zealotry/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Stream-per-Task Pattern &#8211; with AccuRev SCM</title>
		<link>http://accurev.com/blog/2007/10/11/stream-per-task-paradigm-with-accurev-software-configuration-management/</link>
		<comments>http://accurev.com/blog/2007/10/11/stream-per-task-paradigm-with-accurev-software-configuration-management/#comments</comments>
		<pubDate>Thu, 11 Oct 2007 20:00:14 +0000</pubDate>
		<dc:creator>dave</dc:creator>
				<category><![CDATA[Best Practices]]></category>
		<category><![CDATA[Patterns]]></category>
		<category><![CDATA[AccuRev]]></category>
		<category><![CDATA[agile development]]></category>
		<category><![CDATA[best practice]]></category>
		<category><![CDATA[promotion-based]]></category>
		<category><![CDATA[SCM]]></category>
		<category><![CDATA[Software Configuration Management]]></category>
		<category><![CDATA[stream per task]]></category>
		<category><![CDATA[task-based development]]></category>
		<category><![CDATA[version control]]></category>

		<guid isPermaLink="false">http://accurev.wordpress.com/2007/10/11/stream-per-task-paradigm-with-accurev-software-configuration-management/</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2007/10/11/stream-per-task-paradigm-with-accurev-software-configuration-management/' addthis:title='Stream-per-Task Pattern &#8211; with AccuRev SCM ' ><a href="//addthis.com/bookmark.php?v=250&#38;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">&#124;</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div>Streams are the workhorse of an AccuRev depot. Without streams, everyone would commit code to a single &#8220;bucket.&#8221; As you know, streams are connected together in a hierarchy that defines a promotion-based workflow. For mainline development, a workflow can be as simple as: Dev &#62; Test &#62; Prod or, sophisticated like: Dev &#62; UnitTest &#62; [...]<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2007/10/11/stream-per-task-paradigm-with-accurev-software-configuration-management/' addthis:title='Stream-per-Task Pattern &#8211; with AccuRev SCM '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2007/10/11/stream-per-task-paradigm-with-accurev-software-configuration-management/' addthis:title='Stream-per-Task Pattern &#8211; with AccuRev SCM ' ><a href="//addthis.com/bookmark.php?v=250&amp;username=xa-4d2b47597ad291fb" class="addthis_button_compact">Share</a><span class="addthis_separator">|</span><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a></div><p>Streams are the workhorse of an AccuRev depot. Without streams, everyone would commit code to a single &#8220;bucket.&#8221; As you know, streams are connected together in a hierarchy that defines a promotion-based workflow. For mainline development, a workflow can be as simple as:</p>
<p><code>Dev &gt; Test &gt; Prod</code></p>
<p>or, sophisticated like:</p>
<p><code>Dev &gt; UnitTest &gt; Int &gt; LoadTest &gt; FlightTest &gt; Prod</code></p>
<h3>The Pattern</h3>
<p>While streams are always used for organizing the <em>core </em>workflow, they can also be extended to logically organize developer tasks using a &#8220;stream-per-task&#8221; paradigm. <span style="color: #0000ff;">The concept is simple:</span> create a new stream for every task that one or more developers plan to work on. Name the stream logically, as in &#8220;Feature X&#8221; or &#8220;BugFix Y&#8221;. The developers then create their workspaces from this stream. This pattern works exceptionally well with agile development groups where work is broken down into tasks.</p>
<h3>The Advantages</h3>
<p>In theory, the task stream is just another stream and promotion step on the way to delivering changes to the core workflow (<em>see adjacent picture</em>). Though, in practice, the advantages are numerous:<a title="Stream per Task" href="http://www.accurev.com/blog/wp-content/uploads/2007/10/stream_per_task.jpg" target="_blank"><img class="alignright" style="margin-top: 10pt; margin-right: 0px; margin-bottom: 5px; margin-left: 5px; border: 1px solid black;" src="http://www.accurev.com/blog/wp-content/uploads/2007/10/stream_per_task.jpg" alt="Stream per Task" width="200" height="150" title="Stream per Task Pattern   with AccuRev SCM" /></a></p>
<ul>
<li>Organize development activity by feature or fix</li>
<li>Visually see all active projects (removed task streams are implicitly <em>finished</em>)</li>
<li>Visually see and manage who is working on any given project</li>
<li>Develop individual projects against latest mainline without forced committing to the core (<em>relies on inheritance and </em><em>significantly reduces rollback</em>)</li>
<li>Control access to projects by user or group using stream locks</li>
<li>Retarget entire projects and teams with a single drag-n-drop</li>
</ul>
<h3>The Critics</h3>
<p>No suggestion is without its critics. Let&#8217;s address a few of the common claims. <strong>Claim</strong>: adding a new stream creates an unnecessary promotion step. <span style="color: #ff0000;">Response: </span>use a <a href="http://blog.accurev.com/2007/09/20/stream-refactoring-with-pass-throughs/" target="_blank">pass-through stream</a> instead! <strong>Claim</strong>: creating a stream-per-task will create 10&#8242;s, or 100&#8242;s of streams. <span style="color: #ff0000;">Response</span>: Yes, but each stream is a 120-byte (yes, byte) record of meta data on the server so space consumption is negligible; the GUI &#8216;zoom&#8217; feature makes navigating thousands of streams manageable; remove each stream when the project is finished; and using a good naming convention goes a long way. <strong>Claim</strong>: Creating streams is yet-another-step for someone; who will do it? <span style="color: #ff0000;">Response</span>: it depends; Sometimes savvy project managers enter them in AccuRev; other times it&#8217;s the release manager(s) who take this on as a routine task; but I say, empower the developers! Why not have the dev leads or project-oriented developers do the task &#8212; it&#8217;s sooo simple and can be controlled with locks, ACLs, or basic triggers.</p>
<p><span style="color: #ff0000;"><a title="Workspace per Task" href="http://www.accurev.com/blog/wp-content/uploads/2007/10/workspace_per_task.jpg" target="_blank"><img class="alignright" style="margin-top: 5pt; margin-right: 0px; margin-bottom: 5px; margin-left: 5pt; border: 1px solid black;" src="http://www.accurev.com/blog/wp-content/uploads/2007/10/workspace_per_task.jpg" alt="Workspace per Task" width="200" height="150" title="Stream per Task Pattern   with AccuRev SCM" /></a></span>For those critics still remaining who need proof, I&#8217;ve provided an illustrated stream hierarchy where everyone contributes to a single bucket. Compare this picture with the one above&#8230;. and I&#8217;m sure you&#8217;ll be convinced. In short, the drawbacks of everyone committing to the same bucket include:</p>
<ul>
<li>Unable to collaborate in isolation</li>
<li>Requires reverting (unmerging) features who&#8217;s release has been postponed</li>
<li>Limited visibility to active projects; requires strict wspace naming; hard to enforce</li>
<li>Retargeting project work requires multiple workspace reparenting</li>
<li>Unable to control per-project delivery or access with locks or ACLs</li>
</ul>
<h3>Concrete Example</h3>
<p>With the pros and cons out of the way, lets show a concrete example. For both discussions above, <a title="Stream per Task Example" href="http://www.accurev.com/blog/wp-content/uploads/2007/10/stream_per_task_example.jpg" target="_blank"><img class="alignright" style="margin-top: 5px; margin-right: 0px; margin-bottom: 5px; margin-left: 5pt; border: 1px solid black;" src="http://www.accurev.com/blog/wp-content/uploads/2007/10/stream_per_task_example.jpg" alt="Stream per Task Example" width="200" height="150" title="Stream per Task Pattern   with AccuRev SCM" /></a>I intentionally created stream structures in abstract form using generic names and a layout that is comparable. But lets get real. Here is a stream structure that represents a more realistic environment and even includes elements from a <a href="http://accurev.wordpress.com/2007/09/20/stream-refactoring-with-pass-throughs/" target="_blank">previous blog</a> post on using the pass-through stream. Isn&#8217;t it great to see how this stream-per-task paradigm helps methodically organize activity across the entire depot!</p>
<p>Are there any other pros or cons to this approach? Does anyone have examples of using this pattern in their own implementation of AccuRev?</p>
<p>/happy tasking/ &#8211; dave</p>
<div class="addthis_toolbox addthis_default_style " addthis:url='http://accurev.com/blog/2007/10/11/stream-per-task-paradigm-with-accurev-software-configuration-management/' addthis:title='Stream-per-Task Pattern &#8211; with AccuRev SCM '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_button_google_plusone" g:plusone:size="medium"></a><a class="addthis_counter addthis_pill_style"></a></div>]]></content:encoded>
			<wfw:commentRss>http://accurev.com/blog/2007/10/11/stream-per-task-paradigm-with-accurev-software-configuration-management/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
	</channel>
</rss>

