<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:georss="http://www.georss.org/georss" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><atom:id>tag:blogger.com,1999:blog-18900903</atom:id><lastBuildDate>Mon, 14 May 2012 10:42:22 +0000</lastBuildDate><category>improve</category><category>term</category><category>iphoto library</category><category>theory of constraints</category><category>agile ready</category><category>coherence</category><category>books</category><category>larman</category><category>strategy</category><category>community</category><category>customer</category><category>iterative</category><category>less2011</category><category>phase</category><category>time management</category><category>paradigm shift</category><category>iteration</category><category>corporate</category><category>roadmap</category><category>software development</category><category>motivation</category><category>work management</category><category>check out</category><category>practice</category><category>unified process</category><category>job</category><category>alenetwork</category><category>study</category><category>appearance</category><category>rewards</category><category>video</category><category>lies</category><category>process control</category><category>developer</category><category>glossary</category><category>evil</category><category>productdesign</category><category>product owner</category><category>requirements management</category><category>training</category><category>rant</category><category>anti-patterns</category><category>vocabulary</category><category>agile estimation</category><category>reading</category><category>life style</category><category>visualization</category><category>lego</category><category>hdd</category><category>reality</category><category>coud</category><category>less2010</category><category>talk</category><category>refactor</category><category>engineering</category><category>anti-pattern</category><category>product design</category><category>kaizen</category><category>success</category><category>definitions</category><category>transformation</category><category>honda</category><category>definition</category><category>plan-driven</category><category>brain</category><category>format</category><category>international</category><category>coplien</category><category>scope management</category><category>engaging</category><category>build</category><category>proxy product owner</category><category>iphoto</category><category>flickr</category><category>cheap labor</category><category>practices</category><category>innovation</category><category>optimization</category><category>notagile</category><category>marketing</category><category>projectmanagement</category><category>design</category><category>checkout</category><category>network</category><category>waterfall</category><category>external</category><category>statistics</category><category>cor</category><category>project</category><category>velocity</category><category>bureaucracy</category><category>syndrome</category><category>must</category><category>google</category><category>productowner</category><category>agile adoption</category><category>software industry</category><category>technology</category><category>consumer</category><category>challenge</category><category>capacity</category><category>comment</category><category>skills</category><category>enterprise agile</category><category>emigration</category><category>deming</category><category>professionalism</category><category>retail</category><category>advertising</category><category>systems thinking</category><category>gilb</category><category>ale</category><category>risk</category><category>honesty</category><category>engineering practices</category><category>leadership</category><category>risk strategy</category><category>agile estonia</category><category>toc</category><category>method wars</category><category>project planning</category><category>flow</category><category>nokia</category><category>response</category><category>planning</category><category>systems</category><category>tester</category><category>toyota way</category><category>print media</category><category>maintenance</category><category>personal scrum</category><category>black swan</category><category>productivity</category><category>code</category><category>timeboxes</category><category>learning</category><category>lessons learned</category><category>usability</category><category>go dark</category><category>adoption</category><category>gathering</category><category>marketing fail</category><category>business model</category><category>cottmeyer</category><category>knowledge</category><category>theory</category><category>hs</category><category>implementation</category><category>labor</category><category>principles</category><category>rant service design quality</category><category>open space</category><category>Continuousintegration</category><category>customer delight</category><category>electronics</category><category>queue</category><category>annual performance review</category><category>mistake-proofing</category><category>blackberry</category><category>epidemics</category><category>commitment</category><category>scrum</category><category>lean thinking</category><category>should</category><category>wiio laws</category><category>discipline</category><category>twitter</category><category>behavior</category><category>hash tag</category><category>tps</category><category>backlog items</category><category>andon</category><category>project management</category><category>toyota</category><category>agile finland</category><category>Team Backlog</category><category>Toyota production system</category><category>management</category><category>human</category><category>problem</category><category>pmot</category><category>Team</category><category>mobile</category><category>theories</category><category>visual</category><category>discussion</category><category>organizations</category><category>life-cycle</category><category>documentation</category><category>web</category><category>rup</category><category>poker</category><category>hypothesis</category><category>technique</category><category>agile debate science waterfall spiral</category><category>senses</category><category>goal</category><category>phone</category><category>user stories</category><category>adaptation</category><category>presentation</category><category>product</category><category>outsourcing</category><category>score sheet</category><category>apa</category><category>test</category><category>product manager</category><category>agileee</category><category>values</category><category>iphone</category><category>agile score sheet</category><category>kehityskeskustelu</category><category>excellence</category><category>society</category><category>software engineering</category><category>roles</category><category>performance</category><category>openness</category><category>raid</category><category>beyond budgeting</category><category>bonus</category><category>ready for agile</category><category>xp</category><category>poka-yoke</category><category>backup</category><category>software quality</category><category>future</category><category>story</category><category>exercise</category><category>simulation</category><category>competence</category><category>retrospectives</category><category>business</category><category>cooperation</category><category>pdca</category><category>finland</category><category>technical</category><category>transition</category><category>security</category><category>seminar</category><category>scope</category><category>CES</category><category>models</category><category>improvement</category><category>ux</category><category>geek</category><category>game</category><category>teams</category><category>decisions</category><category>products</category><category>timeboxing</category><category>liker</category><category>integration</category><category>people</category><category>concurrent engineering</category><category>intel</category><category>software</category><category>Gemba</category><category>conversation</category><category>scrumban</category><category>europe</category><category>market</category><category>planning poker</category><category>coding</category><category>getting real</category><category>quality</category><category>release</category><category>requirements</category><category>testing</category><category>architecture</category><category>vista</category><category>hp</category><category>skill</category><category>OS</category><category>media</category><category>value</category><category>responsibility</category><category>trust</category><category>complex</category><category>organization</category><category>apple</category><category>board</category><category>tablet</category><category>change</category><category>component teams</category><category>manager</category><category>flat earth</category><category>conference</category><category>photos</category><category>complexity</category><category>business of software</category><category>evidence</category><category>problem solving</category><category>portfolio</category><category>qauke</category><category>feedback</category><category>automation tdd code test generation</category><category>agile</category><category>greenshift</category><category>enterprise</category><category>zero defects</category><category>internet</category><category>kanban</category><category>respect for people</category><category>windows</category><category>project smells</category><category>backlogs</category><category>xp2012</category><category>feature teams</category><category>agile in the large</category><category>story points</category><category>papers</category><category>PMBOK</category><category>science</category><category>operating system</category><category>work method</category><category>lean</category><category>zero inspections</category><category>disproportional consequences</category><category>change management</category><category>cvs</category><category>traditionalism</category><category>matts</category><category>vision</category><category>platform</category><category>research</category><category>translation</category><category>law</category><category>patterns</category><category>process</category><category>programming</category><category>reinertsen</category><category>burocracy</category><category>experience</category><category>cmmi</category><category>games</category><category>communities</category><category>communication</category><category>careers</category><category>scan-agile</category><category>commentary</category><category>pmi</category><category>learn</category><category>proof</category><category>time</category><category>spc</category><category>release planning</category><category>passion</category><category>iiop</category><category>jobs</category><category>command and control</category><category>analytical</category><category>scrum adoption</category><category>leonidas</category><category>features</category><category>customer loyalty</category><category>microsoft</category><category>set-based</category><category>scientific method</category><category>throughput</category><category>fail</category><category>revolution</category><category>failure</category><category>progress</category><category>seddon</category><category>morale</category><category>distribution</category><category>estimation</category><title>Software Development Today</title><description>A Blog about software development and how we, the software development industry, can progress and improve.</description><link>http://softwaredevelopmenttoday.blogspot.com/</link><managingEditor>noreply@blogger.com (Vasco Duarte)</managingEditor><generator>Blogger</generator><openSearch:totalResults>226</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/SoftwareDevelopmentToday" /><feedburner:info uri="softwaredevelopmenttoday" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-3348799917302548798</guid><pubDate>Wed, 25 Jan 2012 09:08:00 +0000</pubDate><atom:updated>2012-01-26T18:02:00.193+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">pmot</category><category domain="http://www.blogger.com/atom/ns#">planning poker</category><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">agile estimation</category><category domain="http://www.blogger.com/atom/ns#">kanban</category><category domain="http://www.blogger.com/atom/ns#">release planning</category><category domain="http://www.blogger.com/atom/ns#">project planning</category><category domain="http://www.blogger.com/atom/ns#">lean</category><category domain="http://www.blogger.com/atom/ns#">project management</category><category domain="http://www.blogger.com/atom/ns#">planning</category><category domain="http://www.blogger.com/atom/ns#">estimation</category><title>Story Points Considered Harmful - Or why the future of estimation is really in our past...</title><description>This article is the companion to &lt;a href="http://www.sigs-datacom.de/oop2012/oop2012-eng/conference/sessiondetails.html?tx_mwconferences_pi1[showUid]=818&amp;amp;tx_mwconferences_pi1[anchor]=%23Ndo3&amp;amp;tx_mwconferences_pi1[s]=0"&gt;a talk &lt;/a&gt;that myself and &lt;a href="https://twitter.com/josephpelrine"&gt;@josephpelrine&lt;/a&gt; gave at OOP 2012.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-EUBtGnhNy1Y/TyCFzQjVwLI/AAAAAAAAAQA/HfV1jBwZwzM/s1600/Stars%2Bbanner.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 218px;" src="http://1.bp.blogspot.com/-EUBtGnhNy1Y/TyCFzQjVwLI/AAAAAAAAAQA/HfV1jBwZwzM/s320/Stars%2Bbanner.jpg" alt="" id="BLOGGER_PHOTO_ID_5701704243914064050" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;We have a lot to learn from our ancestors. One that I want to focus on for this post is &lt;a href="http://en.wikipedia.org/wiki/Galileo_Galilei"&gt;Galileo&lt;/a&gt;.&lt;br /&gt;Galileo was what we would call today a techie. He loved all things tech and was presented an interesting technology that he could not put down. Through that work he developed optic technology to build first a telescope and later a microscope.&lt;br /&gt;Through the use of the telescope and other approaches he came to realize and defend the &lt;a href="http://en.wikipedia.org/wiki/Heliocentrism"&gt;Heliocentric &lt;/a&gt;view of the universe: the Earth was not the center of the Universe, but rather moved around the Sun.&lt;br /&gt;This discovery caused no controversy until Galileo wrote it down and apparently discredited the view held by the Church at that time. The Church believed and defended that the Universe was neatly organized around the Earth and everything moved around our lanet.&lt;br /&gt;We now know that Galileo was right and that the Church was - as it often tends to be with uncritical beliefs - wrong. We now say obviously the Earth is round and moves around the Sun. Or do we...&lt;br /&gt;&lt;h3&gt;The Flat Earth Society&lt;/h3&gt;Actually, there are still many people around (curious word, isn't it?) the planet that do not even believe that the Earth is round! Don't believe me? Then check &lt;a href="http://en.wikipedia.org/wiki/Flat_Earth_Society"&gt;The Flat Earth Society&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;The fact that is that even today many people hold uncritical beliefs about how our world really works. Or our projects in the case of this post...&lt;br /&gt;&lt;h3&gt;Estimation soup&lt;/h3&gt;We've all been exposed to various estimation techniques, in an Agile or traditional project. Here are some that quickly come to mind: Expert Estimation, Consensus Estimation, Function Point Analysis, etc. Then we have cost (as opposed to only time) estimation techniques: COCOMO, SDM, etc. And of course, &lt;span style="font-weight: bold;"&gt;the topic of this post: Story Point Estimation&lt;/span&gt;.&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;What do all of these techniques have in common? They all look towards the future!&lt;/span&gt;&lt;br /&gt;Why is this characteristic important?&lt;br /&gt;&lt;h3&gt;The Human condition&lt;/h3&gt;This characteristic is nt because looking at the future is always difficult! We humans are very good at anticipating immediate events in the physical world, but in the software world what we estimate is neither immediate, nor does it follow any physical laws that we intuitively understand!&lt;br /&gt;Take the example of a goal-keeper in a football (aka soccer) match. She can easily predict how a simple kick will propel the ball towards the goal, and she can do that with quite a high accuracy (as proven by the typically low scores in today's football games). But even in soccer, if you face a player like &lt;a href="http://en.wikipedia.org/wiki/Diego_Maradona"&gt;Maradona&lt;/a&gt;, or &lt;a href="http://en.wikipedia.org/wiki/David_Beckham"&gt;Beckham&lt;/a&gt;, or &lt;a href="http://en.wikipedia.org/wiki/Cristiano_Ronaldo"&gt;Crisitiano Ronaldo&lt;/a&gt; it is very difficult to predict the trajectory of the ball. Some physicists have spent considerable amount of time analyzing the trajectory of Beckham's amazing free kicks to try to understand how the ball moves and why. Obviously a goal-keeper does not have the computers or the time to analyze the trajectory of Beckham's free kicks therefore Beckham ends up scoring quite a few goals that way. &lt;span style="font-weight:bold;"&gt;Even in football, where well-known physics laws always apply it is some times hard to predict the immediate future!&lt;/span&gt;&lt;br /&gt;The undisputed fact is that we, humans are very bad at predicting the future.&lt;br /&gt;But that is not all!&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;This is when things get Complex&lt;/h3&gt;&lt;br /&gt;Lately, and especially in the agile field we have been finding a new field of study: Complexity Sciences.&lt;br /&gt;A field of study that tries to identify rules that help us navigate a world where even causality (cause and effect) are challenged.&lt;br /&gt;An example may be what you may have heard of, the Butterfly effect: "where a small change at one place in a nonlinear system can result in large differences to a later state".&lt;br /&gt;Complexity Sciences are helping us develop our own understanding of software development based on the theories developed in the last few years.&lt;br /&gt;Scrum being a perfect example of a method that has used Complexity to inspire and justify its approach to many of the common problems we face in Software development.&lt;br /&gt;Scrum has used "self-organization", and "emergence" as concepts in explaining why the Scrum approach works. Here's the problem: there's a catch.&lt;br /&gt;&lt;h3&gt;Why did this just happen?&lt;/h3&gt;&lt;br /&gt;In a complex environment we don’t have discernible causality!&lt;br /&gt;Sometimes this is due to delayed effects from our actions, most often it is so that we attribute causality to events in the past when in fact no cause-effect relationship exists (&lt;a href="http://www.metaprog.com/blogs/2009/10/on-retrospective-coherence-part-1/"&gt;Retrospective Coherence&lt;/a&gt;). But, in the field of estimation this manifests itself in a different way.&lt;br /&gt;In order for us to be able to estimate we need to assume that causality exists (if I ask Tom for the code review, then Helen will be happy with my pro-activeness and give me a bonus. Or will she?) The fact is: in a Complex environment, this basic assumption of the existence of discernible Causality is not valid!&lt;span style="font-weight:bold;"&gt; Without causality, the very basic assumption that justifies estimation falls flat!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Solving the the lack of internal coherence in Scrum&lt;/h3&gt;&lt;br /&gt;So, which is it? Do we have a complex environment in software development or not? If we do then we cannot - at the same time - argue for estimation (and build a whole religion on it)! In contrast, if we are not in a complex environment we cannot then claim that Scrum - with it’s focus on solving a problem in the complex domain - can work!&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;So then, the question for us is: Can this Story Point based estimation be so important to the point of being promoted and publicized in all Scrum literature?&lt;/span&gt;&lt;br /&gt;Luckily we have a simple alternative that allows for the existence of a complex environment and solves the same problems that Story Points were designed (but failed to) solve.&lt;br /&gt;&lt;h3&gt;The alternative prediction device&lt;/h3&gt;The alternative to Story Point estimation is simple: just count the number of Stories you have completed (as in "Done") in the previous iterations. They are the best indicator of future performance! Then use that information to project future progress. Basically, the best predictor of the future is your past performance!&lt;br /&gt;Can it really be that simple? To test this approach I looked at data from different projects and tried to answer a few simple questions&lt;br /&gt;&lt;h3&gt;The Experiment&lt;br /&gt;&lt;/h3&gt;&lt;ul&gt;&lt;li&gt;Q1: Is there sufficient difference between what Story Points and ’number of items’ measure to say that they don’t measure the same thing?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Q2: Which one of the two metrics is more stable? And what does that mean?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Q3: Are both metrics close enough so that measuring one (number of items) is equivalent to measuring the other (Story Points)?&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;I took data from 10 different teams in 10 different projects. I was not involved in any of the projects (I collected data from the teams directly or through requests for data in Agile-related mailing lists). Another point to highlight is that this data came from different size companies as well as different size teams and projects.&lt;br /&gt;And here's what I found:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Regarding Question 1: I noticed that there was a stable medium-to-high correlation between the Story Point estimation and the simple count of Stories completed (0,755; 0,83; 0,92; 0,51(!); 0,88; 0,86; 0,70; 0,75; 0,88). With such a high correlation it is likely that both metrics represent a signal of the same underlying information.&lt;br /&gt;&lt;/li&gt;&lt;li&gt; Regarding Question 2: The normalized data (normalized for Sprint/Iteration length) has similar value of Standard Deviation(equally stable). Leading me to conclude that there is no significant difference in stability of either of the metrics. Although in absolute terms the Story Point estimations vary much more between iterations than the number of completed/Done Stories&lt;br /&gt;&lt;/li&gt;&lt;li&gt; Regarding Question 3: Both metrics (Story Points completed vs Number of Stories completed) seem to measure the same thing. So...&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;At this point I was interested in analyzing the claims that justify the use of Story Points, as the data above does not seem to suggest any significant advantage of using Story Points as a metric. So I searched for the published justification for the use of Story Points and found a set of claims in Mike Cohn's book "User Stories Applied" (page 87, first edition):&lt;br /&gt;&lt;ul&gt;&lt;li&gt;Claim 1: The use of Story points allows us to change our mind whenever we have new information about a story&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Claim 2: The use of Story points works for both epics and smaller stories&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Claim 3: The use of Story points doesn’t take a lot of time&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Claim 4: The use of Story points provides useful information about our progress and the work remaining&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Claim 5: The use of Story points is tolerant of imprecision in the estimates&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Claim 6: The use of Story points can be used to plan releases&lt;/li&gt;&lt;/ul&gt;This these claims hold?&lt;br /&gt;&lt;h3&gt;Claim 1: The use of Story points allows us to change our mind whenever we have new information about a story&lt;/h3&gt;&lt;br /&gt;Although there's no explanation about what "change our mind" means in the book, one can infer that the goal is not to have to spend too much time trying to be right. The reason for this is, of course, that if a story changes the size slightly there's no impact on the Story Point estimate, but what if the story changes size drastically?&lt;br /&gt;Well, at this time you would probably have another estimation session, or you would break down that story into some smaller granularity stories to have a better picture of it's actual size and impact on the project.&lt;br /&gt;On the other hand, if we were to use a simple metric like the number of stories completed we would be able to immediately assess the impact of the new items in the progress for the project.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-Cj3pwyqlG2g/Tx_i9xuGIDI/AAAAAAAAAPc/I5bSB8gG0s8/s1600/claim%2B1%2Bgraph.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 198px;" src="http://3.bp.blogspot.com/-Cj3pwyqlG2g/Tx_i9xuGIDI/AAAAAAAAAPc/I5bSB8gG0s8/s320/claim%2B1%2Bgraph.jpg" alt="" id="BLOGGER_PHOTO_ID_5701525204220911666" border="0" /&gt;&lt;/a&gt;As illustrated in the graph, if we have a certain number of stories to complete (80  in our example) and suddenly some 40 are added to our backlog (breaking down an Epic for example) we can easily see the impact of that in our project progress.&lt;br /&gt;In this case, as we can see from the graph, the impact of a story changing it's meaning or a large story being broken down into smaller stories has an impact on the project and we can see that immediate impact directly in the progress graph.&lt;br /&gt;This leads me to conclude that &lt;span style="font-weight:bold;"&gt;regarding Claim 1, Story Points offer no advantage over just simply counting the number of items left to be Done.&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;h3&gt;Claim 2: The use of Story points works for both epics and smaller stories&lt;/h3&gt;&lt;br /&gt;Allowing for large estimates for items in the backlog (say a 100SP Epic) does help to account in some way for the uncertainty that large pieces of work represent.&lt;br /&gt;However, the same uncertainty exists in any way we may use to measure progress. The fact is that we don’t really know if an Epic (say 100 SPs) is really equivalent to a similar size aggregate of User Stories (say 100 times 1 SP story). &lt;span style="font-weight:bold;"&gt;Conclusion: there is no significant added information by classifying a story in a 100 SP category &lt;/span&gt;which in turn means that calling something an "Epic" is about the same information as classifying it as a 100 Story Points Epic.&lt;br /&gt;&lt;h3&gt;Claim 3: The use of Story points doesn’t take a lot of time&lt;/h3&gt;Having worked with Story Points for several years this is not my experience. Although some progress has been done by people like Ken Power (at Cisco) with the &lt;a href="http://slidesha.re/AgileKonstanz_silentgrouping"&gt;Silent Grouping technique&lt;/a&gt;, the fact that we need such technique should dispute any idea that estimating in SP’s "doesn’t take a lot of time". In fact, as anybody that has tried a non-trivial project knows it can take days of work to estimate the initial backlog for a reasonable size project.&lt;br /&gt;&lt;h3&gt;Claim 5: The use of Story points is tolerant of imprecision in the estimates&lt;/h3&gt;Although you can argue that this claim holds - even if the book does not explain how - there's no data to justify the belief that Story Points do this better than merely counting the number of Stories Done. In fact, we can argue that counting the number of stories is even more tolerant of imprecisions (see below for more details on this)&lt;br /&gt;&lt;h3&gt;Claim 6: Story points can be used to plan releases&lt;/h3&gt;Fair enough. On the other hand we can use any estimation technique to do this, so how would Story Points be better in this particular claim than any other estimation technique? Also, as we will see when analysis Claim 4, counting the number of Stories Done (and left to be Done) is a very effective way to plan a release (be patient, the example is coming up).&lt;br /&gt;&lt;h3&gt;Claim 4: The use of Story points provides useful information about our progress and the work remaining&lt;/h3&gt;This claim holds true &lt;span style="font-weight:bold;"&gt;if, and only if &lt;/span&gt;you have estimated all of your stories in the Backlog and go through the same process for each new story added to the Backlog. Even the stories that will only be developed a few months or even a year later (for long projects) must be estimated! This approach is not very efficient (which in fact contradicts Claim 3).&lt;br /&gt;Basing your progress assessment on the Number of Items completed in each Sprint is faster to calculate (number of items in the PBL / velocity in number of items Done per Sprint = number of Sprints left) and can be used to provide critical information about project progress. Here's a real-life example:&lt;br /&gt;&lt;h3&gt;The real-life use of a simpler metric for project progress measurement&lt;/h3&gt;In a company I used to work at we had a new product coming to market. It was not a "first-mover" which meant that the barrier to entry was quite high (at least that was the belief from Product Management and Sales).&lt;br /&gt;This meant that significant effort was made to come up with a coherent Product Backlog. The Backlog was reviewed by Sales and Pre-Sales (technical sales) people. All agreed, we really needed to deliver around 140 Stories (not points, Stories) to be able to compete.&lt;br /&gt;As we were not the first in the market we had a tight market window. Failing to meet that window would invalidate the need to enter that market at all.&lt;br /&gt;So, we started the project and in the first Sprint we complete 1 single Story (maybe it was a big story -- truth is I don't remember). Worst, in the same period another 20 stories were added to the Product Backlog. As expected, the Product Management and Sales discovered a few more stories that were really a "must" and could not be left out of the product.&lt;br /&gt;The team was gaining speed and in the second Sprint they got 8 stories to "Done". They were happy. At the same time the Product Manager and the Sales agreed to a cut-down version of the Product Backlog and removed some 20 stories from the Backlog.&lt;br /&gt;After the third sprint the team had achieved velocities of 1 (first Sprint), 8 (second) and 8 (third). The fourth sprint was about to start and the pressure was high on the team and on the Product Manager. During the Sprint planning meeting the team committed to 15 new stories. This was a good number, as a velocity of 15 would make the stakeholders believe that the project could actually deliver the needed product. They would need to keep a velocity of 15 stories per sprint for 11 months. Could they make it?&lt;br /&gt;&lt;h3&gt;The climax&lt;/h3&gt;As the fourth sprint started I made a bet with the Product Manager. I asked him how many items he believed that the team could complete and he said 15 (just as the team had committed to). I disagreed and said 10. How many items would you have said the team could complete?&lt;br /&gt;I ask this question from the audience every time I tell this story. I get many different answers. Every audience comes up with 42 as a possible answer (to be expected given the crowds I talk to), but most say 8, 10, some may say 15 (very few), some say 2 (very few). The consensus seems to be around 8-10.&lt;br /&gt;At this point I ask the audience why they would say 8-10 instead of 15 as the Product Manager for that team said. Obviously the Product Manager knew the team and the context better, right?&lt;br /&gt;At the end of the fourth sprint the team completed 10 items, which even if it was 20% more than what they had done in previous sprints was still very far from the velocity they needed to make the project a success. The management reflected on the situation and clearly decided that the best decision for the company was to cancel that product.&lt;br /&gt;&lt;h3&gt;Story Points Myth: Busted!&lt;/h3&gt;That company did that extremely hard decision based on data, not speculation from Project Managers, not based on some bogus estimation using whatever technique. Real data. They looked at the data available to them and decided to cancel the project 10 months before its originally planned release. This project had a team of about 20 people. Canceling the project saved the company 200 man-month of investment in a product they had no hope of getting out of the door!&lt;br /&gt;We avoided a death-march project and were able to focus on other more important products for the company's future. Products that now bring in significant amount of money!&lt;br /&gt;&lt;h3&gt;OK, I get your point, but how does that technique work?&lt;/h3&gt;Most people will be skeptical at this point (if you've read this far you probably are too). So let me explain how this works out.&lt;br /&gt;Don't estimate the size of a story further than this: when doing Backlog Grooming or Sprint Planning just ask: can this Story be completed in a Sprint by one person? If not, break the story down!&lt;br /&gt;For large projects use a further level of abstraction: Stories fit into Sprints, therefore Epics fit into meta-Sprints (for example: meta-Sprint = 4 Sprints). Ask the same question of Epics that you do of Sprints (can one team implement this Epic in half a meta-Sprint, i.e. 2 Sprints?) and break them down if needed.&lt;br /&gt;&lt;br /&gt;By continuously harmonizing the size of the Stories/Epics you are creating a distribution of the sizes around the median:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-d44ZmBaikOg/TyB0VGZRkFI/AAAAAAAAAPo/g1xho13s3rU/s1600/median%2Bstory%2Bsize%2Bgraph.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 308px; height: 188px;" src="http://4.bp.blogspot.com/-d44ZmBaikOg/TyB0VGZRkFI/AAAAAAAAAPo/g1xho13s3rU/s320/median%2Bstory%2Bsize%2Bgraph.jpg" alt="" id="BLOGGER_PHOTO_ID_5701685034093744210" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Assuming a normal distribution of the size of the stories means that you can assume that &lt;span style="font-weight:bold;"&gt;for the purposes of looking at the long term &lt;/span&gt; (remember: this only applies on the long term, i.e. more than 3 sprints into the future) estimation/progress of the project, &lt;span style="font-weight:bold;"&gt;you can assume that all stories are the same size&lt;/span&gt;, and can &lt;span style="font-weight:bold;"&gt;therefore measure progress by measuring the number of items completed per Sprint&lt;/span&gt;.&lt;br /&gt;&lt;h3&gt;Final words&lt;/h3&gt;As with all techniques this one comes with a disclaimer: you may not see the same effects that I report in this post. That's fine. If that is the case please share the data you have with me and I'm happy to look at it.&lt;br /&gt;My aim with this post is to demystify the estimation in Agile projects. The fact is: the data we have available (see above) does not allow us to accept any of the claims by Mike Cohn regarding the use of Story Points as a valid/useful estimation technique, therefore you are better off using a much simpler technique! Let me know if you find an even simpler one!&lt;br /&gt;&lt;br /&gt;Oh, and by the way: stop wasting time trying to estimate a never ending Backlog. There's no evidence that that will help you predict the future any better than just counting the number of stories "Done"!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Photo credit: &lt;a href="http://www.flickr.com/photos/astroporn"&gt;write_adam&lt;/a&gt; @ flickr&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-3348799917302548798?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/xiwRm2VNL_s" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/xiwRm2VNL_s/story-points-considered-harmful-or-why.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-EUBtGnhNy1Y/TyCFzQjVwLI/AAAAAAAAAQA/HfV1jBwZwzM/s72-c/Stars%2Bbanner.jpg" height="72" width="72" /><thr:total>44</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2012/01/story-points-considered-harmful-or-why.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-5979124496548993819</guid><pubDate>Fri, 25 Nov 2011 14:47:00 +0000</pubDate><atom:updated>2011-11-25T23:10:10.183+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">systems</category><category domain="http://www.blogger.com/atom/ns#">kanban</category><category domain="http://www.blogger.com/atom/ns#">complexity</category><category domain="http://www.blogger.com/atom/ns#">learning</category><category domain="http://www.blogger.com/atom/ns#">management</category><category domain="http://www.blogger.com/atom/ns#">scrum</category><title>Kanban vs Scrum, the ultimate fight? Don't think so, here's why:...</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/-Zs2yiy9LCLU/Ts-uIQhgFMI/AAAAAAAAAPA/7me4QoSLEyA/s1600/fighting%2Bmoles.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 240px;" src="http://3.bp.blogspot.com/-Zs2yiy9LCLU/Ts-uIQhgFMI/AAAAAAAAAPA/7me4QoSLEyA/s320/fighting%2Bmoles.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5678949112035153090" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Wow, what a week! A &lt;a href="http://scrum.jeffsutherland.com/2011/11/alternative-to-kanban-one-piece.html"&gt;BIG post&lt;/a&gt; on Kanban by Scrum evangelist &lt;a href="http://twitter.com/#!/jcoplien"&gt;@jcoplien&lt;/a&gt; litterally put the blogosphere (and twittersphere on fire!). &lt;br /&gt;&lt;br /&gt;It is good to have these family fights in the Agile family once in a while. As a life-philosopher once said: "These things gotta happen every five years or so, ten years. Helps to get rid of the bad blood".&lt;br /&gt;&lt;br /&gt;But what are the differences between Kanban and Scrum, really? What are they? &lt;br /&gt;&lt;br /&gt;Here's my take on the differences:&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Kanban innovation&lt;/h2&gt;&lt;br /&gt;Kanban is, from it's origin a more systematic approach to measuring, visualizing and following up work in a "system" (one team, many teams, a company you name it). Thanks to the work by the &lt;a href="www.poppendieck.com"&gt;Poppendiecks&lt;/a&gt;, &lt;a href="agilemanagement.net"&gt;David Andersson&lt;/a&gt; and &lt;a href="www.reinertsenassociates.com"&gt;Don Reinertsen&lt;/a&gt; (and others I'm sure) a pretty interesting and innovative economic framework as been put into the software process development lingo. Cost of Delay, Queues, optimize the whole, etc.&lt;br /&gt;This economic framework is, in my view, the major innovation that Kanban proponents bring to the table. This was to be expected as many of the early adopters of Kanban were using Scrum before and felt the need to quantify and analyze some aspects of software development that Scrum did not tackle. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Scrum innovation&lt;/h2&gt;&lt;br /&gt;Scrum brought to the fore-front of process discussions issues that had never made it to our attention before: Self-organization, people/team dynamics, problem solving within a short cycle with feedback loops in place (Sprint), etc. &lt;br /&gt;The major innovation of Scrum in my view was the introduction of the Socio-technical system of software development as &lt;a href="www-personal.umich.edu/~liker"&gt;Liker&lt;/a&gt; describes it in the &lt;a href="http://www.bookdepository.co.uk/Toyota-Way-Jeffrey-Liker/9780071392310"&gt;Toyota way&lt;/a&gt;. Other similar software development processes took some of the ideas that Scrum also took, but shied away from the self-organization at the team level and blocker-removal focus of roles such as the scrum master. Those methods did not last long because the teams felt like puppets instead of adults with the possibility (and responsibility) to produce the best product they could.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Wrap-up&lt;/h2&gt;&lt;br /&gt;Both Kanban and Scrum brought significant innovations to the software development world. Those are just two types of innovations. There is more coming from the community and instead of focusing only on these two methods (which all of you should experiment with!) we should also look at what else is missing in the software development ecosystem.&lt;br /&gt;My next interest area is "Complex Systems" (Complexity + Systems Thinking) and Management as a profession. I'll be exploring those subjects more and more in the future as a way to complement my use of Kanban *AND* Scrum. I suggest you do the same and find what else is missing in your environment and look for what else is around that could help you complement what you are already using. Here's a suggestion: start with &lt;a href="http://twitter.com/jurgenappelo"&gt;@jurgenappelo&lt;/a&gt;'s &lt;a href="www.management30.com/book"&gt;book on Management&lt;/a&gt;!&lt;br /&gt;&lt;br /&gt;Happy reading, happy learning!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-5979124496548993819?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/jEZl_eZSk0Q" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/jEZl_eZSk0Q/kanban-vs-scrum-ultimate-fight-dont.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-Zs2yiy9LCLU/Ts-uIQhgFMI/AAAAAAAAAPA/7me4QoSLEyA/s72-c/fighting%2Bmoles.jpg" height="72" width="72" /><thr:total>6</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/11/kanban-vs-scrum-ultimate-fight-dont.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-215466274828174128</guid><pubDate>Wed, 09 Nov 2011 07:00:00 +0000</pubDate><atom:updated>2011-11-09T09:00:03.624+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">practices</category><category domain="http://www.blogger.com/atom/ns#">challenge</category><category domain="http://www.blogger.com/atom/ns#">xp2012</category><category domain="http://www.blogger.com/atom/ns#">technical</category><category domain="http://www.blogger.com/atom/ns#">xp</category><title>XP2012: The Extreme Challenge</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-PRn-qRrpGhY/TrW12p-vSpI/AAAAAAAAAOY/8X4W4xskmzo/s1600/extreme%2Bchallenge.jpg"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 189px;" src="http://1.bp.blogspot.com/-PRn-qRrpGhY/TrW12p-vSpI/AAAAAAAAAOY/8X4W4xskmzo/s320/extreme%2Bchallenge.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5671639256329570962" /&gt;&lt;/a&gt;&lt;br /&gt;"Agile has crossed the chasm" we hear often. But has it really? In the last few years Agile has gone from being "the cousin in the corner that shouts and screams but no one wants to talk to" to being "the famous cousin who everyones wants to talk to". It was not an easy transition, and to be sure there are still many in the Software industry that call that cousin the "bastard child" of software. Need an example? just take a look at the &lt;a href="http://bit.ly/vwspwF"&gt;title of this book&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Agile has turned a corner, there's no doubt about that. However, we have also grown as community, and what was the focus of the last 5 years is also being challenged from within. &lt;a href="http://twitter.com/#!/jbrains"&gt;J.B. Rainsberger&lt;/a&gt; described the evolution in a very critical as well as prescient way: the future of Agile is XP (the irony is not lost on many, I'm sure).&lt;br /&gt;&lt;iframe src="http://player.vimeo.com/video/30151990?title=0&amp;amp;byline=0&amp;amp;portrait=0" width="400" height="225" frameborder="0" webkitAllowFullScreen allowFullScreen&gt;&lt;/iframe&gt;&lt;p&gt;&lt;a href="http://vimeo.com/30151990"&gt;JB Rainsberger's keynote "The Extreme Decade: Progress, Pain, Paradox"&lt;/a&gt; from &lt;a href="http://vimeo.com/user2696171"&gt;Agile Eastern Europe&lt;/a&gt; on &lt;a href="http://vimeo.com"&gt;Vimeo&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;XP2012 happens in this context and in itself has a challenge of re-inventing the tired old format of Gurus coming to install the faith on the rest of us. Erik Lundh started a project for XP2012 that deserves some attention as well as exposure. XP2012 will be the first conference in a few years to live up to its name *because* of this challenge!&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;The XP2012 challenge!&lt;/h2&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;The challenge is to do full cycle from Agilehttp://www.blogger.com/img/blank.gif Planning Game or similar to DoneDone deployed into production at least once in a week.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;A set of teams of developers will be invited to attend the conference and effectively develop and release software at the conference in one week or less. They will start and end an iteration during the conference. Random people from the audience will use the software in the technical demos (not the team!) to check that everything is working.&lt;br /&gt;&lt;br /&gt;So, if you work in a really good Agile team why not take the challenge? Come to XP2012 to *prove* that you can do Agile Software Development just as it should be done!&lt;br /&gt;&lt;br /&gt;Photo credit: &lt;a href="http://www.flickr.com/photos/sanfora"&gt;sanfora &lt;/a&gt;@ flickr&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-215466274828174128?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/A31hLBuCfbM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/A31hLBuCfbM/xp2012-extreme-challenge.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-PRn-qRrpGhY/TrW12p-vSpI/AAAAAAAAAOY/8X4W4xskmzo/s72-c/extreme%2Bchallenge.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/11/xp2012-extreme-challenge.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-7551377456739082262</guid><pubDate>Mon, 07 Nov 2011 07:00:00 +0000</pubDate><atom:updated>2011-11-07T11:32:41.961+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">less2010</category><category domain="http://www.blogger.com/atom/ns#">visual</category><category domain="http://www.blogger.com/atom/ns#">kanban</category><category domain="http://www.blogger.com/atom/ns#">visualization</category><category domain="http://www.blogger.com/atom/ns#">network</category><category domain="http://www.blogger.com/atom/ns#">complexity</category><category domain="http://www.blogger.com/atom/ns#">board</category><category domain="http://www.blogger.com/atom/ns#">less2011</category><title>Kanban in a networked process -- Visualise the network!</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/sjcockell/3251147920/"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 237px;" src="http://3.bp.blogspot.com/-XkqrzBxr-I0/TrWw89xMsnI/AAAAAAAAAOA/wUMq0a5CwN8/s320/network.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5671633867162563186" /&gt;&lt;/a&gt;&lt;br /&gt;It seems that the idea of a work-network instead of work-flow &lt;a href="http://www.netobjectives.com/blogs/LESS2011-birds-of-a-feather"&gt;is&lt;/a&gt; &lt;a http://www.blogger.com/img/blank.gifhref="http://www.noop.nl/2011/11/networked-kanban.html"&gt;catching&lt;/a&gt; &lt;a href="http://hunskaar.com/kanban-in-a-non-linear-flow/"&gt;on&lt;/a&gt; and I'd like to throw a bit more fuel in that fire!&lt;br /&gt;&lt;br /&gt;Knowledge work is not linear! This we have learned from the experiences with failed Waterfall projects. There are things we do over and over again, and there are things we do only once in a project. None of those can easily be predicted. &lt;span style="font-weight:bold;"&gt;Scrum and Kanban are examples of our quest to distill what we do to the bare essential. Only then can we understand and manage our work. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Scrum does this by strictly limiting the work in progress through the concept of time boxes&lt;/span&gt;. The idea is: do something that fits a (reasonably) short timebox, and nothing else. Get that done and released before you go on to the next thing.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Kanban does this by strictly obeying Work In Progress (WIP) limits and establishing a Pull system&lt;/span&gt; (instead of push as much content as you can into an iteration). Both have pros and cons which I will not discuss here. http://www.blogger.com/img/blank.gif&lt;br /&gt;&lt;br /&gt;But most interestingly, both tackle the flow of our work in a linear fashion. Both Scrum and Kanban assume that some work can "flow" orderly to completion. However that is not the case! &lt;span style="font-weight:bold;"&gt;In knowledge work we have many loops and re-loops in the process that are hard to visualize and follow.&lt;/span&gt; Without visualizing those loops we cannot effectively manage our work!&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twitter.com/#!/jurgenappelo"&gt;Jurgen Appelo&lt;/a&gt; and &lt;a http://www.blogger.com/img/blank.gifhttp://www.blogger.com/img/blank.gifhref="http://twitter.com/#!/alshalloway"&gt;Allan Shalloway&lt;/a&gt; had (what looks like was) an interesting discussion on the non-linearity of work and consequently on the non-linearity of Kanban boards. Check out &lt;a href="http://www.noop.nl/2011/11/networked-kanban.html"&gt;Jurgen&lt;/a&gt;'s and &lt;a href="http://www.netobjectives.com/blogs/LESS2011-birds-of-a-feather"&gt;Allan&lt;/a&gt;'s posts on the subject. &lt;br /&gt;&lt;br /&gt;Since I've been experimenting with Personal Kanban for 3 months now I'd like to share some of my own experiences. &lt;br /&gt;&lt;br /&gt;The picture below depicts my process boards as they evolved (click for larger images). The initial one was simple and linear, and it did not disclose enough information for me.&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-CL6jv5k3V2M/TrWumKZJYxI/AAAAAAAAANc/AHMO7MmNnA8/s1600/kanban%2Bboard%2Bv1.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 118px;" src="http://1.bp.blogspot.com/-CL6jv5k3V2M/TrWumKZJYxI/AAAAAAAAANc/AHMO7MmNnA8/s320/kanban%2Bboard%2Bv1.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5671631276391097106" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The second one was much better in highlighting some of the bottlenecks in my process (waiting for my action, waiting for others action, waiting for meeting), but was still too linear to reflect the work in a way that was useful to visualize. &lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/-pXsTaqnkY_8/TrWuuLsIOlI/AAAAAAAAANo/GxSfghCOrWc/s1600/kanban%2Bboard%2Bv2.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 110px;" src="http://4.bp.blogspot.com/-pXsTaqnkY_8/TrWuuLsIOlI/AAAAAAAAANo/GxSfghCOrWc/s320/kanban%2Bboard%2Bv2.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5671631414178101842" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The final Kanban board is actually what I use now and is a slight modification of the second one. As you can see it depicts the networked nature of my work and therefore also helps me set my WIP limits appropriately (for example why not have many things waiting for meetings?).&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-Dfk3EnUB_ok/TreloCc_r6I/AAAAAAAAAOk/NOz96tRD70k/s1600/kanban%2Bboard%2Bv3.jpg"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 209px;" src="http://1.bp.blogspot.com/-Dfk3EnUB_ok/TreloCc_r6I/AAAAAAAAAOk/NOz96tRD70k/s320/kanban%2Bboard%2Bv3.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5672184362968264610" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A conclusion of mine from the above boards is that it is not possible to set WIP limits without understanding the work (for example what "wait" states do you have in your process). On the other hand, trying to follow the WIP limits you have set will help you visualize those "wait" states as a consequence of the search for sustainable WIP limits&lt;br /&gt;&lt;br /&gt;How about you? What are your experiences in using Kanban boards or other visualization techniques to uncover the networked nature of our work? Leave a comment below with a link to your post!&lt;br /&gt;&lt;br /&gt;Photo credit: &lt;a href="http://www.flickr.com/photos/sjcockell"&gt;sjcockell &lt;/a&gt;@ flickr&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-7551377456739082262?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/dhGdlIgjV2E" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/dhGdlIgjV2E/kanban-in-networked-process-visualise.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-XkqrzBxr-I0/TrWw89xMsnI/AAAAAAAAAOA/wUMq0a5CwN8/s72-c/network.jpg" height="72" width="72" /><thr:total>6</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/11/kanban-in-networked-process-visualise.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-8499706140765813294</guid><pubDate>Wed, 26 Oct 2011 03:01:00 +0000</pubDate><atom:updated>2011-10-26T16:43:25.078+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">integration</category><category domain="http://www.blogger.com/atom/ns#">burocracy</category><category domain="http://www.blogger.com/atom/ns#">emigration</category><category domain="http://www.blogger.com/atom/ns#">society</category><category domain="http://www.blogger.com/atom/ns#">international</category><category domain="http://www.blogger.com/atom/ns#">story</category><category domain="http://www.blogger.com/atom/ns#">management</category><category domain="http://www.blogger.com/atom/ns#">work management</category><category domain="http://www.blogger.com/atom/ns#">bureaucracy</category><title>Adapting to a different country and culture - a story</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/rob-young/2809158854/"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 213px;" src="http://3.bp.blogspot.com/-QGpMvRjZAXg/Tp67D_TnlrI/AAAAAAAAAMk/7YYy8VbPvu4/s320/indiana-grass.jpg" alt="" id="BLOGGER_PHOTO_ID_5665171058486384306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;This is the story of Jerome (names changed to protect the innocent), and his adventures while changing countries for work.&lt;br /&gt;&lt;br /&gt;Jerome always wanted to work in another country. He had bought into the whole globalization/Cultural experimentation ideas of the 90's. The economy was growing quite strongly, there was a strong need for IT professionals and he wanted to explore the world.&lt;br /&gt;&lt;br /&gt;Armed with a degree and the will to explore he left his country, which was warm and sunny, for Finland. He arrived in the early afternoon of one gray and rainy day. "The prototypical autumn day" - he was told.&lt;br /&gt;&lt;br /&gt;"Never mind" - he thought. I can certainly survive a bit of rain and snow. He was met at the airport by a colleague who drove him to this first apartment. Jerome had never seen that apartment but that did not worry him. "How bad could it be?" he thought.&lt;br /&gt;As he pushed his large suit case up the ramp to the apartment, he thanked his colleague for the ride and entered the room. This was the first shock. The apartment was a room, a single room. "Talk about nordic architecture!" he said out loud.&lt;br /&gt;&lt;br /&gt;He sat down and appreciated the last few moments of calm before the real battle started. Next morning he would have to visit many offices before his arrival and relocation to Finland could be completed.&lt;br /&gt;&lt;br /&gt;Relocation to a new country can be a daunting process for a person. Many new people to interact with, many laws and rules to learn, many things to buy. A whole new life to build! In fact, adapting to a new country can be down right scary. Really scary. However Jerome's employer seemed to be aware of this and had organized for a person to be with him through the "legal" process of relocation. This, Jerome learned, was called a "Relocation Service". "What a great idea!", Jerome thought to himself, "this makes my life so much easier, and already gives me a link to someone I can call in case of an emergency".&lt;br /&gt;&lt;br /&gt;So, he went about visiting the "Alien office" (Yes, Jerome was now officially an 'Alien'). "What a way to welcome people, by calling them aliens!". Later he visited the Maistraati, then the bank, then the local phone company and finally the most used relocation service around the world: IKEA!&lt;br /&gt;&lt;br /&gt;That night, while reviewing in his mind what had happened during the day he realized that even if much of the communication with the many clerks he met happened in Finnish, all the paperwork was readily available in English. Never for a moment did he feel lost in the paperwork process. Even the web bank (and there was a web bank! -- in 1998!) was in English. Reflecting back Jerome realized that having all the bureaucratic documents in English was one of the most important reasons he felt welcome in his new country. He felt that in this country they were serious about accepting and welcoming people into the society. The barrier was low enough that in retrospect he felt that he would do the same again, if given a chance.&lt;br /&gt;&lt;br /&gt;The first barrier was overcome. He was now an official resident of his new country. Next came the integration to the work life, after all work had been the reason for him to move to this new country.&lt;br /&gt;&lt;br /&gt;Next was his first day at work. Jerome was apprehensive. he had visited the company offices before during his job interview, but now was his first work day. He entered the office and asked for his manager. After a few minutes waiting, a smiling person came to greet him. Jerome remembered him from the Interview a few months prior to this encounter. He felt immediately at ease.&lt;br /&gt;&lt;br /&gt;In the company he was working for the hierarchy was not emphasized, people worked together at all levels and he never felt like an "inferior". He was hired for his knowledge and experience and he felt that his presence was welcome. The fact that he had the support of the relocation service also helped as he did not have to bother which colleagues with questions about the bureaucratic issues and could fully focus on the work at hand. He reckoned that, all in all the relocation service support actually saved him and the company many hours and stress by handling the legal issues and allowing him to focus on work from day 1. This would become even more clear years later when he moved to Germany and did not have that extra support from a relocation services company. But I'm getting ahead of the story. Let's get back to the process of integration to the new culture.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/mac_filko/4276280847"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 320px; height: 183px;" src="http://1.bp.blogspot.com/-rPesg0cE7BY/Tp68LahH1WI/AAAAAAAAAMw/arqQq55BNtE/s320/snow.jpg" alt="" id="BLOGGER_PHOTO_ID_5665172285561492834" border="0" /&gt;&lt;/a&gt;It was now early 1999 and winter had settled in. When he arrived he was warned about winter, and he fully expected cold and snow, but that year was a record year. The boy from down south - where snow meant "no school!" was fully surprised by the -25C winter that year. The snow was another big impact surprise: he had bought some boots that were obviously not fit for Icy roads and spent most of the November/December measuring the temperature of the snow with his lower back. "Auch!"&lt;br /&gt;&lt;br /&gt;Getting used to the cold and dark was something that many of his Alien friends struggled with. You can actually see it happening as the level of complaints about culture, bureaucracy and other topics goes up, way up in the winter. Some of the those complaints are justified like the issue with the language learning. No matter how you try if you don't pronounce "kertalippu kiitos" perfectly the tram driver will always reply "and where are you going sir?" - in perfect Oxford English, of course! Language is one of the biggest obstacles to completing the process of adaptation. After many years of attending Finnish courses, Jerome finally learned enough words to confidently order his food in Finnish and not be completely surprised by what was brought to his plate later on.&lt;br /&gt;&lt;br /&gt;The first year was gone and one surprise awaited him. One day he got home and saw a letter from the police. "oho" he thought "what now?" After consulting with his colleagues he found out that he had to go to the police to renew his residence permit. This was his first encounter with the local bureaucracy on his own. Would he able to understand what he was told?&lt;br /&gt;&lt;br /&gt;Jerome timidly entered the room and saw tens of other "aliens" waiting to be received. Certainly many in the same situation as him. This made him think "why do the police isolate us 'aliens' into a different office? It probably has to do with the efficiency of having all 'alien' issues handled by the same people" he thought. But is this how it really should be? What is the message that his sends to those so called aliens? How does an alien feel to be put into the alien-ghetto like that?&lt;br /&gt;&lt;br /&gt;Gladly the Tax Office (verotoimisto) has totally different approach and all tax payers are welcome to any office, despite being an alien. "I much prefer the Tax Office" Jerome thought while at the same time realizing he would never have imagined himself thinking that way.&lt;br /&gt;&lt;br /&gt;His preference for the Tax Office was about to grow as later that year he received his first tax return. "It is already pre-filled for me! What a great idea!" Jerome thought while realizing that he would not have to spend endless hours trying to decipher local tax code. "I can get used to this!" he said. This was the first painless tax season of his life! Definitely a plus when considering where to live in the future!&lt;br /&gt;&lt;br /&gt;Back to work Jerome could not help but feel that his personality was very much in synch with the way his company was organized. There was a clear purpose and people were encouraged to be autonomous and collaborate across department borders to achieve their common purpose - what a difference to other countries where nothing happens without the boss giving the green light to everything. This focus on autonomy and purpose eased Jerome's integration to the work-place.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/vintzileos/3487080054/"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 320px; height: 217px;" src="http://3.bp.blogspot.com/-r-jXXKLp_i8/Tp6-WOwSyCI/AAAAAAAAAM8/45Ofs6Q4cXo/s320/berlin.jpg" alt="" id="BLOGGER_PHOTO_ID_5665174670405716002" border="0" /&gt;&lt;/a&gt;Some years later Jerome would receive an offer to move to Germany. He was tempted. Germany's political tradition and strong economic growth were strong attractors, but perhaps the final reason that pushed Jerome to leave Finland was the fact that many companies that he contacted just flat-out refused to hire people who were not native or near native speakers of Finnish. This was in conflict with everything Finnish companies and entrepreneurs were saying publicly! Publicly many companies talked about wanting to go international and about the fact that their companies depended heavily on trade, but when it came to their hiring policies that was not the case! This was 2010! and in Finland we are still hiring people depending on whether or note they speak a language that is probably harder to learn than most of the jobs we hire for! Here's a suggestion: why not have language learning as part of the job? That way we would get highly qualified 'aliens' and would be able to keep them in Finland! But I am digressing now.&lt;br /&gt;&lt;br /&gt;Later on Jerome thought about what made his integration at work and in the society harder or easier and he came up this list:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt; Easier&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Relocation Service support to a new comer&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Low hierarchy and clear-purpose at work&lt;br /&gt;&lt;/li&gt;&lt;li&gt;All bureaucratic processes had been documented in English&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Web / Internet banking&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Pre-filled tax returns&lt;br /&gt;&lt;/li&gt;&lt;li&gt;And... lots of friends, many in the same situation&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt; Harder&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;New culture: when to be friendly? When is that just akward? How to make friends? What do people value?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Dealing with many different authorities / entities (although relocation services helped!)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Learning a new language (although knowing the language made the integration process easier later on)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Recently Jerome moved to Germany, and he had a chance to go through the same process again, in a new country. Now more experienced with the process of moving he felt confident that he could tackle the challenges ahead. Little did he know!&lt;br /&gt;&lt;br /&gt;Upon arrival to Germany he was informed that he had to decide on a health insurance, and fast because his salary could only be paid after that. "Hmmm, they don't make this very basic thing very easy here, do they?" he thought to himself, and went on: "Strike one for Finland with it's universal health care system. In retrospect KELA makes integration much, much easier by having a universal health coverage from the start!"&lt;br /&gt;&lt;br /&gt;Jerome decided to register with a national health care provider. He could have registered with a smaller / local health care provider, but he had heard enough horror stories about smaller / local providers that could go bankrupt at any time. Scary stuff for an Alien!. He then had to register as a "legal alien" - to quote Sting's. He went to the local Amt (that's office in German) and registered, not an "alien" but as an Ausländer. Don't know about you, but Jerome felt much better with the term Ausländer, maybe because he did not speak German.&lt;br /&gt;&lt;br /&gt;Jerome arrived at the Ausländeramt desk and politely asked "Sprechen Sie Englisch?" - that being all the German that he could muster. The clerk, however, replied "Oh, but we are in Germany. We must speak German." "Strike 2 for Finland" Jerome thought to himself. Struggling with understanding what the clerk was trying to say he was able to successfully register as a resident of the city. "We have to applaud the idea of an open Europe, this is the stuff that makes us happy we pay our taxes. Long gone are the days when we had to sneak through borders illegally to find a work place to our liking. Now we can freely travel and settle with minimal bureaucracy. That is a real tangible benefit to the people! Borders only benefit the powerful who can find legal, and not so legal ways around them."&lt;br /&gt;&lt;br /&gt;Political rant aside it was now time to start enjoying life in a new country. Until...&lt;br /&gt;&lt;br /&gt;Later that week, Jerome received a letter at home. He had to present himself in the local city office. His registration had a problem... "Oho! I spoke too soon about freedom from borders..."&lt;br /&gt;&lt;br /&gt;Jerome reached the office and asked what the issue was about. After he was explained what the issue was he could not believe it. "Really? in the XXI century? We can send a man to the moon but we can't solve a problem like this?" -- he thought to himself.&lt;br /&gt;&lt;br /&gt;The issue was that when he completed his original registration, he had used the wrong postal code and therefore he now had to correct it. But the process for that was worthy of a Kafka plot. He would have to drive to neighboring town, register there (with the original date of his initial registration); then he had to come back to the city office and register again with his current address so that his registration could be considered valid! Basically he had to register twice in two different places to finalize his original registration process. "Talk about bureaucracy! Strike 3 for Finland!"&lt;br /&gt;&lt;br /&gt;But the situation got worse later on! Jerome received a letter from the local court where he was instructed to pay a fine for not having registered on time in his current municipality! "The nerve" he said out loud as he read the translation from Google translate. "I've now registered 4 times" - he had registered once more when he changed apartments in between these events - "and they have the nerve to tell me that I have not registered on time?" "Strike 4 for Finland!".&lt;br /&gt;&lt;br /&gt;After this ordeal Jerome revised his table of things that make your integration easier or harder:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt; Easier&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Relocation Service support to a new comer&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Low hierarchy and clear-purpose at work&lt;br /&gt;&lt;/li&gt;&lt;li&gt;All bureaucratic processes had been documented in English&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Web / Internet banking&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Pre-filled tax returns&lt;br /&gt;&lt;/li&gt;&lt;li&gt;And... lots of friends, many in the same situation&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt; Harder&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;New culture: when to be friendly? When is that just akward? How to make friends? What do people value?&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Dealing with many different authorities / entities (although relocation services helped!)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Learning a new language (although knowing the language made the integration process easier later on)&lt;/li&gt;&lt;br /&gt;&lt;li style="font-weight: bold; color: rgb(255, 0, 0);"&gt;&lt;span style="font-size:130%;"&gt;Bureaucracy!&lt;/span&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;The end!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style:italic;font-size:85%;" &gt;Photo credit&lt;/span&gt;&lt;span style="font-size:85%;"&gt;:&lt;br /&gt;&lt;br /&gt;&lt;a style="font-style: italic;" href="http://www.flickr.com/photos/rob-young/"&gt;Rob Young&lt;/a&gt;&lt;span style="font-style: italic;"&gt; @ Flickr&lt;/span&gt;&lt;br /&gt;&lt;a style="font-style: italic;" href="http://www.flickr.com/photos/mac_filko/"&gt;mac_filko&lt;/a&gt;&lt;span style="font-style: italic;"&gt; @ Flickr&lt;br /&gt;&lt;a href="http://www.flickr.com/photos/vintzileos/"&gt;Giorgos&lt;/a&gt; @ Flickr&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-8499706140765813294?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/bwdFmVF3dBY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/bwdFmVF3dBY/adapting-to-different-conuntry-and.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-QGpMvRjZAXg/Tp67D_TnlrI/AAAAAAAAAMk/7YYy8VbPvu4/s72-c/indiana-grass.jpg" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/10/adapting-to-different-conuntry-and.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-3745001689897189185</guid><pubDate>Fri, 16 Sep 2011 04:44:00 +0000</pubDate><atom:updated>2011-09-16T08:32:40.808+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">less2010</category><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">transition</category><category domain="http://www.blogger.com/atom/ns#">lean</category><category domain="http://www.blogger.com/atom/ns#">complexity</category><category domain="http://www.blogger.com/atom/ns#">organization</category><category domain="http://www.blogger.com/atom/ns#">leadership</category><category domain="http://www.blogger.com/atom/ns#">transformation</category><category domain="http://www.blogger.com/atom/ns#">systems thinking</category><category domain="http://www.blogger.com/atom/ns#">less2011</category><category domain="http://www.blogger.com/atom/ns#">beyond budgeting</category><title>Dude! Where's my manager? or Why you should attend LESS2011</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/buttepubliclibrary/5393929332/"&gt;&lt;img style="float:right; margin:0 0 10px 10px;cursor:pointer; cursor:hand;width: 230px; height: 320px;" src="http://1.bp.blogspot.com/-gMyRWawqwTQ/TnLYcXTPr2I/AAAAAAAAAL0/arL9B-Eb4TE/s320/5393929332_341cd83cda.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5652818464106065762" /&gt;&lt;/a&gt;&lt;br /&gt;Many teams start their agile transition from the "developer-side". This is quite normal, developers (coders and testers) feel the pain more than others because they need to actually get the product/system finished. But by focusing on developers, aren't we missing something? Aren't we forgetting that many of the consequences we so detest come from un-informed decisions by people higher in the chain? &lt;br /&gt;&lt;br /&gt;In my experience many agile transitions fail by not involving managers in the process. Sure, it is possible to change how your team works with minimal involvement from your manager, but at some point the team is constrained more by management decisions than actual technical practices or even understanding of the product. &lt;br /&gt;&lt;br /&gt;I remember a story of a team that was on their path to agile adoption, but could not progress further because management had decided that certain tools should be used. The usual explanations were given: "IT can only support one tool", "we need to harmonize our tool landscape", etc. Whatever the reason for the decision what we can say is that in this case management had a real - and negative - impact on the team's capability to deliver working software. &lt;br /&gt;&lt;br /&gt;Sure we can go rogue and use our own tool chain "hidden" from IT and our manager (and many teams have done that), but that is not a long term strategy. Sooner or later we will bump again against a set of decisions that will hinder us from progressing. &lt;br /&gt;&lt;br /&gt;I believe we need a new model for Agile adoption. One that includes the managers, leaders, VP- C-level people in our organizations. &lt;br /&gt;&lt;br /&gt;It is this belief that has led me to participate in a project to organize a set of conferences focused on the role of leaders and managers. Last year we organized the first of that set of conferences in Helsinki and named it &lt;a href="http://www.less2010.org"&gt;LESS2010&lt;/a&gt;. This year we are continuing that project with LESS2011 in Stockholm. &lt;br /&gt;&lt;br /&gt;There are many reasons for you or your manager to attend the &lt;a href="http://www.less2011.org"&gt;LESS2011&lt;/a&gt; conference in Stockholm. From the individual speakers (check-out our keynote line up) to the people you will meet. But If I had to name one reason it is this: Agile and Lean adoptions require our managers to understand the new mindset, and without that we are bound to fail. So, get yourself and your manager to &lt;a href="http://www.less2011.org"&gt;LESS2011&lt;/a&gt; and talk to other managers! Share your experiences and questions and come learn from people that have been facing long lasting agile transitions (the kind that requires management involvement)!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-3745001689897189185?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/NZe08bDYlcg" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/NZe08bDYlcg/dude-wheres-my-manager-or-why-you.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-gMyRWawqwTQ/TnLYcXTPr2I/AAAAAAAAAL0/arL9B-Eb4TE/s72-c/5393929332_341cd83cda.jpg" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/09/dude-wheres-my-manager-or-why-you.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-8647172583126084305</guid><pubDate>Tue, 13 Sep 2011 04:42:00 +0000</pubDate><atom:updated>2011-09-13T13:39:01.368+03:00</atom:updated><title>Guest post: Building and scaling a startup - Feature or component teams?</title><description>&lt;div style="TEXT-ALIGN: left" dir="ltr" trbidi="on"&gt;There are some really cool startups in Berlin. Last week I met Alexander Grosse (&lt;a href="http://twitter.com/#%21/klangberater"&gt;@klangberater&lt;/a&gt;) from SoundCloud at ALE2011. Alexander is their VP of engineering and he had been thinking and writing about Feature teams. After reading his article I thought it would be a good and balanced view at that topic that could generate a good (and balanced) discussion on the blog. Alexander kindly agreed to let me publish it, so here it is!&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Building and Scaling a startup - the Feature vs Component teams debate&lt;/h2&gt;&lt;br /&gt;&lt;h4&gt;Guest post by: Alexander Grosse from SoundCloud&lt;/h4&gt;&lt;br /&gt;&lt;div style="TEXT-ALIGN: center; CLEAR: both" class="separator"&gt;&lt;a style="MARGIN-BOTTOM: 1em; FLOAT: right; MARGIN-LEFT: 1em; CLEAR: right" href="http://4.bp.blogspot.com/-cFG1SznpqfU/Tm7fCzegRoI/AAAAAAAAALs/w4ljOyknqqQ/s1600/SoundCloud-Alexander.jpg" imageanchor="1"&gt;&lt;img border="0" src="http://4.bp.blogspot.com/-cFG1SznpqfU/Tm7fCzegRoI/AAAAAAAAALs/w4ljOyknqqQ/s400/SoundCloud-Alexander.jpg" width="400" height="161" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The first team in a startup is a feature team by default. But as the company grows and you hire more developers, a common question pops up: How do you structure your engineering department when you have more than one team? Two common approaches are teams per component/service/layer or feature teams. This article describes the pros and cons of each approach based on experience. &lt;br /&gt;&lt;br /&gt;So you have a startup. Let’s assume for the sake of simplicity it is a consumer facing website done in Ruby on Rails with an underlying database (but this article applies to other kind of startups too). You have around 10-15 employees, of which 6-10 are developers. These developers are one team, some of them concentrate on front-end work, some on the back-end, the mysql database is maintained by a handful of the developers. The team feels like it has reached the natural size limit and is considering splitting into smaller teams. Before discussing team structure let’s first talk about some important goals while scaling up the company.These goals should determine what you do:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt; Developers should have as much knowledge of the system as possible, so that there is no single point of failure and technical decisions are made with an understanding of the overall system.&lt;br /&gt;&lt;li&gt; There should be common approaches to most technologies like CSS and for some technologies, like databases, specialists are needed.&lt;br /&gt;&lt;li&gt; Communication overhead should be avoided where possible as well as handovers between teams.&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Overall there should as much common knowledge as possible but specialists where needed. Let’s first discuss the terms “Feature Team” and “Component Team”, especially in a startup context. The usual definition of a Feature Team is: Feature teams are supposed to be cross-functional groups that focus the software development process in valuable-chunks of work, which normally cross the whole system (vertical slices of the system).[1]&lt;br /&gt;&lt;br /&gt;While this sounds good you usually reach pretty fast the team size limit when trying to compose teams which can touch every part of the system. At SoundCloud we currently have 35 engineers working on topics like Android, iOS, Search, Anti Spam, MySQL, Operations, Web Front-end, Back-end and so on. So you can see very easily that if you define seven as an ideal team size, we have difficulties forming teams which can touch every part of the system. &lt;br /&gt;&lt;br /&gt;A lot of consultants say that engineers should be able to work on any part of the system, but in reality and especially if you operate under scale, where for example every single SQL query can impact the site, this just does not work. Component Teams are usually defined as horizontal slices of a system, so for example front-end, presentation layer, business logic, database and operations. But I haven’t seen a startup which organizes it’s teams exactly that way. This is usually a team structure big companies choose. But what I’ve seen at a lot of startups is the separation between front-end, backend and operations. There are lot of obvious disadvantages associated with component teams: &lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt; Features often touch several teams, this leads to costly handovers &lt;br /&gt;&lt;li&gt; Teams often act as silos and lose sight of the coherency and goals of the product But especially in large organisations component teams also have some advantages, like having dedicated teams for components - like databases - under scale. (please look at [3] for details) &lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;So, we now have two approaches which on the surface both are not applicable for startups either at all or from a certain size on. Reading the post from Vasco Duarte ([4]) clarifies the situation in a very good way. Feature teams are not necessarily defined by their structure, but the most important thing is that a feature team can deliver value to the customer without dependencies on other teams. The reason for that is to reduce handover between teams which usually produces what “waste” is in terms of lean. Citing Vasco: A feature team is not defined by it's structure (being cross-functional), it's defined by it's output! (delivering shippable pieces of the system)[4]&lt;br /&gt;&lt;br /&gt;A common anti pattern for the implementation of Feature Teams is (similar to the one mentioned in the article): design is not integrated into front-end teams. This often causes blocked user stories (waste) when design specs are either unclear or during implementation a necessary change in design has been discovered. In reality there is no such thing like having absolutely no dependencies on other teams. So we defined teams, which can work on the vast majority (at least 90%) of the stories in their backlog without needing other teams. How those teams are formed changes over time. &lt;br /&gt;&lt;br /&gt;We at SoundCloud did not always have a stable API. So in the beginning front-end and back-end developers were one team until we were able to extract a well defined API, which offered the necessary functionality for all front-end clients (mobile and web). At that point we separated the joint web team as the front-end teams were now enabled to work on the majority of features without involvement of the back-end. Looking back at the start of the article where we defined that we want to have developers as much overall knowledge of the system as possible it seems like the chosen setup at SoundCloud violates that. To achieve a compromise, we encourage developers to rotate through teams. Some developers want to stay in their comfort zone (these are often the specialists mentioned above), some are interested in all parts of the system. As long as half of the developers in a team are aware of what other teams are doing, that team will be fine. &lt;br /&gt;&lt;br /&gt;Combine both approaches The question is not so much which formal definition of team to follow. The importance is for teams to deliver the majority of stories in their backlog without depending on other teams. And team composition ought to change over time as the overall software stack matures. Analyze your teams if they can deliver value without depending on other teams (for at least 90% of the features). Do this regularly and team composition changes over time just as architecture does! &lt;br /&gt;&lt;br /&gt;Inspired by: &lt;br /&gt;[1] &lt;a href="http://www.bookdepository.co.uk/Scaling-Lean-Agile-Development-Craig-Larman/9780321480965"&gt;Scaling Lean and Agile Development, Larman, Vodde: Feature team definition on page 153&lt;/a&gt; &lt;br /&gt;[2] http://blog.mountaingoatsoftware.com/the-benefits-of-feature-teams &lt;br /&gt;[3] http://scalingsoftwareagility.wordpress.com/2009/07/15/organizing-agile-at-scale-feature-teams-versus-component-teams-part-1/ &lt;br /&gt;[4] http://softwaredevelopmenttoday.blogspot.com/2009/07/feature-team-needs-more-than-cross.html &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;You can &lt;a href="http://gotocon.com/aarhus-2011/"&gt;find out more about SoundCloud at the Goto conference in Århus&lt;/a&gt;. Eric Wahlforss from SoundCloud will be speaking there.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-8647172583126084305?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/-iAaOqVjiWQ" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/-iAaOqVjiWQ/guest-post-building-and-scaling-startup.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-cFG1SznpqfU/Tm7fCzegRoI/AAAAAAAAALs/w4ljOyknqqQ/s72-c/SoundCloud-Alexander.jpg" height="72" width="72" /><thr:total>6</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/09/guest-post-building-and-scaling-startup.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-73280467215852566</guid><pubDate>Mon, 11 Jul 2011 13:49:00 +0000</pubDate><atom:updated>2011-07-12T08:00:42.880+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">performance</category><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">rewards</category><category domain="http://www.blogger.com/atom/ns#">learn</category><category domain="http://www.blogger.com/atom/ns#">systems thinking</category><title>On rewarding and performance systems...</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/l2f1/4234559463/"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 373px;" src="http://1.bp.blogspot.com/-CrqyMqT9XlY/ThvSRdaKW1I/AAAAAAAAALM/0g8vzmPu6ds/s400/4234559463_18debbcea3_b.jpg" alt="" id="BLOGGER_PHOTO_ID_5628323356723534674" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The ideas of "pay-for-performance", and it's twin sister "management by objectives" exist to try and increase the performance of a group and ultimately the whole company. The basic idea is: promise them a carrot and they'll work more / better. But is that true? Can a company really perform better by promising people they will get more money if they individually perform better?&lt;br /&gt;&lt;br /&gt;It is an appealing though. Instead of working with the people, managers are advised to put the right rewards in place and let people loose. Things will magically work out, or so the theory goes.&lt;br /&gt;&lt;br /&gt;Although there is some truth to that, the fact is that this simplistic view of reality hides, or ignores, the deeper impacts of the individual performance reward culture:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;First, by placing rewards at the centre of the performance system, the companies shift the conversation to rewards &lt;strong&gt;and away from work&lt;/strong&gt;&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://en.wikipedia.org/wiki/Illusory_superiority"&gt;Most people feel they perform above average&lt;/a&gt;, but reward systems tend to grade people on "the curve". This leads the lower performers to get a higher grade than they deserve (but still lower than they think it should be) and the top performers a lower grade than they deserve because of the need to "follow the curve". This has the notorious effect of leaving everybody unhappy.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Most importantly, the reward mechanisms that focus on individual performance completely miss the fact that a company exists in a complex environment. Especially non-trivial work (like software), is impossible to reduce to a set of repetitive steps. The immediate consequence of this is that, even if all the people perform at their best and get the top evaluation, the company could still totally fail to meet the level of their competitors. The performance of the system (the company) depends on the complex interactions between the different people in the company. If all try to optimize their personal performance, the system as a whole can perform a lot worse.http://www.blogger.com/img/blank.gif&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;What amazes me is that there are still people who advocate "pay-for-performance" in complex environments like software development.&lt;br /&gt;The fact that we work in a complex environment all but ensures that "pay-for-performance" is at best indifferent to the overall company's performance and at worse an active value detractor for the company.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;An additional bonus&lt;/h2&gt;&lt;br /&gt;Deming and Shewhart proved that in a stable system, trying to change it's performance from the outside can actually reduce the performance of the whole system. Deming called this "&lt;a href="http://curiouscat.com/deming/tampering.cfm"&gt;tampering&lt;/a&gt;": messing about with a system you don't understand (link to Deming and tampering).&lt;br /&gt;"Pay-for-performance" and "management by objectives" are an instance of "tampering". Instead of messing about with a system we don't understand we, as managers, should focus our energy on understanding that system and changing the system through the use of small and controlled experiments.&lt;br /&gt;&lt;br /&gt;This is not as easy as it sounds, but is the only way in which managers add value to their companies.&lt;br /&gt;&lt;br /&gt;If you still want to have variable salary costs in your company, then use a profit sharing scheme: where everybody shares in on the success and pain, rather than individuals independently. Besides, can you really evaluate a single individual's contribution to the success of the whole company? (Especially when the company is not succeeding and that individual still claims their bonus?)&lt;br /&gt;&lt;br /&gt;One question that is raised against the view I tried to explain is: "Fine, but how do I keep top performers? They certainly want to be rewarded by their good work, right?" My answer to this question is that people value many different things. While some people are influenced by short term gains, most people do not act consistently with that hypothesis. There's evidence that people react more consistently with (see this &lt;a href="http://vodpod.com/watch/4758418-dan-pink-on-real-motivation-meaning-purpose"&gt;video&lt;/a&gt;):&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;"meaning", i.e., they are more motivated and committed when they feel that their work has meaning; or&lt;br /&gt;&lt;/li&gt;&lt;li&gt;"peer-recognition", i.e., people tend to feel more committed and motivated in an environment where their work is appreciated by their peers.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;A better way to keep your best people is to work on creating an environment where people's work is recognized by their peers, and the meaning or nexus of that work is clear to everyone.&lt;br /&gt;&lt;br /&gt;You, as a manager, have to focus on those things!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;Photo credit: &lt;/span&gt;&lt;a style="font-style: italic;" href="http://www.flickr.com/photos/l2f1"&gt;L2F1&lt;/a&gt;&lt;span style="font-style: italic;"&gt; @ &lt;/span&gt;&lt;a style="font-style: italic;" href="http://www.flickr.com/"&gt;flickr&lt;/a&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-73280467215852566?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/3qvUU_cJWBk" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/3qvUU_cJWBk/on-rewarding-and-performance-systems.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-CrqyMqT9XlY/ThvSRdaKW1I/AAAAAAAAALM/0g8vzmPu6ds/s72-c/4234559463_18debbcea3_b.jpg" height="72" width="72" /><thr:total>7</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/07/on-rewarding-and-performance-systems.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-6171379308098646733</guid><pubDate>Wed, 22 Jun 2011 13:49:00 +0000</pubDate><atom:updated>2011-06-22T17:07:34.940+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">conference</category><category domain="http://www.blogger.com/atom/ns#">knowledge</category><category domain="http://www.blogger.com/atom/ns#">learn</category><category domain="http://www.blogger.com/atom/ns#">lean</category><category domain="http://www.blogger.com/atom/ns#">complexity</category><category domain="http://www.blogger.com/atom/ns#">learning</category><category domain="http://www.blogger.com/atom/ns#">systems thinking</category><category domain="http://www.blogger.com/atom/ns#">beyond budgeting</category><title>LESS goes Stockholm for LESS2011, join us there in October</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://less2011.leanssc.org/"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 84px;" src="http://1.bp.blogspot.com/-HOCKfij7UQ8/TgH2iQgc4vI/AAAAAAAAALE/pEgyxm-tLyY/s400/cropped-istock_000003512168small1.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5621044878342152946" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Last year I was involved in the organization of a unique conference. &lt;a href="http://less2010.org/"&gt;LESS2010&lt;/a&gt; was a unique conference because it brought together different communities. We wanted to make sure that people with different points of view would discuss those points of view. The aim was to create a space for sharing ideas from different communities in the hope that new ideas would emerge. And emerge they did!&lt;br /&gt;&lt;br /&gt;When the conference was done we had brought together the academic community which is involved in researching Agile adoption in the real world; the Agile community that is day-in-day-out applying Agile ideas in their own places of work; the Lean community and finally the Beyond Budgeting community that is sharing novel ways to manage and lead companies. &lt;span style="font-weight:bold;"&gt;This year we are doing the same, only better! &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;LESS goes Stockholm for LESS2011&lt;/h3&gt;&lt;br /&gt;You can check the details of the conference in the &lt;a href="http://less2011.leanssc.org/"&gt;web-site&lt;/a&gt;, but here's a hint. We are working again on bringing different communities together! &lt;br /&gt;&lt;br /&gt;The tracks that we have chosen are around the topics of Agile, Lean, Beyond Budgeting, Complexity Sciences, Systems Thinking and one topic that we deal with every day: Organization Transformation.&lt;br /&gt;&lt;br /&gt;This year the trend is even more clear that LESS2011 is a conference for leaders in R&amp;D organizations. Perhaps the only leadership focused conference in Europe at this point.&lt;br /&gt;&lt;br /&gt;I do hope that more of these start happening because that's the next frontier for Agile and Lean adoption in our places of work. &lt;br /&gt;&lt;br /&gt;So, &lt;a href="https://spreadsheets.google.com/spreadsheet/viewform?formkey=dFFfa0FzQkFoSzVaX2lndnVnbDFtWHc6MQ"&gt;I encourage you to submit a paper/session to the conference&lt;/a&gt;. Being there and talking to the the people with the experience and ideas is very important for us to continue our day-to-day work with new ideas and fresh energy!&lt;br /&gt;&lt;br /&gt;See you in Stockholm!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-6171379308098646733?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/jGZvU38o1ug" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/jGZvU38o1ug/less-goes-stockholm-for-less2011-join.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-HOCKfij7UQ8/TgH2iQgc4vI/AAAAAAAAALE/pEgyxm-tLyY/s72-c/cropped-istock_000003512168small1.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/06/less-goes-stockholm-for-less2011-join.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-5527437833542729171</guid><pubDate>Wed, 18 May 2011 11:28:00 +0000</pubDate><atom:updated>2011-05-18T15:10:05.974+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">customer</category><category domain="http://www.blogger.com/atom/ns#">customer delight</category><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">usability</category><category domain="http://www.blogger.com/atom/ns#">ux</category><category domain="http://www.blogger.com/atom/ns#">twitter</category><category domain="http://www.blogger.com/atom/ns#">scrum</category><title>Agile is about customer delight</title><description>Today on twitter I got into an interesting conversation with &lt;a href="http://twitter.com/jeffpatton"&gt;@jeffpatton&lt;/a&gt;. The discussion was about whether Agile, as a family of methodologies and a value system is (or isn't) directed at customer delight.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://twitter.com/jeffpatton"&gt;@JeffPatton&lt;/a&gt;'s point was that it is not. Here's one of his replies to me on this subject:&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://twitter.com/jeffpatton/status/70766261952450560"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 182px;" src="http://1.bp.blogspot.com/-BhWkKyApp_0/TdOtos6pfFI/AAAAAAAAAKg/UFOiyFCldZE/s400/Screen%2Bshot%2B2011-05-18%2Bat%2B14.10.14%2B.png" alt="" id="BLOGGER_PHOTO_ID_5608016875769920594" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Later on during the day I had a face to face conversation with &lt;a href="http://twitter.com/mvonweis"&gt;@mvonweiss&lt;/a&gt; and tried to crystalize in my mind why I disagreed with @jeffpatton. And the point is this: I believe that one of the core values in Agile is exactly about customer delight.The third value of Agile reads that Customer Collaboration is a preferred way to work in a software project. That customer collaboration is there for a reason. &lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.agilemanifesto.org"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 109px;" src="http://2.bp.blogspot.com/-HnuNzW5JQxk/TdOuXA9gmCI/AAAAAAAAAKo/21CmmwH1Y9Y/s400/Screen%2Bshot%2B2011-05-18%2Bat%2B14.11.46%2B.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5608017671424612386" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;The idea is that only through dialogue with the customer can we understand their needs. That is achieved by having close and continuous dialogue with the customer and through the delivery of software early and often (&lt;a href="http://agilemanifesto.org/principles.html"&gt;see principles 1, 3 and 4&lt;/a&gt;, for example). This continuous delivery of a working product builds the feedback loops we need. These feedback loops are directed specifically at providing an opportunity for the customer to interface with the team and help us understand what needs to be changed in order to provide, you guessed it: Customer Delight!&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Real customer involvement patterns&lt;/h2&gt;&lt;br /&gt;Of course, there are many different types of projects that we work on. Custom software, Integration projects, shrink wrapped software, web-sites, etc. All of these projects have different "distances" to the customer (see figure below). But those distances can be bridged with many techniques so that the Agile values and principles are still applied and we can still get feedback early and often.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://1.bp.blogspot.com/-7WUZi4nSF3s/TdOvAtjlPyI/AAAAAAAAAKw/CYUlNrmKQXg/s1600/Screen%2Bshot%2B2011-05-18%2Bat%2B14.10.14%2B.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 182px;" src="http://1.bp.blogspot.com/-7WUZi4nSF3s/TdOvAtjlPyI/AAAAAAAAAKw/CYUlNrmKQXg/s400/Screen%2Bshot%2B2011-05-18%2Bat%2B14.10.14%2B.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5608018387770097442" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I've worked on many projects of the shrink-wrapped kind where we have teams working in an organization away from the customers (consumers). In these cases, interacting with "all" customers is impossible. But we already have many techniques that help us understand our customers better even when we can't be in direct contact! For example: customer surveys, usability testing, requirement exploration techniques, user persona development, etc.&lt;br /&gt;&lt;br /&gt;Some people in the Agile community have been pushing us to consider these methods, David Hussman (&lt;a href="http://twitter.com/davidhussman"&gt;@davidhussman&lt;/a&gt;) is but one example, but there are many more (including @jeffpatton, of course).&lt;br /&gt;&lt;br /&gt;If @jeffpatton's point is to emphasize the need to consider the customer more fully in Agile projects, then I am in total agreement. &lt;span style="font-weight:bold;"&gt;&lt;span style="font-style:italic;"&gt;But one thing is for sure, Agile methods are much more directed at Customer Delight than many of the other methods available today&lt;/span&gt;&lt;/span&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-5527437833542729171?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/eLQt-7VG9ZY" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/eLQt-7VG9ZY/agile-is-about-customer-delight.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-BhWkKyApp_0/TdOtos6pfFI/AAAAAAAAAKg/UFOiyFCldZE/s72-c/Screen%2Bshot%2B2011-05-18%2Bat%2B14.10.14%2B.png" height="72" width="72" /><thr:total>2</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/05/agile-is-about-customer-delight.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-4263626538062613609</guid><pubDate>Mon, 16 May 2011 10:44:00 +0000</pubDate><atom:updated>2011-05-16T13:52:46.756+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">enterprise agile</category><category domain="http://www.blogger.com/atom/ns#">lean</category><category domain="http://www.blogger.com/atom/ns#">enterprise</category><category domain="http://www.blogger.com/atom/ns#">complexity</category><category domain="http://www.blogger.com/atom/ns#">management</category><category domain="http://www.blogger.com/atom/ns#">leadership</category><category domain="http://www.blogger.com/atom/ns#">systems thinking</category><category domain="http://www.blogger.com/atom/ns#">scrum</category><title>You cannot transition to Agile. Stop and just embrace it!</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/mr_physics/293693669/"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 400px;" src="http://4.bp.blogspot.com/-Hde8rnP5LfM/TdEAs_MxBpI/AAAAAAAAAKY/MrBl47qkAVM/s400/293693669_59574a7640.jpg" alt="" id="BLOGGER_PHOTO_ID_5607263783932200594" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;I am writing this blog post to explore a concept. So bear with me, I'll probably ask more questions than I'll answer.&lt;br /&gt;&lt;br /&gt;Why do most Agile fail in our companies (or government organizations for that matter)? My view is that we cannot actually transition from a command and control management paradigm to Agile / Complex management paradigm. The reasons are not fully clear to me, but I believe that it has something to do with the fact that we actually (typically) try to use a pre-determined way to make those transitions happen.&lt;br /&gt;&lt;br /&gt;Case in point: When we try to move from Waterfall software development to Agile software development, we will typically draw a plan up for the transition with "steps" or "phases". Those "phases" or "steps" will typically be "stable points" in the evolution of our system (the company or organization). However, the Agile / Complex management paradigm assumes, at its core that software work is complex, therefore there is no predictable causality. The consequence of this is that the "steps" or "phases" in between the command and control paradigm and the Agile paradigm cannot themselves be "stable" in the sense that predictability can be recognized.&lt;br /&gt;&lt;br /&gt;By following the argument above I'd state that: transitions fail because we try to move from a command and control paradigm to an Agile / Complex paradigm by applying command and control models. It is impossible to 'move orderly to a complex environment'.&lt;br /&gt;&lt;br /&gt;What does it mean in practice for us? Well, for starters we cannot "plan" the transition in the same way we tried to plan our waterfall projects in the past. We can, and should have a goal or an idea of where we want to be. But after that we must embrace the new paradigm, or "Adopt the new Philosophy" as &lt;a href="http://www.mindwerx.com.au/articles/dr-w-edwards-deming-14-points"&gt;Deming put it&lt;/a&gt;. There are no intermediate steps between the "old command and control mindset" and the new "complex / agile mindset".&lt;br /&gt;&lt;br /&gt;As this is an idea I'm still developing, I'll probably return to this subject and write some more, but in the meanwhile: what do you think? Does this make sense? What did you get from the above?&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-size:85%;" &gt;Photo credit: &lt;a href="http://www.flickr.com/photos/mr_physics/"&gt;Marc Soller&lt;/a&gt; @ flickr&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-4263626538062613609?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/-WTOfojCB74" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/-WTOfojCB74/you-cannot-transition-to-agile-stop-and.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/-Hde8rnP5LfM/TdEAs_MxBpI/AAAAAAAAAKY/MrBl47qkAVM/s72-c/293693669_59574a7640.jpg" height="72" width="72" /><thr:total>4</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/05/you-cannot-transition-to-agile-stop-and.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-4223148794055737388</guid><pubDate>Fri, 13 May 2011 17:41:00 +0000</pubDate><atom:updated>2011-05-13T20:57:13.945+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">communities</category><category domain="http://www.blogger.com/atom/ns#">agile finland</category><category domain="http://www.blogger.com/atom/ns#">community</category><category domain="http://www.blogger.com/atom/ns#">organization</category><category domain="http://www.blogger.com/atom/ns#">finland</category><title>Kicking up dust for the Agile Finland 2011-2012 season</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/patrick_keogh/371810070"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 266px;" src="http://3.bp.blogspot.com/-_Frc6AQgD9Q/Tc1vQVXqWSI/AAAAAAAAAKQ/zXu_3kicu4E/s400/371810070_8f983680aa.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5606259437551114530" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;A big moment for the Agile Finland community is approaching. &lt;a href="http://confluence.agilefinland.com/display/af/Annual+Meeting+2011"&gt;On May 25th&lt;/a&gt; we’ll get together and select the new Agile Finland Board for the 2011-2012 season.&lt;br /&gt;&lt;br /&gt;There are many reasons why it is a big moment. In my opinion it is a big point in our history as a community. Agile Finland was started when Agile was still the ghetto, now Agile is not only out of the ghetto, but it is becoming the dominant software development approach in Finland. Sure, many companies are still going old-skool with their software projects, massively outsourcing the testing function or trying to get huge changes in before releasing a single version, etc. But Agile Software Development is, unmistakably the dominant approach in software development in Finland today.&lt;br /&gt;&lt;br /&gt;This leads to an important point for our community. &lt;a href="http://confluence.agilefinland.com/display/af/2009/01/18/First+general+meeting+held+for+the+association"&gt;We started Agile Finland&lt;/a&gt; as a way to spread knowledge of Agile and support the learning journey that we’ve all been through since 2000. That phase is over. Although we do need to continue to support the spreading of the knowledge about Agile to other communities (like in &lt;a href="http://confluence.agilefinland.com/display/af/2011/01/24/Project+Management+Association+of+Finland+%28PMAF%29+and+Agile+Finland+partner.+Agile+Finland+brings+expert+Agile+knowledge+to+PMAF"&gt;this example&lt;/a&gt;), I feel that this does not need to be our main focus anymore. So I’d like to propose a new focus, a new phase for our growing community.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Concrete proposals for the next Agile Finland Board season&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;I propose that the next Agile Finland board should focus on helping the community share, expand and develop new knowledge in the field of Software Development and Product Development with focus on some key areas of practice. For this I propose the following structure in the Agile Finland activities for the next year:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Agile Finland must define what areas of focus it will have (see suggestion below) and arrange specific activities that emphasize those areas of focus. For that I propose the following areas:&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Programming and testing in an Agile Software Development environment. This area of focus would cover the technical development of our community in programming and testing tasks. The &lt;a href="http://manifesto.softwarecraftsmanship.org/"&gt;Software Craftsmanship movement&lt;/a&gt; is a good source of inspiration for the content to be shared and developed in this area, but we also need to create an atmosphere of cooperation and sharing with the &lt;a href="http://testausosy.ttlry.fi/"&gt;excellent testing professionals we have in Finland&lt;/a&gt; and in the AF community. The technical area of focus is an area where there is clearly a need for a better offering in our community, and Agile Finland has the network and expertise to start that work.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Project Management in an Agile Software Development environment. This area of focus would cover the Project concept, it’s applicability to different types of work and product development environments. We know that the traditional Project Management is not compatible with many Software Development environments, but we need to explore alternatives, share and expand our knowledge on what has worked in the past as well as the experiments that are going on right now. In this area of focus, I believe we must build a bridge with the already active Project Management communities(&lt;a href="http://www.pmifinland.org/"&gt;PMI&lt;/a&gt;, &lt;a href="http://confluence.agilefinland.com/display/af/2011/01/24/Project+Management+Association+of+Finland+%28PMAF%29+and+Agile+Finland+partner.+Agile+Finland+brings+expert+Agile+knowledge+to+PMAF"&gt;PRY&lt;/a&gt;). We have a lot to learn from each other.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Leadership and Management. This area of focus was already in the activities started during last year (see &lt;a href="http://www.acla.fi"&gt;ACLA&lt;/a&gt;), but we need to continue to develop those activities. Many of the challenges we face today are because the &lt;a href="http://eskokilpi.blogging.fi/category/uusi-johtaminen-in-finnish/"&gt;traditional leadership and management models have failed in the era of knowledge work&lt;/a&gt; (like software and other areas). We need to share what is being tested in the world, bring in some world-class thought leaders in this area to enlarge the pool of knowledge for managers and leaders in our local community.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;h2&gt;Conclusion&lt;/h2&gt;&lt;br /&gt;By focusing on these three areas (Programming and Testing, Project Management, Leadership and Management) I am suggesting that Agile Finland should also focus on specific activities for it’s major interest groups. It is not enough to arrange one to three generic networking events during the year, we need to start taking concrete actions for the development of our community. I hope that this post contributes to a discussion around how we could do that.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-size:85%;" &gt;Photo credit: &lt;a href="http://www.flickr.com/photos/patrick_keogh"&gt;Patrick Keogh&lt;/a&gt; @ flickr&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-4223148794055737388?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/LcWJIje9azQ" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/LcWJIje9azQ/kicking-up-dust-for-agile-finland-2011.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-_Frc6AQgD9Q/Tc1vQVXqWSI/AAAAAAAAAKQ/zXu_3kicu4E/s72-c/371810070_8f983680aa.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/05/kicking-up-dust-for-agile-finland-2011.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-5125424831957771650</guid><pubDate>Tue, 12 Apr 2011 05:00:00 +0000</pubDate><atom:updated>2011-04-12T08:00:05.615+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">agile finland</category><category domain="http://www.blogger.com/atom/ns#">ale</category><category domain="http://www.blogger.com/atom/ns#">community</category><category domain="http://www.blogger.com/atom/ns#">alenetwork</category><title>ALE Network in active discussion in the Agile Finland mailing list</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/31440643@N03/5537165087/"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 267px;" src="http://1.bp.blogspot.com/-ZldhvvgWshU/TaLges2G7II/AAAAAAAAAKI/9Orc9OChU6k/s400/5537165087_f9caccda50.jpg" alt="" id="BLOGGER_PHOTO_ID_5594280505186380930" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Last Friday looked to be normal day. Too much work, too little time. But then it got better.After I sent &lt;a href="http://tech.groups.yahoo.com/group/agilefinland/message/940"&gt;an email&lt;/a&gt; to the &lt;a href="http://tech.groups.yahoo.com/group/agilefinland/messages"&gt;Agile Finland mailing list&lt;/a&gt; announcing the Helsinki event to discuss the &lt;a href="http://alenetwork.eu/"&gt;ALE Network&lt;/a&gt; vision, a lot of replies came in. It was a very active discussion.&lt;br /&gt;&lt;br /&gt;Below is my (necessarily) short summary of what I saw and learned from that discussion.&lt;br /&gt;&lt;br /&gt;Many issues were discussed in that email exchange from Motivations to how it can help energize the Agile Finland community. Here's a summary of the topics discussed as well as my view on how ALE network can help us in the European context:&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;What are some of the motivations for ALE?&lt;/h3&gt;&lt;br /&gt;As is to be expected in any network or community of people, there are wildly varying motivations. As we start to discuss the importance/significance of ALE for each of the local communities as well as for the individuals many view points surface. &lt;br /&gt;&lt;br /&gt;I'd like to express my motivations: I see that we have many thriving Agile communities in Europe. I've been in direct contact with some of the nearby communities such as &lt;a href="http://agileee.org/"&gt;Ukraine&lt;/a&gt;, &lt;a href="http://agile.ee/display/main/Agile+Estonia"&gt;Estonia&lt;/a&gt;, &lt;a href="http://www.agilerigaday.lv/"&gt;Latvia&lt;/a&gt; and &lt;a href="http://www.agilesweden.org/"&gt;Sweden&lt;/a&gt; as well as &lt;a href="http://www.agile-spain.com/"&gt;Spain&lt;/a&gt; and &lt;a href="http://www.agilept.org/"&gt;Portugal&lt;/a&gt;. I see the huge amount of energy and willingness to explore the Agile values and principles in real Software work.&lt;br /&gt;&lt;br /&gt;I also see many people that are extremely eager to learn and have a lot to share. These same people, for many reasons, are not traveling around Europe and learning from others outside their local communities. They participate mainly in the local events, get together in User Groups or local Agile community meetings (like we have the Agile Dinners in some Finnish cities).&lt;br /&gt;&lt;br /&gt;These are people that want to be in contact with people outside their local communities but cannot do so for a variety of reasons. ALE can help bring these communities together, help people bridge the border gaps and get in touch with other practitioners to share and learn about their different experiences.&lt;br /&gt;&lt;br /&gt;In Agile Finland we have had the luck of having people who have successfully helped our community bridge this gap, specifically through organizing the Scan-Agile conference. Together as a Europe-wide network we can do the same for the other local communities. How? Here imagination is the only limit :)&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;What is ALE's Vision?&lt;/h3&gt;&lt;br /&gt;Right now there are many different Visions for what ALE should/could/must be. In Helsinki we will talk about these different views on April 20th. Check the info &lt;a href="http://confluence.agilefinland.com/display/ALEnet/ALEnetHelsinkiVisionOpenSpace"&gt;here&lt;/a&gt; and remember: &lt;span style="font-weight:bold;"&gt;RSVP is mandatory!&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;While I do believe that the main focus of ALE should be to help the local communities thrive, that can be done in many ways and with different Visions.&lt;br /&gt;I explicitly choose to listen to how our community's Vision develops. My goal is to help us collect that as a common Vision, one that we all share to some extent. Hence why I've decided not to write about my Vision at this point. I will of course talk about it at &lt;a href="http://confluence.agilefinland.com/display/ALEnet/ALEnetHelsinkiVisionOpenSpace"&gt;the event on April 20th&lt;/a&gt; along with all of those that can make it. &lt;br /&gt;&lt;br /&gt;&lt;h3&gt;What is the link between Agile Finland and ALE Network?&lt;/h3&gt;&lt;br /&gt;The links between these networks are people. The people that participate in both networks are the effective links between these two networks.&lt;br /&gt;&lt;br /&gt;In my view Agile Finland (AF) has a place as a stand alone organization, it is not dependent on ALE Network, but the people in AF can actively contribute to the ALE Network in many ways, and some of us are already active in the European scene.&lt;br /&gt;&lt;br /&gt;As far as I am concerned ALE is an independent entity from Agile Finland, but benefits from the effort and contribution of the Agile Finland members that participate in both networks.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Purpose of the Open Space session on April 20th&lt;/h3&gt;&lt;br /&gt;On April 20th, our goal is to stimulate a face-to-face discussion about the possible contribution we can make as a community to the ALE Network, as well as what we think ALE Network should focus on.&lt;br /&gt;What I would expect to see after the April 20th session is a collection of ideas of what we want ALE to be as well as what we don't want to contribute to. These ideas will then be discussed by a group of people from all over Europe in Madrid during XP 2011, where the ALE Network Vision will be iterated.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Interlude&lt;/h3&gt;&lt;br /&gt;These were only some of the many topics we discussed in the Agile Finland mailing list. The discussion was long and active. You can check the full archive &lt;a href="http://tech.groups.yahoo.com/group/agilefinland/messages"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;No doubt we will talk more about ALE network and the role of Agile Finland community, that dialogue is needed. We are a community after all: "one for all and all for one"!&lt;br /&gt;&lt;br /&gt;Photo: &lt;a href="http://www.flickr.com/photos/31440643@N03/"&gt;Achraf AMINE&lt;/a&gt; @ flickr&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-5125424831957771650?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/4QtRyJF4Ml0" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/4QtRyJF4Ml0/ale-network-in-active-discussion-in.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-ZldhvvgWshU/TaLges2G7II/AAAAAAAAAKI/9Orc9OChU6k/s72-c/5537165087_f9caccda50.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/04/ale-network-in-active-discussion-in.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-8512598777371374481</guid><pubDate>Fri, 08 Apr 2011 06:42:00 +0000</pubDate><atom:updated>2011-04-08T09:51:00.491+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">europe</category><category domain="http://www.blogger.com/atom/ns#">ale</category><category domain="http://www.blogger.com/atom/ns#">community</category><category domain="http://www.blogger.com/atom/ns#">learning</category><category domain="http://www.blogger.com/atom/ns#">alenetwork</category><title>What would a European Agile comunity look like? #ALEnetwork</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/ibnhusin/3874076438/"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://2.bp.blogspot.com/-FpKiJgMVWqA/TZ6vD7gi9AI/AAAAAAAAAKA/Apf6otlc_Uc/s400/3874076438_aace447de3.jpg" alt="" id="BLOGGER_PHOTO_ID_5593100269289403394" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Many of us have been involved in many different communities. Agile Finland for a start. But also other communities: our local kindergarten or school parent's group, the school or kindergarten itself; the local neighbors; the apartment building executive board ("hallitus" in Finnish), etc.&lt;br /&gt;&lt;br /&gt;In fact, if we look back in history all of our history has advanced due to the association of different people, sometimes with similar goals, but much more often with different and sometimes only slightly related goals. The greatest example of all is our very own society which exists and evolves because of the myriad of small communities that interact with each other to achieve a quasi-infinite number of goals.&lt;br /&gt;&lt;br /&gt;Why do we need an European Agile community then? Aren't we already in so many different communities? Why one more?&lt;br /&gt;&lt;br /&gt;There are many answers to these questions, but perhaps one that is interesting because it is a true story is the story of &lt;a href="http://en.wikipedia.org/wiki/Peter_the_Great#Early_reign"&gt;Peter the Great&lt;/a&gt; (or Pyotr Alexeyevich Romanov for his friends). Peter went around Europe as a young man collecting knowledge, although his initial intentions were to gather support for war (who didn't, in those times?) he finally ended up touring Europe to learn. He worked in Shipyards, visited Greenwich, learned how to build cities by visiting Manchester (no kidding!). Peter's journey was one of learning by sharing. He learned by interacting with others, collecting knowledge from many sources and ultimately creating his own view of the world which he implemented back home. Some of it was cargo-cult, but some of it led to lasting changes that we can still see today.&lt;br /&gt;&lt;br /&gt;The core of Peter's story, however, is that he understood that the world was larger than his own Empire, he understood that he had a lot to learn and took a step (literally) towards the communities that were surrounding him. Learned from them and became a better person for it.&lt;br /&gt;&lt;br /&gt;How about you? Do you want to become a better Agilist? Join us in the &lt;a href="http://alenetwork.eu/"&gt;ALE network&lt;/a&gt; &lt;a href="http://confluence.agilefinland.com/display/ALEnet/ALEnetHelsinkiVisionOpenSpace"&gt;Vision Helsinki event&lt;/a&gt; where we will explore the questions above and more! Check out the details and register &lt;a href="http://confluence.agilefinland.com/display/ALEnet/ALEnetHelsinkiVisionOpenSpace"&gt;here&lt;/a&gt;. NOTE: registration is mandatory and seats are limited.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-style: italic;font-size:85%;" &gt;Photo credit: &lt;a href="http://www.flickr.com/photos/ibnhusin/"&gt;ibnhusin&lt;/a&gt; @ flickr&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-8512598777371374481?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/k4t505JMevc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/k4t505JMevc/what-would-european-agile-comunity-look.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://2.bp.blogspot.com/-FpKiJgMVWqA/TZ6vD7gi9AI/AAAAAAAAAKA/Apf6otlc_Uc/s72-c/3874076438_aace447de3.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/04/what-would-european-agile-comunity-look.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-6697194216428957631</guid><pubDate>Thu, 03 Mar 2011 06:30:00 +0000</pubDate><atom:updated>2011-03-04T09:55:36.189+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">score sheet</category><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">agile score sheet</category><category domain="http://www.blogger.com/atom/ns#">patterns</category><category domain="http://www.blogger.com/atom/ns#">exercise</category><category domain="http://www.blogger.com/atom/ns#">scan-agile</category><title>Patterns of Agility, talk at Scan-Agile 2011 and Agile Riga Day 2011</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/9422878@N08/5209675326/"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 265px;" src="http://3.bp.blogspot.com/-kPutSbxbSkQ/TWzgwd4z5II/AAAAAAAAAJw/udblW-OVekE/s400/Picture%2B7.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5579081161666454658" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Some time ago I wrote a post here about &lt;a href="http://softwaredevelopmenttoday.blogspot.com/2010/11/patterns-of-agility-how-to-recognize.html"&gt;Patterns we can identify in projects and how they relate to the life-cycle model in use for the project&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;Some patterns are definitely signs of an Agile project (release working software at the end of every *very* short iteration for example). Other patterns are clear signs that we are in the presence of a waterfall project (writing never ending power point presentations to prepare a project approval and then rushing with the actual coding). &lt;br /&gt;&lt;br /&gt;There was quite a lot of good feedback on that post and &lt;a href="http://twitter.com/lebedev_dmitry"&gt;@lebedev_dmitry&lt;/a&gt; even suggested that I present a talk at &lt;a href="http://www.agilerigaday.lv/programme"&gt;Agile Riga Day&lt;/a&gt; on the same subject.&lt;br /&gt;&lt;br /&gt;So I prepared a presentation to explore this theme. You can check out the presentation in my &lt;a href="http://www.slideshare.net/duartevasco"&gt;slideshare page&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;But I felt that a presentation was not enough. Yes, we need to introduce the idea of patterns and how to recognize the context in your project, but we also need to reflect on the actual patterns we see in our projects. So I decided to end the presentation with a short reflection/retrospective exercise: &lt;a href="https://spreadsheets.google.com/ccc?key=0Ar1mHl_8dlL_dGRzR0IxQnhOQ2tyTVkzcllwWWFfcWc&amp;hl=en_GB&amp;authkey=CJ2Pr98N"&gt;the Agility Score Sheet&lt;/a&gt;. &lt;br /&gt;&lt;br /&gt;Try it out. Read the presentation, then take the sheet and score your project. What did you find? What thoughts came to your mind after completing the exercise? What will you change tomorrow?&lt;br /&gt;&lt;br /&gt;Feel free to edit the Agile Score Sheet. I've opened it so that anyone with &lt;a href="https://spreadsheets.google.com/ccc?key=0Ar1mHl_8dlL_dGRzR0IxQnhOQ2tyTVkzcllwWWFfcWc&amp;hl=en_GB&amp;authkey=CJ2Pr98N"&gt;this link&lt;/a&gt; can read it and edit it directly.&lt;br /&gt;&lt;br /&gt;PS: &lt;br /&gt;If you attended &lt;span style="font-weight:bold;"&gt;&lt;span style="font-style:italic;"&gt;Scan-Agile 2011&lt;/span&gt;&lt;/span&gt;, you can rate my talk &lt;a href="http://spkr8.com/t/5792"&gt;here&lt;/a&gt; &lt;br /&gt;If you attended &lt;span style="font-style:italic;"&gt;&lt;span style="font-weight:bold;"&gt;Agile Riga Day 2011&lt;/span&gt;&lt;/span&gt;, you can rate my talk &lt;a href="http://spkr8.com/t/5809"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Photo credit: &lt;a href="http://www.flickr.com/photos/9422878@N08/5209675326/"&gt;Bill Gracey&lt;/a&gt; @ flickr&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-6697194216428957631?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/NDgvZWP1fqs" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/NDgvZWP1fqs/patterns-of-agility-talk-at-scan-agile.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-kPutSbxbSkQ/TWzgwd4z5II/AAAAAAAAAJw/udblW-OVekE/s72-c/Picture%2B7.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/03/patterns-of-agility-talk-at-scan-agile.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-1688278738352399128</guid><pubDate>Tue, 22 Feb 2011 07:30:00 +0000</pubDate><atom:updated>2011-02-22T09:37:21.607+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">testing</category><category domain="http://www.blogger.com/atom/ns#">job</category><category domain="http://www.blogger.com/atom/ns#">tester</category><category domain="http://www.blogger.com/atom/ns#">test</category><title>Another job opportunity for 31337 h4x0rs that love testing!</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/roland/4436628406"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://1.bp.blogspot.com/-Tp0ksud37-Y/TWNnVbH6ytI/AAAAAAAAAJo/Tc6MiDkJ1nI/s400/4436628406_5bc35eb5c9.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5576414381370690258" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;F-Secure is hiring! And they have some interesting positions as well. Check out this one:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://careers.fi/f-secure/careers.cgi?action=view&amp;job_id=481&amp;lang=uk&amp;Lang=en&amp;title=Software%20Engineering%20professionals%20for%20test%20automation"&gt;People who have experience in “SW Engineer in Test” type of a role&lt;/a&gt;. This is a fairly new role and not well established in Finland. The discipline is young and top notch professionals rare. An excellent niche to put yourself into in the job market.&lt;br /&gt;&lt;br /&gt;This role is key in the setup for continuous integration. At F-Secure we test 1000's of unique system builds in each sprint. Results show on radiators in each team room immediately. Top that, if you can. For instance, nothing prevents testers to check out the product code, find the problem and alone or with the team fix it. And this does happen!&lt;br /&gt;&lt;br /&gt;This is a great way of developing software. The feeling of community is tremendous, the drive is inspiring and the results exceptional.&lt;br /&gt;&lt;br /&gt;Hellow World, wake up, and smell the raw unrefined source code.&lt;br /&gt;&lt;br /&gt;Photo credit: &lt;a href="http://www.flickr.com/photos/roland"&gt;roland&lt;/a&gt; @ flickr&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-1688278738352399128?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/f69HycOSuuc" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/f69HycOSuuc/another-job-opportunity-for-31337.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/-Tp0ksud37-Y/TWNnVbH6ytI/AAAAAAAAAJo/Tc6MiDkJ1nI/s72-c/4436628406_5bc35eb5c9.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/02/another-job-opportunity-for-31337.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-2552863207546627454</guid><pubDate>Sat, 19 Feb 2011 18:51:00 +0000</pubDate><atom:updated>2011-02-19T21:01:44.869+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">leonidas</category><category domain="http://www.blogger.com/atom/ns#">careers</category><category domain="http://www.blogger.com/atom/ns#">jobs</category><category domain="http://www.blogger.com/atom/ns#">job</category><title>Job opportunity for awesome people in Tampere, Finland</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/anthonykvalley/3807334040"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 267px; height: 400px;" src="http://3.bp.blogspot.com/-gPwy6b2wxkY/TWATPmGKEGI/AAAAAAAAAJg/9PpDc-WP798/s400/3807334040_141c4079ae_o.jpg" alt="" id="BLOGGER_PHOTO_ID_5575477497330012258" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Our good friends at Leonidas are hiring. Not, not the chocolate people, the &lt;a href="http://leonidasoy.fi/"&gt;software people&lt;/a&gt; ;)&lt;br /&gt;&lt;br /&gt;The company looks very interesting. I especially liked the "&lt;a href="http://protosonni.fi/"&gt;one week from idea to prototype&lt;/a&gt;" service they have. A true agile service! :)&lt;br /&gt;&lt;br /&gt;Take a look at their &lt;a href="http://leonidasoy.fi/services"&gt;web-site&lt;/a&gt; and check if you are one of the &lt;a href="http://leonidasoy.fi/2010/12/28/hiring-more-awesome-people-2"&gt;awesome people&lt;/a&gt; they are looking for!&lt;br /&gt;&lt;br /&gt;Judging by their art work on the site, it will probably bee a good preparation to review the movie 300 before going for an interview! Enjoy!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-style: italic;"&gt;Photo credit: &lt;/span&gt;&lt;a style="font-style: italic;" href="http://www.flickr.com/photos/anthonykvalley/"&gt;anthonykvalley&lt;/a&gt;&lt;span style="font-style: italic;"&gt; @ flickr&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-2552863207546627454?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/uR0aa-ivVEo" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/uR0aa-ivVEo/job-opportunity-for-awesome-people-in.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-gPwy6b2wxkY/TWATPmGKEGI/AAAAAAAAAJg/9PpDc-WP798/s72-c/3807334040_141c4079ae_o.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/02/job-opportunity-for-awesome-people-in.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-8613836944672349496</guid><pubDate>Sun, 13 Feb 2011 11:47:00 +0000</pubDate><atom:updated>2011-02-13T14:27:20.125+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">nokia</category><category domain="http://www.blogger.com/atom/ns#">software industry</category><category domain="http://www.blogger.com/atom/ns#">software</category><category domain="http://www.blogger.com/atom/ns#">job</category><title>To all my friends and colleagues at Nokia, my contribution</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/streetart/2227702195/"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://3.bp.blogspot.com/-tj7w7QqJquU/TVfMUHjZpfI/AAAAAAAAAJY/tDSNU94GCcA/s320/2227702195_791a3b805a_b.jpg" alt="" id="BLOGGER_PHOTO_ID_5573147709891257842" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Without a doubt many of you have read the news about Nokia taking Windows Phone 7 as their main Smartphone platform.&lt;br /&gt;&lt;br /&gt;That decision by Nokia has a tremendous impact in my local software community: Finland. Nokia mobile phones (as it was known before) has always been a major employer of software development professionals in Finland where I live. It is expected that this decision will significantly reduce the number of software professionals that Nokia employs. This is nothing short of a blow to the local software community. However, this is not a tragedy. Far from it. Ironically there's never been a better time for software professionals in Finland. Many industries are adopting software as a key part of their products. From forestry to fleet management to network elements to health care, you name it.&lt;br /&gt;&lt;br /&gt;This is why I've decided to start posting interesting software related job opportunities. I want this to be about the software industry globally, not just Finland. But, of course also about opportunities in Finland. If you are interested in posting the openings you have in this blog just drop me a line at &lt;a href="mailto:SoftwareDevelopmentToday@gmail.com?subject=Job%20posting%20on%20SDT%20blog"&gt;SoftwareDevelopmentToday@gmail.com&lt;/a&gt;. Here's what you can gain:&lt;br /&gt;&lt;br /&gt;This blog is read weekly by ~200 and monthly by ~790 unique visitors, from mostly Finland, United States, United Kingdom, India and Brazil. As this is a blog for software professionals, you will be reaching people that are already in this industry, but better yet you will be reaching early adopters who are interested in improving the way software is developed. This can be a competitive advantage for your company!&lt;br /&gt;&lt;br /&gt;NOTE: i will not charge for these posting but I do reserve the right to select which ones I post, so make them interesting and as buzzword free as possible. Remember you are reaching a crowd that already knows a lot about software development, you want to focus on making your job opening as enticing as possible interesting for this crowd.&lt;br /&gt;&lt;br /&gt;If you are looking for fresh new opportunities you get a filtered list of job openings. I'll personally read all of the posts and contact the companies to make sure they are legit and not just a fake interesting post.&lt;br /&gt;&lt;br /&gt;So, I hope this is a contribution to the next career path for all my friends and industry colleagues at Nokia. I wish you the best of luck!&lt;br /&gt;&lt;span style="font-style: italic; font-weight: bold;font-size:85%;" &gt;&lt;br /&gt;Photo Credit: &lt;a href="http://www.flickr.com/photos/streetart"&gt;streetart&lt;/a&gt; @ flickr&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-8613836944672349496?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/2lZ7MiKDJjM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/2lZ7MiKDJjM/to-all-my-friends-and-colleagues-at.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/-tj7w7QqJquU/TVfMUHjZpfI/AAAAAAAAAJY/tDSNU94GCcA/s72-c/2227702195_791a3b805a_b.jpg" height="72" width="72" /><thr:total>4</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/02/to-all-my-friends-and-colleagues-at.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-5839588100104328599</guid><pubDate>Fri, 07 Jan 2011 11:49:00 +0000</pubDate><atom:updated>2011-01-07T14:55:20.435+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">Team</category><category domain="http://www.blogger.com/atom/ns#">reinertsen</category><category domain="http://www.blogger.com/atom/ns#">patterns</category><category domain="http://www.blogger.com/atom/ns#">queue</category><category domain="http://www.blogger.com/atom/ns#">network</category><category domain="http://www.blogger.com/atom/ns#">organization</category><category domain="http://www.blogger.com/atom/ns#">coplien</category><title>SWAT Team, a Pattern for Overloaded, Multi-project Organizations</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/dunechaser/489467800/"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 300px;" src="http://1.bp.blogspot.com/_go7f4-mVASI/TScGa4Q0RvI/AAAAAAAAAJM/N4BY69ubdqQ/s400/489467800_7ca47017c4.jpg" border="0" alt=""id="BLOGGER_PHOTO_ID_5559419323861452530" /&gt;&lt;/a&gt;&lt;br /&gt;We all have seen it in our projects. Some teams are overloaded and can't deliver what we need while others are not so busy and could even tackle more work if there was a need for that.&lt;br /&gt;&lt;br /&gt;This type of partial overloading is easily understood if we picture the work flow as a network of nodes. The throughput of the overall organization is limited by the nodes that are overloaded, even if not all nodes are overloaded.&lt;br /&gt;&lt;br /&gt;The situation is even worse in multi-project organizations where many projects compete for staff time which leads to optimize for staff-loading optimization and ultimately to overloading the organization by creating certain bottlenecks that block all work for one or multiple projects.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Why does this happen? and How to tackle it? &lt;/h3&gt;&lt;br /&gt;&lt;br /&gt;Below is a short pattern description of one of the possible ways in which we can tackle this type of situations. &lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Problem and Contribution&lt;/h3&gt;&lt;br /&gt;As explained above, the problem symptoms are typically that some teams are overloaded and cannot take on more work. This work is essential to meet a particular deadline or to get a project started.&lt;br /&gt;&lt;br /&gt;Other symptoms may include: &lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt; Line Managers requesting more resources on a regular basis.&lt;br /&gt;&lt;li&gt; Long meetings with two or more people where the allocation of one person is discussed at great length.&lt;br /&gt;&lt;li&gt; Projects are started officially but no progress is achieved due to ongoing projects having higher priority.&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;A typical result is that some project gets delayed or a project that is started gets starved for resources. The problem can generically be defined as a resource allocation problem. In computer science literature this is also sometimes called a &lt;a href="http://en.wikipedia.org/wiki/Scheduling_%28computing%29"&gt;Scheduling problem&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;In this pattern we outline a simple strategy to tackle this project starvation in an overloaded multi-project organization.&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Context&lt;/h3&gt;&lt;br /&gt;This pattern is applicable to any organization that has several teams and/or multiple projects (typically a non trivial number) and where the symptoms can be seen, but the root cause cannot easily be found or solved. &lt;br /&gt;&lt;br /&gt;An example is a large software development organization where many teams contribute to multiple parallel projects. In these cases it is perhaps possible to find the root cause for the delays and starvation of competing projects, but it is either not practical (no people with enough knowledge of the overall organization or no people with experience in large complex network management) or not economically feasible (the time and money it would take to find out the root cause can better be used applying a simple pattern like this).&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Forces&lt;/h3&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;In an organization Line Managers (people that coordinate and prioritize work at a sub-level, typically a team or subset of teams) are motivated to show that their teams are busy. Given this constrain it is typically very difficult to assess the actual load in all the teams in an organization. This is because even if one line manager would be honest and inform that their teams have some bandwidth, there would quickly be more work assigned to those teams so as to overload them. &lt;br&gt; Alternatively, other managers would complain that their teams are overloaded and require that the available teams be assigned to them, therefore assigning the "busy" line manager more power in the organization, which in turn re-enforces the message that "it is not OK to say that your teams are not overloaded".&lt;br /&gt;&lt;li&gt;Teams themselves have no incentive to publicly state that they are not overloaded because that leads to job insecurity or scorn from surrounding teams (see also above).&lt;br /&gt;&lt;li&gt;In any mid- to large-size organization (more than a few teams) it is very difficult to unequivocally identify which are the teams that are overloaded and which may have some bandwidth. This is because changes to the software may cause a previously free team to become busy and assigning more work to that team may jeopardize the work needed when future changes are recognized.&lt;br /&gt;&lt;li&gt;The larger the organization the more specialized the workers tend to be, which in practice makes it very difficult for teams to help each other by sharing a common work log (aka backlog) or for one team to help another that is working on a different component of sub-system.&lt;br /&gt;&lt;li&gt;Many organizations start multiple parallel projects. This typically leads to overloading the organization even further and putting more pressure on certain teams that are in practice bottlenecks for the flow of work. Multiple projects dependent on one team become therefore "stuck" and their requests cannot be completed. This often leads to other teams being stuck as well because they depend on the bottleneck teams. Finally the organization may have multiple teams that cannot deliver their work because of one single bottleneck. This is a common feature of networked systems such as the Internet.&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Solution&lt;/h3&gt;&lt;br /&gt;In this post I try to present a simple solution. The goal with this solution is not to optimize staff utilization, or to explore complex mathematical models. Rather this solution focuses on something that is easy to understand albeit more expensive than other possible competing solutions.&lt;br /&gt;&lt;br /&gt;As explained above, mid- to large-size organizations tend to build complex networks of teams through which the work flows. These networks tend to be complex as well as unstable (i.e. the node links change frequently due to rerouting of different types of work). &lt;br /&gt;&lt;br /&gt;A simple solution will have to work independently of the characteristics of that network, thereby being network agnostic. &lt;br /&gt;&lt;br /&gt;&lt;b&gt;Create a team of generalists and assign those to one of the ongoing projects&lt;/b&gt; and make it report to the project management team as opposed to the line managers. This way the project management team can assign this team of generalists to help some of the teams that may be blocked on some piece of work. Additionally this team will collect tacit knowledge about the prevailing bottleneck areas and will therefore also be useful in debugging and investigating specific problems in those areas later on.&lt;br /&gt;&lt;br /&gt;This team must be staffed with people that can easily touch any component or subsystem and ideally these people will be very well networked in the organization in question, allowing them to quickly tap into more specialized knowledge when needed (say over the lunch break or on a quick IRC chat). &lt;br /&gt;&lt;br /&gt;&lt;b&gt;This team, which I'll call SWAT team (for SoftWare Action Team)&lt;/b&gt; will work under the guidance of one person with Project Management responsibilities and will answer only to the project management team, not the respective Line Managers. The reason for this is that the project management team is motivated to solve specific problems that allow the project to progress and have access to the information about which areas/teams/sub-systems need more work to make that happen. &lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Resulting context&lt;/h3&gt;&lt;br /&gt;When the SWAT team is nominated it must be staffed out of the best software specialists (Architects, testers, designers, coders) in the organization. This means that other projects will lose some man-power and potentially lose people that helped those projects progress faster. For this reason it is important to be flexible at first in the nomination of this team and consider every individual assignment together with both the software development teams and the project management teams.&lt;br /&gt;&lt;br /&gt;A possible consequence of the nomination of this team is that the team is kept together for a very long time, therefore reducing the staffing levels indefinitely for other software development teams or projects. This is not a desirable situation. The SWAT team should be a temporary team, brought together only to help the previously-starved project progress. Once that project raises in the priority list or is not starved then we must consider stopping the SWAT team's work and returning them to their original teams. &lt;br /&gt;&lt;br /&gt;Another risk that should be considered is the loss of specific knowledge on the part of the SWAT team. This is particularly problematic if some of the individuals work in highly specialized teams within a specific knowledge that evolves fast. Therefore the SWAT team should be as short lived as possible but put together whenever needed. &lt;br /&gt;&lt;br /&gt;When selecting the individuals for the SWAT team one must also consider the motivation of those individuals to participate in a generalist team. Some will undoubtedly be happy to do so, but others may not.&lt;br /&gt;&lt;br /&gt;&lt;h4&gt;Queuing Theory and Throughput&lt;/h4&gt;&lt;br /&gt;The basic systemic impact of the SWAT team is that it transfers people from the day-to-day work (which is typically optimized for staff utilization, i.e. getting everybody busy) to a sporadic or ad-hoc work which is assigned on a need basis. This effectively creates a staffing "buffer" by which we reduce the number of people that are constantly kept busy or in full-utilization. We then use this SWAT team to tackle particular bottlenecks. &lt;br /&gt;&lt;br /&gt;Finally, the SWAT team as a very little impact on the organization utilization (only a few individuals compared to many teams), but it creates a small surplus capacity that can be applied to any bottlenecks to solve the problem of a starving project. &lt;br /&gt;&lt;br /&gt;&lt;h3&gt;A Question for you&lt;/h3&gt;&lt;br /&gt;Have you seen this pattern applied in your organization? What were the results? Share those with us in the comments below.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;See Also&lt;/h3&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Component teams&lt;br /&gt;&lt;li&gt;Feature teams&lt;br /&gt;&lt;li&gt;Maintenance teams&lt;br /&gt;&lt;li&gt;Pattern "Someone always makes progress" published in [Coplien2005]&lt;br /&gt;&lt;li&gt;Pattern "Team per Task" published in [Coplien2005]&lt;br /&gt;&lt;li&gt;Pattern "Interrupts Unjam Blocking" published in [Coplien2005]&lt;br /&gt;&lt;li&gt;Keeping everybody busy (anti-pattern)&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;Reference&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.bookdepository.co.uk/book/9780131467408/Organizational-Patterns-of-Agile-Software-Development"&gt;Organizational Patterns for Agile Software Development&lt;/a&gt; by Coplien and Harrison&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.bookdepository.co.uk/book/9781935401001/The-Principles-of-Product-Development-Flow"&gt;The Principles of Product Development Flow: Second Generation Lean Product Development&lt;/a&gt; by Reinertsen&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Pattern format description&lt;/h3&gt;&lt;br /&gt;In "Name" I give a name to the pattern.&lt;br /&gt;In "Problem" I describe the problem the team is facing in the form of a root cause and a set of symptoms that may be detected and lead to this problem.&lt;br /&gt;In "Context" I explain where the pattern is applicable.&lt;br /&gt;In "Forces" I try to describe the constraints or forces that the solution has to take into account.&lt;br /&gt;In "Solution" I try to describe the instructions and practices to be used to solve the problem as described.&lt;br /&gt;In "Example" I briefly explain the case of one team at work that has faced this problem and how they solved it.&lt;br /&gt;&lt;br /&gt;Photo credit: &lt;a href="http://www.flickr.com/photos/dunechaser"&gt;Dunechaser&lt;/a&gt; @ flickr&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-5839588100104328599?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/edUmveJsd_E" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/edUmveJsd_E/swat-team-pattern-for-overloaded-multi.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_go7f4-mVASI/TScGa4Q0RvI/AAAAAAAAAJM/N4BY69ubdqQ/s72-c/489467800_7ca47017c4.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2011/01/swat-team-pattern-for-overloaded-multi.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-5471215887493287884</guid><pubDate>Mon, 20 Dec 2010 12:45:00 +0000</pubDate><atom:updated>2010-12-21T11:29:40.895+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">waterfall</category><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">agile finland</category><category domain="http://www.blogger.com/atom/ns#">lean</category><category domain="http://www.blogger.com/atom/ns#">deming</category><category domain="http://www.blogger.com/atom/ns#">training</category><category domain="http://www.blogger.com/atom/ns#">project management</category><category domain="http://www.blogger.com/atom/ns#">toyota</category><category domain="http://www.blogger.com/atom/ns#">rup</category><category domain="http://www.blogger.com/atom/ns#">liker</category><title>My Agile adoption story, and why it matters to you</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/jillclardy/2566241384/"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 240px;" src="http://1.bp.blogspot.com/_go7f4-mVASI/TRBtBI8SvpI/AAAAAAAAAJA/TGXo9h6sG8w/s320/2566241384_4264b1f0f3.jpg" alt="" id="BLOGGER_PHOTO_ID_5553058206895488658" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Every person has their own different story of how they found out about Agile and how they came to experiment and ultimately adopt it in their projects.&lt;br /&gt;Mine is also different than most, I started as a skeptic. I was one of those that said "it will never work". But I did come around. Here's the story of how it happened&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;The downfall of traditional waterfall&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;As many of the people that entered the software development industry during the 90's, I also had my first job in a small company. A start-up that was growing very fast and exhibited all the usual growth pains: more projects than people, lots of extremely hard-working but not experienced people, egos to match, etc.&lt;br /&gt;&lt;br /&gt;As it happens, the typical way start-up companies deal with the growth pains is to hire a couple of experienced people that come in and "&lt;span style="font-style: italic; font-weight: bold;"&gt;install the process&lt;/span&gt;" that will deliver us from all problems. And that's what happened to us. The company hired a few experienced project managers, they slashed the number of projects and created a process to structure and organize our work. We badly needed it.&lt;br /&gt;&lt;br /&gt;However after a while we figured out that the new process was not helping us finish projects on time or with the right features or quality. It was better than chaos but not really that good. At this time I got interested in processes and organizational issues. My thinking was:  "there must be a better way".&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Re-discovering the wheel&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;What followed was something many of us in the industry have gone through and will continue to go through in the future. I started reading about other companies that had faced the problems we faced and discovered that it was not only us, and especially it was not only the software industry that was trying to apply the same old ideas and finding that they failed when applied in real projects.&lt;br /&gt;&lt;br /&gt;I discovered Deming first, then Toyota, Six Sigma, the whole nine yards. I started understanding some of our problems: focusing on schedule and forgetting that quality is more important; separating work and creating handovers architects to designers, to developers, to testers, etc.&lt;br /&gt;&lt;br /&gt;It was clear that what we were doing at that time (Rational Unified Process) was not a good option for us. That's when I started experimenting with different approaches.&lt;br /&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;My Path to Agile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I started by using simple RUP and focusing on managing the scope, but this  not your garden variety of scope management. This was aggressive scope management, negotiated from start to finish of the project. The whole idea was to plot the progress against expected progress and remove content every time we saw a deviation.&lt;br /&gt;&lt;br /&gt;This solution was OK for schedule-driven projects, but we still had the same basic problems of leaving risky or valuable things to later in the project, our teams were still very much silos working on partial features which lead to a lot of work partially done. This was not the &lt;del&gt;droid&lt;/del&gt; solution we were looking for.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Agile appears on the scene&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;At that time a local research institute was pushing for more research on Agile Software Development projects. As luck would have it I was switching projects and the new project was selected as one of the pilots. Now, keep in mind that this was 2004, not the heyday of Agile yet, and I was a skeptic. I decided to take the project and prove conclusively that Agile was not the success story we were being told it was. Boy, was I wrong!&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;The Agile pilot project&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We decided to do everything by the book to ensure that we really learned from the project execution and would then be able to find better ways of working based on that experience. A new team was hired, and we started slowly designing the process based on Scrum. Other teams were using XP for comparison's sake.&lt;br /&gt;&lt;br /&gt;Then, a funny thing happened. As I read more and more about Agile, I started to find similarities between Agile and what I had read in Deming and Jeff Liker's work. There was the uncompromising focus on the customer, the respect for people, the empowered team with a Product Owner to steer the scope (which I had learned could work well), and more. &lt;br /&gt;&lt;br /&gt;I was starting to feel that Agile was no longer a small thing to improve a dead wrong process. It was much more. It was, and is a paradigm shift the consequences of which are still dawning on me today, a good 5 years after the first project.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;This is my story&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I wanted to share this story with you because I know that many have had similar experiences or are going through that transformation right now. There are a lot more of us, going through the evolution and learning from our application of Agile. That collected knowledge and learning will hopefully improve our industry in the long run. &lt;br /&gt;&lt;br /&gt;&lt;a href="http://confluence.agilefinland.com/"&gt;Agile Finland&lt;/a&gt;, a Finland based non-profit association wants to support more of these transitions and that's why we put together a program to support those of us that have started the Agile transition process.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;Agile for the experienced&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Myself and a group of other Agile Finland members decided that we would create a program to support those of us that have started the transition to Agile and are at a cross-roads, looking for improvements that cannot be found in the available literature. We also don't want to visit every single conference on Agile Software Development we can find. We want to learn from each other and from the top practitioners and researchers in the industry.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://acla.fi/"&gt;The Agile Coaching and Leadership Academy &lt;/a&gt;was created from this cooperation. But this is no longer a project by a small group of Agile practitioners. Agile Finland was able to attract a much bigger training institution to help us and vouch for the curriculum that we are putting together.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:130%;"&gt;University of Helsinki joins the effort&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Together with the Computer Science department at the University of Helsinki we created the basic program for the course, but now we need the most important ingredient: you, the people who want to learn and improve the performance of your organizations. We want to offer this opportunity to 15 people interested in not only listening to the best minds in the field, but also actively contributing by sharing your experiences and learning from other's experiences.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://acla.fi/"&gt;Check out the program&lt;/a&gt; and the details of the training program here and join us in improving our Agile knowledge.&lt;br /&gt;&lt;br /&gt;Photo credit: &lt;a href="http://www.flickr.com/photos/jillclardy"&gt;jillclardy&lt;/a&gt; @ flickr&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-5471215887493287884?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/GctHwX5z3Jw" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/GctHwX5z3Jw/how-i-found-agile-and-why-i-not-looking.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://1.bp.blogspot.com/_go7f4-mVASI/TRBtBI8SvpI/AAAAAAAAAJA/TGXo9h6sG8w/s72-c/2566241384_4264b1f0f3.jpg" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2010/12/how-i-found-agile-and-why-i-not-looking.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-4171839227360025378</guid><pubDate>Mon, 29 Nov 2010 06:44:00 +0000</pubDate><atom:updated>2010-11-29T08:44:00.211+02:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">waterfall</category><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">patterns</category><category domain="http://www.blogger.com/atom/ns#">life-cycle</category><category domain="http://www.blogger.com/atom/ns#">iterative</category><category domain="http://www.blogger.com/atom/ns#">project management</category><category domain="http://www.blogger.com/atom/ns#">phase</category><category domain="http://www.blogger.com/atom/ns#">project</category><title>Patterns of Agility. How to recognize an Agile project when you see one...</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.flickr.com/photos/9422878@N08/5209675326/"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 320px; height: 213px;" src="http://3.bp.blogspot.com/_go7f4-mVASI/TPAWQlRaIZI/AAAAAAAAAI4/NAeL1yJlzwg/s320/5209675326_ec0d629682_b.jpg" alt="" id="BLOGGER_PHOTO_ID_5543955615431926162" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Instead of fighting about "who's agile" or "who's more agile than whom", it would be useful to create a set of patterns, that once recognized would help us define if we are or have been able to successfully implement an Agile life-cycle for our project and portfolio.&lt;br /&gt;&lt;br /&gt;These patterns or symptoms are useful for us when analyzing a project (e.g. for a retrospective) and assessing the progress of a team or a company from waterfall to Agile software development. These are necessarily only a small collection of patterns. Many more are needed to create a complete language that would help us define better what an Agile project should feel and look like.&lt;br /&gt;&lt;br /&gt;Before getting deeper into the patters let me define at the outset what I mean by life-cycle. In my context life-cycle refers to a stage/phase in the life of a project. Example: a project that is "about to end" is in a different life-cycle phase than a project that is "about to start" or "ramping up". I define the following useful, although not exhaustive, life-cycle phases: Start, Middle, End.&lt;br /&gt;&lt;br /&gt;In the following text I try to define what different types of projects (Waterfall, Linear Iterative and Agile/Incremental Iterative look and feel like.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Waterfall&lt;/h2&gt;&lt;br /&gt;&lt;h3&gt;Life-cycle phase: Start&lt;/h3&gt;&lt;br /&gt;In this life-cycle phase a waterfall project is typically in a phase where only the project management team is assigned to the project and the goal is to create a plan. The plan is typically composed of a set of requirements, an architecture target (maybe an architecture plan or just a high-level picture to be developed further), a budget and (most importantly) a project plan.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;You know you are in a waterfall project when&lt;/strong&gt; in the life-cycle phase Start you are mostly spending time in front of a presentation or word editing software and have some meetings (maybe weekly) where scope, budget and project plan are discussed. This phase typically ends with a "gate" where the project plan and Requirements + Architecture are approved.&lt;br /&gt;A dead give away of a waterfall project is that, in this phase no one asks or worries about writing a single line of code. Some sophisticated waterfall projects may include a "prototype" in the life-cycle phase Start, but it will usually be a throwaway and developed by a sub-contractor who will not actually work in the project (after all the other teams are busy with the other projects).&lt;br /&gt;&lt;br /&gt;&lt;h3&gt;Life-cycle phase: Middle&lt;/h3&gt;&lt;br /&gt;In this phase the project is in "full speed", which usually means that teams are working with very little coordination (after all they have a "plan" to follow). Typically components are assigned to teams and they work on those in isolation.&lt;br /&gt;&lt;strong&gt;A dead give away that you are in a waterfall project is&lt;/strong&gt; that your team does not integrate code with the other teams at all. Some sophisticated waterfall projects may have "sync-points" or "integration camps" where the component teams come together after a long period of development to integrate their code. These are grim affairs with much overtime and gritting of teeth.&lt;br /&gt;&lt;h3&gt;Life-cycle phase: End&lt;/h3&gt;&lt;br /&gt;In this phase the waterfall project is "code complete" and aiming to "code freeze". There is usually a milestone/gate that was passed exactly at the start of this life-cycle phase called "code complete" or "feature complete". It is at that point that the teams of testers (typically many and in some far away country) are assigned to "test" the product. Obviously what they will be doing is a rather superficial sweeping of the floors to check that everything works. It is only after that that the project can pass the "code freeze" milestone/gate and the &lt;span style="font-weight: bold;"&gt;real testing&lt;/span&gt; can start.&lt;br /&gt;&lt;strong&gt;You know you are in a waterfall project when&lt;/strong&gt; the project runs out of time before it has quality enough to be released. The number of bugs being found is still very high, but probably at about the same level of the bugs being fixed. This is when "management" comes in and pushes all the teams to fix as many bugs as they can (pulling all-nighters or all-week-enders if needed). Much motivational language is used but the count of bugs being fixed stays about the same. The project will eventually ship something, but the actual quality level can only be vaguely understood. Business takes precedence in the decision making.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Iterative, aka Linear Iterative&lt;/h2&gt;&lt;br /&gt;&lt;h3&gt;Life-cycle phase: Start&lt;/h3&gt;&lt;br /&gt;In an iterative project the Start phase will typically be called Inception and will, like the waterfall projects focus mostly on defining requirements and creating/approving the project plan.&lt;br /&gt;&lt;strong&gt;You know you are in an iterative life-cycle project when&lt;/strong&gt; people start actually coding, but only a few features. Programming is still being "ramped up", but there's no milestone/gate that formalizes "start-programming" order.&lt;br /&gt;In some sophisticated Iterative projects people will mention Use Cases, customers, experience, business cases and may even have a prioritized list of Use Cases to be implemented. Typically you will find that the Requirements document is quite shallow, delegating the clarification of most requirements to the actual "design" phase of the project.&lt;br /&gt;&lt;h3&gt;Life-cycle phase: Middle&lt;/h3&gt;&lt;br /&gt;Now the teams are working very clearly on the code. Some Iterative projects may even have several sync points (see above) within this life-cycle phase. They will be easier than in a waterfall project, but "integration camps" are still common (although less frequent) and teams actively discuss the "code-line" policy (i.e. version control is an active part of project management.&lt;br /&gt;&lt;strong&gt;A dead give away of an iterative life-cycle is&lt;/strong&gt; that there will be several iterations of about 2-3 months in length at which point many teams try to integrate their code. In some sophisticated Iterative projects the teams will actually try to hold demonstrations of the existing code and in some (far fetched) cases there will be a project-wide retrospective at this point.&lt;br /&gt;&lt;h3&gt;Life-cycle phase: End&lt;/h3&gt;&lt;br /&gt;You'd be tempted to think that Iterative life-cycle projects would have an easier "End" phase, but you would be wrong. Just like in waterfall, the teams develop a lot of their code in their own version control systems and integrate seldom (although much more frequently than in a waterfall project). In large iterative projects there will be "vertical" sub-projects (typically less than 100 people) that will actually integrate their code frequently but the multiple concurrent sub-projects will only really integrate their code at the end.&lt;br /&gt;In this type of projects you will still find a very hectic "test and fix" phase at the end, but it will typically be focused around "complex use cases" as many of the simple use cases have already been tested during the "Middle" life-cycle phase.&lt;br /&gt;&lt;strong&gt;You know you are in an iterative project&lt;/strong&gt; because just like in waterfall Quality is an after-thought and you will find many, many bugs in the end of the project. The defect/error metrics will be the main focus of the project management team in this phase, up to the point that sophisticated statistical models will be created to try to predict when the project will end.&lt;br /&gt;Don't be fooled, in a project where error/defect metrics are used as the main project management tool no one is in control. The project end date is essentially unpredictable and typically management will decide (arbitrarily) when the product should be released.&lt;br /&gt;In some sophisticated Iterative projects I've seen that a length is pre-set for this life-cycle phase based on history and, ironically, that seems to hold pretty well (although not for the reasons you may think! -- stuff for another post)&lt;br /&gt;&lt;h2&gt;Agile, aka Incremental Iterative&lt;/h2&gt;&lt;br /&gt;&lt;h3&gt;Life-cycle phase: Start&lt;/h3&gt;&lt;br /&gt;In an agile project this phase is typically extremely short. A product manager will present a proposal for a new product or a new version of an existing product. This proposal will be discussed and approved. One or more teams are assigned to the project for a short period of time (called Sprint or Iteration -- confusing, I know) and produce a running product, called a Product Increment.&lt;br /&gt;&lt;strong&gt;You know you are in an Agile project when&lt;/strong&gt; the team talks about "releasing" the software starting from day one. Each development team will include testers and each Requirement (aka story or feature) will be discussed in order to create acceptance criteria (aka conditions of satisfaction, aka test cases). These will typically be agreed before the team sets out to design the implementation but can also be updated during the Sprint/Iteration.&lt;br /&gt;&lt;h3&gt;Life-cycle phase: Middle&lt;/h3&gt;&lt;br /&gt;In this life-cycle phase you will notice that the teams start to gel (if they are new) and the project gains momentum. The teams demonstrate regularly what they have accomplished and some teams will have stopped holding retrospectives, because they "have nothing to improve". The pressure is always high in an Agile project, but never too high, and in this phase of the project the team is already used to the pressure level, they know how to tackle their stakeholders.&lt;br /&gt;&lt;strong&gt;You know you are in an agile project when&lt;/strong&gt; the Product Manager is not the Product Owner and is never or almost never present in the Sprint/Iteration planning meetings. That work is delegated to someone in the team that knows the technical product and works with guidance from the product management to help the team manage and prioritize their backlog (aka Technical Product Owner).&lt;br /&gt;&lt;h3&gt;Life-cycle phase: End&lt;/h3&gt;&lt;br /&gt;This is the life-cycle in which the Agile project will differ the most from the other two life-cycle models. In the end of the project the team will still be developing new features at full speed. No one will talk about "code freeze" or "feature freeze" in the project, but the testers and project management team will closely follow the Defect list.&lt;br /&gt;&lt;strong&gt;You know that you are in an Agile project when&lt;/strong&gt; the defect/error list is short and the selection/prioritization of defects/errors is easy. Some teams will just start their iterations/sprints by picking the most important defects out of the defect backlog, others will reserve some time/bandwidth in iteration/sprint planning specifically to improve the quality of their product.&lt;br /&gt;The most noticeable difference however, will be that people will feel the pressure to add more features at the end, rather than the pressure to avoid changing any code. Agile projects typically deliver a large amount of "test" code (i.e. code that is there to test the production code) which makes them confident that they can change the code up to the last minute of the project.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Conclusion&lt;/h2&gt;&lt;br /&gt;I hope that this collection of patterns from different types of projects will help you talk about the level of agility in your project with your team.&lt;br /&gt;We should really stop bickering about "how agile we are" and start defining how an agile project "feels" like. What patterns do we see, what benefits and constraints we have, etc.&lt;br /&gt;&lt;br /&gt;At the end of the day, what matters is that you understand your context. That's the first step to changing it!&lt;br /&gt;&lt;br /&gt;Photo credit: &lt;a href="http://www.flickr.com/photos/9422878@N08/5209675326/"&gt;Bill Gracey&lt;/a&gt; @ flickr&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-4171839227360025378?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/dCcIcLNpriA" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/dCcIcLNpriA/patterns-of-agility-how-to-recognize.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://3.bp.blogspot.com/_go7f4-mVASI/TPAWQlRaIZI/AAAAAAAAAI4/NAeL1yJlzwg/s72-c/5209675326_ec0d629682_b.jpg" height="72" width="72" /><thr:total>9</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2010/11/patterns-of-agility-how-to-recognize.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-1645482487059017825</guid><pubDate>Sat, 13 Nov 2010 18:25:00 +0000</pubDate><atom:updated>2010-11-13T20:25:24.783+02:00</atom:updated><title>this is a test post with a twist...</title><description>&lt;div class='posterous_autopost'&gt;&lt;a href='http://posterous.com/getfile/files.posterous.com/duartevasco/x0ZY2Hn94xaG9aT4cmXbBMKf2Sbw68WNb6OyePoRUjcF3tEQPOO7JlQPl8Ma/photo2010.11.08_08.31.04.93.jpg.scaled.1000.jpg'&gt;&lt;img src="http://posterous.com/getfile/files.posterous.com/duartevasco/QTLcT9D2ryvcMqyvUt3L6IDUPqmaVbna4I5frPSaShH7bdatmFmafGdhyveH/photo2010.11.08_08.31.04.93.jpg.scaled.500.jpg" width="500" height="380"/&gt;&lt;/a&gt; &lt;p&gt;As it is a test post I decided to include a nice picture for you enjoyment. Hope you like it! ;)&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-1645482487059017825?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/Y1F8l08JmY8" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/Y1F8l08JmY8/this-is-test-post-with-twist.html</link><author>noreply@blogger.com (Vasco Duarte)</author><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2010/11/this-is-test-post-with-twist.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-3111010744198148601</guid><pubDate>Fri, 22 Oct 2010 18:54:00 +0000</pubDate><atom:updated>2010-10-22T22:12:46.756+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">senses</category><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">adaptation</category><category domain="http://www.blogger.com/atom/ns#">reality</category><category domain="http://www.blogger.com/atom/ns#">software</category><category domain="http://www.blogger.com/atom/ns#">project management</category><category domain="http://www.blogger.com/atom/ns#">complexity</category><category domain="http://www.blogger.com/atom/ns#">project</category><category domain="http://www.blogger.com/atom/ns#">human</category><title>What can we learn from illusions that helps us manage projects better?</title><description>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://4.bp.blogspot.com/_go7f4-mVASI/TMHh5Dboe0I/AAAAAAAAAIw/QvTQRFgUqn0/s1600/Picture+6.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 320px; height: 222px;" src="http://4.bp.blogspot.com/_go7f4-mVASI/TMHh5Dboe0I/AAAAAAAAAIw/QvTQRFgUqn0/s320/Picture+6.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5530950187677678402" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Just had the opportunity to watch a BBC documentary about illusions. &lt;br /&gt;&lt;br /&gt;The show went on to detail how we as humans get deceived by our own senses. There were 3 things that opened my eyes in that documentary:&lt;br /&gt;&lt;br /&gt;The things that caused me to think were:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;when we mix senses one of them tends to take over: this is the case when we are watching a magic act. The example on the documentary was a magician throwing a ball in the air for a few times, and then making the same gesture but keeping the ball in his had. Although the subjects eyes stayed on the face of the magician, the brain perceives the movement of the ball and later realizes that the ball has vanished.&lt;br /&gt;&lt;li&gt;some of our senses are completely/100% contextual (see image above): the example they had here is a cube with many small squares on it's faces. Some faces are lighter, others are darker. When asked about the difference between 2 specific squares in the faces of the cube people would clearly state that the colors were different. However, when you moved one of the squares to the other face of the cube, you could see that the colors were exactly the same! Our perception of color was completely dependent on the colors surrounding the colors we were comparing.&lt;br /&gt;&lt;li&gt;we can learn new senses if we are exposed to the right stimuli: The amazing examples they had for this was a blind-person that had learned to use sound and echo to see and used that learned sense to ride a bike (while blind!) The second example was quite amazing. A person would use a belt what was wired with buzzers/vibrators (like mobile phones) so that they could constantly feel where the magnetic north was. Later they would use that learned sense to navigate their way in a place while blind folded!&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;All of these observations from the documentary point to one thing. We are not wired to perceive reality. We jump to conclusions far too quickly, but we can also take advantage of that if we train our brain with the right stimuli! That was the most interesting find from this documentary.&lt;br /&gt;&lt;br /&gt;The implications are huge in a software project setting, where it is quite common that people use only a very small number of stimuli (some reports, a couple of graphs, etc.) to jump into conclusions. We need to "learn" how to sense the status of a software project, and that can be done by following the example of the person who was taught how to "feel" the magnetic north...&lt;br /&gt;&lt;br /&gt;Can you think of applications of this knowledge in your project?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-3111010744198148601?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/JSMK0B-KfB4" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/JSMK0B-KfB4/what-can-we-learn-from-illusions-that.html</link><author>noreply@blogger.com (Vasco Duarte)</author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="http://4.bp.blogspot.com/_go7f4-mVASI/TMHh5Dboe0I/AAAAAAAAAIw/QvTQRFgUqn0/s72-c/Picture+6.png" height="72" width="72" /><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2010/10/what-can-we-learn-from-illusions-that.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-5012867642536211265</guid><pubDate>Wed, 20 Oct 2010 16:56:00 +0000</pubDate><atom:updated>2012-04-09T23:01:24.827+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">less2010</category><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">conference</category><category domain="http://www.blogger.com/atom/ns#">communities</category><category domain="http://www.blogger.com/atom/ns#">research</category><category domain="http://www.blogger.com/atom/ns#">lean</category><category domain="http://www.blogger.com/atom/ns#">complexity</category><category domain="http://www.blogger.com/atom/ns#">papers</category><title>Short multimedia review of LESS 2010 conference</title><description>The &lt;a href="http://www.less2010.org/"&gt;LESS 2010 conference&lt;/a&gt; just ended on a positive note of shared knowledge, bridge building between different communities and celebration of great work in the area of Software Development.&lt;br /&gt;&lt;br /&gt;LESS was started with a great ambition of combining, from the starting point three different communities globally. Those communities were the Agile community, which is focused on the improvement of the software industry. The Lean community with both people from manufacturing as well as from software industry. And the Beyond Budgeting community, which comes from large financial and industrial companies and represents a turn in the way those companies tackle the problem of managing large organizations.&lt;br /&gt;&lt;br /&gt;I hope that you have the chance to dive into each of these communities' body of knowledge as there are great contributions from each of those complementing what we have been doing in the Agile community for nearly a decade.&lt;br /&gt;&lt;br /&gt;There was one piece of data that particularly impressed me. That data does emphasize something that many of us have felt, but putting a number on it does make it even more impressive. The first keynote presented a figure from an evaluation of work done in a company. The amount of tasks that were blocked (could not progress) was 62%. This is amazing, most of the work in that company was blocked, and so people would start new tasks and, guess what: get blocked on those. The queuing theory's prediction of "the more tasks you start the less you finish" was quite clear here.&lt;br /&gt;&lt;br /&gt;There was one talk and one paper that were highlighted by the organizers as the best in the conference. These selections are always subjective, of course. But it's worth highlighting them as they were very good sources of information about Agile adoption (the paper) and new ways of looking at the organization and inform the way we adopt Agile and Lean software development (the talk).&lt;br /&gt;&lt;br /&gt;Maarit Laanti received the award for the best paper of the conference. Here's Maarit receiving the award.&lt;br /&gt;&lt;br /&gt;Paper: Agile Transformation Study at Nokia - One Year After&lt;br /&gt;&lt;br /&gt;&lt;strike&gt;Here's Maarit receiving the award:&lt;/strike&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;UPDATE&lt;/span&gt;: This video has been removed&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.noop.nl/"&gt;&lt;br /&gt;Jurgen Appelo&lt;/a&gt; received the award for best talk in the conference. His talk: "Complexity vs. Lean, the Big Showdown". You can find Jurgen's slides &lt;a href="http://www.slideshare.net/jurgenappelo"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Here's Jurgen receiving his award:&lt;br /&gt;&lt;iframe src="http://player.vimeo.com/video/16032813" frameborder="0" height="300" width="400"&gt;&lt;/iframe&gt;&lt;p&gt;&lt;a href="http://vimeo.com/16032813"&gt;Jurgen Appelo receiving award for best presentation at LESS2010&lt;/a&gt; from &lt;a href="http://vimeo.com/duartevasco"&gt;Vasco Duarte&lt;/a&gt; on &lt;a href="http://vimeo.com/"&gt;Vimeo&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;Finally the conference ended with the gala dinner, which I thought was a wonderful way to end the event where we meet so many new people. We celebrate the fact that we spent time together trying to understand the issues that we face every day, but with the help of different points of view and mental frameworks.&lt;br /&gt;&lt;br /&gt;Very good 3 days. I'm already looking forward for next year's conference!&lt;br /&gt;&lt;br /&gt;PS: Watch this space as I'll publish an amazing surprise that the LESS2010 organizers prepared for the participants! :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-5012867642536211265?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/xhzAawY5Qak" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/xhzAawY5Qak/short-multimedia-review-of-less-2010.html</link><author>noreply@blogger.com (Vasco Duarte)</author><thr:total>2</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2010/10/short-multimedia-review-of-less-2010.html</feedburner:origLink></item><item><guid isPermaLink="false">tag:blogger.com,1999:blog-18900903.post-7704905287976343194</guid><pubDate>Mon, 20 Sep 2010 13:34:00 +0000</pubDate><atom:updated>2010-09-20T16:38:39.978+03:00</atom:updated><category domain="http://www.blogger.com/atom/ns#">strategy</category><category domain="http://www.blogger.com/atom/ns#">product owner</category><category domain="http://www.blogger.com/atom/ns#">agile</category><category domain="http://www.blogger.com/atom/ns#">vision</category><category domain="http://www.blogger.com/atom/ns#">organization</category><category domain="http://www.blogger.com/atom/ns#">agileee</category><category domain="http://www.blogger.com/atom/ns#">product design</category><title>Short video introduction to my sessions at Agile Eastern Europe 2010</title><description>In about 3 weeks I'll be flying to Kiev and meeting some of the best Agilists in the planet. But it won't be just fun and games for me. I'm already stressing about my sessions.&lt;br /&gt;&lt;br /&gt;Check out the video introduction of my sessions at Agile Eastern Europe and, while you are at it why not book your flights and hotel and joining us there?&lt;br /&gt;&lt;br /&gt;See you at Agile Eastern Europe in Kiev!&lt;br /&gt;&lt;br /&gt;&lt;iframe src="http://player.vimeo.com/video/15121279" width="400" height="300" frameborder="0"&gt;&lt;/iframe&gt;&lt;p&gt;&lt;a href="http://vimeo.com/15121279"&gt;Introduction to my sessions at Agile Eastern Europe 2010&lt;/a&gt; from &lt;a href="http://vimeo.com/duartevasco"&gt;Vasco Duarte&lt;/a&gt; on &lt;a href="http://vimeo.com"&gt;Vimeo&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/18900903-7704905287976343194?l=softwaredevelopmenttoday.blogspot.com' alt='' /&gt;&lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/SoftwareDevelopmentToday/~4/Rh11skZzduM" height="1" width="1"/&gt;</description><link>http://feedproxy.google.com/~r/SoftwareDevelopmentToday/~3/Rh11skZzduM/short-video-introduction-to-my-sessions.html</link><author>noreply@blogger.com (Vasco Duarte)</author><thr:total>0</thr:total><feedburner:origLink>http://softwaredevelopmenttoday.blogspot.com/2010/09/short-video-introduction-to-my-sessions.html</feedburner:origLink></item></channel></rss>

