<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-2958336219564467691</id><updated>2011-08-11T04:57:53.327-07:00</updated><title type='text'>Gatesworld</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://sean-gates.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2958336219564467691/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://sean-gates.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>SeanGee</name><uri>http://www.blogger.com/profile/11028825503859995948</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_8t5h_m7trew/Szp-r0QG6BI/AAAAAAAABcU/ACHLBlOYmZc/S220/russia+30.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>3</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-2958336219564467691.post-8677115595538417221</id><published>2011-08-11T04:57:00.000-07:00</published><updated>2011-08-11T04:57:53.334-07:00</updated><title type='text'>Who is to blame? | Gatesworld</title><content type='html'>&lt;a href="http://www.gatesworld.co.uk/who-blame"&gt;Who is to blame? | Gatesworld&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2958336219564467691-8677115595538417221?l=sean-gates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.gatesworld.co.uk/who-blame' title='Who is to blame? | Gatesworld'/><link rel='replies' type='application/atom+xml' href='http://sean-gates.blogspot.com/feeds/8677115595538417221/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sean-gates.blogspot.com/2011/08/who-is-to-blame-gatesworld.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2958336219564467691/posts/default/8677115595538417221'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2958336219564467691/posts/default/8677115595538417221'/><link rel='alternate' type='text/html' href='http://sean-gates.blogspot.com/2011/08/who-is-to-blame-gatesworld.html' title='Who is to blame? | Gatesworld'/><author><name>SeanGee</name><uri>http://www.blogger.com/profile/11028825503859995948</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_8t5h_m7trew/Szp-r0QG6BI/AAAAAAAABcU/ACHLBlOYmZc/S220/russia+30.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2958336219564467691.post-3128667298157422035</id><published>2010-05-10T15:04:00.001-07:00</published><updated>2010-05-10T15:04:20.407-07:00</updated><title type='text'>The importance of estimating in Scrum</title><content type='html'>&lt;p&gt;I often hear business managers reject agile processes because they cannot accept &lt;em&gt;&lt;strong&gt;vague estimates&lt;/strong&gt;&lt;/em&gt;. These same managers are usually surprised to&amp;#160; learn that agile estimation is far more accurate and disciplined than traditional methods. &lt;/p&gt; &lt;a name='more'&gt;&lt;/a&gt;  &lt;p&gt;Some of the misconceptions stem from rogue developers (or teams) who refuse to be pinned down to an estimate – often out of fear of the repercussions of getting it wrong. As a business manager – or product owner you have an absolute right to accurate estimates. You need to plan accurately, evaluate your business case and ultimately commit to spending the money. Scrum provides a solid mechanism for providing these accurate estimates. &lt;/p&gt;  &lt;p&gt;This article makes no attempt to explain how estimation works because that is covered in lots of places. Instead it will try to provide some tips for accuracy and highlight some common pitfalls.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;You can’t estimate what you don’t know.&lt;/h3&gt;  &lt;p&gt;Gut feel doesn’t work. I have often been asked to estimate a project on the basis of a one paragraph description on the&lt;strong&gt;&lt;em&gt; basis of my experience&lt;/em&gt;&lt;/strong&gt;. Sorry but I can’t do that. It doesn’t matter whether you are in an agile environment or not. Equally it is not possible to accurately estimate based on part of the requirement with the rest of the details to follow once the project is underway. If its important enough to require an accurate estimate, a business case and funding its also important enough to spend time, effort and money to establish the product backlog and get the estimates right.&lt;/p&gt;  &lt;p&gt;Very often a major project justifies a separate &lt;strong&gt;&lt;em&gt;initiation&lt;/em&gt;&lt;/strong&gt; project to establish these. And why not! In the days when I was a consultant for a large waterfall based organisation it was fairly common to provide a quote for the specification and estimation process and only deliver the development estimate once this had been completed.Just because Scrum doesn’t require big up front design doesn’t absolve us form the responsibility of understanding what it is that needs to be done. Sometimes this is referred to as sprint zero, with the objective of this (non) sprint being to deliver the product backlog, estimates and release plan. Those who advocate the sprint zero concept generally agree that this should be shorter than a usual sprint. Great for small projects but if that’s not enough then a separate project may be warranted.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Tackle the&lt;em&gt; risks&lt;/em&gt; early&lt;/h3&gt;  &lt;p&gt;Often we hear scrum practitioners talk about commitment based planning. In essence this means asking the team to commit to what they believe they will achieve in the first sprint and using this as the starting velocity. This can work if the team is established and the work is familiar. It is not feasible when the work is unfamiliar or we are proposing to use different technologies or platforms. The only way to establish an accurate velocity projection is by doing some of the work. This can be undertaken as part of the initiation project or sprint zero and should be planned and budgeted.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Recognise the difference between an estimate and a commitment&lt;/h3&gt;  &lt;p&gt;Failure to do so inevitably leads to padding. New requirements may emerge, external factors may change or we may simply have got it wrong (especially if we tried to short circuit the estimating and planning). Part of the Scrum process is the concept of &lt;strong&gt;&lt;em&gt;insect and adapt&lt;/em&gt;&lt;/strong&gt;. This also applies to estimates and projections. My own experience has been that by the end of sprint 3 the velocity can be established and the burn down projection is pretty accurate. It is vital to &lt;strong&gt;&lt;em&gt;inspect and adapt&lt;/em&gt;&lt;/strong&gt; after every sprint. If your velocity is way off expectations now is the time to say so. It would be foolish to believe that you can pull it back by working harder. The beauty of tracking velocity is that it is based on actual achievement, and if that is different to what you expected you should highlight and plan around this early.&lt;/p&gt;  &lt;p&gt;This is one of the real benefits of using relative sizing and estimation based on functionality rather than activity. In traditional waterfall approaches the first activity would be specification. What does it really mean if this overruns by 50%? Do we adjust the entire project by 50%? This is not really valid because there is no relationship between the size of the specification and the rest of the project. Or do we just assume that everything else is going to work to plan. Equally if the specification is completed exactly on schedule this provides no indication of how the rest of the project will go. &lt;/p&gt;  &lt;p&gt;If we use relative sizing we can accurately forecast the rest of the project based on current performance because the relationships remain constant.&lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;What about contingency&lt;/h3&gt;  &lt;p&gt;This question will usually be asked by financial managers and those accustomed to projects exceeding budgets and / or schedules. Well what about it! Scrum estimates are based on how many story points &lt;strong&gt;&lt;em&gt;the team&lt;/em&gt;&lt;/strong&gt; can achieve in a given time. We know how many story points we have to get through. We know what the team can achieve per sprint and we know what the team costs to run. If the scrum disciplines are followed and we continually inspect and adapt the project should come in slightly cheaper than the original estimate. Why is this? Well, we assume the team works full time on the project. I am not suggesting that they don’t but the cost estimate may be something like this:&lt;/p&gt;  &lt;table border="1" cellspacing="0" cellpadding="2" width="400"&gt;&lt;tbody&gt;     &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Cost of team per sprint (a)&lt;/td&gt;        &lt;td valign="top" width="200"&gt;£5000&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Number of sprints (b)&lt;/td&gt;        &lt;td valign="top" width="200"&gt;26&lt;/td&gt;     &lt;/tr&gt;      &lt;tr&gt;       &lt;td valign="top" width="200"&gt;Total Cost&amp;#160; (axb)&lt;/td&gt;        &lt;td valign="top" width="200"&gt;£130 000&lt;/td&gt;     &lt;/tr&gt;   &lt;/tbody&gt;&lt;/table&gt;  &lt;p&gt;This does not take into account bank holidays, annual leave, sickness or time spent on other activities such as training, admin etc. &lt;/p&gt;  &lt;p&gt;&amp;#160;&lt;/p&gt;  &lt;h3&gt;Remember the basics&lt;/h3&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;Inspect and adpapt!&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;Scrum has no formal change control procedures because scrum itself is about managing change. When new requirements are added to the backlog we need to review our estimates and forecasts. Because we use a prioritised backlog to deliver the highest business value first this may be as simple as recognising that the items at the bottom of the list won’t get done. This is managed by the product owner. Sometimes this may not be possible and the time and / or costs may need to be revisited. We cannot regard the original product backlog and estimates as a contract and expect the ability to add requirements at will and have these delivered in addition to the original list at the same cost. (It’s amazing how many business managers fail to – or&amp;#160; choose not to – recognise this.)&lt;/p&gt;  &lt;p&gt;&lt;strong&gt;&lt;em&gt;Define what done means up front!&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p&gt;We want to avoid surprises. If the customer is expecting user documentation as part of the release and we are assuming that this will happen after we have completed our bit the product will not get released on schdule. This is just one example but one that often gets overlooked. &lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2958336219564467691-3128667298157422035?l=sean-gates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sean-gates.blogspot.com/feeds/3128667298157422035/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sean-gates.blogspot.com/2010/05/importance-of-estimating-in-scrum.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2958336219564467691/posts/default/3128667298157422035'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2958336219564467691/posts/default/3128667298157422035'/><link rel='alternate' type='text/html' href='http://sean-gates.blogspot.com/2010/05/importance-of-estimating-in-scrum.html' title='The importance of estimating in Scrum'/><author><name>SeanGee</name><uri>http://www.blogger.com/profile/11028825503859995948</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_8t5h_m7trew/Szp-r0QG6BI/AAAAAAAABcU/ACHLBlOYmZc/S220/russia+30.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-2958336219564467691.post-5605769749592590589</id><published>2009-12-29T14:13:00.000-08:00</published><updated>2009-12-29T14:56:57.756-08:00</updated><title type='text'>Time for Linux users to get a life</title><content type='html'>I was bored this morning and spent some time idly browsing around slashdot. In amongst the usual collection of  "Microsoft is Evil" posts I stumbled across this gem:&lt;br /&gt;&lt;blockquote&gt;Those who fear the CLI shouldn't even own a freaking computer. Crybabies and whiners. "Oh, I can't do ANYTHING, unless there is a pretty picture for it!!"&lt;br /&gt;Sit your sorry ass down with the manual for MSDOS 5, 6, or 6.22 and LEARN the basics of computing. Then, pick up another basic - it's called BASIC. From there, you can branch out to some scripting languages.&lt;br /&gt;Run a machine for 6 months with absolutely NO GUI installed - then you might be competent to talk about how good, how bad, or how inconvenient any part of a computer might be. Including the CLI.&lt;br /&gt;You probably can't operate a standard shift automobile, or roll a window down unless it is electrically powered.&lt;br /&gt;Mindless putz.&lt;br /&gt;How do you avoid putting your bra on backwards?&lt;/blockquote&gt;Well I'm a Linux user and administrator. I personally happen to believe that the Linux desktop is ready for prime time. I am also an advocate of open source software and would love to see Linux more widely adopted.&lt;br /&gt;&lt;br /&gt;Many distros are ready for this and are intuitive, stable and easy for non technical users to sink their teeth into. The biggest shortcoming is documentation, or lack thereof. This is widely acknowledged in the community and there are initiatives to improve this.&lt;br /&gt;&lt;br /&gt;There is still a widespread belief that Linux is for geeks and that these geeks won't help mere mortals. And while that belief persists Windows will continue to be the dominant desktop OS. The average user does not care how stuff works and does not need to; in the same way that a driver does not need to understand how an internal combustion engine works.&lt;br /&gt;&lt;br /&gt;Like many others I use both Google and community forums as a resource. Unfortunately many Linux users perpetuate the stereotype. Comments like "Google is your friend", "this is documented elsewhere" or "go and try on your own for a few days before asking on here" are simply not helpful and will not convince new users that this is the way to go. I have happily dropped several open source projects for this very reason (and some of these were very good products).&lt;br /&gt;&lt;br /&gt;As an IT pro I am happy to do the research, but if the information is not easily found I am simply not prepared to spend days trying to figure out simple problems. I can go onto a motorcycle forum and find 100 threads on recommended Tyre pressures. Not 100 posts saying that this has already been discussed.&lt;br /&gt;&lt;br /&gt;Fortunately there are helpful Linux users out there and not all communities are made up of geek cliques - but for the rest of you:&lt;br /&gt;&lt;br /&gt;You really can't criticize others for their choice of OS if you won't help them understand yours. A computer is just a tool for doing a job. Most modern operating systems are equipped to meet the needs of the average user. Its not really surprising they choose the one where other users don't treat them like fools.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/2958336219564467691-5605769749592590589?l=sean-gates.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://sean-gates.blogspot.com/feeds/5605769749592590589/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://sean-gates.blogspot.com/2009/12/time-for-linux-users-to-get-life.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/2958336219564467691/posts/default/5605769749592590589'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/2958336219564467691/posts/default/5605769749592590589'/><link rel='alternate' type='text/html' href='http://sean-gates.blogspot.com/2009/12/time-for-linux-users-to-get-life.html' title='Time for Linux users to get a life'/><author><name>SeanGee</name><uri>http://www.blogger.com/profile/11028825503859995948</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://2.bp.blogspot.com/_8t5h_m7trew/Szp-r0QG6BI/AAAAAAAABcU/ACHLBlOYmZc/S220/russia+30.jpg'/></author><thr:total>0</thr:total></entry></feed>
