<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="http://feedproxy.google.com/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feedproxy.google.com/~d/styles/itemcontent.css"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0" xml:base="http://agilesoftwaredevelopment.com">
<channel>
 <title>Agile Software Development</title>
 <link>http://agilesoftwaredevelopment.com</link>
 <description>Finding better ways of developing software</description>
 <language>en</language>
<creativeCommons:license>http://creativecommons.org/licenses/by-nc-sa/3.0/</creativeCommons:license><image><link>http://creativecommons.org/licenses/by-nc-sa/3.0/</link><url>http://creativecommons.org/images/public/somerights20.gif</url><title>Some Rights Reserved</title></image><xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" href="http://feedproxy.google.com/AgileSoftwareDevelopment" type="application/rss+xml" /><feedburner:emailServiceId>AgileSoftwareDevelopment</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
 <title>5 tips for Iterating through the holidays</title>
 <link>http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~3/7IqETeeNFBU/5-tips-iterating-through-holidays</link>
 <description>&lt;div style="display:inline; float:left; margin-right:5px"&gt;&lt;img src="http://farm1.static.flickr.com/113/313881077_78ded785fb_m_d.jpg" /&gt;&lt;div style="font-size:xx-small;"&gt;Picture courtesy of &lt;a href="http://flickr.com/photos/krisdecurtis/313881077/"&gt;krisdecurtis@Flickr&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;As we get closer to the holiday season, external factors threaten
to disrupt the sprint rhythm. People go on vacation, sprint meetings
fall on or between the holidays, and company events pull the team
away from project commitments. At the same time, the pressure rises
to get affairs wrapped up by the end of the year. It&amp;rsquo;s time to
get that release out, time to close that deal, time to define the
next version. 
&lt;/p&gt;
&lt;p&gt;Here are a couple of tips to help you
get the through the holiday season with a minimum of additional (job)
stress.&lt;/p&gt;
&amp;lt;!--break--&gt;
&lt;h3 &gt;1. Shut down
during holidays&lt;/h3&gt;
&lt;p&gt;Where I live, many companies shut down production during the
holidays, and that might be an option for your team. Particularly if
the product owner is not available, it is not possible to hold the
sprint planning or review meetings. 
&lt;/p&gt;
&lt;p&gt;There is a certain fairness to this approach. People need down time, and so does the Scrum Master, perhaps more
than anyone else on the team. So if the product
owner is going to spend two weeks on the ski slopes, why should you and the
team do otherwise? &lt;/p&gt;
&lt;p&gt;This approach is not without some drawbacks. It may be
difficult to schedule the sprint review on the last day before the
holidays, so you may have be some unstructured time or a sprint with a
hole in it.&lt;/p&gt;
&lt;p&gt;Obviously, there are contexts in which the end of the year is
release time. I have met organizations which like to upgrade their IT
infrastructure between Christmas and New Years, when most of the
staff is on vacation, but that is a special case&amp;hellip;&lt;/p&gt;
&lt;h3 &gt;2. Extend the
Sprint to skip the holidays&lt;/h3&gt;
&lt;p&gt;My first Scrum team had a 3 week sprint rhythm. This put our
sprint review right between Christmas and New Years. Neither the
Product Owner nor half the team members were available at that time.
So we simply extended the sprint by a week, until after the year end
holidays were finished. It turned out that after adjusting for
vacations, the total capacity was about the same as a normal three
week sprint. (Use this with caution, however. Breaking the rhythm is
a challenge for everyone.)&lt;/p&gt;
&lt;h3 &gt;3. Release
Early&lt;/h3&gt;
&lt;p&gt;The same team was under pressure to get a release out before the
end of the year? But when? The day before everyone goes off duty for
4 or 5 days or longer? In our case, that was the wrong answer,
because of the support issues involved. 
&lt;/p&gt;
&lt;p&gt;If you have high confidence in your test driven development,
continuous integration and automated release process, then you can
probably push a button to automatically install. Everyone will be
happy, so you probably don&amp;rsquo;t have to worry about this. 
&lt;/p&gt;
&lt;p&gt;But if your users include the general public and user support
after deployment is an issue, then you probably want to release
safely before (or after) the holidays. On call support during the
holidays can be expensive and slow, compared to support during the
course of normal development. 
&lt;/p&gt;
&lt;h3 &gt;4. Expect a
velocity hit&lt;/h3&gt;
&lt;p&gt;Even if you extend the sprint so that the number of working days
is the same, your team will be less productive. Some of this is
related to the distractions of the holiday season, both this is
mostly due to the inefficiencies of not having the team together.
Critical capacity (most especially the product owner) is not there,
the team members cannot help each other with problems, and it always
takes time to get back in the flow after an absence. It&amp;rsquo;s
normal, don&amp;rsquo;t worry about it. Velocity is an average
measurement, not an instantaneous one.&lt;/p&gt;
&lt;h3 &gt;5. Pay down
your [technical] debt&lt;/h3&gt;
&lt;p&gt;If your team is under a bit less pressure, now is the time to
invest in better practices and raise the quality of your product.
Improve your test coverage, experiment with Test Driven Development,
automate your build process, or try out something else from the XP
cookbook to improve your team&amp;rsquo;s capabilities.&lt;/p&gt;
&lt;p&gt;A good place to start is a retrospective. Over the last 6 months,
what has your team done well? Where does it need improvement? What is
the biggest strength it can build on? Pick a topic and work it
through during vacation period, so that when the New Year starts, you
can actually apply these techniques to have a positive impact on your
velocity and quality.&lt;/p&gt;
&lt;h3&gt;Summary&lt;/h3&gt;
&lt;p&gt;The holidays are anything but normal, but with a little
forethought, you and your Product Owner can keep the team
intelligently occupied and contribute effectively to the development
of the product, even during the holiday season.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.googleadservices.com/~a/HFeZYExh6h_M2pdsjS1pQwO_kXc/a"&gt;&lt;img src="http://feedads.googleadservices.com/~a/HFeZYExh6h_M2pdsjS1pQwO_kXc/i" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=2lyhMqjH"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=2lyhMqjH" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=BuYnnNqg"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=BuYnnNqg" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=7OXkZNVm"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=7OXkZNVm" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~4/7IqETeeNFBU" height="1" width="1"/&gt;</description>
 <comments>http://agilesoftwaredevelopment.com/blog/peterstev/5-tips-iterating-through-holidays#comments</comments>
 <category domain="http://agilesoftwaredevelopment.com/tags/holidays">holidays</category>
 <category domain="http://agilesoftwaredevelopment.com/tags/scrum">Scrum</category>
 <category domain="http://agilesoftwaredevelopment.com/tags/sprint">sprint</category>
 <pubDate>Wed, 03 Dec 2008 06:00:57 +0000</pubDate>
 <dc:creator>peterstev</dc:creator>
 <guid isPermaLink="false">736 at http://agilesoftwaredevelopment.com</guid>
<feedburner:origLink>http://agilesoftwaredevelopment.com/blog/peterstev/5-tips-iterating-through-holidays</feedburner:origLink></item>
<item>
 <title>What Motivates (Some of) Us</title>
 <link>http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~3/h4w5630Ot34/what-motivates-some-us</link>
 <description>&lt;p&gt;&lt;a href="http://nooperation.typepad.com/.a/6a00e54ff8b9c188340105362f9eb5970c-pi" style="float: left;"&gt;&lt;img  alt="Keyboard" class="at-xid-6a00e54ff8b9c188340105362f9eb5970c " src="http://nooperation.typepad.com/.a/6a00e54ff8b9c188340105362f9eb5970c-150wi" style="margin: 0px 5px 5px 0px; width: 150px;" /&gt;&lt;/a&gt;
 A number of weeks ago &lt;a href="http://www.noop.nl/2008/09/win-100-worth-of-software-development-books.html" target="_blank"&gt;I asked readers to tell me what motivates them&lt;/a&gt;. The most original/inspiring contribution was awarded with $100 worth of software development books. &lt;a href="http://www.noop.nl/2008/10/the-100-software-development-books-contest.html" target="_blank"&gt;Some of my colleagues&lt;/a&gt; acted as an independent jury, and Russell Ball, the author of the &lt;a href="http://www.caffeinatedcoder.com/" target="_blank"&gt;Caffeinated Coder&lt;/a&gt; blog, was &lt;a href="http://www.noop.nl/2008/10/and-the-winner-is.html" target="_blank"&gt;selected as the winner&lt;/a&gt;, because of &lt;a href="http://www.caffeinatedcoder.com/the-driving-forces-behind-my-coding-compulsion/" target="_blank"&gt;the great blog post he wrote&lt;/a&gt; on this subject. (And Russell's blatant attampts at unashamed begging did not even make a difference!)&lt;/p&gt;
&lt;p&gt;In this post I want to share some highlights of the many emails that I got. The list below should serve as a reminder that &lt;strong&gt;your team members' motivation is often very personal&lt;/strong&gt;, and as undefineable, unpredictable (and ridiculous) as their tastes in food, music, and (wo)men. On the other hand, the list can also serve as &lt;strong&gt;a sanity check for our own motivation&lt;/strong&gt;. Software development is a great profession. If you look at this list, isn't it hard to be &lt;em&gt;not &lt;/em&gt;motivated...?&lt;/p&gt;
&lt;p&gt;&lt;em&gt;The original question:&lt;br /&gt;&lt;/em&gt;&lt;strong&gt;What is it that gets you motivated to do your job really well?&lt;/strong&gt;&lt;/p&gt;
&amp;lt;!--break--&gt;
&lt;p&gt;&lt;em&gt;Note: most people sent me large emails with many reasons for motivation. But these particular lines, hand-picked from those emails, somehow grabbed my attention...&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Seeing you have made a difference in this transient life. (James Soh) 
&lt;/li&gt;
&lt;li&gt;The feeling of control that I have over the computer when I code. (Hrishikesh Barua) 
&lt;/li&gt;
&lt;li&gt;The main part of my motivation comes from knowing that I can implement things that make people's lives easier. (Jeremiah Dodds)
&lt;/li&gt;
&lt;li&gt;The biggest motivation is pride. [...] It's the honor code that binds and also, and most importantly, you. You're the biggest motivation to yourself. (Bogdan Nicolau)
&lt;/li&gt;
&lt;li&gt;The personal desire (or more like the attitude) to become better on both a professional and personal level. You want to become a better person. (Angelo Anolin)
&lt;/li&gt;
&lt;li&gt;To participate in the design process, give my opinion and get listened to, even if I'm still young and newly arrived. (Sébastien)
&lt;/li&gt;
&lt;li&gt;My boss tries to motivate me with books. I make a list of what will be ordered, and when the books arrive they will be first on my table. When I see the pile of books it makes me happy. (Marek)
&lt;/li&gt;
&lt;li&gt;When I am so absorbed in my work that time flies by and I suddenly realize that 4 hours have gone by when it only felt like 10 minutes. (Russell Ball)
&lt;/li&gt;
&lt;li&gt;"It's not the strongest of the species that survive, but those most able to adapt." - My answer is Adaptation. (Minseok Choi)
&lt;/li&gt;
&lt;li&gt;Treating me as a human and not as another "Resource" by project managers. (Krishnan Thodla)
&lt;/li&gt;
&lt;li&gt;Success - It has a self-catalytic effect. One success will boost your confidence. (Rejeev Divakaran)
&lt;/li&gt;
&lt;li&gt;For me there's nothing more rewarding than others who like what I'm creating. (Florian Feigenbutz)
&lt;/li&gt;
&lt;li&gt;Basically, the end result of my work is an expression of me, much like a painting is an expression of its painter. (Rolando Caloca Olivares)
&lt;/li&gt;
&lt;li&gt;The rush of finding the solution to that problem that everyone else was frustrated by. (Bill Colacci)
&lt;/li&gt;
&lt;li&gt;The CEO of the company I work for. [...] He is the shining example I try to live up to. And he inspires me to do my work just that tiny bit better every day. (Sonja)
&lt;/li&gt;
&lt;li&gt;A word of "Thank you" from end-users. (Sung)
&lt;/li&gt;
&lt;li&gt;When a task/business trip/debug session or something else is finished. [...] Doing my job REALLY well and feeling that I deserve free time is for me the main motivation. (Vadym Shkil)
&lt;/li&gt;
&lt;li&gt;Simplicity! To create something as simple as possible, but still delivering enough value. (Carl Byström)
&lt;/li&gt;
&lt;li&gt;I'm motivated by the fact that, compared with all those google engineers and a-list bloggers, I still suck. That's ok, since I'm still at the beginning of my career, but I want to get better constantly. (Michael)
&lt;/li&gt;
&lt;li&gt;When I meet someone who actually uses our web sites, and really really likes them. (Jan Miczaika)
&lt;/li&gt;
&lt;li&gt;Money. I know, this doesn't sound like a great inspiration to many. [...] I know there are people who can't be motivated by money. Kudos to them. I, on the other hand, am living in a real world, with house mortgage to pay, myself to feed, and bills to cover. [...] If I can get a large sum of money for doing a good job, then that will definitely boost my morale. (Ngu Soon Hui)
&lt;/li&gt;
&lt;li&gt;Trust from a manager. I am especially referring to the time after a project is completed... if the project was done successfully, being trusted with another critical project and more responsibility on the project. (Brad Schafbuch)
&lt;/li&gt;
&lt;li&gt;My passion for software engineering, especially in PM methodology &amp;amp; Process. (Red River)
&lt;/li&gt;
&lt;li&gt;Adding a real new value to the world, by doing something I enjoy. (Emad Alashi)
&lt;/li&gt;
&lt;li&gt;An active collaborating, self-improving and happy development team, using new technologies to bring our products and new features faster to market. (Henk J. Meulenkamp)
&lt;/li&gt;
&lt;li&gt;Seeing the most jaded, beaten-up, grumpy grey haired old waiting-for-retirement public servant in the institution I work at break out of the boundaries they'd created for their position and create something new. (Karl Katzke)
&lt;/li&gt;
&lt;li&gt;A token of appreciation from all the stakeholders when a milestone is achieved. (Ramesh)
&lt;/li&gt;
&lt;li&gt;My love for software. (Vasileios Dimitriadis)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;As I said, I received much more than this. (I trust you will thank me for not copy-pasting everything.) This is just a non-random sample, but it nicely reflects the diversity of people's motivation in software development.&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: xx-small; font-family: Trebuchet MS;"&gt;(photo by &lt;a href="http://www.flickr.com/photos/coyotejack/"&gt;Martin Kingsley&lt;/a&gt;)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.googleadservices.com/~a/OwwSj9dpuvN-S60ng88pwaS6wTk/a"&gt;&lt;img src="http://feedads.googleadservices.com/~a/OwwSj9dpuvN-S60ng88pwaS6wTk/i" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=tUlvxaVO"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=tUlvxaVO" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=sMsxGTDm"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=sMsxGTDm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=pE6N7lK4"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=pE6N7lK4" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~4/h4w5630Ot34" height="1" width="1"/&gt;</description>
 <comments>http://agilesoftwaredevelopment.com/blog/jurgenappelo/what-motivates-some-us#comments</comments>
 <category domain="http://agilesoftwaredevelopment.com/tags/motivation">motivation</category>
 <pubDate>Tue, 02 Dec 2008 06:00:02 +0000</pubDate>
 <dc:creator>JurgenAppelo</dc:creator>
 <guid isPermaLink="false">735 at http://agilesoftwaredevelopment.com</guid>
<feedburner:origLink>http://agilesoftwaredevelopment.com/blog/jurgenappelo/what-motivates-some-us</feedburner:origLink></item>
<item>
 <title>Collection of articles on people and requirement management</title>
 <link>http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~3/RPShhCuwnOQ/collection-articles-people-and-requirement-management</link>
 <description>&lt;div&gt;&lt;img src="http://agilesoftwaredevelopment.com/files/People-requirements.gif" /&gt;&lt;/div&gt;
&lt;p&gt;Our web-site is publishing advices on Agile software development for over 3 years and there is a large set of useful articles that are not very easy to find. This weekend I digged through our archive and gathered the best of the best articles to the new pages focused on managing people and things in Agile. Enjoy!&lt;/p&gt;
&lt;p&gt;Also it would be very kind of you to take a moment and tell (in the comments) what you think about the usefulness of these link collections.&lt;br /&gt;
&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.googleadservices.com/~a/WTkmbPZ2SfLq6-T9KPReAgLExtA/a"&gt;&lt;img src="http://feedads.googleadservices.com/~a/WTkmbPZ2SfLq6-T9KPReAgLExtA/i" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=3Ty5yCmy"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=3Ty5yCmy" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=N01K2g02"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=N01K2g02" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=OF54LZ5i"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=OF54LZ5i" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~4/RPShhCuwnOQ" height="1" width="1"/&gt;</description>
 <comments>http://agilesoftwaredevelopment.com/blog/artem/collection-articles-people-and-requirement-management#comments</comments>
 <category domain="http://agilesoftwaredevelopment.com/tags/news">news</category>
 <category domain="http://agilesoftwaredevelopment.com/tags/site">site</category>
 
 <pubDate>Sun, 30 Nov 2008 15:53:43 +0000</pubDate>
 <dc:creator>Artem</dc:creator>
 <guid isPermaLink="false">734 at http://agilesoftwaredevelopment.com</guid>
<feedburner:origLink>http://agilesoftwaredevelopment.com/blog/artem/collection-articles-people-and-requirement-management</feedburner:origLink><enclosure url="http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~5/WicEyyXHyqU/People-requirements.gif" length="14077" type="image/gif" /><feedburner:origEnclosureLink>http://agilesoftwaredevelopment.com/files/People-requirements.gif</feedburner:origEnclosureLink></item>
<item>
 <title>"I know it doesn't work but it's done" - a story about the definition of done</title>
 <link>http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~3/cXnf57SRJ-0/i-know-it-doesnt-work-its-done-story-about-definition-done</link>
 <description>&lt;div style="float: left"&gt;&lt;a href="http://flickr.com/photos/orinrobertjohn/13068719/"&gt;&lt;img src="http://farm1.static.flickr.com/11/13068719_7936bac205.jpg?v=0" style="margin-right: 5px; width: 200px;" /&gt;&lt;/a&gt;&lt;br /&gt;
&lt;div style="font-size: xx-small" align="center"&gt;Picture courtesy of &lt;a href="http://flickr.com/photos/orinrobertjohn/"&gt;orinrobertjohn@flickr&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Some time ago I was talking to engineers responsible for some part of the software and I was asking when they will be ready for production. In other words I asked them when their features will be ready. They told me that they are ready now. What was my surprise when I tried to test their software and discovered that about 50% of cases were not working at all. So I asked them why they told me that they are "done" when they haven't even implemented half of the planned features? They answered me: "We know it doesn't work but it's done - we implemented something so it's done. Now we have to work on quality i.e. implement rest of the features."&lt;/p&gt;
&lt;p&gt;When I heard this I think I might have looked like the lady from the picture. I couldn't believe someone can think like this - if we implement one use case out of one hundred we can consider the project done? The rest is the "quality"? I don't think so.&lt;/p&gt;
&lt;p&gt;In this post I'll try to explain once again what is &lt;a href="http://agilesoftwaredevelopment.com/2006/05/definition-of-done"&gt;definition of done&lt;/a&gt; and why it's so important to have the same definition at least among all the people involved in the development of a single project.&lt;br /&gt;
&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;h2&gt;Let's define "Done"&lt;/h2&gt;
&lt;p&gt;I would say that there is no one, good and universal definition of done. You can find some &lt;a href="http://stackoverflow.com/questions/170009/your-scrum-definition-of-done"&gt;discussions&lt;/a&gt; in the Internet about it but you can see that everyone has it's own variation. So do I - in my view the most important things are (I will use "user story" word meaning every variation of request, use case, user story, etc.):&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;user story has to be implemented, &lt;b&gt;today&lt;/b&gt; (no 99.9% is accepted)&lt;/li&gt;
&lt;li&gt;user story has to be tested and no known bugs should exist&lt;/li&gt;
&lt;li&gt;user story is ready to go into production, &lt;b&gt;today&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;user story has to be ready to be presented to customer, &lt;b&gt;today&lt;/b&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Some explanation&lt;/h2&gt;
&lt;p&gt;&lt;b&gt;User story has to be implemented&lt;/b&gt; - means that the code has to be committed to the version control system (like CVS, SVN, etc.), documentation should be available on Wiki or in the VCS, etc. It means that the output of the work done (whatever the work to be done was) must be available for anyone in the company to be downloaded in some way and checked. There must not be "I have it on my box - will publish it soon". Work must be committed and available for others.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;User story has to be tested and no known bugs should exist&lt;/b&gt; - means that if you know about any bugs in the user story you're going to deliver - it's not done. If it exists in some subpart of the user story and you really need to deliver the working stuff, maybe you should split this user story into two, smaller ones. You must not deliver bugs to your customer - I'm talking about bugs you're aware of.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;User story is ready to go into production&lt;/b&gt; - it means that it is ready to be deployed at any time from the time you stop talking. The wise thing would be if the working software is already deployed and tested in the production system - if it works - it's &lt;a href="http://www.implementingscrum.com/2006/11/27/done-really/"&gt;really done&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;User story has to be ready to be presented to customer&lt;/b&gt; - it means that within 30 minutes (max) you are able to prepare presentation of working software to your customer. Of course, it requires you to have list of acceptance test ready and you know &lt;b&gt;how to demo your software&lt;/b&gt;. The last point of it is very very important. Remember about it when defining all your user stories - you have to know HOW TO DEMO USER STORY - it will probably help you defining acceptance tests (e.g. user adds new item to the database using HTML form, then goes to the search panel and is able to find newly created item by its name, ....).&lt;/p&gt;
&lt;h2&gt;Wrap up&lt;/h2&gt;
&lt;p&gt;As I mentioned above good and universal definition of done probably does not exist but at least many resources agree on base principles. My definition of done is simple but I consider it quite powerful.&lt;/p&gt;
&lt;p&gt;If you are interested in diving more into the subject I would recommend those two links from &lt;a href="http://scrumalliance.org"&gt;ScrumAlliance&lt;/a&gt;:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="http://www.scrumalliance.org/articles/37-are-we-there-yet"&gt;Are We There Yet?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://www.scrumalliance.org/articles/106-definition-of-done-a-reference"&gt;Definition of Done: A Reference&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;What do you think about my definition of done? If you have your own I would gladly read about it. Please share your opinions here.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.googleadservices.com/~a/F_1WQCqU1ozupt2hz1uO1tO6Eek/a"&gt;&lt;img src="http://feedads.googleadservices.com/~a/F_1WQCqU1ozupt2hz1uO1tO6Eek/i" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=HK6666ny"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=HK6666ny" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=5MYGgRTx"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=5MYGgRTx" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=eA24RhW6"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=eA24RhW6" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~4/cXnf57SRJ-0" height="1" width="1"/&gt;</description>
 <comments>http://agilesoftwaredevelopment.com/blog/pbielicki/i-know-it-doesnt-work-its-done-story-about-definition-done#comments</comments>
 <category domain="http://agilesoftwaredevelopment.com/tags/definition-done">definition of done</category>
 <category domain="http://agilesoftwaredevelopment.com/tags/done">done</category>
 <category domain="http://agilesoftwaredevelopment.com/tags/requirements">requirements</category>
 <category domain="http://agilesoftwaredevelopment.com/tags/scrum">Scrum</category>
 <pubDate>Fri, 28 Nov 2008 08:42:24 +0000</pubDate>
 <dc:creator>pbielicki</dc:creator>
 <guid isPermaLink="false">702 at http://agilesoftwaredevelopment.com</guid>
<feedburner:origLink>http://agilesoftwaredevelopment.com/blog/pbielicki/i-know-it-doesnt-work-its-done-story-about-definition-done</feedburner:origLink></item>
<item>
 <title>Stories From The Battlefield: #1 - Make It Awesome</title>
 <link>http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~3/pmPePJWCFGw/stories-battlefield</link>
 <description>&lt;p&gt;&amp;#160;&lt;br /&gt;
&lt;div style="display: inline; float: left; margin: 0px 5px 0px 0px"&gt;&lt;img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" height="221" alt="33-gotowe-male" src="http://agilesoftwaredevelopment.com/files/33-gotowe-male_thumb.jpg" width="240" align="left" border="0" /&gt;&lt;br /&gt;
&lt;div style="font-size: xx-small; text-align: center"&gt;Photo (c) Janusz Gorycki&lt;/div&gt;
&lt;/div&gt;
&lt;/p&gt;
&lt;p&gt;I would like to start a series of posts, named &amp;quot;Stories From The Battlefield&amp;quot;. As the title suggests, I will be describing trails and tribulations of the agile team I am a part of. I want to write about our successes, failures, things we do right, things we struggle with - the real deal, sometimes great, but sometimes rough at the edges.&lt;/p&gt;
&lt;p&gt;I hope such a series may be of value to many of our readers, especially those beginning their agile journey and hoping to learn on somebody else's mistakes.&lt;/p&gt;
&lt;p&gt;There won't be much theory in here - this is being covered in sufficient detail by other authors on this site. Rather, I will concentrate more on &amp;quot;soft&amp;quot; aspects of what makes an agile team.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Let's start with a fundamental question of &lt;strong&gt;&amp;quot;Why?&amp;quot;.&lt;/strong&gt; This question is so basic and simple, that it sometimes eludes many of us in our day-to-day work routines. So why bother with an agile process? It does not make you produce software faster - despite popular myth. It does not necessarily bring higher quality - at least not automatically. It does not let you work less hard - on the contrary, you are supposed to be an efficient long-distance runner. Why then?&lt;/p&gt;
&lt;p&gt;&amp;lt;!--break--&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;It all boils down to the fact that agile processes and practices let you deliver &lt;em&gt;awesome &lt;/em&gt;software, much easier than any other processes.&lt;/strong&gt;&amp;#160; &lt;/p&gt;
&lt;p&gt;The reason why your customers want you to write some software for them is that they want to get good value for their money - and that's pretty much the only thing they know. Requirement specs? They don't usually match the &lt;em&gt;real&lt;/em&gt; needs of your customers. Even (especially?) if they make you sign contract that requires you to implement everything in the specs to the letter.&lt;/p&gt;
&lt;p&gt;On numerous occasions, I have spent time reading hundreds if not thousands of pages of requirements specs, prepared over the course of several months, which don't define any sort of useable product. I had product backlogs with tens and hundreds of user stories, all properly prioritized and thought over. Yet - this backlog didn't last more than a couple of months before the original ordering and feature list fell apart and became irrelevant.&lt;/p&gt;
&lt;p&gt;And you know what? This is normal, expected and you should be prepared for it every single time you sit down to start a new project. &lt;/p&gt;
&lt;p&gt;Conversations with my daughter (the kid in the photo) before preparing breakfast in the morning, usually goes somewhat like this: &amp;quot;What do you want for breakfast honey?&amp;quot; &amp;quot;Well, I would like scrambled eggs. No, make it boiled. No, make it an omlette. You now what dad? I will have whatever you get me, just make it yummy&amp;quot;. &lt;strong&gt;This is the key point - &amp;quot;make it yummy&amp;quot;.&lt;/strong&gt; Make it awesome, make them love it and make them come back to you for more good stuff.&lt;/p&gt;
&lt;p&gt;How do you &amp;quot;make it awesome&amp;quot; then? Well, this is where it is important to remember that &lt;strong&gt;software development is an act of &lt;em&gt;creation&lt;/em&gt; rather than &lt;em&gt;manufacturing&lt;/em&gt;.&lt;/strong&gt; You have to become a bit of an artist to make great software. Good taste and critical eye are important. User stories are not everything, they don't give you the full picture - despite the name, they don't tell &amp;quot;the whole story&amp;quot;.&lt;/p&gt;
&lt;p&gt;However, you don't need agile to be a software artist. What agile &lt;em&gt;does&lt;/em&gt; make easier is facilitating good old-fashioned conversations. Conversations with the customers and inside your team. Actually, &lt;strong&gt;maintaining the efficient channels for conversation is the &lt;em&gt;only&lt;/em&gt; valid reason to have a process (any process)&lt;/strong&gt; &lt;strong&gt;for developing software&lt;/strong&gt;. All other reasons are unimportant - even if your ScrumMasters tell you otherwise. In order to create awesome software, you have to spend time talking to many people about what you are doing, discuss how it addresses the needs of your target audience and make damn sure to present the customer with results of your work as often as possible. &lt;/p&gt;
&lt;p&gt;Being profficient in communication is much more important than being a guru programmer, master-level Java-wrangler whose neurons run on CRL and who has written his first Lisp program at the young age of 6. More important even than having Six-Sigma Black-Belt, CMMI 10 Certified ScrumTrainer certifications. &lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.googleadservices.com/~a/xq73_9-GNf6ezW5MHtret8dhhKM/a"&gt;&lt;img src="http://feedads.googleadservices.com/~a/xq73_9-GNf6ezW5MHtret8dhhKM/i" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=S76ViPLN"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=S76ViPLN" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=hV6KZT0P"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=hV6KZT0P" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=BaPJjCIc"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=BaPJjCIc" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~4/pmPePJWCFGw" height="1" width="1"/&gt;</description>
 <comments>http://agilesoftwaredevelopment.com/blog/janusz-gorycki/stories-battlefield#comments</comments>
 <category domain="http://agilesoftwaredevelopment.com/tags/customer-satisfaction">customer satisfaction</category>
 <pubDate>Thu, 27 Nov 2008 06:00:25 +0000</pubDate>
 <dc:creator>Janusz Gorycki</dc:creator>
 <guid isPermaLink="false">721 at http://agilesoftwaredevelopment.com</guid>
<feedburner:origLink>http://agilesoftwaredevelopment.com/blog/janusz-gorycki/stories-battlefield</feedburner:origLink></item>
<item>
 <title>Welcome Janusz</title>
 <link>http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~3/Ppxv2geBzoM/welcome-janusz</link>
 <description>&lt;p&gt;Dear readers&lt;/p&gt;  &lt;p&gt;We just got a new regular contributor for &lt;a href="http://agilesoftwaredevelopment.com/"&gt;AgileSoftwareDevelopment.com&lt;/a&gt; – Janusz Gorycki&lt;/p&gt;  &lt;p&gt;Janusz Gorycki is a developer and team manager with over fourteen years of experience. He has spent most of that time at Intel Corporation, working in many areas, from telecommunications and embedded systems, to internal IT software development. While working for there, he was working together with our other regular contributor – &lt;a href="http://agilesoftwaredevelopment.com/blog/pbielicki"&gt;Przemyslaw Bielicki&lt;/a&gt;. Janusz has left Intel with a group of colleagues to start a software development and consulting company &lt;a href="http://spartez.com/eng/home.html"&gt;Spartez&lt;/a&gt; where he works to this day. Janusz and his team have been using agile development methods for the last three years and you can find basic details about his company in the recently published &lt;a href="http://agilesoftwaredevelopment.com/blog/pbielicki/agile-success-story-interview"&gt;interview&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Please, &lt;a href="http://agilesoftwaredevelopment.com/blog/janusz-gorycki"&gt;welcome Janusz and comment on his writing&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;Artem, Editor-in-Chief&lt;/p&gt;  &lt;p&gt;P.S.   &lt;br /&gt;If you are thinking about becoming a regular contributor to this site, &lt;a href="http://agilesoftwaredevelopment.com/contact"&gt;shoot me an e-mail&lt;/a&gt;. We are particularly interested in joining forces with people with testing and UI-related experience.&lt;/p&gt;
&amp;lt;!--break--&gt;
&lt;p&gt;&lt;a href="http://feedads.googleadservices.com/~a/NdB02mwROQ3dbjY442loQYlyzHM/a"&gt;&lt;img src="http://feedads.googleadservices.com/~a/NdB02mwROQ3dbjY442loQYlyzHM/i" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=bzIYWeJS"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=bzIYWeJS" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=crtlpHGX"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=crtlpHGX" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=ZRDkQmOc"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=ZRDkQmOc" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~4/Ppxv2geBzoM" height="1" width="1"/&gt;</description>
 <comments>http://agilesoftwaredevelopment.com/blog/artem/welcome-janusz#comments</comments>
 <category domain="http://agilesoftwaredevelopment.com/tags/news">news</category>
 <category domain="http://agilesoftwaredevelopment.com/tags/site">site</category>
 <pubDate>Thu, 27 Nov 2008 05:56:56 +0000</pubDate>
 <dc:creator>Artem</dc:creator>
 <guid isPermaLink="false">730 at http://agilesoftwaredevelopment.com</guid>
<feedburner:origLink>http://agilesoftwaredevelopment.com/blog/artem/welcome-janusz</feedburner:origLink></item>
<item>
 <title>You Weren't Meant to Have a Boss, But It Helps...</title>
 <link>http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~3/y4oYkO7bS-8/you-werent-meant-have-boss-it-helps</link>
 <description>&lt;p&gt;&lt;a href="http://nooperation.typepad.com/.a/6a00e54ff8b9c1883401053615eecf970b-pi" style="float: left;"&gt;&lt;img  alt="Lion" class="at-xid-6a00e54ff8b9c1883401053615eecf970b " src="http://nooperation.typepad.com/.a/6a00e54ff8b9c1883401053615eecf970b-150wi" style="margin: 0px 5px 5px 0px; width: 150px;" /&gt;&lt;/a&gt;
 When software development gods like &lt;a href="http://www.paulgraham.com" target="_blank"&gt;Paul Graham&lt;/a&gt; tell you that &lt;strong&gt;people should not be managed&lt;/strong&gt;, it makes you wonder what we need bosses for. However, after reading &lt;a href="http://www.paulgraham.com/boss.html" target="_blank"&gt;You Weren't Meant to Have a Boss&lt;/a&gt; I felt the terrible urge to justify my own position as a manager. (And if this post is not going to convince you, then at least it will make me feel better about myself.)&lt;/p&gt;
&lt;p&gt;In his post &lt;strong&gt;Paul Graham compares employees to lions&lt;/strong&gt;. He (rightfully) says that lions are not meant to be kept in zoos, and that lions in the wild seem to be "ten times more alive". (He probably meant "ten times more awake," a statement that, according to research, has some truth in it.) Similarly, Paul says, &lt;strong&gt;people are not meant to live in big companies&lt;/strong&gt;. They seem to be "ten times more alive" as entrepreneurs in small startups.&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Unfortunately, Paul's analogy is as far away removed from being accurate, as my mother is from being Yahoo's next CEO.&lt;/em&gt;&lt;/p&gt;
&amp;lt;!--break--&gt;
&lt;p&gt;The small but not important fact that Paul Graham has overlooked is that &lt;strong&gt;many of the lions in Africa are living in &lt;em&gt;managed &lt;/em&gt;ecosystems&lt;/strong&gt;. These lions can live their "ten-times-more-lively" lives &lt;em&gt;because &lt;/em&gt;there are ecological managers out there who are actually concerned about the well-being of Africa's wildlife. The wild animals that are &lt;em&gt;not&lt;/em&gt; being managed find it very hard to survive and thrive in our dangerous world full of looters and poachers.&lt;/p&gt;
&lt;p&gt;For entrepreneurs &lt;strong&gt;the world of business is just as hard and dangerous&lt;/strong&gt;. I know. I've been such an entrepreneur. And even though it can be very motivating to be accountable only to yourself, having to take care of your own protection and survival is a task that's simply too daunting for most of us.&lt;/p&gt;
&lt;p&gt;Some weeks ago, &lt;a href="http://www.noop.nl/2008/10/the-rate-your-manager-test.html" target="_blank"&gt;in another blog post&lt;/a&gt;, I asked readers to &lt;strong&gt;rate their motivation&lt;/strong&gt; on a scale of 1 (bad) to 5 (excellent). I also asked them to &lt;strong&gt;rate their manager&lt;/strong&gt; on a scale of -12 to +12 (using questions from the book &lt;a href="http://www.amazon.com/First-Break-All-Rules-Differently/dp/0684852861/" target="_blank"&gt;First, Break All the Rules&lt;/a&gt;). My hypothesis was that bad managers will have both unmotivated and motivated people working with them, while good managers would have more motivated people. Well, here are the results of the test...&lt;/p&gt;&lt;p&gt;&lt;a href="http://nooperation.typepad.com/.a/6a00e54ff8b9c188340105361ddc17970c-pi" style="display: inline;"&gt;&lt;img  alt="Stats" class="at-xid-6a00e54ff8b9c188340105361ddc17970c " src="http://nooperation.typepad.com/.a/6a00e54ff8b9c188340105361ddc17970c-450wi" style="width: 440px;" /&gt;&lt;/a&gt;
 &lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I regret that the number of actual respondents to the original post was ridiculously low, as compared to the number of readers. It seems you guys would rather enjoy a good laugh than actually do some honest thinking. Well, never mind. I believe these results are good enough to confirm what I already thought... &lt;strong&gt;good managers have only motivated people working with them&lt;/strong&gt;. Bad managers have both motivated &lt;em&gt;and &lt;/em&gt;unmotivated people. It turns out that good managers really make a difference! Bad managers don't, and their people will simply have to motivate themselves (if they can).&lt;/p&gt;
&lt;p&gt;Now, I fully agree that &lt;strong&gt;people weren't meant to have a boss&lt;/strong&gt;. But I also agree that, originally, people weren't meant to have a doctor, a dentist, and a hair dresser. (The only ones people &lt;em&gt;were &lt;/em&gt;meant to have are their mother and a tax collector.) But having a (good) boss should certainly help people to feel good about their jobs. And of course, &lt;strong&gt;&lt;em&gt;how&lt;/em&gt;&lt;/strong&gt; to be a good boss is an entirely different subject altogether. But Paul Graham's conclusion that you're better off &lt;strong&gt;&lt;em&gt;not &lt;/em&gt;&lt;/strong&gt;having a boss, is as wrong as Jerry Yang holding hands with Steve Ballmer.&lt;/p&gt;
&lt;p&gt;Lions weren't meant to be bossed over by natural reserve managers. But it's certainly helping...&lt;/p&gt;&lt;p&gt;&lt;span style="font-size: 9px; font-family: Trebuchet MS;"&gt;(picture by &lt;a href="http://www.flickr.com/photos/giordanocapibaribe/"&gt;giordanocapibaribe&lt;/a&gt;)&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.googleadservices.com/~a/Qc8puEsZee6Ei8iCr8R4pffG1_o/a"&gt;&lt;img src="http://feedads.googleadservices.com/~a/Qc8puEsZee6Ei8iCr8R4pffG1_o/i" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=3CgcSPSK"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=3CgcSPSK" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=H5W97J76"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=H5W97J76" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=eyRp8Q0z"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=eyRp8Q0z" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~4/y4oYkO7bS-8" height="1" width="1"/&gt;</description>
 <comments>http://agilesoftwaredevelopment.com/blog/jurgenappelo/you-werent-meant-have-boss-it-helps#comments</comments>
 <category domain="http://agilesoftwaredevelopment.com/tags/management">management</category>
 <pubDate>Tue, 25 Nov 2008 06:00:17 +0000</pubDate>
 <dc:creator>JurgenAppelo</dc:creator>
 <guid isPermaLink="false">727 at http://agilesoftwaredevelopment.com</guid>
<feedburner:origLink>http://agilesoftwaredevelopment.com/blog/jurgenappelo/you-werent-meant-have-boss-it-helps</feedburner:origLink></item>
<item>
 <title>My First Agile Project Part 13: Reflecting on The Decline of Agile</title>
 <link>http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~3/eWTJU_UokdI/my-first-agile-project-part-13-reflecting-decline-agile</link>
 <description>&lt;div style="float: left"&gt;
&lt;img src="http://farm1.static.flickr.com/142/376154526_4387249cf4.jpg" style="margin: 0px 10px 10px 0px; width: 240px;" /&gt;
&lt;div style="font-size: xx-small" align="center"&gt;Picture courtesy of &lt;a href="http://www.flickr.com/photos/jhcinc/"&gt;J.H.C. on flickr&lt;/a&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;Recently James Shore wrote an article called &lt;a href="http://jamesshore.com/Blog/The-Decline-and-Fall-of-Agile.html"&gt;The Decline and Fall of Agile&lt;/a&gt; where he talked about how Agile, and Scrum in particular, is failing many companies. The main reason I started writing this series of articles on our team's experiences was to help myself examine why we'd had such a hard time with Scrum in various ways. In this part of My First Agile Project I'm going to go through Mr. Shore's article and compare it to our experiences.&lt;/p&gt;
&lt;p&gt;In the article, Mr. Shore focuses mostly on the engineering aspects of Scrum, or lack thereof. In our experience, Scrum's lack of proscriptive engineering processes is hardly the biggest problem. It could be that we haven't had enough time to run into the walls of difficult-to-manage code that he's seen but thanks to some of the other problems we've had with shifting requirements and the like, we've all revisited chunks of our code during the project and we aren't slowing down because of it. Read on for more on Mr. Shore's essay and how I see it through the lens of our project. It may be that Agile is declining, but if so it isn't for the reasons he's seen.&lt;br /&gt;
&amp;lt;!--break--&gt;&lt;br /&gt;
According to Mr. Shore, our project should be failing due to the fact that we don't do the recommended XP-style engineering practices like Test First, or pair programming. At least, that's what I assume he's talking about since he never mentions which practices we should be doing. But I don't see that at all. I see our project having trouble because of incomplete control of the backlog and other "project management" centric issues that I've talked about many times (see &lt;a href="http://agilesoftwaredevelopment.com/blog/mattgrommes/my-first-agile-project-part-5-top-5-mistakes"&gt;Part 5: Our Top 5 Agile Mistakes&lt;/a&gt;).&lt;/p&gt;
&lt;p&gt;I won't go so far as to say our code is a paragon of beauty or anything, but even without coding Test First (indeed, without many unit tests at all in some cases) and working mostly by ourselves we have a good code base. I've gone into my coworkers' code and made changes without spending all day on it and we've all taken over things from each other with usually just a minimal knowledge transfer. And since we've been working on this project for a year and a half now, we've gone back to old code multiple times. Despite the essay basically saying Scrum is deficient because it doesn't have XP's engineering practices, this hasn't been a problem for us.&lt;/p&gt;
&lt;p&gt;I've always thought one of benefits of Agile was that it wasn't a bunch of rules you "had" to follow but Mr. Shore doesn't seem to feel the same way. He disparages the idea of taking Agile as a "Chinese buffet" where you take what you want and leave what you don't. Unfortunately for our project, we didn't know about some of the important things in Scrum/Agile but we also left behind things that we didn't and haven't needed without looking back. I like that there's wiggle room in Agile. I like that there's no checklist of approved procedures and methods for us to follow. In my experience everyone picks and chooses parts of methodologies that work for them, no matter what. Not every piece is going to fit your puzzle so you can't force it.&lt;/p&gt;
&lt;p&gt;If not doing every part of a theoretically perfect "Agile method" means somebody is going to say we aren't doing Agile, fine. We'll still call it Agile, as I've never seen the problem that some people seem to have with the name. We're being agile in the dictionary definition so we'll call it Agile. It works for us, we like it and we're going to keep with it. We're also going to work on making it better for us if we can. And if we want to try out pair programming or writing tests first, we'll do that too and maybe we abandon it. We're being agile.&lt;/p&gt;
&lt;p&gt;This brings me to my final point. Maybe he and I are looking at this from different perspectives but I don't like the talk about 'rescuing Scrum' and rehabilitating the Agile brand. The point of Agile is to help teams. If a team is having problems, the point should be to help them, not to make Agile look good. If parts of Agile  or Scrum are helping, great. If something isn't going to make a team's life better, it should be left behind. I won't say anything about the certification parts of the essay beyond saying that if somebody thinks they can take a course and apply methods X, Y, and Z to their project and succeed, they're deluded. You have to live with it to determine what works and what doesn't. Then you can keep the parts that work. But if somebody wants to say we're not Agile because we're only doing what works for us, they can keep Agile and we'll keep working.&lt;/p&gt;
&lt;p&gt;Thanks for reading. If you have comments on this post, and based on the sea of commentary around the web about it so far I imagine some of you do, please leave them in the comments below. I'm curious what you think. Thanks again and stay tuned next week for more of My First Agile Project.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.googleadservices.com/~a/fdmeBIUbwHf0mb0D9dKzjADa7q4/a"&gt;&lt;img src="http://feedads.googleadservices.com/~a/fdmeBIUbwHf0mb0D9dKzjADa7q4/i" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=INnGWSS0"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=INnGWSS0" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=7OYAuoic"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=7OYAuoic" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=e8KvT6cE"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=e8KvT6cE" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~4/eWTJU_UokdI" height="1" width="1"/&gt;</description>
 <comments>http://agilesoftwaredevelopment.com/blog/mattgrommes/my-first-agile-project-part-13-reflecting-decline-agile#comments</comments>
 <category domain="http://agilesoftwaredevelopment.com/tags/scrum">Scrum</category>
 <category domain="http://agilesoftwaredevelopment.com/tags/trends">trends</category>
 <pubDate>Mon, 24 Nov 2008 06:00:27 +0000</pubDate>
 <dc:creator>mattgrommes</dc:creator>
 <guid isPermaLink="false">722 at http://agilesoftwaredevelopment.com</guid>
<feedburner:origLink>http://agilesoftwaredevelopment.com/blog/mattgrommes/my-first-agile-project-part-13-reflecting-decline-agile</feedburner:origLink></item>
<item>
 <title>The rise and flourishing of Agile</title>
 <link>http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~3/Xi1ZfrC8W4A/rise-and-flourishing-agile</link>
 <description>&lt;p&gt;&lt;/p&gt;  &lt;div style="display: inline; float: left; margin: 0px 5px 0px 0px"&gt;&lt;img src="http://farm1.static.flickr.com/104/308624708_4d6071b868_m_d.jpg" /&gt;     &lt;div style="font-size: xx-small; text-align: center"&gt;Picture courtesy of &lt;a href="http://flickr.com/photos/tomooka/308624708/"&gt;tommoka@Flickr&lt;/a&gt;&lt;/div&gt; &lt;/div&gt; Lately the &lt;a href="http://cardmeeting.com/blojsom/blog/cardmeeting/?permalink=Agile-Epic-Fail.html"&gt;agile&lt;/a&gt; &lt;a href="http://blog.tmorris.net/agile-is-falling-like-religions-do/"&gt;blogosphere&lt;/a&gt; &lt;a href="http://codebetter.com/blogs/jeremy.miller/archive/2008/11/16/thoughts-on-the-decline-and-fall-of-agile.aspx"&gt;buzzed&lt;/a&gt; &lt;a href="http://xndev.blogspot.com/2008/11/decline-and-fall-of-agile.html"&gt;with&lt;/a&gt; &lt;a href="http://noocyte.wordpress.com/2008/11/17/james-shore-successful-software/"&gt;responses&lt;/a&gt; to the James Shore's &lt;a href="http://jamesshore.com/Blog/The-Decline-and-Fall-of-Agile.html"&gt;article on decline and fall of Agile&lt;/a&gt;.   &lt;p&gt;&lt;/p&gt;  &lt;p&gt;The article discusses the qualitative change in the way people apply Agile methods nowadays comparing to the past. Earlier people were asking coaches for learning Agile from scratch, were taking the complete XP or real Scrum package and were happy. Nowadays they install the basics of Scrum themselves usually taking into use just backlogs and stories, fail to get on the engineering practices, shared workspaces and the all important &lt;a href="http://en.wikipedia.org/wiki/PDCA"&gt;Deming’s Plan-Do-Check-Act (PDCA) cycle&lt;/a&gt;, struggle and, well, sometimes blame Agile for their pain. So is such contemporary Agile bad?&lt;/p&gt;
&amp;lt;!--break--&gt;
&lt;p&gt;Well, yes and no. When more people start going to gym and do just their preferred exercises instead of preparing a program with the help of a coach and proper measurements, is it good or bad? In most of the cases these people will become healthier, than they were while doing just minor stretching at home. Sometimes they might get problems related to the unbalanced muscle development. For some of them the act of being in the gym and maybe this unbalanced muscle development will, however, draw attention to what other people do in the gym, maybe they'll look for a program on the web, or hire a coach. That might be too late, the people might miss the biggest benefits and some will just do the favorite hand exercises forever even if their legs can barely deliver them to the gym. &lt;strong&gt;However, majority of people will become at least a bit healthier.&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;To me the analogy to agile is rather straightforward. Agile &lt;a href="http://www.ddj.com/windows/200001986"&gt;has crossed the chasm&lt;/a&gt; indeed. The most guys trying agile nowadays are no early adopters willing to get all the benefits and carefully reading books. For those misapplying Scrum it might take a lot of time to get on the fully fledged Agile and some might never get there. So what, should they stay doing cowboy coding or waterfall despite the biggest ever market turbulence? Or should they wait until they learn enough to understand their real needs and hire a coach? I believe that frequent and reliable replanning, rapid cycles are good, not bad. The more companies try them, the more will find their way to making it also sustainable, dive into PDCA and improve greatly.&lt;/p&gt;  &lt;p&gt;Nowadays I spend more time practicing SW development, than coaching different teams, however I stay in contact with huge amount of teams adopting Agile. Very rarely I hear that Scrum made them fail. At most I hear that people don't like Scrum much, but they don't like the idea of going back even more.&lt;/p&gt;  &lt;p&gt;The fact that more companies are pursuing the direction is not a fall of Agile, but the rise of it. Every next round of new ideas in software development makes us better. There clearly will be the next hype and the next idea that will make us all even better (Lean to be the next hype, anyone?). Meanwhile the majority will get the small, but benefits of the current topic.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.googleadservices.com/~a/Uo0ejSQ4DcLt-8_t9GVxT_aRF90/a"&gt;&lt;img src="http://feedads.googleadservices.com/~a/Uo0ejSQ4DcLt-8_t9GVxT_aRF90/i" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=LnEP6wKy"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=LnEP6wKy" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=Fzv1Y1qt"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=Fzv1Y1qt" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=YmFscYwH"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=YmFscYwH" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~4/Xi1ZfrC8W4A" height="1" width="1"/&gt;</description>
 <comments>http://agilesoftwaredevelopment.com/blog/artem/rise-and-flourishing-agile#comments</comments>
 <category domain="http://agilesoftwaredevelopment.com/tags/trends">trends</category>
 <pubDate>Sat, 22 Nov 2008 06:00:55 +0000</pubDate>
 <dc:creator>Artem</dc:creator>
 <guid isPermaLink="false">719 at http://agilesoftwaredevelopment.com</guid>
<feedburner:origLink>http://agilesoftwaredevelopment.com/blog/artem/rise-and-flourishing-agile</feedburner:origLink></item>
<item>
 <title>Why Project Managers Like Documentation</title>
 <link>http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~3/xUsNWxdRIys/why-project-managers-documentation</link>
 <description>&lt;p&gt;Most software project managers have very little power in an organization.  They are on the hook for delivery, but have very little control over the actual resources required to get the job done.  Project managers have to broker agreements, hold people accountable, and get people to do things that they are not otherwise incented to do. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Fixed Constraints and Up Front Design&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Requirements documents are created early, and often with little input from the delivery team.  Budgets are set and timelines negotiated, prior to the project team even being engaged.&lt;/p&gt;
&lt;p&gt;In other words… project managers are in a pretty bad spot.   They are trying to manage in a situation where the triple constraints are all set for them, they have little direct control over resources, and the resources they have are matrixed across several projects with competing priorities and differing agendas.&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Project Managers Want to Succeed&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Project managers are often very driven people.  They are detailed oriented and focused.  Believe it or not, project managers don't want to fail.  Project managers are people that are committed to being successful… they want to deliver and do a good job. &lt;/p&gt;
&lt;p&gt;So… what can a project manager do to ensure success?  Focus on paperwork and process. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Paperwork and Process Defines Success&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Because project managers are in an impossible situation, they retreat into self-preservation mode.  They focus on comprehensive documentation and sign-off to hold people accountable.  They put process and documentation over working software because the constraints of the organization ensured failure from the very beginning.&lt;/p&gt;
&lt;p&gt;Over time, people get used to operating in this manner.  Project managers get promoted and run PMOs.  They run development organizations.  They become a part of the business.  The challenge is that they carry these self-preservation attitudes with them as they move up the ranks. &lt;/p&gt;
&lt;p&gt;We have ended up with a bunch of leaders that think this is the way software gets created.  They think that paperwork and process is the way software gets delivered to market.  The thinking is so pervasive, no one even questions how we got here. &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Changing Behavior Will Take Time&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;If we want to change this behavior and begin to tear down these walls, we need to encourage transparency and create an environment of trust.  Project managers need to be able to bring the difficult issues to the business and be assured that the business will not punish them for their integrity. &lt;/p&gt;
&lt;p&gt;Companies need to create a culture where assumptions get validated, and when they are not valid, the plan changes.  We need to create a culture where risk is managed, but when it is realized, we accept responsibility for our mitigation strategies.  We can talk about change management, but we have to understand that change is not free.&lt;/p&gt;
&lt;p&gt;I understand it is difficult to run an uncertain business.  We can't wish that uncertainty away and we need structures and frameworks to help deal with it.  Agile project management is just such a framework.  Agile help us embrace uncertainty and deal with it.  &lt;/p&gt;
&lt;p&gt;&lt;b&gt;Holding Project Managers Accountable&lt;/b&gt;&lt;/p&gt;
&lt;p&gt;Hold project managers accountable for effectively managing assumptions and risk, good decision making, and proper escalation to the right people.  Hold them accountable for how well they communicate and keep the business informed.  Reward them for coming up with creative proposals and implementing effective strategies.  &lt;/p&gt;
&lt;p&gt;Unless we want mountains of documentation no one will ever read, let's stop holding project managers accountable for plans that should never have been laid in the first place.&lt;/p&gt;
&lt;p&gt;&lt;a href="http://feedads.googleadservices.com/~a/NdjmxRBYwPz38Be-WhJzd0MJPwA/a"&gt;&lt;img src="http://feedads.googleadservices.com/~a/NdjmxRBYwPz38Be-WhJzd0MJPwA/i" border="0" ismap="true"&gt;&lt;/img&gt;&lt;/a&gt;&lt;/p&gt;&lt;div class="feedflare"&gt;
&lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=Om6Ruhhm"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=Om6Ruhhm" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=IGxIgMxV"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=IGxIgMxV" border="0"&gt;&lt;/img&gt;&lt;/a&gt; &lt;a href="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?a=0MLBazLD"&gt;&lt;img src="http://feedproxy.google.com/~f/AgileSoftwareDevelopment?i=0MLBazLD" border="0"&gt;&lt;/img&gt;&lt;/a&gt;
&lt;/div&gt;&lt;img src="http://feedproxy.google.com/~r/AgileSoftwareDevelopment/~4/xUsNWxdRIys" height="1" width="1"/&gt;</description>
 <comments>http://agilesoftwaredevelopment.com/blog/mcottmeyer/why-project-managers-documentation#comments</comments>
 <category domain="http://agilesoftwaredevelopment.com/tags/documentation">documentation</category>
 <category domain="http://agilesoftwaredevelopment.com/tags/projectmanagement">project management</category>
 <pubDate>Fri, 21 Nov 2008 06:00:00 +0000</pubDate>
 <dc:creator>mcottmeyer</dc:creator>
 <guid isPermaLink="false">714 at http://agilesoftwaredevelopment.com</guid>
<feedburner:origLink>http://agilesoftwaredevelopment.com/blog/mcottmeyer/why-project-managers-documentation</feedburner:origLink></item>
</channel>
</rss>
