<?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-21327984</id><updated>2011-11-17T19:34:57.362-06:00</updated><category term='devlink'/><category term='comfortably scrum'/><category term='team foundation server api'/><category term='installation'/><category term='abetterteam.org'/><category term='forecasting'/><category term='books'/><category term='penny game'/><category term='development'/><category term='sprint task board'/><category term='Conchango'/><category term='mark mydland'/><category term='BizSpark'/><category term='msbuild'/><category term='scrum master'/><category term='team foundation server 2010'/><category term='jeff sutherland'/><category term='troubleshooting'/><category term='iiba'/><category term='user group'/><category term='eScrum'/><category term='agile'/><category term='survey'/><category term='software craftsmanship'/><category term='compuware'/><category term='2008'/><category term='xp'/><category term='presentations'/><category term='nokia test'/><category term='power point'/><category term='estimating'/><category term='codestock'/><category term='linq'/><category term='reports'/><category term='pdc'/><category term='radio tfs'/><category term='thought leadership'/><category term='Practices of an Agile Developer'/><category term='Venkat Subramaniam'/><category term='deskpins'/><category term='workign directory'/><category term='Task Board for Team System'/><category term='pmi'/><category term='scrum team'/><category term='team system'/><category term='team foundation server'/><category term='jeff blakenburg'/><category term='rational team concert'/><category term='Andy Hunt'/><category term='scrum'/><category term='build'/><category term='virtual pc image'/><category term='discipline'/><category term='twitter'/><category term='visual studio team system test edition'/><category term='visual studio 2010'/><category term='VersionOne'/><category term='book review'/><category term='joe little'/><category term='microsoft'/><category term='design'/><category term='quick launch'/><category term='product backlog'/><category term='certified scrum master'/><category term='requirements gathering'/><category term='architecture'/><category term='agile tools'/><category term='agile 2009'/><category term='volunteers'/><category term='developer community'/><category term='microsoft MVP'/><title type='text'>tommynorman.blog</title><subtitle type='html'>I sound my barbaric yawp over the roofs of the world. - Walt Whitman</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>90</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-21327984.post-1174858090856732004</id><published>2010-05-13T22:48:00.001-05:00</published><updated>2010-05-13T22:48:34.544-05:00</updated><title type='text'>Agile 2010 Conference Location Move</title><content type='html'>&lt;p&gt;&lt;a href="http://lh4.ggpht.com/_nzj0JxErQqA/S-zIEJWDuQI/AAAAAAAAAZM/FhGK3Rjf3XI/s1600-h/Agile2010Logo%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: block; float: none; margin-left: auto; border-top: 0px; margin-right: auto; border-right: 0px" title="Agile2010Logo" border="0" alt="Agile2010Logo" src="http://lh5.ggpht.com/_nzj0JxErQqA/S-zIEUjXnjI/AAAAAAAAAZQ/U1L-JOXO-OE/Agile2010Logo_thumb%5B1%5D.png?imgmax=800" width="244" height="81"&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt; Due to the damage caused to the &lt;a href="http://www.gaylordhotels.com/gaylord-opryland/"&gt;Opryland Hotel&lt;/a&gt; from Nashville’s &lt;a href="http://www.youtube.com/watch?v=VfL5j9ckcyo"&gt;severe flooding&lt;/a&gt; this month, the location for the &lt;a href="http://www.agilealliance.org/"&gt;Agile Alliance’s&lt;/a&gt; &lt;a href="http://agile2010.agilealliance.org/"&gt;Agile 2010 conference&lt;/a&gt; has been moved to The Walt Disney World Dolphin Hotel in Orlando, Florida. The dates will remain the same (August 9 - 13th). You can find more details about the move &lt;a href="http://agile2010.agilealliance.org/faq.html"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Since I live in Nashville, it is doubly sad for me since I will most likely not be able to attend this year and I hate to see the economic impact of a large conference like that leaving the city especially now. I understand that there were no venues in Nashville for the same dates available, but I wish they could have stayed.&lt;/p&gt; &lt;p&gt;Good luck to &lt;a href="http://twitter.com/jamesnewkirk"&gt;Jim Newkirk&lt;/a&gt; and the conference staff in organizing the move and I am sure it will be another great conference this year.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-1174858090856732004?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/1174858090856732004/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=1174858090856732004' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1174858090856732004'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1174858090856732004'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2010/05/agile-2010-conference-location-move.html' title='Agile 2010 Conference Location Move'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_nzj0JxErQqA/S-zIEUjXnjI/AAAAAAAAAZQ/U1L-JOXO-OE/s72-c/Agile2010Logo_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5815026263146166007</id><published>2010-04-11T22:45:00.001-05:00</published><updated>2010-04-11T22:45:35.068-05:00</updated><title type='text'>Nashville Agile User Group: Getting Our Act Together</title><content type='html'>&lt;p&gt;I became involved with the Nashville Agile User Group a few years ago, first as an attendee and then helping out as an organizer. As with most groups with volunteer leadership, the group’s activity rises and falls with the free time of those organizing it. Both my self and &lt;a href="http://twitter.com/jmikres"&gt;Jeff Mikres&lt;/a&gt; have tried to keep things consistent, but its been hard in the last year to get the group back to a regular meeting schedule and drum up more attendance.&lt;/p&gt; &lt;p&gt;With the &lt;a href="http://agilealliance.com/"&gt;Agile Alliance’s&lt;/a&gt; annual conference, &lt;a href="http://agile2010.agilealliance.org/"&gt;Agile 2010&lt;/a&gt;, being held here in Nashville this year, I think this is a golden opportunity to grow the group as well as our local Agile community. We had a &lt;a href="http://tommynorman.blogspot.com/2010/03/agile-alliance-visits-nashville.html"&gt;reception in March&lt;/a&gt; with several of the Agile Alliance board members to help kick things off and I am hoping that leading up to August we can keep up the momentum. &lt;/p&gt; &lt;p&gt;Here’s an overview of what going on:&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Monthly Meetings&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Our monthly meetings are held the 2nd Monday of each month. We moved them to 12 PM per the requests of those who regularly attended. We are currently hosted at the &lt;a href="http://www.vaco.com/nashville"&gt;Vaco&lt;/a&gt; offices, but have opened up the possibility of rotating meeting locations every 3 months to different parts of town so everyone does not always have to drive out to Brentwood.&lt;/p&gt; &lt;p&gt;These meetings are run in an open space style with topics suggested and voted on in the meeting held previously. And even though we always start with that topic in mind, if the majority of those in attendance want to talk about something else, then so be it!&lt;/p&gt; &lt;p&gt;We do have plans to take advantage of our affiliation with the Agile Alliance to have some nationally renown thought leaders in the Agile community take part in meetings in the future. They provide funds for expenses for bringing in speakers that we can use.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Our Website (AgileNashville.com)&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;Our old website was a fairly active &lt;a href="http://groups.google.com/group/agilenashville"&gt;Google forum&lt;/a&gt; that eventually died out. We then moved to a &lt;a href="http://nashvilleagileusergroup.ning.com/"&gt;site hosted on Ning.com&lt;/a&gt; that offered a bit more features. The Agile Alliance is experimenting with their own social networking site for user groups to use and while we have a &lt;a href="http://community.agilealliance.org/Groups/Nashville_Agile_User_Group"&gt;site up there now&lt;/a&gt;, until that becomes official and supports all the features we need, we will still use our Ning site as our main website.&lt;/p&gt; &lt;p&gt;I encourage everyone to participate in the forums and online polls on the site because that really helps us gauge interest and preferences of our members.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;Another Agile Alliance Reception&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;We are looking into having another (albeit somewhat smaller reception) with the conference planning committee from the Agile Alliance later in April. They will only be here over the weekend and we hope to host something on a Monday near the airport so they can participate. Check for updates for this on the &lt;a href="http://nashvilleagileusergroup.ning.com/events"&gt;website events page&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;We Need a New Logo&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;I am asking for helping creating a new logo for the user group. We would like to incorporate something about Nashville. I ham-fisted one out, but it really is only there until someone with better artistic capabilities and create us one. You can &lt;a href="http://nashvilleagileusergroup.ning.com/forum/topics/we-need-a-new-logo"&gt;post those to the website&lt;/a&gt; as well.&lt;/p&gt; &lt;p&gt;All in all I think this is going to be a great year for the Nashville Agile community and we would love more people to get involved with the user group. Please sign up on the website and spread the word around!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-5815026263146166007?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5815026263146166007/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5815026263146166007' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5815026263146166007'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5815026263146166007'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2010/04/nashville-agile-user-group-getting-our.html' title='Nashville Agile User Group: Getting Our Act Together'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-8104360681547709752</id><published>2010-04-11T22:11:00.001-05:00</published><updated>2010-04-11T22:11:58.214-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><title type='text'>“Don’t Read the Architecture Documentation, It is Not Up To Date Anymore.”</title><content type='html'>&lt;p&gt;You can replace “Architecture Documentation” with any kind of artifact used to describe the design or implementation of your application. This can also apply to requirements, but for this article we’ll stick with technical documents. This happens quite a bit in shops that have a heavy waterfall or big design up front process. The architects work feverishly at the beginning of a development effort to think up an application architecture that will meet every expected need for the entire solution for the duration of the project. They will then painstakingly record this technical wonder in various forms of documentation including lots of UML diagrams because if it’s documented in UML, it has to be right. And much like the architect in the &lt;a href="http://www.youtube.com/watch?v=uQSXNq7b8GQ&amp;amp;feature=related"&gt;second Matrix movie&lt;/a&gt;, they believe that their design is “ a work of art, flawless, sublime.” &lt;/p&gt; &lt;p&gt;And most often when you get into the trenches of actually developing the software, ideas that sounded good on paper often fall apart in implementation and have to be modified to varying degrees. And like good little developers we immediately run back to the now out of date documentation and correct it. Right? Of course, and we deliver the updated documentation to &lt;a href="http://www.bigfootencounters.com/"&gt;Bigfoot&lt;/a&gt; on magical &lt;a href="http://i61.photobucket.com/albums/h65/BrendonBaby/my%20stuff/unicorn.jpg"&gt;unicorns&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;So why does this happen?&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;strong&gt;Too Much Design Detail Up Front&lt;/strong&gt; – Unless the application you are building is exactly like that of those you have built many times before with the exact same team, on the exact same infrastructure, with the exact same technology, and you have at your disposal the ability to manipulate the world to be the exact same as when you developed each of those previous applications, your lovely design will most likely have to be modified during implementation. Often we try to mitigate this fact by documenting even more as if the sheer onslaught of technical details will negate this age old truth.  &lt;li&gt;&lt;strong&gt;Concentrating on Building Frameworks and Not Features&lt;/strong&gt; – As developers we love to solve the world’s problems whether it asked us to or not. The wasteland of shelfware is littered with the bodies of “flavor of the month” frameworks well intended developers created in hopes of alleviating all foreseeable issues in the future. This also tends to make the design more complex (although most who do it argue the opposite), and requires a certain level of documentation up front just so the developers who work on it can get their heads around how to implement and use it.&lt;br&gt;&lt;br&gt;This can also result in bloated software that is hard for others to maintain. While a solid architecture often leverages industry proven frameworks like &lt;a href="http://msdn.microsoft.com/en-us/library/aa697427(VS.80).aspx"&gt;Entity Framework&lt;/a&gt;, &lt;a href="http://sourceforge.net/projects/nhibernate/"&gt;nHibernate&lt;/a&gt;, etc., it is important to weigh each framework you adopt (or write yourself) with the justification of the cost it will incur. We must also look at many of the non-technical implications that can have a large part in the decision like the level of expertise of the people implementing and supporting the application.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Here are some practices and principles I think help:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;strong&gt;Emergent Design&lt;/strong&gt; – Some think Agile prescribes no design and just slinging code from the start of a project. This is a common misconception. The practice of &lt;a href="http://www.amazon.com/Emergent-Design-Evolutionary-Professional-Development/dp/0321509366"&gt;emergent design&lt;/a&gt; is more about designing at a high level initially to clarify the big technical questions, but using tests and developing in iterations to validate design choices as you make them. It is a counter to the so called “ivory tower” architects who stop writing production code and work in more theoretical matters. There are times when this type of work is very much warranted but some detailed specs along with a reference application cannot be deemed as technical gospel until it is proven with production ready implementations. How much design you do up front and how much you allow to evolve along the way is a very contextual decision that should be evaluated for each project.  &lt;li&gt;&lt;strong&gt;Design as a Team&lt;/strong&gt; – When you design the application as a team, then there is less need to document up front since everyone will be on the same page. It also tends to ensure developers stick to the architecture and design approaches, since they had a hand in crafting them. Another benefit is that junior developers are exposed to elements of the solution and the process for creating it that they might not have had a chance to experience if the application is designed only by the senior team members and then handed to them to implement later. &lt;li&gt;&lt;strong&gt;The YAGNI Principle&lt;/strong&gt; – This stands for &lt;em&gt;&lt;a href="http://www.xprogramming.com/Practices/PracNotNeed.html"&gt;“You Ain’t Gonna Need It”&lt;/a&gt;&lt;/em&gt; (I’m southern so we use ain’t instead of aren’t) which is a mantra used by Agile programmers to resist the urge to gold plate software. The more bells and whistles we try to add, the more moving parts it adds and the more points of possible failure we add. I have definitely seen this taken way too literally but stopping and really thinking about whether some extra technical detail is truly needed to meet the business need is always a good practice. The more well known and less &lt;a href="http://www.artima.com/weblogs/viewpost.jsp?thread=36529"&gt;controversial version of this is KISS (keep it simple stupid)&lt;/a&gt;.  &lt;li&gt;&lt;strong&gt;Self Documenting Code&lt;/strong&gt; – Agile does not mean you do not document. If someone tells you that, then you have my permission to punch them in the ear. Read the &lt;a href="http://agilemanifesto.org/"&gt;Agile Manifesto&lt;/a&gt; and you will see it says &lt;em&gt;comprehensive&lt;/em&gt; documentation. So there is a certain level of up front design and documentation, but treat that documentation as perishable the second you implement it in code. Once the code is written then the &lt;em&gt;“Code is the truth.”&lt;/em&gt; Writing the code in a way that its intent is obvious, even to those not extremely technical, is a great way to preserve the truth of the design. Aside form the code, there are many applications out there that can pull information out of the code into more formal documentation and diagrams so that the intent can be expressed outside of code such as &lt;a href="http://ndoc.sourceforge.net/"&gt;nDoc&lt;/a&gt;, Visual Studio 2010’s &lt;a href="http://msdn.microsoft.com/en-us/library/dd409431(VS.100).aspx"&gt;Architecture Explorer&lt;/a&gt; features, and many more.  &lt;ul&gt; &lt;li&gt;&lt;strong&gt;A Side Note on Code Comments&lt;/strong&gt; – I have attended quite a few sessions/presentations over the years that say comments are evil. Well you can shut your cake holes because I like comments. I am not talking about silly, obvious comments like this:&lt;br&gt;&lt;br&gt;&lt;font color="#008000"&gt;//Declare new Customer.&lt;br&gt;&lt;/font&gt;&lt;font color="#00ffff"&gt;Customer&lt;/font&gt; newCustomer = &lt;font color="#0000ff"&gt;new&lt;/font&gt; &lt;font color="#00ffff"&gt;Customer&lt;/font&gt;();&lt;br&gt;&lt;br&gt;I am talking about things like XML comments in C# for all public members of a class, and sparingly used comments that sometimes explain why something was implemented the way it was. I also follow the practice of using comments as the stubs for the code I am about to write (something I picked up years ago from &lt;a href="http://www.cc2e.com/"&gt;Code Complete&lt;/a&gt;), but I normally replace those comments with the actual code.&lt;br&gt;&lt;br&gt;But do understand that when I say “self documenting code”, that does not refer to comments, but rather the formatting and naming of those code structures. If I have to read your comments to understand the intent of your code then I do take issue with that.&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-8104360681547709752?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/8104360681547709752/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=8104360681547709752' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8104360681547709752'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8104360681547709752'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2010/04/dont-read-architecture-documentation-it.html' title='“Don’t Read the Architecture Documentation, It is Not Up To Date Anymore.”'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4696545170148747271</id><published>2010-03-24T12:45:00.001-05:00</published><updated>2010-03-24T12:45:13.757-05:00</updated><title type='text'>The Agile Alliance Visits Nashville</title><content type='html'>&lt;p&gt;On March 10th, the &lt;a href="http://www.agilealliance.org/show/1647"&gt;board of the Agile Alliance&lt;/a&gt; held a reception here in downtown Nashville at &lt;a href="http://www.bbkingclubs.com/index.php?page=nashhome"&gt;B.B. King’s Blues Club.&lt;/a&gt; They were in town to tour the &lt;a href="http://www.gaylordhotels.com/gaylord-opryland/"&gt;Gaylord Opryland Hotel&lt;/a&gt; where they will be hosting the &lt;a href="http://agile2010.agilealliance.org/"&gt;Agile 2010 conference&lt;/a&gt; in August.&lt;/p&gt; &lt;p&gt;The reception gave local Agile enthusiasts the chance to sit down with these thought leaders and have some great conversations. &lt;a href="http://twitter.com/wadobb"&gt;Benny Baggott&lt;/a&gt;, from &lt;a href="http://www.ingrambook.com/default.aspx"&gt;Ingram Book&lt;/a&gt;, told me how great it was to chat with &lt;a href="http://blog.crisp.se/henrikkniberg/"&gt;Henrik Kniberg&lt;/a&gt; since his book “&lt;a href="http://www.crisp.se/henrik.kniberg/ScrumAndXpFromTheTrenches.pdf "&gt;Scrum and XP from the Tranches&lt;/a&gt;” was very influential in his organization's adoption of Agile practices. I talked at length with &lt;a href="http://twitter.com/Morendil"&gt;Laurent Bossavit&lt;/a&gt;&amp;nbsp; about Agile adoption, certifications, and more. It was a real treat.&lt;/p&gt; &lt;p&gt;Phil Brock gave us a sneak peak the new community section of the Agile Alliance website and invited the &lt;strong&gt;Nashville Agile User Group&lt;/strong&gt; to be a test group for the site. If you are interested, please sign up &lt;a href="http://community.agilealliance.org/Groups/Nashville_Agile_User_Group"&gt;on the site&lt;/a&gt; and provide us your feedback. The hope is that more groups will use this site which will provide a cohesive community.&lt;/p&gt; &lt;p&gt;&lt;a href="http://jamesnewkirk.typepad.com/"&gt;Jim Newkirk&lt;/a&gt; gave us an overview of the upcoming conference in August and opened the door for anyone in Nashville who would like to volunteer. If you are interested &lt;a href="http://twitter.com/tommynorman"&gt;hit me on Twitter&lt;/a&gt; and I will get you in touch with Jim.&lt;/p&gt; &lt;p&gt;It was a great night and there were many new faces in the crowd and I really hope this will translate into surge in activity in the local Agile community. So sign up on our new website and we will see you at our next meeting!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4696545170148747271?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4696545170148747271/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4696545170148747271' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4696545170148747271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4696545170148747271'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2010/03/agile-alliance-visits-nashville.html' title='The Agile Alliance Visits Nashville'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5316028261675793953</id><published>2010-03-02T15:47:00.001-06:00</published><updated>2010-03-02T15:47:57.085-06:00</updated><title type='text'>MVP Summit 2010</title><content type='html'>&lt;p&gt;&lt;a href="http://lh5.ggpht.com/_nzj0JxErQqA/S42HienivGI/AAAAAAAAAZE/yRuszCU2BuA/s1600-h/4368620611_d1ce34e06a%5B3%5D.jpg"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; margin-left: 0px; border-top: 0px; margin-right: 0px; border-right: 0px" title="4368620611_d1ce34e06a" border="0" alt="4368620611_d1ce34e06a" align="left" src="http://lh5.ggpht.com/_nzj0JxErQqA/S42Hiwxg8yI/AAAAAAAAAZI/YctyFK4_H7E/4368620611_d1ce34e06a_thumb%5B1%5D.jpg?imgmax=800" width="244" height="164"&gt;&lt;/a&gt;Last week was Microsoft’s MVP Summit in Redmond, WA and this was my first year to attend. The week was packed with tons of content and events and it was hard to decide what to go to at times. The Team System MVPs (now known as the Visual Studio ALM MVPs) basically sequestered ourselves in a room on Microsoft campus with members from the Visual Studio and Team Foundation Server product teams rotating through to get our input on the upcoming RTM for Visual Studio 2010 as well as what we would like to see in the next version (or service pack). It was great to have such immediate access to the very people who write the software we use everyday.&amp;nbsp; &lt;/p&gt; &lt;p&gt;It was amazing how many smart people were in those rooms and I got to finally meet many of the people I interact with online regularly in person including &lt;a href="http://www.controlstatements.com/"&gt;JB Brown&lt;/a&gt;, &lt;a href="http://twitter.com/mickey_gousset"&gt;Mickey Goussett&lt;/a&gt;, &lt;a href="http://www.jeffreyhunsaker.com/"&gt;Jeff Hunsaker&lt;/a&gt;, &lt;a href="http://twitter.com/christullier"&gt;Chris Tullier&lt;/a&gt; (who was nice enough to show me around Seattle on my last day), and more.&lt;/p&gt; &lt;p&gt;&lt;a href="https://www.xing.com/profile/Neno_Loje"&gt;Neno Loje&lt;/a&gt; organized a great gift for &lt;a href="http://blogs.msdn.com/bharry/"&gt;Brian Harry&lt;/a&gt; of a Chuck Norris style T-Shirt with sayings such as “Brian Harry’s planning poker deck has only the zero card.” You can get your very own &lt;a href="http://www.cafepress.com/cp/customize/product.aspx?clear=true&amp;amp;number=%20430766908"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;I have to say to all those people who bash Microsoft for not supporting the developer community, they could not be more wrong. Not only is the MVP program and the summit a great way to recognize thought leaders in the community, but it’s a valuable opportunity for us to provide them with feedback. Their evangelist program is also very active in supporting the local communities.&lt;/p&gt; &lt;p&gt;I just hope I get to go back next year!&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-5316028261675793953?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5316028261675793953/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5316028261675793953' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5316028261675793953'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5316028261675793953'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2010/03/mvp-summit-2010.html' title='MVP Summit 2010'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_nzj0JxErQqA/S42Hiwxg8yI/AAAAAAAAAZI/YctyFK4_H7E/s72-c/4368620611_d1ce34e06a_thumb%5B1%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-8464436577127040207</id><published>2010-02-08T22:14:00.001-06:00</published><updated>2010-02-08T22:14:31.077-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><title type='text'>“It Works on My Box!” And Other Common Phrases That Indicate Smells That Agile Practices Can Fix (Part One)</title><content type='html'>&lt;p&gt;You hear them all the time in software development shops, these common phrases that always get a laugh in my presentations because people are so familiar with them. And while we hear them and maybe even say them ourselves, we seldom take a closer look at the underlying issues with our software development principles and practices that cause us to hear and say them so often. Let’s take a look at some of the more common phrases and see what issues they often reveal and what Agile practices might help alleviate them.&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;font size="3"&gt;“It Works on My Box.”&lt;/font&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;This is by far my favorite because I hear it (and I admit that I say it) quite a bit. It is most often uttered by a developer who is told some feature they authored is not working on the server or another developer’s machine. It is so common that there are &lt;a href="http://www.giftsforageek.com/marketplace/429141723/quotworks_on_my_boxquot_yellow_t_shirt"&gt;t-shirts&lt;/a&gt; and even a &lt;a href="http://artleonard.com/audio/ART_LEONARD-Works_on_My_Box.mp3"&gt;song&lt;/a&gt;. Very funny but it can be indicative of several issues:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;strong&gt;Developer Apathy&lt;/strong&gt; – Often the phrase is accompanied with a shrug as the developer walks away. Not a very good team effort to drop the ball like that and leave someone else to pick it up and try to figure out what is wrong.  &lt;li&gt;&lt;strong&gt;A Poor Definition of Done&lt;/strong&gt; – If your process allows developers to simply get something built and tested on their personal machine, then you will hear this phrase more than you would like.  &lt;li&gt;&lt;strong&gt;Siloed Development and Late Integration &lt;/strong&gt;– Often teams split up tasks and go away for long periods of time to write code in a vacuum, coming together late in the process to start seeing if what they have written separately will work when integrated together. Which it rarely does right off the bat.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;So what Agile principles and practices can help prevent you from hearing this phrase over and over?&lt;/p&gt; &lt;ul&gt; &lt;li&gt;&lt;strong&gt;Continuous Integration&lt;/strong&gt; - Since CI builds (and tests hopefully) software that is checked in on a separate environment, these types of issues are caught earlier. If you implement more robust stop gap measures such as &lt;a href="http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx"&gt;TFS 2010’s&lt;/a&gt; new &lt;a href="http://blogs.msdn.com/patcarna/archive/2009/06/29/an-introduction-to-gated-check-in.aspx"&gt;gated check in&lt;/a&gt; feature, you can proactively prevent bugs of this type from even getting into the source on the server. I personally think this is one of the low hanging fruits of Agile (more specifically XP) since you have to build, integrate, and deploy the solution sometime anyway, this just makes you do it sooner and more often. There are many good solutions out there besides TFS such as &lt;a href="http://www.jetbrains.com/teamcity/"&gt;Team City&lt;/a&gt; and &lt;a href="http://www.thoughtworks-studios.com/cruise-release-management"&gt;Cruise&lt;/a&gt;.  &lt;li&gt;&lt;strong&gt;Clear Definition of Done&lt;/strong&gt; – Even though there is an implicit definition of done most developers have in their heads, you should sit down with your team and clarify what everyone expects to have been completed when someone claims a certain coding task is “done”. I suggest writing in down on a big sheet of paper and posting on the wall in the team room. So when someone says “Oh yeah, that’s done.” you can point to it and ask “Really?”. This can also help remove another common developer phrase from your teams vocabulary: “Done done.”&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;Stay tuned for our next entry: “&lt;em&gt;Don’t Read the Architecture Documentation, It is Not Up To Date Anymore.&lt;/em&gt;”&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-8464436577127040207?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/8464436577127040207/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=8464436577127040207' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8464436577127040207'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8464436577127040207'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2010/02/it-works-on-my-box-and-other-common.html' title='“It Works on My Box!” And Other Common Phrases That Indicate Smells That Agile Practices Can Fix (Part One)'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2096004472904673344</id><published>2009-12-24T13:40:00.001-06:00</published><updated>2009-12-24T13:40:06.020-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virtual pc image'/><category scheme='http://www.blogger.com/atom/ns#' term='visual studio 2010'/><title type='text'>Download Files with URLs for new VSTS 2008 SP 1 and VS 2010 Beta 2 VPC Images Downloads</title><content type='html'>&lt;p&gt;If you don’t want to click on each download link for the 12 files for each of the &lt;a href="http://tommynorman.blogspot.com/2009/12/new-virtual-pc-images-for-vsts-2008-and.html"&gt;VSTS 2008 and VS 2010 Beta 2 VPC image files&lt;/a&gt; you can use the &lt;a href="http://www.freedownloadmanager.org/"&gt;free download manager&lt;/a&gt; and these two text files (download them from &lt;a href="http://www.tommynorman.info/files/vpcdownloadfiles.zip"&gt;here&lt;/a&gt;) that have all the URLs and you can import them to make it a bit easier.&lt;/p&gt; &lt;p&gt;&lt;a href="http://lh6.ggpht.com/_nzj0JxErQqA/SzPDlMnWBvI/AAAAAAAAAY4/gq18Ok1ngqE/s1600-h/DownloadManager%5B3%5D.png"&gt;&lt;img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" title="DownloadManager" border="0" alt="DownloadManager" src="http://lh5.ggpht.com/_nzj0JxErQqA/SzPDlfXglyI/AAAAAAAAAY8/sc-kDmbXIBs/DownloadManager_thumb%5B1%5D.png?imgmax=800" width="558" height="332"&gt;&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/21327984-2096004472904673344?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2096004472904673344/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2096004472904673344' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2096004472904673344'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2096004472904673344'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/12/download-files-with-urls-for-new-vsts.html' title='Download Files with URLs for new VSTS 2008 SP 1 and VS 2010 Beta 2 VPC Images Downloads'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_nzj0JxErQqA/SzPDlfXglyI/AAAAAAAAAY8/sc-kDmbXIBs/s72-c/DownloadManager_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5561648994582532555</id><published>2009-12-24T08:08:00.001-06:00</published><updated>2009-12-24T08:08:07.915-06:00</updated><title type='text'>New Virtual PC Images for VSTS 2008 and Visual Studio 2010  Beta 2 Released</title><content type='html'>&lt;p&gt;Microsoft has released a series of virtual images with Visual Studio 2008 SP 1 and 2010 Beta 2 for educational purposes. These images contain all you need to get started and are great for learning and demos (which is what I use them for). The VSTS 2008 versions expire in Jan 2011 so you have a whole year of Visual Studio goodness. The Visual Studio 2010 Beta 2 expires much sooner (April 2010) since it is beta software. There are versions for Virtual PC and Hyper V with ones that have just TFS and ones that have TFS and all of the Visual Studio components.&lt;/p&gt; &lt;p&gt;Here are the links for the 2008 images:&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=c7a809d8-8c9f-439f-8147-948bc6957812&amp;amp;displaylang=en"&gt;VSTS “all-up” Virtual PC/Virtual Server image&lt;/a&gt; (7.5 GB download, expands to 17.5 GB) &lt;br&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=72262ead-e49d-43d4-aa45-1da2a27d9a65"&gt;TFS “only” Virtual PC/Virtual Server image&lt;/a&gt; (3.31 GB download, expands to 8 GB) &lt;br&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=9eb65c97-29c9-4d05-ae45-73d22ad4b86e"&gt;VSTS “all-up” Hyper-V image&lt;/a&gt; (7.5 GB download, expands to 17.5 GB) &lt;br&gt; &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=39644cdd-db4d-445e-b087-dd3e3cdf03fb"&gt;TFS “only” Hyper-V image&lt;/a&gt; (3.31 GB download, expands to 8 GB)  &lt;p&gt;And here are the 2010 Beta 2 images: &lt;p&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=540777b0-cbd7-485e-bde5-23a1d4f442e0"&gt;Virtual PC 2007 SP1/Virtual Server 2005 SP1 virtual machine&lt;/a&gt; (7.2 GB download, expands to 21.5 GB) &lt;br&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?displaylang=en&amp;amp;FamilyID=27d91e63-e33b-4cef-a331-f20d343da9de"&gt;Windows Virtual PC virtual machine&lt;/a&gt; (7.2 GB download, expands to 21.5 GB)&amp;nbsp; &lt;br&gt; &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=426cdffc-53b5-46a5-89d3-e2ecd23570c6"&gt;Hyper-V/Hyper-V R2 virtual machine&lt;/a&gt;&amp;nbsp; (7.2 GB download, expands to 21.5 GB) &lt;p&gt;For more information about the release of these images check out &lt;a href="http://www.mcwtech.com/blogs/brianr/post/Happy-Holidays-and-look-what-Santae28099s-brought-2009-edition.aspx"&gt;Brian Randell’s blog post&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/21327984-5561648994582532555?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5561648994582532555/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5561648994582532555' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5561648994582532555'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5561648994582532555'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/12/new-virtual-pc-images-for-vsts-2008-and.html' title='New Virtual PC Images for VSTS 2008 and Visual Studio 2010  Beta 2 Released'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-8476950879913016357</id><published>2009-12-22T22:13:00.001-06:00</published><updated>2009-12-22T22:13:29.339-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual studio 2010'/><title type='text'>Free Microsoft Event in Nashville with Keynote by Steve Ballmer</title><content type='html'>&lt;p&gt;I’ve been lucky enough to have been invited to speak at the &lt;strong&gt;Lap Around PDC&lt;/strong&gt; event here in Nashville on Jan. 20, 2010. Steve Ballmer, CEO of Microsoft, will be delivering the keynote. I will be doing a 70 minute session on Visual Studio 2010. The event is free but seating is limited so click &lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032438491&amp;amp;Culture=en-US"&gt;here&lt;/a&gt; to register.&lt;/p&gt; &lt;p&gt;Here is some more info about the event:&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;Did you miss the &lt;a href="http://microsoftpdc.com/"&gt;Professional Developers Conference&lt;/a&gt; in November?&amp;nbsp; If so, join us as we bring the “highlights” from the &lt;a href="http://microsoftpdc.com/"&gt;PDC09&lt;/a&gt; conference to you!&amp;nbsp; At this special &lt;b&gt;&lt;i&gt;FREE&lt;/i&gt;&lt;/b&gt; event we will cover the latest Microsoft technologies and exciting announcements from PDC09 and deliver over 16 sessions presented by Microsoft, Partners, MVPs and Community Leaders.&amp;nbsp; The keynote will be delivered by Microsoft CEO&lt;b&gt; Steve Ballmer&lt;/b&gt;, and will cover Microsoft’s three screens and the cloud strategy. &lt;/p&gt; &lt;p&gt;Microsoft is releasing more than 25 products and frameworks over the next six months, more than at any other time. Our goal is to get you up to speed on what is coming, and how it can help you do more with what you have. The sessions will cover multiple technologies such as Windows Azure, Visual Studio 2010, .NET 4, Silverlight 4, SharePoint 2010, SQL Server 2008 R2, Windows® 7, and Windows Server® 2008 R2.&lt;/p&gt; &lt;p&gt;During the event, we encourage you to network with your peers and chat one-on-one with the speakers at the “Ask the Experts” area to get all of your questions answered. You can also visit the Customer Showcase area to see how customers are using the latest technologies in real world applications, and the amazing results they are seeing. We will also showcase the latest Windows powered gadgets and mobile devices in the Customer Showcase area.&lt;/p&gt; &lt;p&gt;&lt;br&gt;If seeing isn't enough, we will also have a fully staffed Hands-On-Lab area packed with PC's, labs you can practice with, and expert staff to help you learn the new tools.&lt;/p&gt; &lt;p&gt;&lt;br&gt;We will be hosting the event at Vanderbilt University Student Life Center in Nashville, TN.&lt;/p&gt; &lt;p&gt;&lt;br&gt;For your convenience, please find specific details below on complimentary event parking and shuttle services, which will be emailed to you as well. &lt;/p&gt; &lt;p&gt;&lt;br&gt;Breakfast and lunch will be provided.&lt;/p&gt; &lt;p&gt;&lt;br&gt;Every attendee will receive a Visual Studio 2010 Beta2 DVD, a t-shirt and an event bag filled with a collection of product information, case studies and other great resources. We will also be raffling off some great prizes at the end of the day.&lt;/p&gt; &lt;p&gt;&lt;br&gt;Come spend the day with us and learn about the future of developer technology!&lt;/p&gt; &lt;p&gt;&lt;br&gt;We look forward to your attendance!&lt;/p&gt;&lt;/blockquote&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-8476950879913016357?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/8476950879913016357/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=8476950879913016357' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8476950879913016357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8476950879913016357'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/12/free-microsoft-event-in-nashville-with.html' title='Free Microsoft Event in Nashville with Keynote by Steve Ballmer'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-8162659905046368406</id><published>2009-12-01T07:32:00.001-06:00</published><updated>2009-12-01T07:32:01.911-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Conchango'/><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server 2010'/><title type='text'>Scrum for Team System V3.x Beta 2 Released</title><content type='html'>&lt;p&gt;&lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;Conchango&lt;/a&gt; has released the second beta of their Team Foundation Server process template for Scrum. This version works with the current beta 2 release of TFS 2010. Click &lt;a href="http://scrumforteamsystem.com/cs/forums/4554/ShowPost.aspx"&gt;here&lt;/a&gt; to download.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-8162659905046368406?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/8162659905046368406/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=8162659905046368406' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8162659905046368406'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8162659905046368406'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/12/scrum-for-team-system-v3x-beta-2.html' title='Scrum for Team System V3.x Beta 2 Released'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4911242684774136018</id><published>2009-10-26T13:20:00.001-05:00</published><updated>2009-10-26T13:20:44.286-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual studio 2010'/><title type='text'>Visual Studio 2010 Webcasts</title><content type='html'>&lt;p&gt;&lt;a href="http://lh5.ggpht.com/_nzj0JxErQqA/SuXoepehRrI/AAAAAAAAAYg/IDViVFl_EIQ/s1600-h/VS2010Logo%5B3%5D.png"&gt;&lt;img title="VS2010Logo" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="98" alt="VS2010Logo" src="http://lh4.ggpht.com/_nzj0JxErQqA/SuXoe5o_jPI/AAAAAAAAAYk/0Wuy-wdiz1w/VS2010Logo_thumb%5B1%5D.png?imgmax=800" width="183" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Visual Studio 2010 and MSDN are BIG – and they are getting bigger!&amp;nbsp; In this session, we’ll explore all the changes to the Visual Studio family of products, including Team Foundation Server as well as recent upgrades and changes to our MSDN line-up.&amp;nbsp; Please join us for a 60 minute “CAN’T MISS” – high level overview, where we will discuss the many changes to our offerings which will likely impact current customers and future customers.&amp;nbsp; We promise you won’t be disappointed! &lt;/p&gt; &lt;p&gt;Speaker: &lt;strong&gt;Tim Adams&lt;/strong&gt;, &lt;strong&gt;Tony Jimenez&lt;/strong&gt; and &lt;strong&gt;Randy Pagels&lt;/strong&gt;, Microsoft Corporation&lt;/p&gt; &lt;table cellspacing="0" cellpadding="0" border="1"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td width="124"&gt; &lt;p&gt;&lt;b&gt;&lt;font size="1"&gt;Date&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td width="180"&gt; &lt;p&gt;&lt;b&gt;&lt;font size="1"&gt;Time&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td width="144"&gt; &lt;p&gt;&lt;b&gt;&lt;font size="1"&gt;Join the Meeting&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="180"&gt; &lt;p&gt;&lt;b&gt;&lt;font size="1"&gt;Audio Call Only&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="138"&gt; &lt;p&gt;&lt;b&gt;&lt;font size="1"&gt;Conference Call ID&lt;/font&gt;&lt;/b&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td width="124"&gt; &lt;p&gt;&lt;font size="2"&gt;Tuesday, 10/27&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td width="180"&gt; &lt;p&gt;&lt;font size="2"&gt;9:00 AM- 10:30 AM (CST)&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td width="144"&gt; &lt;p&gt;&lt;a href="meet:sip:v-sonyc@microsoft.com;gruu;opaque=app:conf:focus:id:e4f5e22fb5ab4122882acb31640ac979%3Fconf-key=5629"&gt;&lt;font size="2"&gt;Join the meeting&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="180"&gt; &lt;p&gt;&lt;font size="2"&gt;1-888-320-3585 [English]&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="138"&gt; &lt;p&gt;&lt;font size="2"&gt;438667128&lt;/font&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td width="124"&gt; &lt;p&gt;&lt;font size="2"&gt;Thursday, 10/29&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td width="180"&gt; &lt;p&gt;&lt;font size="2"&gt;2:00 PM- 3:30 PM (CST)&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td width="144"&gt; &lt;p&gt;&lt;a href="meet:sip:v-sonyc@microsoft.com;gruu;opaque=app:conf:focus:id:e4f5e22fb5ab4122882acb31640ac979%3Fconf-key=5629"&gt;&lt;font size="2"&gt;Join the meeting&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="180"&gt; &lt;p&gt;&lt;font size="2"&gt;1-888-320-3585 [English]&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="138"&gt; &lt;p&gt;&lt;font size="2"&gt;438667128&lt;/font&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td width="124"&gt; &lt;p&gt;&lt;font size="2"&gt;Tuesday, 11/3&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td width="180"&gt; &lt;p&gt;&lt;font size="2"&gt;9:00 AM- 10:30 AM (CST)&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td width="144"&gt; &lt;p&gt;&lt;a href="meet:sip:v-sonyc@microsoft.com;gruu;opaque=app:conf:focus:id:e4f5e22fb5ab4122882acb31640ac979%3Fconf-key=5629"&gt;&lt;font size="2"&gt;Join the meeting&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="180"&gt; &lt;p&gt;&lt;font size="2"&gt;1-888-320-3585 [English]&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="138"&gt; &lt;p&gt;&lt;font size="2"&gt;438667128&lt;/font&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt; &lt;tr&gt; &lt;td width="124"&gt; &lt;p&gt;&lt;font size="2"&gt;Thursday, 11/5&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td width="180"&gt; &lt;p&gt;&lt;font size="2"&gt;2:00 PM- 3:30 PM (CST)&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td width="144"&gt; &lt;p&gt;&lt;a href="meet:sip:v-sonyc@microsoft.com;gruu;opaque=app:conf:focus:id:e4f5e22fb5ab4122882acb31640ac979%3Fconf-key=5629"&gt;&lt;font size="2"&gt;Join the meeting&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="180"&gt; &lt;p&gt;&lt;font size="2"&gt;1-888-320-3585 [English]&lt;/font&gt;&lt;/p&gt;&lt;/td&gt; &lt;td valign="top" width="138"&gt; &lt;p&gt;&lt;font size="2"&gt;438667128&lt;/font&gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4911242684774136018?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4911242684774136018/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4911242684774136018' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4911242684774136018'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4911242684774136018'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/10/visual-studio-2010-webcasts.html' title='Visual Studio 2010 Webcasts'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh4.ggpht.com/_nzj0JxErQqA/SuXoe5o_jPI/AAAAAAAAAYk/0Wuy-wdiz1w/s72-c/VS2010Logo_thumb%5B1%5D.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-6902932550336089806</id><published>2009-10-14T21:04:00.001-05:00</published><updated>2009-10-14T21:04:18.631-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='comfortably scrum'/><title type='text'>The Agile Adoption Mixing Board</title><content type='html'>&lt;p&gt;&lt;a href="http://lh5.ggpht.com/_nzj0JxErQqA/StaDGAae66I/AAAAAAAAAYE/ndT70zwXRU4/s1600-h/AgileMixingBoard2.png"&gt;&lt;img title="AgileMixingBoard" style="border-right: 0px; border-top: 0px; display: inline; border-left: 0px; border-bottom: 0px" height="234" alt="AgileMixingBoard" src="http://lh5.ggpht.com/_nzj0JxErQqA/StaDIAs--kI/AAAAAAAAAYI/set6cxQD7Vg/AgileMixingBoard_thumb.png?imgmax=800" width="244" border="0"&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;When I talk to clients about adopting the basic values from the &lt;a href="http://agilemanifesto.org/"&gt;Agile Manifesto&lt;/a&gt;, I tell them to imagine sliders between the four entries on the left and right. A good adoption is like mixing a band and as the band plays you adjust the mix constantly to get the best sound. Purists may claim you must adopt each value to its fullest which is like sliding all the sliders on the mixing board to one side which never sounds very good. &lt;/p&gt; &lt;p&gt;I’ve had a client who had recently invested in offshore resources and a new remote office for the development teams. They could not immediately get the development team together so they could not fully embrace the “Individuals &amp;amp; Interactions” value or some of the practices attributed to it. So we used some tools like &lt;a href="http://www.skype.com/"&gt;Skype&lt;/a&gt;, &lt;a href="http://www.webex.com/"&gt;WebEx&lt;/a&gt;, and &lt;a href="http://msdn.microsoft.com/en-us/teamsystem/dd408382.aspx"&gt;Team Foundation Server&lt;/a&gt; and put in a little process around communications between the sites to help retain some of the collaborative aspects of the team. So I see this like moving the slider on my Agile mixing board a little over to the right and the “Process &amp;amp; Tools” side. This client does see the value of having everyone together so there is a plan that once they can feasibly move development to one location, they will do so. And when they do we can remove some of the processes put in place and stop using the tools so the slider moves back to the left a little more.&lt;/p&gt; &lt;p&gt;Claims that you must adopt Agile in its entirety and never change your adoption to meet your current environment are not very practical for some companies. I definitely think you should always evaluate the impediments you perceive are preventing you from transitioning to Agile practices to ensure you are not reverting to muscle memory, but there are definitely real world scenarios that can make some adoptions possibly detrimental to the business if immediately (and blindly) adopted. I like this blog from &lt;a href="http://on-agile.blogspot.com/2007/02/source-of-conflict-during-agile.html"&gt;Ryan Cooper&lt;/a&gt; about how conflict can arise from these situations.&lt;/p&gt; &lt;p&gt;So I think good Agile coaches are like good sound men who are constantly listening to the band and as the environment changes they adjust the mix appropriately. We listen to the team and the stakeholders to determine how much to adopt and what may have to wait for later. Anything that you do determine should wait needs to be logged with the following details:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;What it is exactly you are not going to adopt.  &lt;li&gt;What the benefit of adopting it would be.  &lt;li&gt;The cost of not adopting the practice.  &lt;li&gt;“Smells” that will indicate you should definitely adopt the practice.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;This way we acknowledge that we are not adopting one of the best practices prescribed by Agile (or whatever flavor we are adopting) and then outline the cost and the return for justification later if the smells start to occur. This adoption log can also be great fodder for retrospectives.&lt;/p&gt; &lt;p&gt;So listen to your team and be vigilant when the environment changes so that you adjust your mix of Agile adoption to best fit the situation.&lt;/p&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-6902932550336089806?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/6902932550336089806/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=6902932550336089806' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/6902932550336089806'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/6902932550336089806'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/10/agile-adoption-mixing-board.html' title='The Agile Adoption Mixing Board'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_nzj0JxErQqA/StaDIAs--kI/AAAAAAAAAYI/set6cxQD7Vg/s72-c/AgileMixingBoard_thumb.png?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-1268780603689930168</id><published>2009-10-13T19:46:00.001-05:00</published><updated>2009-10-13T19:46:29.104-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server 2010'/><title type='text'>Visit with the Team System 2010 Team in Raleigh, NC</title><content type='html'>&lt;p&gt;Last week I had to opportunity to visit with the team working on Team System in Raleigh, NC. I contacted &lt;a href="http://twitter.com/jasonbarile"&gt;Jason Barile&lt;/a&gt; via Twitter a few weeks before and asked if I could stop by and he went all out to accommodate me and a few coworkers. I was pleasantly surprised when the meeting started and most of the Product Managers and Test Leads for the build, test, source control, and install/administration parts of Team Foundation Server were in attendance.  &lt;p&gt;We talked about many aspects of VSTS 2010 during the meeting:  &lt;ul&gt; &lt;li&gt;How &lt;a href="http://blogs.msdn.com/bharry/archive/2009/10/01/tfs-2010-for-sourcesafe-users.aspx"&gt;TFS Basic&lt;/a&gt; can be a "gateway drug" for those wanting to move from Visual SourceSafe but are not going to use all the features of the Team Foundation Server platform. The team talked about how easy it will be to upgrade from basic to the full version and that all your history will immediately be dumped into the warehouse as soon as you upgrade and your history will look as if the warehouse was installed from day one.  &lt;li&gt;There was plenty of discussion around implementing Agile practices with Team System and how much more tools will be available in 2010 to support those practices. There are plenty of new additions coming from &lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;Conchango&lt;/a&gt; to continue their support for Scrum in Team System.  &lt;li&gt;We spent some time talking about all the new offerings around &lt;a href="http://channel9.msdn.com/posts/VisualStudio/Manual-Testing-with-Visual-Studio-Team-System-2010/"&gt;testing&lt;/a&gt; that I was especially interested in since my company sold our QA product suite so there was a new gap in our offerings around automated feature testing that VSTS 2010 will fill in very nicely.  &lt;li&gt;My team was very excited that the upcoming VSTS 2010 Beta 2 release will include a &lt;a href="http://blogs.msdn.com/briankel/default.aspx"&gt;go live license&lt;/a&gt; so some of our clients interested in early adoption can go ahead and implement this release with some support from Microsoft and a direct upgrade path to the final release.&lt;/li&gt;&lt;/ul&gt; &lt;p&gt;After the meeting we went to lunch with Jason, &lt;a href="http://blogs.msdn.com/buckh/"&gt;Buck Hodges&lt;/a&gt;, and &lt;a href="http://twitter.com/adambarr"&gt;Adam Barr&lt;/a&gt; and continue our conversation. It was interesting during lunch when Jason brought up my views on exclusive check out I expressed in my &lt;a href="http://elegantcode.com/2009/09/28/code-cast-32-tommy-norman/"&gt;interview&lt;/a&gt; with &lt;a href="http://twitter.com/ElegantCoder"&gt;David Starr&lt;/a&gt; from the &lt;a href="http://elegantcode.com/"&gt;Elegant Code Cast&lt;/a&gt;. I explained that as a consultant I am dropped into teams of various make ups and not all of them have good practices around source control implemented even when they are using TFS. I have frequently had issues with developers making changes to solution and project files with shared check out and not being diligent when merging changes into source control. This has resulted in broken builds, missing files, etc. and me pulling my hair out. It has also been an issue with projects that have not implement good development practices like the &lt;a href="http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod"&gt;SOLID principles&lt;/a&gt; and I have had entire data access layers in one class and people constantly stepping on each other's toes. I've had to adapt my source control practices to work around some situations like these that as a contractor I had little control over and no ability to change.  &lt;p&gt;Below is a short (and poorly shot) video of the Microsoft team in Raleigh and a quick, walking interview with Buck, Adam, and Jason on their favorite features in VSTS 2010.  &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;div class="wlWriterEditableSmartContent" id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:ae461560-e137-4850-a212-5cd99e48fdf1" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;div id="29096038-ba37-44fe-b189-a9033923ca8c" style="margin: 0px; padding: 0px; display: inline;"&gt;&lt;div&gt;&lt;a href="http://www.youtube.com/watch?v=75jBg9HGbOc" target="_new"&gt;&lt;img src="http://lh5.ggpht.com/_nzj0JxErQqA/StUfZJLPcUI/AAAAAAAAAYA/z1uM5ZFIwDw/videoc15ce40881e1%5B3%5D.jpg?imgmax=800" style="border-style: none" galleryimg="no" onload="var downlevelDiv = document.getElementById('29096038-ba37-44fe-b189-a9033923ca8c'); downlevelDiv.innerHTML = &amp;quot;&amp;lt;div&amp;gt;&amp;lt;object width=\&amp;quot;425\&amp;quot; height=\&amp;quot;355\&amp;quot;&amp;gt;&amp;lt;param name=\&amp;quot;movie\&amp;quot; value=\&amp;quot;http://www.youtube.com/v/75jBg9HGbOc&amp;amp;hl=en\&amp;quot;&amp;gt;&amp;lt;\/param&amp;gt;&amp;lt;embed src=\&amp;quot;http://www.youtube.com/v/75jBg9HGbOc&amp;amp;hl=en\&amp;quot; type=\&amp;quot;application/x-shockwave-flash\&amp;quot; width=\&amp;quot;425\&amp;quot; height=\&amp;quot;355\&amp;quot;&amp;gt;&amp;lt;\/embed&amp;gt;&amp;lt;\/object&amp;gt;&amp;lt;\/div&amp;gt;&amp;quot;;" alt=""&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;  &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-1268780603689930168?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/1268780603689930168/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=1268780603689930168' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1268780603689930168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1268780603689930168'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/10/visit-with-team-system-2010-team-in.html' title='Visit with the Team System 2010 Team in Raleigh, NC'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh5.ggpht.com/_nzj0JxErQqA/StUfZJLPcUI/AAAAAAAAAYA/z1uM5ZFIwDw/s72-c/videoc15ce40881e1%5B3%5D.jpg?imgmax=800' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-8507332883790031288</id><published>2009-09-11T10:49:00.003-05:00</published><updated>2009-09-11T11:28:44.222-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='software craftsmanship'/><title type='text'>What's Wrong with this Code?</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/Sqp6pnC8T7I/AAAAAAAAAXw/MjqUpCUww2g/s1600-h/2615071041_a0bca7464d.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5380247560122027954" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 200px; CURSOR: hand; HEIGHT: 200px" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/Sqp6pnC8T7I/AAAAAAAAAXw/MjqUpCUww2g/s200/2615071041_a0bca7464d.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;I am working on a new presentation entitled &lt;strong&gt;"Software Craftsmanship for Working Class Developers" &lt;/strong&gt;where I want to talk about &lt;a href="http://manifesto.softwarecraftsmanship.org/"&gt;this movement &lt;/a&gt;and the difficulties most of us have implementing its ideals in the average work place. The last exercise I want to do in the presentation is a group refactor of some actual code (with details and names changed to protect the guilty). In preparation I have shown it to several co-workers and asked them to tell me what is wrong with the code and what would they do to fix it. If I do this with no real preamble it is interesting how many different responses I get that even included "I see nothing wrong with it."&lt;br /&gt;&lt;br /&gt;So I'd like to post this little demo project for people to download and then tell me what is wrong with it and refactor it to something more adherent to the principles we all know we should follow, but sometime don't always get the chance.&lt;br /&gt;&lt;br /&gt;Here is a little background on the code. The Order class is used to hold data for an order (for what does not really matter to the task at hand) for a given Customer. We assign the Order to a specific Customer by assigning it a Customer number which is a 3 digit alpha-numeric identifier. We serialize these Orders and drop them into a directory for storage and processing. The Orders are given a sequential 3 digit order number based on the last Order in the drop directory.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;This is some what based on a real situation and when you download the project you will see that it has a few unit tests (and I use that term loosely) that pass. The code works. It does exactly what it is supposed to do. So when you start refactoring remember that you would be having to justify every change to management who is currently perfectly happy with how it functions. I've put a subdirectory called Refactored.1 where you can put your refactored version and there is a text document that has a list I already started with what is wrong (IMHO) with the current code and feel free to add to it.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;I plan to eventually post all the solutions that get sent back to me and use some of the examples in my presentation. I may even try to get a cool prize to giveaway to one of the people who submit via random selection. Happy coding!&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;You can download the demo project (C#) here: &lt;a href="http://www.tommynorman.info/files/soliddemo.zip"&gt;http://www.tommynorman.info/files/soliddemo.zip&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-8507332883790031288?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/8507332883790031288/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=8507332883790031288' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8507332883790031288'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8507332883790031288'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/09/whats-wrong-with-this-code.html' title='What&apos;s Wrong with this Code?'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/Sqp6pnC8T7I/AAAAAAAAAXw/MjqUpCUww2g/s72-c/2615071041_a0bca7464d.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5421436746500522289</id><published>2009-09-06T20:48:00.002-05:00</published><updated>2009-09-06T20:52:11.787-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile 2009'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Agile 2009 Wrap Up</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SqRnQtSI1yI/AAAAAAAAAXo/WnSoUm0BB5k/s1600-h/agile_2009_logo.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5378537391718455074" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 315px; CURSOR: hand; HEIGHT: 96px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SqRnQtSI1yI/AAAAAAAAAXo/WnSoUm0BB5k/s400/agile_2009_logo.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;Agile 2009 is in the books and this was my first year to attend and lucky enough to present. Unfortunately duty called and I was only able to attend the first two days, but I still had a great experience.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The Location&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;This year's host city was Chicago and I had never visited before. We were right downtown with easy access to everything and my wife and kids went with me and had a blast at Navy Pier, the local parks, and Fields museum. The conference was setup at the Hyatt hotel. The hotel was nice but the wireless access was only available in the open area and not in most of the break out rooms. Plus I don't think anyone's cell phone worked as we were many levels underground. I had also wished there had been a pool for my girls, but it was still a very nice place to stay.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The Setup&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;I've helped put on a conference before (&lt;a href="http://www.devlink.net/"&gt;http://www.devlink.net/&lt;/a&gt;) so I know how much work goes into getting everything setup. The staff was very well organized and they all did a great job. I loved the open jam area. I spent many hours sitting in a bean bag checking email or chatting with attendees. The session rooms were large, well laid out, and equipped with very nice projectors and large screens.&lt;br /&gt;&lt;br /&gt;The first night I spent a few hours in the Music Masti room jamming with a handful of other attendees. There were some seriously good musicians and playing some very cool jazz. I only wish I could have spent more time there.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;My Session&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;I presented "Implementing Scum and XP using Team System" Monday morning. There were many other big hitters presenting at the same time and with .NET being the minority representative I was pleasantly surprised with the number of people who attended. Everything went well and the crowd was very engaging. Plenty of conversations sprang up afterwards and someone even recorded the audio and should be posting it soon. The main criticism was that many wanted to see VSTS 2010 rather than 2008. Next year!&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Other Sessions&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Since I was only there for two days and I had several long chats with colleagues that captured a large amount of my time, I only was able to attend two full sessions. While I have seen most of the presentation before, I went to &lt;a href="http://blog.objectmentor.com/articles/category/uncle-bobs-blatherings"&gt;Robert Martin's&lt;/a&gt; Software Craftsmanship session because he is always an inspirational speaker. My table had a few people new to the concepts and a few zealots. Our resulting conversation afterwards inspired me to start writing a blog post on Software Craftsmanship for the Working Class Developer to be posted next week. The idea is that most shops do not initially have the experience or commitment to implement many of the practices from this movement. I think there is a middle ground for these shops to strive for as a gateway to a more in-depth adherence in the future.&lt;br /&gt;&lt;br /&gt;I went to two sessions, one on TDD and one of refactoring, that were not introducing any new concepts to me and were in Java and Ruby so I was not as in tune with the examples. While these were both good presentations, I left early to connect with some people I only get to see every now and then at gathering like this (more on this later).&lt;br /&gt;&lt;br /&gt;The second full session I attended was the keynote on the second day by&lt;a href="http://alistair.cockburn.us/"&gt; Alistair Cockburn&lt;/a&gt; entitled "I Come Not to Praise Agile, But to Bury It." Of course everyone will talk about his grand entrance complete with bagpipes and his own twist on the matching soliloquy from Shakespeare's Julius Caesar. I really liked his presentation as he talked about how Agile is not dead, but ready to evolve into something new. He did not say what that something would be but talked about some of the concepts that would be involved.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The People&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;One of my main goals for this conference was to make some good connections and I was not disappointed. I ran into &lt;a href="http://coreyhaines.com/"&gt;Corey Haines&lt;/a&gt; who I met at &lt;a href="http://www.devlink.net/"&gt;devLink&lt;/a&gt; 2008. I did not get to spend anytime in his infamous debates because he as volunteering the days I was there, but there is always next year. I finally got to meet &lt;a href="http://elegantcode.com/about/david-starr/"&gt;David Starr&lt;/a&gt; in person after talking to him online for years. We had some great chats in the Open Jam bean bags covering Scrum certifications, software craftsmanship, and Team System. David and I recorded an episode for his podcast at &lt;a href="http://www.elegantcode.com/"&gt;http://www.elegantcode.com/&lt;/a&gt; that should be out next month.&lt;br /&gt;&lt;br /&gt;I got to meet several members of the Team System product team which included the main man &lt;a href="http://blogs.msdn.com/sam/"&gt;Sam Guckenheimer&lt;/a&gt;. Sam was great. As we talked, if I mentioned any resource I needed or contact I wanted to make he whipped out his laptop and boom sent the email to get me what I needed. I also ran into the guys from &lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;Conchango&lt;/a&gt;, &lt;a href="http://www.linkedin.com/pub/colin-bird/3/b15/52b"&gt;Colin Bird&lt;/a&gt; and &lt;a href="http://blogs.conchango.com/simonbennett/"&gt;Simon Bennett&lt;/a&gt;. Colin and I dove into the beta version of their &lt;a href="http://scrumforteamsystem.com/cs/forums/4184/ShowPost.aspx"&gt;Scrum process template for VSTS 2010&lt;/a&gt;. It was nice to see many of the common extensions I made to the 2008 version made it into the new one. Simon and I talked about the changes coming to the &lt;a href="http://scrumforteamsystem.com/en/TaskBoard/default.aspx"&gt;Sprint Task Board&lt;/a&gt; and some other new applications coming out with the release of 2010. They also had a very cool Microsoft Surface app for planning poker that can be yours for the low, low price of $10K!&lt;br /&gt;&lt;br /&gt;It was also very cool to be able to meet some of the biggest thought leaders in Agile. Early the first day they had not yet setup all the signs for the conference and as I wondered around I asked a nice lady for directions only to find out she was &lt;a href="http://www.poppendieck.com/"&gt;Mary Poppendieck&lt;/a&gt; who was so great. Later that same day I was having a great conversation with some of the guys from &lt;a href="http://www.thoughtworks.com/"&gt;Thoughtworks&lt;/a&gt; when &lt;a href="http://martinfowler.com/"&gt;Martin Fowler&lt;/a&gt; joins us. I ran into &lt;a href="http://jeffsutherland.com/"&gt;Jeff Sutherland&lt;/a&gt; again who I was lucky enough to attend his CSM course last year. I would love to name drop some more, but those were the main people I met.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The Conversations&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;While there were tons of great sessions I absolutely love just sitting with other Agile enthusiasts talking shop. Day one I was sitting with some guys from CarFax who were describing a great sounding XP shop where Ron Jefferies had come in and worked with management as well as the developers to get them setup. We had a very interesting conversation around technical debt.&lt;br /&gt;&lt;br /&gt;There were many conversations about using &lt;a href="http://msdn.microsoft.com/en-us/teamsystem/default.aspx"&gt;Team System&lt;/a&gt; for Agile and implementing practices from the &lt;a href="http://manifesto.softwarecraftsmanship.org/"&gt;Software Craftsmanship&lt;/a&gt; movement. I t was nice to see many people from Microsoft there being so involved in the Agile community. It was a bit sad that so many people still make cracks about .NET (and Microsoft) being second class citizens in the Agile movement. Sometimes for a community supposedly open to embracing everyone they can be a bit elitist.&lt;br /&gt;&lt;br /&gt;The one conversation I was disappointed with was the one around Scrum certifications. I totally understand that the CSM and CSP are benign as a measure of anyone ability. I currently hold both of these and they really only signify that you have been exposed to a certain amount of training on the subject. My main concern is that the Scrum framework itself gets the brunt of the rancor from the community. Scrum is not hurting Agile, poorly trained people are hurting Agile. Even with the paper tiger certifications, the Scrum Alliance marketed the process like no one else and helped get Agile more widely accepted in the mainstream. If our worry is that the core concepts are going to be diluted by the mainstream adoption of Scrum's mechanics, then let's not bash Scrum, let's find ways to maintain the ideals.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;I cam away from this year's conference reinvigorated and ready to get back out there even more so in the Agile community. Next year's conference is going to be in Nashville and I am already trying to get our local Agile community amped up. Can't wait to see everyone here!&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-5421436746500522289?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5421436746500522289/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5421436746500522289' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5421436746500522289'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5421436746500522289'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/09/agile-2009-wrap-up.html' title='Agile 2009 Wrap Up'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_nzj0JxErQqA/SqRnQtSI1yI/AAAAAAAAAXo/WnSoUm0BB5k/s72-c/agile_2009_logo.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-1708954956275251367</id><published>2009-07-23T10:00:00.004-05:00</published><updated>2009-07-23T10:07:54.813-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='survey'/><title type='text'>VersionOne's State of Agile Survey 2009 Open</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/Smh8gOwn89I/AAAAAAAAAXY/49ucC74ijfM/s1600-h/survey.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5361672249544274898" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 320px; CURSOR: hand; HEIGHT: 262px" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/Smh8gOwn89I/AAAAAAAAAXY/49ucC74ijfM/s320/survey.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;For the past four years &lt;strong&gt;VersionOne&lt;/strong&gt; has run a survey for Agile adoption and published the results to the community. While it tends to lean towards people already adopting Agile practices, it is nice to see some numbers on other people's adoptions. I always take surveys like this with a grain of salt since questions that gauge the success of different Agile practices are very subjective. A developer answering the survey may have a different view of Agile's "success" in the organization than management. But all in all it's a decent survey and I encourage you to take it to help make the results that much more meaningful. Go &lt;a href="http://surveys.versionone.com/akira/TakeSurvey?id=1299357&amp;amp;ext_ref=220&amp;amp;mkt_tok=3RkMMJWWfF9wsRonuaXAZKXonjHpfsX84u8kW7Hr08Yy0EZ5VunJEUWy2YUATQ%3D%3D"&gt;here&lt;/a&gt; to participate in the survey.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-1708954956275251367?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/1708954956275251367/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=1708954956275251367' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1708954956275251367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1708954956275251367'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/07/versionones-state-of-agile-survey-2009.html' title='VersionOne&apos;s State of Agile Survey 2009 Open'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_nzj0JxErQqA/Smh8gOwn89I/AAAAAAAAAXY/49ucC74ijfM/s72-c/survey.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2568463883789471991</id><published>2009-07-09T13:05:00.002-05:00</published><updated>2009-07-09T13:19:26.820-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='books'/><title type='text'>Evolution of an Agile .NET Developer in Books</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_nzj0JxErQqA/SlYx8ssQrgI/AAAAAAAAAXQ/WULxbtgLFBA/s1600-h/evolution-man-computer.gif"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer; width: 505px; height: 179px;" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SlYx8ssQrgI/AAAAAAAAAXQ/WULxbtgLFBA/s320/evolution-man-computer.gif" alt="" id="BLOGGER_PHOTO_ID_5356523725662498306" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I've been re-reading a few books lately and in the process it made me start to think of how differently I approach software development than when I first started. It seemed that each time I reach another plateau of understanding one or more books helped me get started on the next level. So in this post I wanted to chronicle my growth (which is still happening!) as a developer using .NET along with the key books that helped me. While I did development before .NET (VB &amp;amp; some Java) I am going to only stick to .NET for brevity.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Phase One: Programmer&lt;/span&gt;&lt;br /&gt;When you first learn how to write software you learn the syntax of the language (C# in my case) and how to construct programs using that language. I myself did not go to school to be a developer (I was actually on my way to being a professional pilot) so I had very little pretense on theory or approaches. So I wrote code in a very functional way usually.&lt;br /&gt;&lt;br /&gt;When I first started in C# I bought &lt;a href="http://www.amazon.com/Programming-C-3-0-Jesse-Liberty/dp/0596527438/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247162974&amp;amp;sr=1-1"&gt;Programming C&lt;/a&gt;# from Oreilly. This link is to the fifth edition which covers C# 3.0, but I started with the first edition on 1.0 which is now out of print. I always loved the Oreilly books because they were very direct and to the point. This book was a great help in getting started with the language.&lt;br /&gt;&lt;br /&gt;As I started to do more with .NET I bought &lt;a href="http://www.amazon.com/C-Nutshell-Peter-Drayton/dp/0596001819/ref=sr_1_2?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163014&amp;amp;sr=1-2"&gt;C# in a Nutshell&lt;/a&gt; also by Oreilly. This is not a "how to" book but rather a reference for the C# language and the .NET framework. I turned to this book over and over again to figure out which class to use and how to use it. It was a great companion to the Programming C# book.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Phase Two: Developer&lt;/span&gt;&lt;br /&gt;Eventually I was more sure of my abilities that I did not have to concentrate so hard on the coding part of developing software. I had a decent grasp of the language and the framework so I started wanting to write software in a more consistent and productive way. Another consultant told me to pick up &lt;a href="http://www.amazon.com/Complete-Microsoft-Programming-Steve-McConnell/dp/1556154844/ref=sr_1_2?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163082&amp;amp;sr=1-2"&gt;Code Complete&lt;/a&gt; and it started me on my way to adopting some best practices that I still adhere to today. While it had nothing to do with C#, its content was applicable to any development language.&lt;br /&gt;&lt;br /&gt;Also during this time I read (or skimmed sometime) quite a few books from &lt;a href="http://www.wrox.com/WileyCDA/"&gt;WROX&lt;/a&gt; on several areas of programming in .NET which all helped me start to address specific problems in my applications.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Phase Three: Architect (or so I thought)&lt;/span&gt;&lt;br /&gt;As I started to get better a writing applications using C#, I was being asked more and more to help design these applications then systems of multiple applications. I was lucky to work with many people who were much smarter than I was and they turned me on to quite a few good resources.&lt;br /&gt;&lt;br /&gt;During one design session I was complaining about finding a solution to a particular problem and a colleague shook his head at me and asked, "Haven't you read the gang of four &lt;a href="http://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional/dp/0201633612/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163163&amp;amp;sr=1-1"&gt;Design Patterns&lt;/a&gt; book?" I had to sheepishly admit I have never heard of it and then immediately went out and read it that week. After which I realized I had been describing a picture perfect scenario for an Abstract Factory pattern. I then bought two books on design patterns for C#: &lt;a href="http://www.amazon.com/Design-Patterns-C-Software/dp/0321126971/ref=sr_1_2?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163199&amp;amp;sr=1-2"&gt;Design Patterns in C# &lt;/a&gt;and &lt;a href="http://www.amazon.com/Design-Patterns-Tutorial-James-Cooper/dp/0201844532/ref=sr_1_4?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163221&amp;amp;sr=1-4"&gt;C# Design Patterns: A Tutoria&lt;/a&gt;l . Using all three books I really started to delve into learning how to write more solid, reusable software.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Phase Four: Team Lead&lt;/span&gt;&lt;br /&gt;Once I had been the architect or lead developer on a few projects I was being asked to lead development teams on bigger projects and that when I started to dabble in the project management and business analysis side of the software development lifecycle more. Either I was frustrated by the people in these positions or the project was small enough where the development team took on these duties. Either way I felt there were better ways to do both.&lt;br /&gt;&lt;br /&gt;One of the project managers I worked with who was very good at his job loaned me a copy of the &lt;a href="http://www.amazon.com/Mythical-Man-Month-Software-Engineering-Anniversary/dp/0201835959/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163249&amp;amp;sr=1-1"&gt;Mythical Man Month&lt;/a&gt; and it helped me start to think about projects in a wider scope than just the development effort. I was a big help in understanding how to interface with customers and managers and understand how to measure the progress of a project.&lt;br /&gt;&lt;br /&gt;I was also given a copy of &lt;a href="http://www.amazon.com/Software-Requirements-Second-Pro-Best-Practices/dp/0735618798/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163281&amp;amp;sr=1-1"&gt;Software Requirements&lt;/a&gt; which gave me a new perspective on gathering requirements and mapping features to coding efforts. At this time I was also introduced to Rational's &lt;a href="http://www-01.ibm.com/software/awdtools/reqpro/"&gt;RequisitePro&lt;/a&gt; product which implemented a good deal of the concepts behind the book.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Phase Five: The Reluctant Agilist&lt;/span&gt;&lt;br /&gt;By this time I had been leading software development projects for a few years with a good degree of success. I will admit I thought I had it all pretty under control and then a project that went bad started me rethinking how I developed software. Methods that had been tried and true for so long had failed and I was looking for some new ideas. At a new company I was re-introduced to the Scrum process for Agile development. I had heard of this before but to be honest I had dismissed it as the inmates running the asylum. Some of the engineering practices were appealing but overall I was fairly skeptical.&lt;br /&gt;&lt;br /&gt;We did a pretty good job of adopting Scrum in all the wrong ways so I turned to Ken Schwaber's two definitive books on the topic: &lt;a href="http://www.amazon.com/Agile-Project-Management-Microsoft-Professional/dp/073561993X/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163329&amp;amp;sr=1-1"&gt;Agile Project Management with Scrum&lt;/a&gt; and &lt;a href="http://www.amazon.com/Enterprise-Scrum-Ken-Schwaber/dp/0735623376/ref=pd_sim_b_2"&gt;The Enterprise and Scrum&lt;/a&gt;. To be honest I did not come away with much. Not that these are not good books but I tend to learn backwards in that I sometimes need the mechanics of something before I can relate it to the underlying concept. I then downloaded Henrik Kniberg's&lt;a href="http://www.infoq.com/minibooks/scrum-xp-from-the-trenches"&gt; Scrum and XP From the Trenches &lt;/a&gt;and this book helped tie the concepts and mechanics together for me.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Phase Six:  Agile Developer&lt;/span&gt;&lt;br /&gt;On my next project I took all the things I had learned from our previous rough adoption of Scrum and applied it to our approach. I was lucky in that the management of my new client was very Agile friendly. I now really saw Scrum working and I started to concentrate on how to write my software in a more Agile way.&lt;br /&gt;&lt;br /&gt;I attend a local Agile user group and won &lt;a href="http://www.amazon.com/Practices-Agile-Developer-Pragmatic-Programmers/dp/097451408X/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163404&amp;amp;sr=1-1"&gt;Practices of an Agile Developer&lt;/a&gt;. It was great in two ways because it not introduced some new concepts to me, it reaffirmed some of the lessons I had learned of the past few projects. It was a very easy to read book that provided a lot of information. At the next meeting I won the &lt;a href="http://www.amazon.com/Practices-Agile-Developer-Pragmatic-Programmers/dp/097451408X/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163404&amp;amp;sr=1-1"&gt;Art of Agile Development,&lt;/a&gt; which built upon everything I had just learned. Both these books made me want to learn Test Driven Development (TDD) better so I then grabbed &lt;a href="http://www.amazon.com/Test-Driven-Development-Microsoft-NET-Professional/dp/0735619484/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163457&amp;amp;sr=1-1"&gt;Test Driven Development in Microsoft .NET&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;I recently went back and reread &lt;a href="http://www.amazon.com/Principles-Patterns-Practices-Robert-Martin/dp/0131857258/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1247163481&amp;amp;sr=1-1"&gt;Agile Principles, Patterns, and Practices in C&lt;/a&gt;# because when I was first given the book I was still not convinced about Agile and I really only skimmed the material. Going over it now had a much greater impact and there is so much great content that can be applied even outside of Agile that I suggest it to any developer regardless of their approach.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;Phase Seven: The Empty Vessel&lt;/span&gt;&lt;br /&gt;As I write this I have to say I am a little ashamed at how at some of these levels I thought I really knew everything I needed to know. It has made me really open myself up to learning as much as I can and figuring out the best way to apply that knowledge in my day to day activities. It was humbling to look at the publication dates on some of the books and think, "This has been around for awhile and I am just now learning it!"&lt;br /&gt;&lt;br /&gt;There were more books along the way but I wanted to point out the ones that really pushed me to the next level of my development career and I hope to be constantly adding to this list for as long as I write software.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-2568463883789471991?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2568463883789471991/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2568463883789471991' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2568463883789471991'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2568463883789471991'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/07/evolution-of-agile-net-developer-in_09.html' title='Evolution of an Agile .NET Developer in Books'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SlYx8ssQrgI/AAAAAAAAAXQ/WULxbtgLFBA/s72-c/evolution-man-computer.gif' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2315112581297008025</id><published>2009-07-09T11:22:00.001-05:00</published><updated>2009-07-09T11:24:37.872-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='thought leadership'/><title type='text'>Thought Leadership is Good for Business</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://3.bp.blogspot.com/_nzj0JxErQqA/SlYZf43zMxI/AAAAAAAAAVg/WjMuDppcocM/s1600-h/misc+008.jpg"&gt;&lt;img style="margin: 0pt 10px 10px 0pt; float: left; cursor: pointer; width: 150px; height: 200px;" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SlYZf43zMxI/AAAAAAAAAVg/WjMuDppcocM/s200/misc+008.jpg" alt="" id="BLOGGER_PHOTO_ID_5356496842436850450" border="0" /&gt;&lt;/a&gt;&lt;p&gt;I have been lucky to work for some great consulting companies over the years who recognize the importance of their consultants actively participating in thought leadership and IT community activities. I was a technical trainer for a large part of my career and really enjoyed teaching. When I went into consulting it was great to practice what I had preached for so long but I began to miss being in front of a class. When .NET first appeared on the horizon, I along with several of my colleagues jumped on it and before long we were asked to start presenting what we had done at various technical organization in my area. At my very first presentation an attendee later contacted my company to bring us in to help them with their .NET adoption. The value was immediately obvious.&lt;br /&gt;&lt;br /&gt;Since then I have strived to be as active a I can in local, regional, and national technology organizations as a participant, speaker, and organizer and I have seen first hand how this has helped my respective companies. Here are a few of the ways these activities have helped with our business: &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Attracting New Employees&lt;/strong&gt;: I've often had people come up and ask me about working with some cool technology. I always make it a point to only present on technology I have actually worked with and I've been lucky to see a wide range of solutions. When other developers hear about the projects I have worked on they too get excited and interested in being involved.&lt;br /&gt;&lt;/li&gt;&lt;li&gt; &lt;strong&gt;Advertising Your Solutions&lt;/strong&gt;: Sometimes your company may have expertise in a certain technology and it is not widely known in your area. Presenting for multiple organizations helps get the word out that you have value to offer in a certain space.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Positioning Yourself as an Expert&lt;/strong&gt;: It is easy to look like an expert for 60 minutes when you have plenty of time up front to plan, but when you really know the material it is obvious to your attendees. This does well to market your own abilities and thereby your company's abilities. While there may be other people with the same skill set in a certain technology, effectively being able to communicate and explain it is just as valuable.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Improving Employee's Communication Skills&lt;/strong&gt;: Some developers are great at developing, but not so great at communicating. As a consultant, communication is a skill that is almost as valuable as your coding skills. Companies that encourage their employees to present are helping them grow these skills also.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Differentiates You from Your Competitors&lt;/strong&gt;: There may be many companies that offer the same services are you do, but being seen as a thought leader in a certain space can really set you apart from your competition. &lt;/li&gt;&lt;/ul&gt;&lt;p&gt;As you can see, there are some very real benefits to participating in IT communities as a Thought Leader. Companies who encourage the employees to pursue these activities and invest in them can see some very tangible gains. Even attending and supporting local IT groups can help with your business so get out there and be active!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-2315112581297008025?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2315112581297008025/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2315112581297008025' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2315112581297008025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2315112581297008025'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/07/thought-leadership-is-good-for-business.html' title='Thought Leadership is Good for Business'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SlYZf43zMxI/AAAAAAAAAVg/WjMuDppcocM/s72-c/misc+008.jpg' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-130236766639862632</id><published>2009-06-18T22:24:00.008-05:00</published><updated>2009-06-18T23:19:22.355-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sprint task board'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Virtual Sprint Task Board Using a Wii Remote</title><content type='html'>&lt;p&gt;While I love implementing Scrum in Team System, nothing can quite compare to a physical story wall of sprint task board. The intimacy and tactile nature of moving cards around on the board cannot be replaced. However, a good many of my clients who are implementing Scrum shy away from using note cards and sticky notes. &lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;Conchango&lt;/a&gt; provides a very cool WPF app that simulates a sprint task board, but even when you have it projected on a large screen, someone still has to sit at the computer to move items around and it is either a logistical nightmare having each person sit down to do this or one person does it while everyone tells them what they did and you start to loose the attributes that make the task board such a great tool.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;You could go out and buy a &lt;a href="http://www.oneworldtouch.com/product.html?pid=10"&gt;large touch screen monitor&lt;/a&gt; and mount it in the Daily Scrum room if you have $3000 to $5000 just lying around. Or you could buy an&lt;a href="http://avispl.com/av-products/product-details.asp?productID=22819&amp;amp;itmname=SMART+Board+SB690+interactive+whiteboard+-+94%22"&gt; interactive "smart" white board&lt;/a&gt; for about the same cost. If your company is that much invested in Scrum that they will approve such an expense, please let me send you my resume! The rest of us do not have that kind of money to spend and I was very intrigued when someone sent me this link to a YouTube video featuring an &lt;a href="http://www.youtube.com/watch?v=QFn60RhlcG4"&gt;interactive story wall using Mingle&lt;/a&gt;. Upon further investigation this setup can be easily achieved with less that $100. &lt;/p&gt;&lt;p&gt;&lt;a href="http://johnnylee.net/projects/wii/"&gt;Johnny Chung Lee&lt;/a&gt; from Carnegie Mellon University came up with an ingenious way to use a Nintendo Wii Remote to create an interactive whiteboard. Here is what you need:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Bluetooth receiver (~$20 or free if already on your computer)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Nintendo Wii Remote ($35 at &lt;a href="http://www.walmart.com/catalog/product.do?product_id=8070470"&gt;Wal-Mart&lt;/a&gt;)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Infrared Pen ($18 at&lt;a href="http://www.wiiteachers.com/"&gt; Wiiteachers.com&lt;/a&gt;)&lt;br /&gt;&lt;/li&gt;&lt;li&gt;Johnny's&lt;a href="http://johnnylee.net/projects/wii/WiimoteWhiteboardv03.zip"&gt; Wiimote Whiteboard Software&lt;/a&gt; (free)&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Getting Connected with Bluetooth&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;The first laptop I tried this on was a Sony Viao and it came with the standard Windows XP Bluetooth stack which while it will see the Wii Remote it does not really know what to do with it even once it have been connected. I had to download the stack from &lt;a href="http://www.bluesoleil.com/shop/index.asp?topic=bluetooth-mobilephone-headset"&gt;Bluesoleil&lt;/a&gt; to get it the connect and be recognized by the Wiimote Whiteboard Software. The download is only a trial and the purchase the product it was $30 USD. &lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SjsGV6_WB_I/AAAAAAAAAUk/W4P6SaBH4HU/s1600-h/CiragoBluetooth.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5348875956114556914" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 320px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SjsGV6_WB_I/AAAAAAAAAUk/W4P6SaBH4HU/s320/CiragoBluetooth.jpg" border="0" /&gt;&lt;/a&gt;My work laptop did not have Bluetooth so I just decided to buy a Bluetooth receiver so I could then setup everything up on any computer with a USB port. The website &lt;a href="http://wiibrew.org/wiki/List_of_Working_Bluetooth_Devices"&gt;WiiBrew&lt;/a&gt; has a list of Bluetooth drivers and receivers that are known to work with the Wiimote. I bought the &lt;a href="http://www.tigerdirect.com/applications/SearchTools/item-details.asp?EdpNo=3399853&amp;amp;CatId=909"&gt;Cirago BTA-3210 USB 2.0 Micro V2.0+EDR Bluetooth Dongle&lt;/a&gt; on TigerDirect for around $20 and it comes with the Toshiba Bluetooth drivers.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SjsG1a2CSmI/AAAAAAAAAUs/bA3InwawHDE/s1600-h/Bluetooth.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5348876497241393762" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 320px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SjsG1a2CSmI/AAAAAAAAAUs/bA3InwawHDE/s320/Bluetooth.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I inserted the Cirago receiver into my USB port and installed the drivers from the included CD. After a reboot I opened the Bluetooth Settings windows and clicked new connection, I pressed the 1 and 2 buttons on the Wii remote to put it is discovery mode and it was recognized without a hitch.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The IR Pen&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;I mentioned this project to my wife early on and she ordered me several LED pens from Amazon which was very sweet of her but none of them worked. You need an IR pen with certain specifications. There are many sites with the &lt;a href="http://johnnylee.net/projects/wii/pen.jpg"&gt;specs on how to build one&lt;/a&gt;, but I just purchased one from &lt;a href="http://www.wiiteachers.com/"&gt;Wiiteachers.com&lt;/a&gt; for around $18. It is a standard Expo dry erase marker that they gutted and then fitted with the IR light, a switch, and place to put a single AAA battery. There are a few fancier pens out there, but this one was cheap and worked well. &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/SjsHCA9IWrI/AAAAAAAAAU0/q67meUEtM2o/s1600-h/Wii_colors_web.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5348876713630128818" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/SjsHCA9IWrI/AAAAAAAAAU0/q67meUEtM2o/s320/Wii_colors_web.jpg" border="0" /&gt;&lt;/a&gt; &lt;strong&gt;Setting it all Up&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;Once I had everything (I already had a few Wii remotes at home although the kids did complain when I took one away for work), I setup a projector connected to my laptop, connected the Wii remote via my Bluetooth receiver, ran the Wiimote Whiteboard application, calibrated the IR pen, and was using the pen as a mouse.&lt;br /&gt;&lt;br /&gt;A few notes on the setup:&lt;br /&gt;&lt;br /&gt;Set the Wii Remote to the side with a clear view of the entire projected screen. The IR sensor has about a 45 degree angle and several times the calibration worked fine but it could not see the outer edges of my screen. I finally mounted (with a rubber band) the Wii remote to my camera tripod and set it over to the side of the wall I was projected on.&lt;br /&gt;&lt;br /&gt;When you use the pen you have to make sure you body is not blocking it from the IR sensor on the Wii remote. This was not too much of an issue because I had to be to the side of where I was using the pen anyway as to not cast a shadow over the projected area.&lt;br /&gt;&lt;br /&gt;If you bump the Wii remote, the projector, or resize your desktop you will need to recalibrate the pen. This is very easy to do with the Wiimote Whiteboard application. Also if you use it with a Virtual PC image, the desktop resolution on the Virtual PC needs to be the same as the host desktop or the pointer and the pen are off a bit.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;The Virtual Sprint Task Board&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Once everything was working I opened up my Virtual PC with Team System 2008 and the Conchango Sprint Task Board application. The setup works great and I can easily move tasks from one state to another as well as tap on an item to get the detail pop up window. The scale slider at the top of the board allows you to zoom in and out so you can see the entire board or zoom into a specific set of User Stories.&lt;br /&gt;&lt;br /&gt;Windows comes with a virtual keyboard that you can use to type using the IR pen. This is not super optimal, but it works for small things like updating a tasks remaining hours. The Windows version is fairly rudimentary so I downloaded the freeware version of&lt;a href="http://www.chessware.ch/virtual-keyboard/index.php"&gt; Touch-It's virtual keyboard&lt;/a&gt; which had some added features like docking, customizable keyboard layouts, etc.&lt;br /&gt;&lt;br /&gt;While it is still not the same as an actual physical board with note cards, for those using an Agile management tool already this is a cheap way to get close to it. Here is a short video of me setting this up and using the task board. &lt;/p&gt;&lt;br /&gt;&lt;p align="center"&gt;&lt;object width="425" height="344"&gt;&lt;param name="movie" value="http://www.youtube.com/v/M-ZUM284ry8&amp;hl=en&amp;fs=1&amp;"&gt;&lt;/param&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;/param&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;/param&gt;&lt;embed src="http://www.youtube.com/v/M-ZUM284ry8&amp;hl=en&amp;fs=1&amp;" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-130236766639862632?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/130236766639862632/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=130236766639862632' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/130236766639862632'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/130236766639862632'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/06/virtual-sprint-task-board-using-wii.html' title='Virtual Sprint Task Board Using a Wii Remote'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SjsGV6_WB_I/AAAAAAAAAUk/W4P6SaBH4HU/s72-c/CiragoBluetooth.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-435019853237059372</id><published>2009-06-11T23:03:00.004-05:00</published><updated>2009-06-11T23:19:19.605-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><category scheme='http://www.blogger.com/atom/ns#' term='eScrum'/><title type='text'>Farewell eScrum, We Barely Knew Ya!</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/SjHW_HBiUXI/AAAAAAAAAUc/6kv4ObC3EbU/s1600-h/Tombstone%2520image.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5346290612371083634" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 300px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/SjHW_HBiUXI/AAAAAAAAAUc/6kv4ObC3EbU/s400/Tombstone%2520image.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://blogs.msdn.com/bharry/archive/2009/06/10/the-future-of-escrum.aspx"&gt;Brian Harry &lt;/a&gt;announced on his blog this week that Microsoft's Team Foundation Server process template eScrum was no longer going to be supported. eScrum was the Jan Brady to &lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;Conchango's &lt;/a&gt;Marsha as far as Scrum templates go, and with VSTS 2010's MSF Agile template looking more and more scrummish it was only a matter of time. So poor some OE on the pavement because this one is for my dead homie eScrum.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-435019853237059372?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/435019853237059372/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=435019853237059372' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/435019853237059372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/435019853237059372'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/06/farewell-escrum-we-barely-knew-ya.html' title='Farewell eScrum, We Barely Knew Ya!'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_nzj0JxErQqA/SjHW_HBiUXI/AAAAAAAAAUc/6kv4ObC3EbU/s72-c/Tombstone%2520image.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2901403886702901102</id><published>2009-06-06T08:48:00.004-05:00</published><updated>2009-06-08T11:33:32.974-05:00</updated><title type='text'>Upcoming Microsoft Events in Nashville</title><content type='html'>Next week is a very busy week for events here in Nashville:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;nPlus1 Summer Summit&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;nPlus1.org is hosting its third Architecture Summit on June 10th at the Microsoft office in Nashville, TN (Franklin). The topic of this summit will be Patterns and Principles.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Session One: Software Patterns&lt;br /&gt;&lt;/strong&gt;Patterns are an important tool to use as architects and developers. They provide a common vocabulary for us to design with, as well as a common approach to a common problem. Come learn about useful patterns, and how to use them in your everyday code.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Session Two: How I Learned To Love Dependency Injection&lt;/strong&gt;&lt;br /&gt;Dependency Injection is one of those scary topics that most developers avoid. It sounds all ‘high-falootin’ and complex. It’s not. Really. We wouldn’t lie. It’s a great way to manage complexity in your system, and a great way to make your system so much more testable. And isn’t that what we all want?&lt;br /&gt;&lt;br /&gt;Each session will be followed by open discussions periods. A catered lunch will be provided starting at noon when the welcome time begins.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;When &amp;amp; Where&lt;/strong&gt;&lt;br /&gt;Wednesday, June 10, 2009 12:00 PM - 5:00 PM&lt;br /&gt;Microsoft Office - Franklin&lt;br /&gt;2555 Meridian Blvd, Suite 300&lt;br /&gt;Franklin, TN 37067&lt;br /&gt;&lt;br /&gt;Click &lt;a href="https://www.clicktoattend.com/invitation.aspx?code=138773"&gt;here &lt;/a&gt;to register for this event.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Microsoft ArcReady: Architecting for the Client Tier&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;The client (or presentation) tier of our applications is taking on an increasingly important role. Users are expecting more compelling user interfaces, but they also want more functionality from their applications. In this ArcReady we examine how to design and deliver well architected client applications that will be easy to maintain and extend.&lt;br /&gt;&lt;strong&gt;&lt;br /&gt;Session 1: Trends and patterns on the client tier&lt;br /&gt;&lt;/strong&gt;In our first session we will take a vendor and platform neutral look at some of the trends and emerging technologies that can be used on the client tier. We will look at techniques like Mashups, technologies like Natural User Interfaces (NUI) and the increasing importance of the mobile platform. We will also look at some common patterns that can be used in the architecture of the client tier.&lt;br /&gt;&lt;strong&gt;&lt;br /&gt;Session 2: Applying Microsoft technology on the client tier&lt;br /&gt;&lt;/strong&gt;In our second session we will take some look at how we can use Microsoft technologies to create well architected and compelling client applications. We will look at technologies like Silverlight and WPF that can be used to create compelling clients. We will also look at technologies that can be used to make your applications more extensible for future development. We will also examine some architectural guidance developed by the Microsoft Patterns and Practices group.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;When &amp;amp; Where&lt;/strong&gt;&lt;br /&gt;Friday, June 12, 2009 9:00 AM - 11:45 AM&lt;br /&gt;Microsoft Office - Franklin&lt;br /&gt;2555 Meridian Blvd, Suite 300&lt;br /&gt;Franklin, TN 37067&lt;br /&gt;&lt;br /&gt;Click &lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&amp;amp;EventID=1032408652"&gt;here &lt;/a&gt;to register for this event.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;MSDN Events Unleashed&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Internet Explorer 8 for Developers&lt;br /&gt;&lt;/strong&gt;The Windows Internet Explorer 8 browser makes it easier to explore and interact with the web. Did you know that there will be a new standards mode by default? While it can easily be turned off, knowing the potential to impact this may have on many sites that have been crafted around various features in past versions is a good idea. Attend this session to learn which current practices you need to change and how the new standards mode affects your development techniques and your existing sites. We review tools that are built into Internet Explorer 8 to help developers debug and create Web pages. We also discuss Web Slices, Accelerators, and Search Suggestion – all of which are key new features in this latest release.&lt;br /&gt;&lt;br /&gt;In this session we’ll show you:&lt;br /&gt;&lt;br /&gt;- Developer Tools&lt;br /&gt;- Selectors API&lt;br /&gt;- Use and create accelerators&lt;br /&gt;- Use and create web slices&lt;br /&gt;- Use and create search suggestions&lt;br /&gt;- AJAX Navigation enhancements with Virtual Earth demo on history, AJAX Cross Domain Calls&lt;br /&gt;- CSS improvements (printing, counters, new pseudo classes)&lt;br /&gt;&lt;strong&gt;&lt;br /&gt;Developing on Microsoft Windows 7&lt;br /&gt;&lt;/strong&gt;Building applications that are easy to use, visually appealing, and offer high performance is a challenge that developers face every day. Innovative applications can greatly improve the user experience, empowering companies to differentiate their services and solutions. However, developers are increasingly asked to do more in less time, while also optimizing the power and performance requirements of their applications. The Windows 7 platform makes it easy for developers to create engaging, user-friendly applications by providing familiar tools and rich development features that allow them to take advantage of the latest PC capabilities. In this session we will explore the new Taskbar and Jump Lists, the Scenic Ribbon, file management with Libraries, and Windows Web Services among many other enhancements to the new operating system.&lt;br /&gt;&lt;br /&gt;In this session we’ll show you:&lt;br /&gt;&lt;br /&gt;- New Features in Windows 7&lt;br /&gt;- Use and create jump lists&lt;br /&gt;- Scenic Ribbon API&lt;br /&gt;- Use and create Libraries&lt;br /&gt;- Windows Web Services API&lt;br /&gt;- Additional enhancements that support development&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;When &amp;amp; Where&lt;/strong&gt;&lt;br /&gt;Friday, June 12, 2009 1:00 PM - 2:50 PM&lt;br /&gt;Microsoft Office - Franklin&lt;br /&gt;2555 Meridian Blvd, Suite 300&lt;br /&gt;Franklin, TN 37067&lt;br /&gt;&lt;br /&gt;Click &lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&amp;amp;EventID=1032409553"&gt;here &lt;/a&gt;to register for this event.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;TechNet Events Unleashed&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;Session 1: Windows Server 2008 R2 – Optimize Your Time&lt;/strong&gt;&lt;br /&gt;Get a jump start on your peers with Windows Server 2008 R2 by joining us for this no nonsense technical session, where we will discuss the critical improvements in the next version of Windows Server. Some have argued that, given the impressive scope of new functionality in Windows Server 2008 R2, it should not be an “R2” release, but rather should be given a completely new name. They point to features such as Direct Access, Branch Caching, Live Migration, Powershell 2.0, and VDI that will help you cut down on the amount of time you spend doing mundane tasks, reduce end user frustration and support headaches, and give your mobile workforce a competitive edge through ubiquitous access to company data. There’s a good chance that by attending this session you’ll find a way to save time and money with Windows Server 2008 R2, and so you’ll get the time you spend with us back many times over.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Session 2: Windows 7 – Maximize Your Potential&lt;/strong&gt;&lt;br /&gt;In designing Windows 7, the engineering team had a clear focus on what we call ‘the fundamentals': performance, application compatibility, device compatibility, reliability, security and battery life. Early reviews of Windows 7 seem to indicate that the choice to focus on the fundamentals is resonating well with many users and professionals. And, IT professionals will further benefit from the enhancements to manageability and security. You’ll also learn how your investments in testing and evaluating Windows Vista will pay off in the transition to Windows 7. Come see firsthand what all the buzz is about in this demo-intensive session where we explore the UI improvements, performance gains, and manageability enhancements in the next client operating system from Microsoft.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Session 3: Internet Explorer 8 – Get Excited About the Browser Again&lt;/strong&gt;&lt;br /&gt;Internet Explorer is currently the most widely used browser in business, and while we’ve seen nice incremental improvements to IE in recent history, we haven’t seen as many truly earth shattering changes. Well, many agree that the next release of IE, Internet Explorer 8, provides the most compelling upgrade to IE in many years. In a typical day, users spend 2 hours or more per day in the browser, so significant improvements here can have tremendous impact on productivity and the way we work. The browser needs to be thought of in the same terms as an operating system—it has to be rich, robust, interoperable, easy to use and secure. Internet Explorer 8 is a browser that meets these needs and more for users, enterprises, IT professionals and developers alike. Come learn how the new improvements, too numerous to mention here, are driving many to get excited about the browser again.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;When &amp;amp; Where&lt;/strong&gt;&lt;br /&gt;Friday, June 12, 2009 3:10 PM - 5:00 PM&lt;br /&gt;Microsoft Office - Franklin&lt;br /&gt;2555 Meridian Blvd, Suite 300&lt;br /&gt;Franklin, TN 37067&lt;br /&gt;&lt;br /&gt;Click &lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&amp;amp;EventID=1032410552"&gt;here &lt;/a&gt;to register for this event.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;CMA Music Festival - Microsoft Booth&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;If you are going to the &lt;a href="http://www.cmafest.com/2009/"&gt;CMA Music Festival &lt;/a&gt;June 12th - 14th, stop by the Microsoft booth to see demos of IE8, Surface, cool Silverlight apps, and more. They will also have XBoxes and Guitar Hero setup for you to play. I am manning the booth on Sunday so drop by and say hi!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-2901403886702901102?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2901403886702901102/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2901403886702901102' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2901403886702901102'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2901403886702901102'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/06/upcoming-microsoft-events-in-nashville.html' title='Upcoming Microsoft Events in Nashville'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-1161007617014365663</id><published>2009-05-04T23:20:00.003-05:00</published><updated>2009-05-04T23:58:43.983-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile tools'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Choosing the Right Scrum Management Tool (Slight Return)</title><content type='html'>I'm getting some great feedback from my last &lt;a href="http://tommynorman.blogspot.com/2009/05/choosing-right-scrum-management-tool.html"&gt;post&lt;/a&gt; on Scrum management tools from various places and I realized I left off an entire section when I published yesterday so I wanted to post the missing part. Here is another big part of any Scrum management tool:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Release Planning&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Release planning is a very useful exercise to help forecast when features will be ready in the future (as much as possible with the ability to rearrange the entire Product Backlog after every Sprint). This often puts management more at ease since they have convinced themselves that when they used to see project plans with Gant charts they were more predictive (which is usually not the case). Here are some things to look for in a management tool around this:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Drag and Drop&lt;/strong&gt;: Some of the better tools out there allow you to view your Product Backlog and drag items from it into Releases and Sprints. This side by side view provides a great way to plan and try "what if" scenarios.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Velocity Indicators&lt;/strong&gt;: Along with the drag and drop mentioned above, the ability to enter velocity for the Sprints and have the interface visibly show you how many Story Points are used/free in each Sprint (and a roll up into the Release) really helps with planning also. The better ones show this both by the numbers (like 4/10 for used/total) and with a bar showing green when you have plenty of free Story Points left and goes yellow to red as you fill up the Sprint.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Capacity Planning&lt;/strong&gt;: Being able to calculate the capacity for each Sprint by taking in consideration team members availability is key for less cross functional teams. You should be able to set each members individual capacity per Sprint and include days off and holidays.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Velocity Averaging&lt;/strong&gt;: &lt;a href="http://blog.mountaingoatsoftware.com/"&gt;Mike Cohn &lt;/a&gt;prescribes taking the average of the 3 top most velocities for the last 6 months and the average of the lowest 3 velocities for the same period to use as a range for Release Planning. It would be great if your management tool could do that also!&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;Sorry I left this off from my original post.&lt;/p&gt;&lt;p&gt;Also, there have been plenty of people telling me tools I missed. I apologize as the intent of my post was not to list all the options but rather concentrate on the desired features. My list at the end of the post was just some of the top vendors according to some of the various surveys I have seen. Below is a chart form the &lt;a href="http://pm.versionone.com/WhitePaper_AgileSurvey2008.html"&gt;VersionOne 2008 survey&lt;/a&gt;. Please feel free to keep posting comments on other tools, but do not be offended if I did not mention your weapon of choice.&lt;/p&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/Sf_GEwUnRUI/AAAAAAAAAUU/jJrisah78xA/s1600-h/AgileToolSurvey.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5332198268823094594" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 255px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/Sf_GEwUnRUI/AAAAAAAAAUU/jJrisah78xA/s400/AgileToolSurvey.png" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-1161007617014365663?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/1161007617014365663/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=1161007617014365663' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1161007617014365663'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1161007617014365663'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/05/choosing-right-scrum-management-tool_04.html' title='Choosing the Right Scrum Management Tool (Slight Return)'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_nzj0JxErQqA/Sf_GEwUnRUI/AAAAAAAAAUU/jJrisah78xA/s72-c/AgileToolSurvey.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4136333275981814374</id><published>2009-05-03T22:11:00.005-05:00</published><updated>2009-05-03T22:35:01.037-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile tools'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Choosing the Right Scrum Management Tool</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/Sf5gFjmJVVI/AAAAAAAAAUM/pa5pTq9gn7U/s1600-h/ScrumSwissArmyKnife.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5331804657424094546" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 320px; CURSOR: hand; HEIGHT: 320px" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/Sf5gFjmJVVI/AAAAAAAAAUM/pa5pTq9gn7U/s320/ScrumSwissArmyKnife.jpg" border="0" /&gt;&lt;/a&gt; As Scrum and other Agile practices gain wider adoption there has been more need for tools to help manage these types of projects. Yes, I know, the Agile Manifesto says to respect “Individuals and Interactions” over “Process and Tools”, but even the purists are seeing that larger scale projects require something more than the prescribed low tech task boards and sticky notes. If used correctly these types of tools can help with your Agile practices.&lt;br /&gt;I constantly see postings on various Agile forums asking what is the best tool to use. There are even several blog posts out there outlining the pros and cons for the various packages currently on the market. I find the choice of which tool to use is very contextual and while you do need to do you research on all the different vendors and offerings, you should really get a good idea of what you want from a tool before you go out looking for one.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;For instance: If you are a smaller shop that has been previously using the note card and sticky note approach, you would probably not want to jump into a larger, all encompassing tool at first. A larger shop that is moving from a much more structured approach would tend to want something with more features to give them some of the same abilities they had with their previous toolset. Also, various people (Product Owners, Scrum Masters, developers, testers, stakeholders, etc.) have different expectations of how they will interact with these tools and what they will get out of them.&lt;br /&gt;&lt;br /&gt;So I thought I would talk about what functions you would perform in these tools and what to look for while evaluating them:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Product Backlog Maintenance&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Argue with me all you want, but managing the Product Backlog is one of the more important jobs in Scrum. If you have a crappy Product Backlog, you will get a crappy product no matter how well the actual practices in the Sprint are performed. So what should we look for in this area?&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;User Story Support&lt;/strong&gt;: User stories are basically the standard way to capture requirements in the Agile world and any tool claiming to be a Agile management tool should allow us to easily record and manage them. This means containing areas for the user story, conditions of acceptance (or How To Demo), acceptance tests, story points, business value, and delivery order at a minimum.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Other Product Backlog Types:&lt;/strong&gt; While I just stated that User Stories are the primary mechanism for capturing requirements, I do think there should be support for capturing things like technical requirements in the Product Backlog too. Even if I record these non-functional requirements in the same User Story format, I like to have a way to define it as a technical requirement for reporting purposes. It also helps with testing since these types of requirements sometimes do not change the user interaction so there would be no new user acceptance tests, but they often require extensive regression testing of existing functionality. Having a way to separate these types of requirements is helpful to the testers to know what will require new tests to be written.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Batch Entry/Editing:&lt;/strong&gt; From experience I know that a tool that requires me to open various windows to enter or edit multiple Product Backlog items makes planning meets a laborious process. The best support I have seen for this functionality is the ability to export and import from Excel.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Epic/Theme/Feature Hierarchy Support:&lt;/strong&gt; When planning a large scale project it is important to see the smaller user stories in their larger context by grouping them as feature sets, which relate to a theme, which originates from an Epic. I’ve heard complaints from management about Product Backlogs with small User Stories are tactical approaches and they want to see things at a strategic level. By rolling the smaller stories up to these various levels you provide that type of view to them.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Sprint Backlog Maintenance&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;Transparency is a key element of Scrum and keeping up with the tasks in the Sprint Backlog accurately is one of the keys to providing that visibility. While the Product Backlog is managed by a single person normally (the Product Owner) and is not usually touched every day, the Sprint Backlog is managed by the entire Scrum team and should be updated daily (if not several times a day). This makes the nuances to interacting with the Sprint Backlog a little different. Here’s what I look for:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Easy Access to ‘My’ Tasks&lt;/strong&gt;: Since we want the team to update their tasks frequently, I need to make it as easy as possible for them to view their open tasks, update the task, and grab another unassigned task. While Virtual Tasks Boards are great for this in the Daily Scrum, I just want to talk about editing the Sprint Backlog items during the rest of the day. The best way to ensure this is to integrate with the tool I use most often, which for a .NET developer like me is Visual Studio. But we cannot forget other team members like testers who may or may not being using the same tool.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Batch Entry/Editing&lt;/strong&gt;: Once again from experience, when you are adding multiple Sprint Backlog items in a Sprint Planning meeting, having to do it one at a time in a new window for each one is a time suck. Excel is once again a great way to do this so look for export and import from the Sprint Backlog as well as the Product Backlog.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Custom Views:&lt;/strong&gt; As a Scrum Master you will frequently be looking at the Sprint Backlog for various reasons. Because of this you may want to sort or filter the view differently. Having the ability to create your own views of the Sprint Backlog (and this goes for the Product Backlog too) is essential. For example I use a view that shows me what Sprint Backlog tasks were edited today, yesterday, and three days ago (for Mondays to see what was edited on Friday). Scrum team members can also use this for the ‘My tasks’ functionality I mentioned above.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Product Backlog Linking&lt;/strong&gt;: Just as a User Story links back to a feature, theme, and/or epic, each Sprint Backlog item should link back to an item in the Product Backlog. This is essential for reporting purposes. On the opposite side of that rule there will be unplanned work that may not tie back to the Product Backlog and I should be able to easily identify these orphaned tasks.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Information Radiators&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;Alistair Cockburn coined the term ‘&lt;a href="http://c2.com/cgi-bin/wiki?InformationRadiator"&gt;Information Radiator’&lt;/a&gt; which he described as a type of display that relays critical and frequently updated project information. Furthermore the display must relay the information in a way that the viewer requires very little effort to gauge its intent. In other words I should be able to walk by and with a glance get an idea of the status of some facet of the project. These are normally displayed in the open where the entire team can see them, but with distributed teams that becomes difficult. Here are some of the features and specific types of Information Radiators to look for:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Types of Information Radiators&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Sprint Burndown Chart&lt;/strong&gt;: The most useful and common of the Information Radiators is a must have in any tool. Some additional features I have seen in some tools that I liked:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Track Done Burndown&lt;/strong&gt;: Most burndowns are based on “work hours remaining” which sometimes does not tell the whole story. If you have only 20 hours left across 4 Product Backlog items then it would look like you are doing well, but if there are 5 hours remaining on each Product Backlog item and none of them are done then it can be misleading. A track done report simply reports on the number of Product Backlog items that have been marked as Done versus those Not Done (and sometime it will show In Progress ones differently).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Capacity Trend Line&lt;/strong&gt;: This is the line that shows you where you will be based on your team’s current capacity based on the number of hours to be worked. It is a good indicator if you have bitten off more than you can chew from the start.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Moving Average Trend Line&lt;/strong&gt;: This one always threw me for a loop until I understood what it was supposed to show. There a several flavors of this (the most complicated being Linear Regression), but what it boils down to is based the average rate of burndown (positive or negative) from a set portion of history, if you continue at that rate the line shows you where you will be at the end of the Sprint. So if you are entering more Sprint Backlog hours at the beginning of the Sprint than you are burning, this line will slope up because if you kept adding more hours than you took away you would never reach 0 hours. It usually looks this was at the beginning but when we really get cooking and have stopped adding in new tasks, the trend line tips over and we get an idea based on an average of our last few days where we would wind up if we kept that average up. If that does not make sense then read &lt;a href="http://en.wikipedia.org/wiki/Linear_regression"&gt;this&lt;/a&gt;, which will probably make even less sense!&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Product Backlog Burndown Chart&lt;/strong&gt;: If you have multiple projects each with their own Product Backlog, then the Product Backlog Burndown is a good indicator of how close you are to finishing the entire project. It shows the number of Product Backlog items remaining either over time or by Sprint. If you have a companywide Product Backlog then this has less immediate relevance since if it ever went to 0 then you either reached perfection or went out of business!&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Hours/Tasks Breakdown by Team Member&lt;/strong&gt;: There are several versions of these types of reports but they basically show each team member and how many Sprint Backlog items (or tasks) they have closed, are currently working on, and the hours remaining. It is a quick snap shot to see if someone is falling behind. This should be something you naturally discover during the Daily Scrum if you are doing it right but with larger teams it may not be as obvious.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Bug/Fix Trends&lt;/strong&gt;: Management loves metrics about bugs: How many bugs did we fix last sprint? How fast are we fixing bugs? What is the breakdown of bugs by testing/user impact? Having some nice graphs and pie charts to show the answers to these questions in an easy to view display makes management happy. It can also help a team quickly identify if they have a code quality issue.&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Display Options for Information Radiators&lt;br /&gt;&lt;/strong&gt;&lt;br /&gt;As I said before, it is important that Information Radiators be as visible as possible to the entire team. So there are other factors to consider from a tool in this area: &lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Multiple Means of Access&lt;/strong&gt;: If the tool only allows you to look at these charts and reports through the tool itself, then you will have limited options when trying to display them for your entire team to see or offer management a way to view them on demand. Most tools provide these reports via the web which can work for most situations, but the better tools I have seen offer them through something like SQL Reporting Services which has many options of delivery including web, email, and exports to Word/PFD/Excel. This will be especially crucial for a distributed team to all have access to this information.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Rotating Views&lt;/strong&gt;: Frequently I see companies putting large LCD screens in various places around their buildings to convey information to their employees. This is a great idea for information radiators also. A good tool will allow me to pick and choose different reports to be displayed on a rotating basis on an external monitor making it a very effect way to show everyone the status of our projects.&lt;/li&gt;&lt;/ul&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Customization&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;One of the reasons the Agile world tends to stay away from management tools is that they may force us to adopt the tools process over the process that is best for our team. So for a Scrum management tool to be effective, it must allow us to customize it to fit our needs. Here are some common customizations:&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Ability to Edit Backlog Fields&lt;/strong&gt;: There have been many times when implementing Scrum for a client that they have needed to record additional information in the Product and Sprint backlogs. This would require the management tool to allow us to add, edit, and remove fields for backlog items.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Ability to Edit Backlog Workflow&lt;/strong&gt;: We are used to the standard ‘Not Done’, ‘In Progress’, and ‘Done’ type workflows for Product and Sprint Backlogs, but often teams will want to modify these for things like ‘Ready For Test’, ‘Deferred’, ‘Code Reviewed’, etc. Not only is it nice to be able to change the states, but changing the workflow rules is a nice feature along with it.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Ad Hoc Reporting&lt;/strong&gt;: When you start using a management tool in the Scrum, a ton of data can be captured. You start to be able to easily track trends like how fast does the team close and ‘In Progress’ task, how often do we add new tasks in the middle of the Sprint, etc. This is very useful information and the ability to pull that data out of the tool and report on it can give your team much more insight in how it is performing.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Integration&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Managing backlogs is only one part of the Scrum process. During the Sprint there are tons of activities going on that may use other tools such as unit testing, source control, feature testing, automated builds, etc. The ability to integrate with these tools can add even more power to your management tool in a few ways:&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Linking Source Code to Backlog Items&lt;/strong&gt;: When you add code to your source control repository, the ability to link it to the appropriate Sprint Backlog task (and through that the corresponding Product Backlog item) gives you even more reporting options. You can quantify the exact codes changes that took place for any given requirement.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Automated Work Item Creation&lt;/strong&gt;: A common example of this is creating a Sprint Backlog task to after a broken build. If you have setup a continuous integration tool that builds whenever code is checked in or on a scheduled basis, if that build breaks you can have a Sprint Backlog task automatically created to fix the build. You may already have internal software tools for tracking bugs or high level requirements and having the ability to setup some type of synchronization between those tools and your Scrum management tool can help with adoption since it builds upon tools your company has a current investment in.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Linking Test to Backlog Items&lt;/strong&gt;: Just as with source code, the ability to link unit tests or automated feature tests to Sprint/Product Backlog items helps with stuff like traceability matrices. If management asks the impact of changing a piece of functionality you can easily make the change locally and then run all the linked tests to see what it breaks or ensure it does not break anything. It will also help identify tests to be run for regression testing when changes are made to existing code.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Making the Choice&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;The functionality above covers the biggest feature sets I can think of, but there are probably others. While most of the mainstream tools out there cover the basics fairly well, the other functionality mentioned above could be the deciding factor over one or the other.&lt;br /&gt;&lt;br /&gt;My advice is to think of what is the most important set of features for you team and then examine each of your choices to see which ones fit your criteria the best. To help get you started below are some links to some of the top tools on the market. Happy hunting!&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.versionone.com/"&gt;http://www.versionone.com/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.rallydev.com/"&gt;http://www.rallydev.com/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.danube.com/"&gt;http://www.danube.com/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.xplanner.org/"&gt;http://www.xplanner.org/&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://studios.thoughtworks.com/mingle-agile-project-management"&gt;http://studios.thoughtworks.com/mingle-agile-project-management&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://scrumforteamsystem.com/"&gt;http://scrumforteamsystem.com&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.scrumdesk.com/"&gt;http://www.scrumdesk.com/&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4136333275981814374?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4136333275981814374/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4136333275981814374' title='22 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4136333275981814374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4136333275981814374'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/05/choosing-right-scrum-management-tool.html' title='Choosing the Right Scrum Management Tool'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_nzj0JxErQqA/Sf5gFjmJVVI/AAAAAAAAAUM/pa5pTq9gn7U/s72-c/ScrumSwissArmyKnife.jpg' height='72' width='72'/><thr:total>22</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4842600328970692941</id><published>2009-04-28T21:06:00.004-05:00</published><updated>2009-04-28T21:12:32.847-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server 2010'/><title type='text'>Brian Harry Presenting on Team System 2010 on Live Meeting</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/Sfe3UaUVaPI/AAAAAAAAAT8/K5tjmGwUkKo/s1600-h/brian-harry.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5329930245306149106" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 100px; CURSOR: hand; HEIGHT: 120px" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/Sfe3UaUVaPI/AAAAAAAAAT8/K5tjmGwUkKo/s400/brian-harry.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Brian Harry&lt;/strong&gt;, a Product Unit Manager for TFS from Microsoft, will be presenting on the new features of TFS 2010 (codename Rosario) and what benefits it will bring to software development and project management. You can read more about Brian on his &lt;a href="http://blogs.msdn.com/bharry/"&gt;blog&lt;/a&gt;.&lt;/p&gt;&lt;p&gt; &lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Where?&lt;/strong&gt; &lt;a href="https://www.livemeeting.com/cc/microsoft/join?id=G2K4BH&amp;amp;role=attend&amp;amp;pw=PN6.%3CQ%5Drb" target="_blank"&gt;https://www.livemeeting.com/cc/microsoft/join?id=G2K4BH&amp;amp;role=attend&amp;amp;pw=PN6.%3CQ%5Drb&lt;/a&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;When?&lt;/strong&gt; Thursday, April 30th, 2009&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;What time?&lt;/strong&gt; 3:30 to 4:30pm EST&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;Who should attend?&lt;/strong&gt; Technical Decision Makers, Lead Developers, and Software Architects who want to see what new innovations are coming from Microsoft and impact they will make on business&lt;/p&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4842600328970692941?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4842600328970692941/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4842600328970692941' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4842600328970692941'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4842600328970692941'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/04/brian-harry-presenting-on-team-system.html' title='Brian Harry Presenting on Team System 2010 on Live Meeting'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_nzj0JxErQqA/Sfe3UaUVaPI/AAAAAAAAAT8/K5tjmGwUkKo/s72-c/brian-harry.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-7711489531380842459</id><published>2009-04-19T23:57:00.003-05:00</published><updated>2009-04-20T00:04:07.597-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='development'/><title type='text'>The Importance of Failure</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SewCP7IpvTI/AAAAAAAAAT0/23bH__3aNVA/s1600-h/failure.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5326634931867729202" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 320px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SewCP7IpvTI/AAAAAAAAAT0/23bH__3aNVA/s400/failure.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/SewB4yt09XI/AAAAAAAAATs/WvUiG9Ht2rU/s1600-h/failure.jpg"&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;Not too long ago during a technical interview a developer told me that he had "never failed on a project". This isn't the first time someone has said this to me. I assume he intended his boast to make him a more attractive candidate, but instead it made him a much riskier hire in my eyes. So you are probably thinking to yourself "Why would someone who has never failed be a risky hire?" Wouldn't a developer who has succeeded on every project they have been on be pretty darn good?&lt;br /&gt;&lt;br /&gt;I find that people who claim to have never failed usually fit one of these scenarios:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;They are really that good&lt;/strong&gt;. It is possible that this person in their vast experience has made all the right choices and risen above all external factors to truly have succeeded in every project they have undertaken. &lt;strong&gt;&lt;span style="color:#cc0000;"&gt;Warning&lt;/span&gt;&lt;/strong&gt;: I find that highly unlikely.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;strong&gt;They haven't done much&lt;/strong&gt;. If you have been on one project that succeeded you would technically be batting 1000. But who would you want on your team: the guy who has hit a home run with one single at bat or the guy who has batted 366 over 1,000 at bats?&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;strong&gt;Your exposure to the project's success was limited&lt;/strong&gt;. When you are a developer you tend to think that if you deliver decent code on time then you have done part. And if your team delivers on time and on budget then you can count the project as a success. But there are many other factors for a project to be considered successfully that sometimes project teams are shielded from. I was on a project where my team delivered quality code, on time, within budget, and afterwards the client shelved the entire package and never used it. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;strong&gt;Your projects have been small or less critical in nature&lt;/strong&gt;. I have met someone who at the time had really been on several successful projects. But upon further investigation he worked in a large company on applications that were not mission critical and his projects had more lax success factors. Although he was technically a solid developer, he was very unprepared for more serious endeavors.&lt;br /&gt;&lt;br /&gt;So now you think I want to hire people who fail all the time, right? Not exactly. Consistent failure is not good, but small, intermittent failures provide you with opportunities to learn in a way that success does not. When I hear some say they have never failed, I worry that they most likely will not see it coming when they do. And the laws of probability dictate that it will inevitably happen.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Learning from Failure&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;So if (and I really mean when) you fail, it can never be a total loss if you learn from it. I speak from my own experience.&lt;br /&gt;&lt;br /&gt;I was brought onto a project for a fortune 100 company specifically because I had been successful before with implementing new technologies for Sales Force Automation. And at the time in my limited view of what I deemed a successful project, I had always been on the winning side up to that point.&lt;br /&gt;&lt;br /&gt;I was the Architect/Team Lead for the team and was also given a good deal of influence in other areas of the project as well. I have to admit that it just fed my ego and I started to think our chances for success were bullet proof. But the project failed and even though there were many contributing factors I had a decent amount of the blame on my shoulders. One of the worst things about it was that even when things had started to go bad, I ignored the signs and thought that through pure force of will I could pull it out in the end.&lt;br /&gt;&lt;br /&gt;It was a very humbling experience and in the months immediately afterwards I spent quite a bit of time reviewing what had gone wrong. There were some obvious technical decisions, but there were other factors that had more impact: requirements, project management, team management, customer expectations, and the intangible political environment. I had been so focused on fixing the technical issues that I (and other team members) failed to address these other issues. Even after the initial meltdown, when all the technical issues were fixed, the other factors were such that the application never saw the light of day.&lt;br /&gt;&lt;br /&gt;The insight I gained from the failure makes a good deal what I have learned from other successes pale in comparison. I took that and applied it to every project after that, determined not to repeat those mistakes. I am happy to say I have been fairly successful at that and I have had to work hard at finding new and more inventive ways to fail! I have had definitive moments in subsequent projects where I have seen similar signs arise and have been able to try a new approach (some successful, some not so much) to try and mitigate these types of issues. And each time I find a successful way of turning that old issue around, I feel that I become that much stronger of a developer. And when I am asked about my past failures I dutifully speak of them and convey how each one taught me a lesson so that I won't be caught unawares again.&lt;br /&gt;&lt;br /&gt;So now one of my initial interview questions for new candidates is "Tell me about a past failure." If they respond that they have never failed then they better really knock my socks off for the rest of the interview to even have a ghost of chance. Likewise if they tell me about a failure and do not follow it up with what they learned from it, in my eyes they just had their first failure.&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-7711489531380842459?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/7711489531380842459/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=7711489531380842459' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7711489531380842459'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7711489531380842459'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/04/importance-of-failure.html' title='The Importance of Failure'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SewCP7IpvTI/AAAAAAAAAT0/23bH__3aNVA/s72-c/failure.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5708372713160790775</id><published>2009-04-01T21:19:00.004-05:00</published><updated>2009-04-01T21:58:57.410-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='microsoft MVP'/><title type='text'>Team System MVP</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SdQpcku2bcI/AAAAAAAAATk/NopFyVAa9Bo/s1600-h/MVPLogo.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5319922630704655810" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 115px; CURSOR: hand; HEIGHT: 180px" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SdQpcku2bcI/AAAAAAAAATk/NopFyVAa9Bo/s400/MVPLogo.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I was very stoked to get my confirmation email for my &lt;a href="https://mvp.support.microsoft.com/profile=A8624509-F624-481B-9BA6-5DCFCE9C4185"&gt;&lt;strong&gt;Team System MVP&lt;/strong&gt; &lt;/a&gt;today. I was a little worried it might be an April Fools joke, but apparently it is the real deal. I am lucky to be in a group with such talented people and really look forward to getting even more invovled in the VSTS community this next year. Congrats to all my fellow MVPs announced today!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-5708372713160790775?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5708372713160790775/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5708372713160790775' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5708372713160790775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5708372713160790775'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/04/team-system-mvp.html' title='Team System MVP'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SdQpcku2bcI/AAAAAAAAATk/NopFyVAa9Bo/s72-c/MVPLogo.gif' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5548783532009817491</id><published>2009-03-31T23:43:00.006-05:00</published><updated>2009-04-01T00:00:34.981-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server 2010'/><title type='text'>My Latest Favorite Feature of VSTS 2010</title><content type='html'>&lt;div&gt;As I explore the&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=922B4655-93D0-4476-BDA4-94CF5F8D4814&amp;amp;displaylang=en"&gt; VSTS 2010 CTP&lt;/a&gt;, I find more and more to like about it. My latest favorite is the ability to setup true work item hierarchies. You could fake this with linking work items in 2005 and 2008, but now these types of relationships are first class citizens.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;You can now click on a work item in a results view (or select &lt;strong&gt;multiple&lt;/strong&gt; work items) and the context menu now has an option to &lt;strong&gt;'Link to An Existing Item'&lt;/strong&gt;. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SdL0FQIi1-I/AAAAAAAAATM/lMa_YUTFvS0/s1600-h/VSTS2010LinkToExistingItem.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5319582480945305570" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 250px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SdL0FQIi1-I/AAAAAAAAATM/lMa_YUTFvS0/s400/VSTS2010LinkToExistingItem.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;This brings up a dialog that allows you to choose a link type (from choices such as Parent, Child, Predecessor, etc.) and then shows you a visual representation of the link type.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/SdL0MXTAxKI/AAAAAAAAATU/DF4v4r-TYys/s1600-h/VSTS2010LinkToExistingItemDialogLinkTypes.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5319582603127342242" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 300px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/SdL0MXTAxKI/AAAAAAAAATU/DF4v4r-TYys/s400/VSTS2010LinkToExistingItemDialogLinkTypes.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;There is also a new results view that shows these hierarchies. Another great thing about these views is the ability to drag an item under another item and it automatically make the parent/child links. &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SdL0RbypsYI/AAAAAAAAATc/YDmwICbW1L4/s1600-h/VSTS2010WorkItemTreeView.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5319582690233135490" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 250px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SdL0RbypsYI/AAAAAAAAATc/YDmwICbW1L4/s400/VSTS2010WorkItemTreeView.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;My only issue is that this new 'tree view' style results view is a little murky in showing items under another item. In the screenshot above you can see the tasks and bugs related to the user story but there is not a very clear distinction. Hopefully they will fix this in the next release.&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;This is something I have wanted for a long time to help with Product Backlog and Sprint Backlog management inside TFS and I cannot wait to start working with it for real!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-5548783532009817491?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5548783532009817491/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5548783532009817491' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5548783532009817491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5548783532009817491'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/03/my-latest-favorite-feature-of-vsts-2010.html' title='My Latest Favorite Feature of VSTS 2010'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_nzj0JxErQqA/SdL0FQIi1-I/AAAAAAAAATM/lMa_YUTFvS0/s72-c/VSTS2010LinkToExistingItem.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-7252187998170440771</id><published>2009-03-26T13:51:00.003-05:00</published><updated>2009-03-26T13:59:36.475-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><category scheme='http://www.blogger.com/atom/ns#' term='Conchango'/><category scheme='http://www.blogger.com/atom/ns#' term='reports'/><title type='text'>New Product Backlog Estimation History Report for Conchango Scrum TFS Template</title><content type='html'>&lt;a href="http://twitter.com/pgauthier"&gt;Paul Gauthier &lt;/a&gt;and I were talking about using more of the information stored in the Team System data warehouse for the "inspect and adapt" aspects of most Agile practices. If you use TFS for managing your Product/Sprint Backlogs, associate source control changesets to Sprint Backlog Items, and use Team Build then you have a wealth of information about your process at your fingers. There are some great reports out of the box with the &lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;Conchango Scrum for TFS process template&lt;/a&gt;, but there is so much more data to be mined.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Paul's team is just starting with Scrum and we have had many conversations about estimating User Stories in the Product Backlog using Story Points. Most of the groups I coach have to get used to the idea of estimating this way. I always tell them that over time your team will become more accurate with gauging the story point value of individual stories. We talked about being able to go back over time and see how many hours were actually worked against individual stories and using that data to get an idea of how much diversity there are in the actual hours worked over multiple stories assigned the same story point value.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Paul created the great report we are calling &lt;a href="http://tommynorman.info/files/PBIEstimateHistory.zip"&gt;&lt;strong&gt;"Product Backlog Estimation History".&lt;/strong&gt; &lt;/a&gt;You choose a story point value and a date range, then the report will show you a graph of the number of Product Backlog Items with the same amount of actual hours worked.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/ScvPAUF3e_I/AAAAAAAAATE/PMBbkBpLvz0/s1600-h/PBIEstimateHistory.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5317571389341268978" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 353px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/ScvPAUF3e_I/AAAAAAAAATE/PMBbkBpLvz0/s400/PBIEstimateHistory.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Over time you can see trends in how accurate your team is estimating using story points by seeing the variation of hours actually worked. If you see a large variation then you might want to look at this during a retrospective to see why the estimates are no more accurate. You will see some degree of variation naturally, but large amounts can be a symptom of a deeper issue.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-7252187998170440771?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/7252187998170440771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=7252187998170440771' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7252187998170440771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7252187998170440771'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/03/paul-gauthier-and-i-were-talking-about.html' title='New Product Backlog Estimation History Report for Conchango Scrum TFS Template'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_nzj0JxErQqA/ScvPAUF3e_I/AAAAAAAAATE/PMBbkBpLvz0/s72-c/PBIEstimateHistory.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-7297176684905852900</id><published>2009-03-19T21:12:00.006-05:00</published><updated>2009-03-19T22:10:42.763-05:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><category scheme='http://www.blogger.com/atom/ns#' term='Conchango'/><category scheme='http://www.blogger.com/atom/ns#' term='reports'/><title type='text'>Reformatted Product Backlog Composition Report for Conchango TFS Template</title><content type='html'>There are some great reports that come out of the box with the &lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Conchango&lt;/span&gt; Scrum process template for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;TFS&lt;/span&gt;&lt;/a&gt;, but I have always had an issue with the formatting of the Product Backlog Composition report.&lt;br /&gt;&lt;br /&gt;This report is a great breakdown of each Sprint showing the Product Backlog Items and all the associated Sprint Backlog items. It shows the story points assigned to each Product Backlog Item as well as the original estimated hours versus the hours remaining for each of the subsequent Sprint Backlog items. This is a good report for management that want to see what items are being worked on in the Sprint and now muck work remains to be done. Project managers used to more traditional reporting seem to like it also.&lt;br /&gt;&lt;br /&gt;I had a few of issues &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_2"&gt;with&lt;/span&gt; the report that comes with the template:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/ScMGzZwZ97I/AAAAAAAAAS0/gRmxcutwuyA/s1600-h/ProductBacklogCompositionOriginal.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5315099465384327090" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 144px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/ScMGzZwZ97I/AAAAAAAAAS0/gRmxcutwuyA/s400/ProductBacklogCompositionOriginal.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;The Story Points for each Product Backlog Item line up on top of the column for the Sprint Backlog Item's original &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_3"&gt;estimated&lt;/span&gt; hours. This makes it look like the total of those hours, which of course it isn't.&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;There is a total for the hours remaining for the Sprint Backlog Items, but it is at the top of the column next to the Story Points for the Product Backlog Item. This also leads to the misconception that the Story Points are the total for the original estimates. I also would expect the totals to be at the bottom of the columns, not at the top.&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;The rows are separated using alternating row colors, but I rarely print the report with colors so the rows run together.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://twitter.com/pgauthier"&gt;Paul Gauthier&lt;/a&gt;, who works at one my clients, created a new version that addresses the issues above. Click &lt;a href="http://tommynorman.info/files/Product%20Backlog%20Composition.zip"&gt;here &lt;/a&gt;to download the version Paul has reformatted.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/ScMHPHFhZnI/AAAAAAAAAS8/JEYWnqz_eiQ/s1600-h/ProductBacklogCompositionNew.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5315099941408958066" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 137px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/ScMHPHFhZnI/AAAAAAAAAS8/JEYWnqz_eiQ/s400/ProductBacklogCompositionNew.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Paul is working on a few other reports that I have had in mind for a while but could not find the time to create (plus I do not know very much about &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;SQL&lt;/span&gt; Reporting Services). I'll post those soon.&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-7297176684905852900?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/7297176684905852900/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=7297176684905852900' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7297176684905852900'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7297176684905852900'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/03/reformatted-product-backlog-composition.html' title='Reformatted Product Backlog Composition Report for Conchango TFS Template'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_nzj0JxErQqA/ScMGzZwZ97I/AAAAAAAAAS0/gRmxcutwuyA/s72-c/ProductBacklogCompositionOriginal.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-1909749587321457257</id><published>2009-02-26T00:01:00.012-06:00</published><updated>2009-02-26T00:50:14.711-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='build'/><category scheme='http://www.blogger.com/atom/ns#' term='workign directory'/><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><title type='text'>Managing Working Directories for Team Foundation Builds</title><content type='html'>In the last month I have had two separate clients have issues with how their working directories were setup in their TFS builds. First a system drive was running out of space from a large amount of new projects being built, and second some builds were failing due to some file paths being over the OS enforced &lt;a href="http://blogs.msdn.com/aaronhallberg/archive/2007/06/20/team-build-and-260-character-paths.aspx"&gt;limit of 260 characters&lt;/a&gt;. These were caused partially because it is not immediately obvious where the working directory for the build server is located when you create them. This post is a quick review of how to manage the working directory and avoid the two issues above.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The &lt;strong&gt;working directory&lt;/strong&gt; is the location where the server will place all the source code for a TFS project's build. It is logical to think that since you are asked to select a &lt;strong&gt;workspace&lt;/strong&gt; during the creation of the build definition, that the build would use the local directory set in that workspace. That is not the case.&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SaY1r5xRl6I/AAAAAAAAAR8/9wBIwuUjwL0/s1600-h/TFS_Workspace.png"&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5306988239260850082" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 198px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SaY1r5xRl6I/AAAAAAAAAR8/9wBIwuUjwL0/s320/TFS_Workspace.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;If you create a build with most of the defaults the working directory will be a temp folder under the &lt;strong&gt;Local Settings&lt;/strong&gt; directory for the user that the service runs under (which is usually &lt;strong&gt;TFSSERVICE&lt;/strong&gt;). You can see this is the &lt;strong&gt;buildlog.txt&lt;/strong&gt; screen shot here.&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SaY1518cQSI/AAAAAAAAASE/PujLgnPQUG4/s1600-h/TFSBuildGetTask.png"&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5306988478752112930" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 58px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SaY1518cQSI/AAAAAAAAASE/PujLgnPQUG4/s320/TFSBuildGetTask.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;So by default all the source code for all the builds will be on the &lt;strong&gt;system drive&lt;/strong&gt; (most likely) and will start out in a directory path that can be &lt;strong&gt;80 to 100+ characters deep&lt;/strong&gt; already giving you not much room before you will hit the 260 character limit.&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SaY2EGJCjMI/AAAAAAAAASM/v2xrWdqPAvA/s1600-h/TFSBuildTemp.png"&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5306988654898613442" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 267px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SaY2EGJCjMI/AAAAAAAAASM/v2xrWdqPAvA/s320/TFSBuildTemp.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;So you may initially go back to the &lt;strong&gt;build definition&lt;/strong&gt; to point to another directory on another drive with a shorter path. But you will see that while you can set the &lt;strong&gt;drop location&lt;/strong&gt; where the compiled output of the build will go, the working directory is not set in the build definition.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SaY2MjQNNDI/AAAAAAAAASU/SB5wJYBrTlg/s1600-h/TFSDropFolder.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5306988800152253490" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 214px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SaY2MjQNNDI/AAAAAAAAASU/SB5wJYBrTlg/s320/TFSDropFolder.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;The working directory is actually set in the &lt;strong&gt;build agent&lt;/strong&gt; in the &lt;strong&gt;Working Directory&lt;/strong&gt; field (funny enough). By default this will be &lt;strong&gt;$(Temp)\$(BuildDefinitionPath)&lt;/strong&gt;. The $(Temp) is what points us to the user's temp directory under Document and Settings.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SaY2VeWK7pI/AAAAAAAAASc/YXUZmc4tK9w/s1600-h/TFSBuildDefinition.png"&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5306988953453915794" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 294px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SaY2VeWK7pI/AAAAAAAAASc/YXUZmc4tK9w/s320/TFSBuildDefinition.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;So we can change this to point to the directory and drive of our choice to prevent our system drive from being overloaded and hopefully avoid reaching the 260 character limit when the source code is pulled down.&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SaY2g5yEXwI/AAAAAAAAASk/cOXapME250g/s1600-h/TFSBuildAgent.png"&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5306989149797244674" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 294px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SaY2g5yEXwI/AAAAAAAAASk/cOXapME250g/s320/TFSBuildAgent.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SaY2lOIYmcI/AAAAAAAAASs/hvTb79RaJ88/s1600-h/TFSBuildNewSourceDir.png"&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5306989223979030978" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 50px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SaY2lOIYmcI/AAAAAAAAASs/hvTb79RaJ88/s320/TFSBuildNewSourceDir.png" border="0" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-1909749587321457257?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/1909749587321457257/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=1909749587321457257' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1909749587321457257'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1909749587321457257'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/02/managing-working-directories-for-team.html' title='Managing Working Directories for Team Foundation Builds'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_nzj0JxErQqA/SaY1r5xRl6I/AAAAAAAAAR8/9wBIwuUjwL0/s72-c/TFS_Workspace.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5546233801759400168</id><published>2009-02-25T23:16:00.004-06:00</published><updated>2009-02-25T23:45:28.793-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='forecasting'/><category scheme='http://www.blogger.com/atom/ns#' term='estimating'/><category scheme='http://www.blogger.com/atom/ns#' term='xp'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Comfortably Scrum: Estimating and Forecasting Beyond the Sprint</title><content type='html'>After my presentation at the &lt;a href="http://www.pminashville.com/"&gt;Nashville PMI &lt;/a&gt;IT Local Interest Group last night, several project managers stayed to talk about estimating and project forecasting with Scrum. One was skeptical about being able to reliably tell management where they would be 6 months or 1 year down the road. Another was in an experienced XP shop that only planned for the current iteration and was having trouble meeting long term goals. The coincided with a &lt;a href="http://tech.groups.yahoo.com/group/leanagile/message/2780"&gt;thread &lt;/a&gt;on the &lt;a href="http://tech.groups.yahoo.com/group/leanagile/"&gt;Lean/Agile Yahoo group &lt;/a&gt;about estimation and planning that includes contributions from many experienced Agile leaders.&lt;br /&gt;&lt;br /&gt;One of the posts had a link to an older presentation by &lt;a href="http://blog.mountaingoatsoftware.com/"&gt;Mike Cohn &lt;/a&gt;at Google on estimating that is a fantastic introduction to how to estimate and forecast in an Agile project. Here is the &lt;a href="http://www.mountaingoatsoftware.com/presentation/51-planning-and-tracking-on-agile-projects"&gt;PDF version &lt;/a&gt;and the YouTube part 1 and 2 are below. He has many of the examples I have seen and used in my presentations based on studies done at &lt;a href="http://simula.no/research/engineering"&gt;Simula Research Laboratories &lt;/a&gt;in Norway. It is good to have this research for the skeptics you will eventually encounter. I really like the "Zoo Points" exercise and plan to add it to my training. Mike (and others) have many more &lt;a href="http://www.mountaingoatsoftware.com/presentations"&gt;great presentations &lt;/a&gt;at the Mountain Goat Software site.&lt;br /&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/fb9Rzyi8b90&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/fb9Rzyi8b90&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;object height="344" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/jeT0pOVg0EI&amp;amp;hl=en&amp;amp;fs=1"&gt;&lt;param name="allowFullScreen" value="true"&gt;&lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/jeT0pOVg0EI&amp;hl=en&amp;fs=1" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="344"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This is a great intro to estimating User Stories (i.e. Product Backlog Items) and performing release planning to have an idea of where your project might be far into the future.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-5546233801759400168?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5546233801759400168/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5546233801759400168' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5546233801759400168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5546233801759400168'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/02/comfortably-scrum-estimating-and.html' title='Comfortably Scrum: Estimating and Forecasting Beyond the Sprint'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4017017492144346199</id><published>2009-02-24T22:49:00.003-06:00</published><updated>2009-02-24T23:41:17.691-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='pmi'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>PMI Scrum Presentation</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SaTZ5-V7_FI/AAAAAAAAAR0/e0DGBiqduhk/s1600-h/header.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5306605850960067666" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 221px; CURSOR: hand; HEIGHT: 75px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SaTZ5-V7_FI/AAAAAAAAAR0/e0DGBiqduhk/s400/header.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;Tonight I presented for the &lt;a href="http://www.pminashville.com/"&gt;Nashville PMI Chapter &lt;/a&gt;at their IT local interest group. We had a great crowd and it was interesting to see how many traditionally trained project managers were interested in exploring their options with Agile/Scrum. The group was very engaged and there were tons of good questions and conversations after the presentation was over. I want to thank the organizers for a great event.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4017017492144346199?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4017017492144346199/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4017017492144346199' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4017017492144346199'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4017017492144346199'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/02/pmi-scrum-presentation.html' title='PMI Scrum Presentation'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_nzj0JxErQqA/SaTZ5-V7_FI/AAAAAAAAAR0/e0DGBiqduhk/s72-c/header.gif' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4690096595432070337</id><published>2009-02-21T20:08:00.003-06:00</published><updated>2009-02-21T20:28:37.287-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='radio tfs'/><category scheme='http://www.blogger.com/atom/ns#' term='xp'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Radio TFS "Getting Agile With Team Foundation Server" Featuring Yours Truly</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SaC4QhPHdcI/AAAAAAAAARs/dq6OeJgVN5w/s1600-h/radiotfs.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5305442954981635522" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 96px; CURSOR: hand; HEIGHT: 96px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SaC4QhPHdcI/AAAAAAAAARs/dq6OeJgVN5w/s400/radiotfs.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://teamsystemrocks.com/blogs/mickey_gousset/"&gt;Mickey Gousset &lt;/a&gt;and &lt;a href="http://www.woodwardweb.com/"&gt;Martin Woodward &lt;/a&gt;from &lt;a href="http://www.radiotfs.com/"&gt;&lt;strong&gt;Radio TFS&lt;/strong&gt; &lt;/a&gt;were gracious enough to have me on their podcast this month. You can subscribe to the RSS for the podcast &lt;a href="http://feeds2.feedburner.com/radiotfs"&gt;here&lt;/a&gt;. We talked about implementing Scrum and XP engineering practices using Team System. Here are some links to items we mentioned during the interview:&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;My company &lt;a href="http://www.compuware.com/"&gt;Compuware&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;My &lt;a href="http://www.tommynorman.com/"&gt;blog &lt;/a&gt;(which you are on now of course!)&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Conchango &lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;Scrum template &lt;/a&gt;for Team System&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Ken Schwaber's &lt;a href="http://www.amazon.com/Agile-Project-Management-Microsoft-Professional/dp/073561993X"&gt;book&lt;/a&gt; on Scrum&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.infoq.com/minibooks/scrum-xp-from-the-trenches"&gt;Scrum and XP From the Trenches &lt;/a&gt;by Henrik Kniberg&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.scrumalliance.org/pages/graduate_level_of_certification"&gt;Certified Scrum Master &lt;/a&gt;training&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Microsoft's &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=55a4bde6-10a7-4c41-9938-f388c1ed15e9&amp;amp;displaylang=en"&gt;eScrum &lt;/a&gt;TFS template&lt;/li&gt;&lt;br /&gt;&lt;li&gt;TFS &lt;a href="http://www.codeplex.com/VSTSScrum"&gt;Light Weight Scrum template &lt;/a&gt;on Codeplex&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://devlink.net/"&gt;devLink &lt;/a&gt;Technical Conference&lt;/li&gt;&lt;br /&gt;&lt;li&gt;People we mention: &lt;a href="http://www.controlchaos.com/"&gt;Ken Schwaber&lt;/a&gt;, &lt;a href="http://jeffsutherland.com/"&gt;Jeff Sutherland&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4690096595432070337?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4690096595432070337/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4690096595432070337' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4690096595432070337'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4690096595432070337'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/02/radio-tfs-getting-agile-with-team.html' title='Radio TFS &quot;Getting Agile With Team Foundation Server&quot; Featuring Yours Truly'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_nzj0JxErQqA/SaC4QhPHdcI/AAAAAAAAARs/dq6OeJgVN5w/s72-c/radiotfs.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-1637516251147590987</id><published>2009-02-19T23:42:00.004-06:00</published><updated>2009-02-19T23:57:20.267-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='certified scrum master'/><category scheme='http://www.blogger.com/atom/ns#' term='agile 2009'/><category scheme='http://www.blogger.com/atom/ns#' term='team system'/><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><title type='text'>Please Review my Session Proposal for Agile 2009</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/SZ5FnCI9NCI/AAAAAAAAARc/WAs35FJzQmw/s1600-h/agile-logo.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5304753947980674082" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 315px; CURSOR: hand; HEIGHT: 96px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/SZ5FnCI9NCI/AAAAAAAAARc/WAs35FJzQmw/s320/agile-logo.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;I have submitted an in-depth demo on implementing &lt;strong&gt;Scum/XP using Team System&lt;/strong&gt; to the&lt;strong&gt; &lt;/strong&gt;&lt;a href="http://agile2009.agilealliance.org/"&gt;&lt;strong&gt;Agile 2009 &lt;/strong&gt;&lt;/a&gt;conference coming up August 24th to 28th in Chicago. This conference has a great open mechanism for reviewing content.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Presenters post online abstracts of their sessions for anyone to review and comment on. The organizers can add reviewing comments, but anyone who cares to register on the site can look through all the proposals and leave a comment on why or why not they think it should be included in the conference.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;I have done a smaller version of this presentation many times, but this demo will be longer and more in-depth where I walk a feature from first being captured on the &lt;strong&gt;Product Backlog&lt;/strong&gt; all the way through to being pushed to production. Large ALM products like &lt;strong&gt;Team System &lt;/strong&gt;are not very popular in the Agile community at large who tend to prefer open source solutions. I have already had a skeptical comment from &lt;a href="http://en.wikipedia.org/wiki/J._B._Rainsberger"&gt;J. B. Rainsberg &lt;/a&gt;who is a pretty heavy hitter in the Agile world. Two of the organizers have left comments suggesting it make the final cut so I am hopeful yet.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;If you have the time, please take a look at the &lt;a href="http://agile2009.agilealliance.org/node/89"&gt;abstract &lt;/a&gt;and leave comments (good or bad) to help me make sure the session is as good as it can be.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-1637516251147590987?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/1637516251147590987/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=1637516251147590987' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1637516251147590987'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1637516251147590987'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/02/please-review-my-session-proposal-for.html' title='Please Review my Session Proposal for Agile 2009'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_nzj0JxErQqA/SZ5FnCI9NCI/AAAAAAAAARc/WAs35FJzQmw/s72-c/agile-logo.gif' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-7592822048619582094</id><published>2009-02-19T23:04:00.007-06:00</published><updated>2009-02-19T23:40:44.484-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='codestock'/><category scheme='http://www.blogger.com/atom/ns#' term='devlink'/><title type='text'>Tennessee Technical Conferences: devLink and Codestock</title><content type='html'>There are two great regional conferences coming up this year in Tennessee: &lt;strong&gt;devLink&lt;/strong&gt; and &lt;strong&gt;Codestock&lt;/strong&gt;.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SZ4_zLn2hTI/AAAAAAAAARM/M0e9FGnkbN0/s1600-h/devlink.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5304747559614842162" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 264px; CURSOR: hand; HEIGHT: 73px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SZ4_zLn2hTI/AAAAAAAAARM/M0e9FGnkbN0/s320/devlink.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I was fortunate enough to work with &lt;a href="http://twitter.com/johnkellar"&gt;John Kellar &lt;/a&gt;on &lt;a href="http://devlink.net/Home/tabid/36/Default.aspx"&gt;&lt;strong&gt;devLink&lt;/strong&gt; &lt;/a&gt;from the beginning and it is great to see how large it has grown. This year it is back at its original (and best IMHO) location at David Lipscomb University in Nashville. It has also grown to three days (August 13th to 15th) with a still unbeatable price of $100 ($75 for early bird registration). It is also a little unfair to call it a "regional" conference, since it draws people from all over the USA and quite a few from outside the country.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SZ5B7Il0ozI/AAAAAAAAARU/dDENkSXEmRE/s1600-h/codestock_title.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5304749895263232818" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 266px; CURSOR: hand; HEIGHT: 150px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SZ5B7Il0ozI/AAAAAAAAARU/dDENkSXEmRE/s320/codestock_title.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://codestock.org/"&gt;&lt;strong&gt;Codestock&lt;/strong&gt; &lt;/a&gt;in Knoxville on June 26 and 27th, is headed up by &lt;a href="http://twitter.com/vinull"&gt;Mike Neel &lt;/a&gt;and is in its second year. For $25 you get two days of national thought leaders, talented regional speakers, and great open spaces to discuss topics you are interested in.&lt;br /&gt;&lt;br /&gt;You can follow these conferences on twitter at &lt;a href="http://twitter.com/devlink"&gt;@devlink &lt;/a&gt;and &lt;a href="http://twitter.com/codestock"&gt;@codestock&lt;/a&gt;. Both events have out a call for speakers, so get your abstracts in now to be a part of these great conferences.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-7592822048619582094?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/7592822048619582094/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=7592822048619582094' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7592822048619582094'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7592822048619582094'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/02/tennessee-technical-conferences-devlink.html' title='Tennessee Technical Conferences: devLink and Codestock'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SZ4_zLn2hTI/AAAAAAAAARM/M0e9FGnkbN0/s72-c/devlink.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-6945827113224579833</id><published>2009-02-19T22:56:00.002-06:00</published><updated>2009-02-19T23:03:43.341-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='twitter'/><category scheme='http://www.blogger.com/atom/ns#' term='team system'/><title type='text'>Steve Andrews' List of Team System Twitter Folk</title><content type='html'>My &lt;a href="http://devlink.net/"&gt;devLink &lt;/a&gt;buddy, &lt;a href="http://twitter.com/SteveAndrews"&gt;Steve Andrews&lt;/a&gt;, has posted a&lt;a href="http://www.platinumbay.com/blogs/dotneticated/archive/2009/02/18/team-system-on-twitter.aspx"&gt; great list of Team System peeps &lt;/a&gt;and their Twitter IDs, blogs, etc. This is a great list and I am honored that Steve included me on it. Anyone interested in learning more about Visual Studio Team System and Team Foundation Server, follow and subscribe to these guys!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-6945827113224579833?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/6945827113224579833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=6945827113224579833' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/6945827113224579833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/6945827113224579833'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/02/steve-andrews-list-of-team-system.html' title='Steve Andrews&apos; List of Team System Twitter Folk'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4673391522702775768</id><published>2009-02-19T22:26:00.004-06:00</published><updated>2009-02-19T22:45:41.217-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='xp'/><category scheme='http://www.blogger.com/atom/ns#' term='abetterteam.org'/><title type='text'>Comfortably Scrum: How XP Are You?</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SZ40Z2_DXkI/AAAAAAAAAQs/e1ZzLicid24/s1600-h/logo9.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5304735029950373442" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 209px; CURSOR: hand; HEIGHT: 36px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SZ40Z2_DXkI/AAAAAAAAAQs/e1ZzLicid24/s400/logo9.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;There is a great &lt;a href="http://www.infoq.com/news/2009/02/sbastn-abetterteam-dot-org"&gt;post &lt;/a&gt;on &lt;a href="http://www.infoq.com/"&gt;&lt;strong&gt;InfoQ&lt;/strong&gt; &lt;/a&gt;about an online version of a survey (much like the one I talked about in my &lt;a href="http://tommynorman.blogspot.com/2009/01/comfortably-scrum-how-scrum-are-you.html"&gt;How Scrum Are You?&lt;/a&gt; post) from the book &lt;strong&gt;&lt;a href="http://jamesshore.com/Agile-Book/"&gt;The Art of Agile Development&lt;/a&gt;&lt;/strong&gt;. This is a great book on XP and &lt;a title="Sebastian Hermida’s Blog" href="http://sbastn.com/" target="_blank"&gt;Sebastian Hermida&lt;/a&gt; did a great job adapting it to the web. The site is called &lt;a href="http://www.abetterteam.org/"&gt;&lt;strong&gt;abetterteam.org&lt;/strong&gt;&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;It's a short quiz totally from the team perspective. Once completed, they present you with a great report to show you your strengths and weaknesses. They match areas to practices than can help you improve your score. I ran through this several times thinking back about different projects and clients to get an idea of where I personally have been and grown my practices. They also have an option to track you results over time. &lt;/div&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SZ41NzDsQJI/AAAAAAAAAQ8/bioy3dsAhW4/s1600-h/BetterTeamResults.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5304735922249285778" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 238px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SZ41NzDsQJI/AAAAAAAAAQ8/bioy3dsAhW4/s320/BetterTeamResults.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;I'd love to take the Nokia Test and create a web application like this. If anyone has some free time to loan me, I'll do just that!.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4673391522702775768?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4673391522702775768/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4673391522702775768' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4673391522702775768'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4673391522702775768'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/02/comfortably-scrum-how-xp-are-you.html' title='Comfortably Scrum: How XP Are You?'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SZ40Z2_DXkI/AAAAAAAAAQs/e1ZzLicid24/s72-c/logo9.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5710974320694012945</id><published>2009-02-19T22:08:00.003-06:00</published><updated>2009-02-19T22:21:56.460-06:00</updated><title type='text'>Nashville ArReady Event, Friday, March 13, 2009 9:00 AM</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SZ4vsPhzpgI/AAAAAAAAAQk/aDa23nTtnpk/s1600-h/ArcReady.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5304729848218101250" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 76px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SZ4vsPhzpgI/AAAAAAAAAQk/aDa23nTtnpk/s400/ArcReady.jpg" border="0" /&gt;&lt;/a&gt; Come one, come all to our quarterly &lt;strong&gt;&lt;a href="http://arcready.com/"&gt;ArcReady&lt;/a&gt;&lt;/strong&gt; event in Nashville on Friday, March 13, 2009 9:00 AM. The topics is &lt;strong&gt;"Architecting for the cloud"&lt;/strong&gt; with two sessions:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;div&gt;&lt;strong&gt;Session 1: Cloud Services&lt;/strong&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In our first session we will explore the current state of cloud services. We will then look at how applications should be architected for the cloud and explore a reference application deployed on Windows Azure. We will also look at the services that can be built for on premise application, using .NET Services. We will also address some of the concerns that enterprises have about cloud services, such as regulatory and compliance issues. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;strong&gt;Session 2: Mesh and Live Services&lt;/strong&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;In our second session we will take a slightly different look at cloud based services by exploring Live Mesh and Live Services. Live Mesh is a data synchronization client that has a rich API to build applications on. Live services are a collection of APIs that can be used to create rich applications for your customers. Live Services are based on internet standard protocols and data formats.&lt;/div&gt;&lt;div&gt;&lt;br /&gt; &lt;/div&gt;&lt;div&gt;Go &lt;a href="http://msevents.microsoft.com/CUI/EventDetail.aspx?culture=en-US&amp;amp;EventID=1032404852"&gt;here &lt;/a&gt;for more information and to register for free. Seating is limited so sign up early. These sessions have great content and also provide an opportunity to socialize with other .NET architects in the area. We would like to get good, consistent attendance to keep events like this coming to Nashville, so please tell your friends and co-workers. &lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-5710974320694012945?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5710974320694012945/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5710974320694012945' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5710974320694012945'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5710974320694012945'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/02/nashville-arready-event-friday-march-13.html' title='Nashville ArReady Event, Friday, March 13, 2009 9:00 AM'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_nzj0JxErQqA/SZ4vsPhzpgI/AAAAAAAAAQk/aDa23nTtnpk/s72-c/ArcReady.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2489988224906543912</id><published>2009-02-07T19:24:00.002-06:00</published><updated>2009-02-07T19:32:48.117-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><title type='text'>Visual Studio Team System Social Network Site: Team System Live</title><content type='html'>&lt;a href="http://www.linkedin.com/in/christullier"&gt;Chris Tullier&lt;/a&gt; has created a site on &lt;a href="http://www.ning.com/"&gt;Ning.com &lt;/a&gt;called &lt;a href="http://www.teamsystemlive.com/"&gt;Team System Live&lt;/a&gt;. It has a great calendar of events for upcoming in person events, live meetings, web casts, chats, etc. all concerning VSTS and TFS. The are many TFS experts as members already. If you are interested in Visual Studio Team System or Team Foundation Server, sign up now!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-2489988224906543912?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2489988224906543912/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2489988224906543912' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2489988224906543912'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2489988224906543912'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/02/visual-studio-team-system-social.html' title='Visual Studio Team System Social Network Site: Team System Live'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-6469188783254474747</id><published>2009-01-26T10:59:00.010-06:00</published><updated>2009-01-26T19:53:18.623-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comfortably scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='nokia test'/><category scheme='http://www.blogger.com/atom/ns#' term='jeff sutherland'/><title type='text'>Comfortably Scrum: How Scrum Are You?</title><content type='html'>&lt;p align="center"&gt;&lt;br /&gt;&lt;img src="http://f.imagehost.org/0143/AgileGuage.jpg" border="0" /&gt;&lt;/p&gt;&lt;br /&gt;Many Agile pundits think that you are either Scrum or you are not. I disagree with the concept that being Agile or Scrum is a bit flag. Some companies cannot (or will not) adopt all of the Scrum/XP practices initially. You can call them ScrumBut, Scrummerfall, or whatever, but these companies can (and do) still get value from adopting some of the practices of Scrum/XP. They will not get as much benefit and their gains will depend on what combination of process and practices they do adopt. True some of these combinations can actually be counter productive, but I do not think it is fair to shun anyone who is trying their best to implement them.&lt;br /&gt;&lt;br /&gt;So when someone tells me they have adopted Scrum, I usually ask a handful of questions to see what they have adopted and to what extent. These questions mainly come from the &lt;a href="http://jeffsutherland.com/scrum/Agile2008MoneyforNothing.pdf"&gt;Nokia Test &lt;/a&gt;and specifically the version &lt;a href="http://jeffsutherland.com/scrum/"&gt;Jeff Sutherland &lt;/a&gt;introduced at my &lt;a href="http://www.scrumalliance.org/training"&gt;Certified Scrum Master&lt;/a&gt; training.&lt;br /&gt;&lt;br /&gt;The Nokia Test is to be taken with a grain of salt since it mainly measures the mechanisms you have adopted and only slightly gauges then intent (or ideals) behind them. I do think it is a decent, initial litmus test to see how far your implementation has gone. I have added a few sections to the test aimed at the complimentary XP practices I think are needed for a well rounded Scrum shop.&lt;br /&gt;&lt;br /&gt;Here is my version of the test based on Jeff's 2008 version. Determine how many points you get for each question, add them together and then divide by 10.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Question 1: Iterations&lt;/strong&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;No iterations - 0&lt;/li&gt;&lt;li&gt;Iterations &gt; 6 weeks - 1&lt;/li&gt;&lt;li&gt;Variable length &lt;&gt; &lt;li&gt;Fixed iteration length 6 weeks - 3&lt;/li&gt;&lt;li&gt;Fixed iteration length 5 weeks - 4&lt;/li&gt;&lt;li&gt;Fixed iteration 4 weeks or less - 10&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Question 2: Testing&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;No dedicated QA - 0&lt;/li&gt;&lt;li&gt;Unit tested - 1&lt;/li&gt;&lt;li&gt;Feature tested - 5&lt;/li&gt;&lt;li&gt;Features tested as soon as completed - 7&lt;/li&gt;&lt;li&gt;Software passes acceptance testing - 8&lt;/li&gt;&lt;li&gt;Software is deployed - 10&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Question 3: Specification&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;No requirements - 0&lt;/li&gt;&lt;li&gt;Big requirements documents - 1&lt;/li&gt;&lt;li&gt;Poor user stories - 4&lt;/li&gt;&lt;li&gt;Good requirements - 5&lt;/li&gt;&lt;li&gt;Good user stories - 7&lt;/li&gt;&lt;li&gt;Just enough specification - 8&lt;/li&gt;&lt;li&gt;Good user stories tied to specifications as needed - 10&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Question 4: Product Owner&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;No Product Owner - 0&lt;/li&gt;&lt;li&gt;Product Owner who doesn’t understand Scrum - 1&lt;/li&gt;&lt;li&gt;Product Owner who disrupts team - 2&lt;/li&gt;&lt;li&gt;Product Owner not involved with team - 2&lt;/li&gt;&lt;li&gt;Product owner with clear product backlog estimated by team before Sprint Planning meeting - 5&lt;/li&gt;&lt;li&gt;Product owner with release road map with dates based on team velocity - 8&lt;/li&gt;&lt;li&gt;Product owner who motivates team -10&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Question 5: Product Backlog&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;No Product Backlog - 0&lt;/li&gt;&lt;li&gt;Multiple Product Backlogs - 1&lt;/li&gt;&lt;li&gt;Single Product Backlog - 3&lt;/li&gt;&lt;li&gt;Product Backlog clearly specified and prioritized by ROI before Sprint Planning - 5&lt;/li&gt;&lt;li&gt;Product Owner has release plan based on Product Backlog - 7&lt;/li&gt;&lt;li&gt;Product Owner can measure ROI based on real revenue, cost per story point, or other metrics - 10&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Question 6: Estimates&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;Product Backlog not estimated - 0&lt;/li&gt;&lt;li&gt;Estimates not produced by team - 1&lt;/li&gt;&lt;li&gt;Estimates not produced by planning poker - 5&lt;/li&gt;&lt;li&gt;Estimates produced by planning poker by team - 8&lt;/li&gt;&lt;li&gt;Estimate error &lt;&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Question 7: Burndown&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;No burndown chart - 0&lt;/li&gt;&lt;li&gt;Burndown chart not updated by team - 1&lt;/li&gt;&lt;li&gt;Burndown chart in hours/days not accounting for work in progress - 2&lt;/li&gt;&lt;li&gt;Burndown chart only burns down when task in done - 4&lt;/li&gt;&lt;li&gt;Burndown only burns down when story is done - 5&lt;/li&gt;&lt;li&gt;Add 3 points if team knows velocity&lt;/li&gt;&lt;li&gt;Add 2 point if Product Owner release plan based on known velocity&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Question 8: Team Management/Disruption&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;External management disrupts team - 0&lt;/li&gt;&lt;li&gt;Product Owner disrupts team - 1&lt;/li&gt;&lt;li&gt;Product Owner or Scrum Master assigning tasks - 3&lt;/li&gt;&lt;li&gt;Scrum Team assigns tasks - 5&lt;/li&gt;&lt;li&gt;No outside disruptions, only Scrum roles - 10&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Question 9: Build Automation&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;No build automation - 0&lt;/li&gt;&lt;li&gt;Continuous Integration build automated - 1&lt;/li&gt;&lt;li&gt;Nightly build automated - 3&lt;/li&gt;&lt;li&gt;Unit Tests run during nightly build - 5&lt;/li&gt;&lt;li&gt;Feature tests run during nightly build - 7&lt;/li&gt;&lt;li&gt;Deployment to other environments automated - 10&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;&lt;strong&gt;Question 10: Daily Scrum&lt;/strong&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;No Daily Scrum meeting - 0&lt;/li&gt;&lt;li&gt;Daily Scrum meeting everyday - 1&lt;/li&gt;&lt;li&gt;Daily Scrum meeting same time, place - 3&lt;/li&gt;&lt;li&gt;Daily Scrum runs &lt;&gt; &lt;li&gt;Add 2 if reported Impediments are logged&lt;/li&gt;&lt;li&gt;Add 2 if tasks are directly updated during meeting&lt;/li&gt;&lt;li&gt;Add 1 if only Scrum Team are allowed to speak&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Keep in mind that Jeff told us his best client has a score around 8 and most shops score 6 or 7. I believe this shows that there is no perfect adoption and that all of us are working towards making our implementation better. My best client was around a 7 and it was a great shop to work in.&lt;/p&gt;&lt;p&gt;Let me know where your company lands and where you can improve!&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-6469188783254474747?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/6469188783254474747/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=6469188783254474747' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/6469188783254474747'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/6469188783254474747'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/01/comfortably-scrum-how-scrum-are-you.html' title='Comfortably Scrum: How Scrum Are You?'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2909880463740090629</id><published>2009-01-18T22:17:00.003-06:00</published><updated>2009-01-18T23:11:35.333-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='deskpins'/><title type='text'>Cool Utility: DeskPins</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SXQK0gl64yI/AAAAAAAAAQU/N37l2VCMztg/s1600-h/DeskPins.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5292867359285633826" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 200px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SXQK0gl64yI/AAAAAAAAAQU/N37l2VCMztg/s320/DeskPins.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;I stumbled upon a very cool utility called &lt;a href="http://users.forthnet.gr/pat/efotinis/programs/deskpins.html"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;DeskPins&lt;/span&gt; &lt;/a&gt;which allows you to "pin" an application so that it will stay on top of all other applications regardless if it loses focus like Task Manager does. I use it for quite a few scenarios like having a &lt;a href="http://www.hulu.com/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Hulu&lt;/span&gt; &lt;/a&gt;TV show in the corner while I code, having notepad up while I cut and paste from various applications, and having a little application timer I wrote pinned to the corner during my presentations. It runs in the tray and you can use &lt;strong&gt;Ctrl + F12&lt;/strong&gt; to pin the current application window to the desktop. A little red pin shows up on the title bar.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-2909880463740090629?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2909880463740090629/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2909880463740090629' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2909880463740090629'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2909880463740090629'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/01/cool-utility-deskpins.html' title='Cool Utility: DeskPins'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SXQK0gl64yI/AAAAAAAAAQU/N37l2VCMztg/s72-c/DeskPins.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-8618353321241079613</id><published>2009-01-18T20:29:00.017-06:00</published><updated>2009-01-18T21:34:29.264-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='presentations'/><category scheme='http://www.blogger.com/atom/ns#' term='power point'/><title type='text'>5 Tips for Making Your Code Presentations Easier to View</title><content type='html'>When presenting I am normally in front of 50+ people in a large, dimly lit room. Since I have sat through many presentation myself where I was straining to see bullet points or code samples myself, I try to design my presentations to be easy to view in a large, dark room. I also utilize some Visual Studio settings and other tools to help make things easier to see.&lt;br /&gt;&lt;br /&gt;Making your presentation content starts with your slides themselves. The two main areas I work on is the amount of text on each slide and the format of the text and slide background together.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;TIP #1: Use Less Bullet Points&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;I have blogged &lt;a href="http://tommynorman.blogspot.com/2008/02/death-by-bullet-points.html"&gt;before&lt;/a&gt; about the book &lt;strong&gt;&lt;a href="http://www.amazon.com/Beyond-Bullet-Points-PowerPoint-Presentations/dp/0735620520/ref=pd_bbs_sr_2?ie=UTF8&amp;amp;s=books&amp;amp;qid=1201916336&amp;amp;sr=8-2"&gt;"Beyond Bullet Points"&lt;/a&gt;&lt;/strong&gt; that has some good ideas about presentation styles. I do not agree with all of them, but I do try to have as little purely bullet point slides in my presentations now. Here is a simple, single slide with multiple bullet points. It is very bland and the content blends together. With more content the font size has to get smaller and it gets hard for people to see.&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SXPudEB_BkI/AAAAAAAAAPc/DjQDL2a7Xy4/s1600-h/BulletPointsOneSlide.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5292836170156148290" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 226px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SXPudEB_BkI/AAAAAAAAAPc/DjQDL2a7Xy4/s320/BulletPointsOneSlide.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;So I take a slide like this one and split it into multiple slides. The title of the bullet point list would be on a separate, distinctly formatted slide to set it apart as the title (or theme) for the next series of slides. Each bullet point would get it's own slide. This way the font size can be much larger so that the text is easy to read. I try to keep each sentence fairly small and simple to that it can be read quickly. Using contrasting font colors to stress the primary words helps also. There is also usually enough room to add a graphic or animation that helps bring home the point of the slide. Here are some slides formatted in this style. &lt;/p&gt;&lt;p&gt;&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SXPuxls5D6I/AAAAAAAAAPk/oE4m8EYK6nU/s1600-h/BulletPointsMultipleSlides.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5292836522791866274" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 226px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SXPuxls5D6I/AAAAAAAAAPk/oE4m8EYK6nU/s320/BulletPointsMultipleSlides.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;TIP #2: Use Dark Backgrounds and Light Font Color Schemes&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;You can search the web and find just as many people telling you to use dark text on a light background as you will people with the opposite view. For printed materials dark text and light background is the easiest thing to read in ambient light, but in a dimly lit room with the content projected on a screen the opposite is true and &lt;a href="http://www.presenter-pro.com/eletternews/monthly_eletter.htm#death"&gt;this post &lt;/a&gt;does a good job of explaining the reasons why. To prove the point take a look at the images below.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SXPv8TVKliI/AAAAAAAAAPs/dFQFf6Tkw8c/s1600-h/WhatDoYouNoticeFirst_Black.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5292837806350702114" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SXPv8TVKliI/AAAAAAAAAPs/dFQFf6Tkw8c/s320/WhatDoYouNoticeFirst_Black.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SXPwJXQEu3I/AAAAAAAAAP0/lbui8rIK1io/s1600-h/WhatDoYouNoticeFirst_AllBlack.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5292838030741388146" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 240px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SXPwJXQEu3I/AAAAAAAAAP0/lbui8rIK1io/s320/WhatDoYouNoticeFirst_AllBlack.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Imagine that you are in a dark room and you are viewing dark text on a white background. Your eye actually take in the outline of the white container first, then view the text. With a dark background that can blend into the dark room, the light colored text is the initial focus. &lt;/p&gt;&lt;p&gt;I also use a pattern in the background like a subtle gradient or waves that helps break up the slide a bit more.&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;&lt;br /&gt;TIP #3: Format the Visual Studio Editor to Use a Larger Font and a More Viewable Color Scheme&lt;br /&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;In most of my presentations I am showing code in Visual Studio. This is usually the hardest thing for someone a few rows back to see. I do a couple of things to make this easier for them.&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Increase the font size&lt;/strong&gt; - I normally go 20 pt for the font size to make sure even the people in the cheap seats can see. The default font looks pretty bad at that size so I also change the font to &lt;a href="http://www.microsoft.com/downloads/details.aspx?familyid=22e69ae4-7e40-4807-8a86-b3d36fab68d3&amp;amp;displaylang=en"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Consolas&lt;/span&gt;&lt;/a&gt; which looks pretty good at that size. &lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Change colors &lt;/strong&gt;- Just like the slides, I change my colors to be lighter text on a dark background. I found a nice scheme called &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Midtone&lt;/span&gt; from &lt;a href="http://www.codinghorror.com/blog/archives/000682.html"&gt;Coding Horror&lt;/a&gt; that I like.&lt;/li&gt;&lt;/ul&gt;&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SXPwcXpxEVI/AAAAAAAAAP8/we4CknS8LG0/s1600-h/VsSettings.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5292838357266665810" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 200px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SXPwcXpxEVI/AAAAAAAAAP8/we4CknS8LG0/s320/VsSettings.png" border="0" /&gt;&lt;/a&gt; Once I have it setup the way I like it I &lt;a href="http://msdn.microsoft.com/en-us/library/f1z20s6z(VS.80).aspx"&gt;export the settings &lt;/a&gt;so that I can switch to them when I give a presentation (since I do not code normally with my font at 20pt).&lt;br /&gt;&lt;br /&gt;&lt;p&gt;When I open a section of code to show, I also switch to full screen mode by pressing &lt;strong&gt;Shift + Alt + Enter&lt;/strong&gt; which hides everything bu the main menu to give me the most screen real estate for showing the code.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;TIP #4: Use a Mouse Magnifier&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Unless you are using your original PS2 mouse from 1997, you probably have a mouse with extra buttons that can be mapped to all sorts of neat features. I use the Microsoft &lt;a href="http://www.microsoft.com/hardware/mouseandkeyboard/productdetails.aspx?pid=085"&gt;Presenter Mouse &lt;/a&gt;which is great for giving presentations. It comes with Microsoft &lt;a href="http://www.microsoft.com/hardware/download/download.aspx?category=MK"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Intellipoint&lt;/span&gt;&lt;/a&gt; (which you can download for free) which allows me to map one of the extra buttons to a magnifier. Since often all I can enlarge is the font in Visual Studio and other applications, if I have to show a toolbar or icon I can use the magnifier to enlarge a section of the screen to make it more visible.&lt;/p&gt;&lt;br /&gt;&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SXPzSL4BVdI/AAAAAAAAAQE/wg4T0f-GGcA/s1600-h/Magnifier.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5292841480841418194" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 200px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SXPzSL4BVdI/AAAAAAAAAQE/wg4T0f-GGcA/s320/Magnifier.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;TIP #5: Format Your Command Prompt for Larger Fonts and More Screen Space&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;Quite often I open a command prompt to show something at the command line. Just like viewing code, by default these windows are hard to see in a presentation. You can open the command prompt (I normally use the Visual Studio 2008 Command Prompt) you can right click on the title bar and choose Options.&lt;/p&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/SXPzoz_xR7I/AAAAAAAAAQM/J_wxAgBT5QM/s1600-h/DOSPrompt.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5292841869568460722" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 188px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/SXPzoz_xR7I/AAAAAAAAAQM/J_wxAgBT5QM/s320/DOSPrompt.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p&gt;In these options you can increase the font size as well as the size of the window although I try to go full screen. When you save your changes you can choose "&lt;strong&gt;Modify the shortcut that started this window&lt;/strong&gt;" so that the next time you use that shortcut you will have the same settings.&lt;/p&gt;&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;Conclusion&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;I have found the above techniques make my presentations much easier to view in large, dimly lit rooms. Your attendees are going to thank you!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-8618353321241079613?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/8618353321241079613/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=8618353321241079613' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8618353321241079613'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8618353321241079613'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/01/5-tips-for-making-your-code.html' title='5 Tips for Making Your Code Presentations Easier to View'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_nzj0JxErQqA/SXPudEB_BkI/AAAAAAAAAPc/DjQDL2a7Xy4/s72-c/BulletPointsOneSlide.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2344526138326804437</id><published>2009-01-13T14:02:00.003-06:00</published><updated>2009-01-13T14:18:33.490-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='iiba'/><category scheme='http://www.blogger.com/atom/ns#' term='comfortably scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Comfortably Scrum: IIBA Presentation "Introduction to Agile Development Using Scrum"</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SWz2wBXKGBI/AAAAAAAAAPU/qjtNA6imHsI/s1600-h/IIBA.gif"&gt;&lt;img id="BLOGGER_PHOTO_ID_5290874967113209874" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 272px; CURSOR: hand; HEIGHT: 39px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SWz2wBXKGBI/AAAAAAAAAPU/qjtNA6imHsI/s400/IIBA.gif" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;Tuesday, January 20th, I will be speaking at the &lt;a href="http://nashville.theiiba.org/default.asp?contentID=1"&gt;International Institute of Business Analysis&lt;/a&gt; luncheon held at Belmont University. I will be presenting my &lt;strong&gt;Introduction to Scrum&lt;/strong&gt; content with a more Business Analyst twist to it. &lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-2344526138326804437?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2344526138326804437/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2344526138326804437' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2344526138326804437'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2344526138326804437'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/01/comfortably-scrum-iiba-presentation.html' title='Comfortably Scrum: IIBA Presentation &quot;Introduction to Agile Development Using Scrum&quot;'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_nzj0JxErQqA/SWz2wBXKGBI/AAAAAAAAAPU/qjtNA6imHsI/s72-c/IIBA.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-6984784512475288111</id><published>2009-01-06T23:56:00.002-06:00</published><updated>2009-01-07T00:09:08.114-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><category scheme='http://www.blogger.com/atom/ns#' term='rational team concert'/><title type='text'>Rational Team Concert/ Jazz Platform: Serious TFS Competitor?</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SWRGuqBnPZI/AAAAAAAAAO0/Put-WyVe3GI/s1600-h/RationalTeamConcert.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5288429629808786834" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 150px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SWRGuqBnPZI/AAAAAAAAAO0/Put-WyVe3GI/s200/RationalTeamConcert.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;So I have been taking a look at &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Rational's&lt;/span&gt; &lt;a href="http://www-01.ibm.com/software/awdtools/rtc/index.html"&gt;Team Concert &lt;/a&gt;and their &lt;a href="http://www-01.ibm.com/software/rational/jazz/"&gt;Jazz Platform &lt;/a&gt;for software delivery. The have a beta client out for Visual Studio and if you take a look at this &lt;a href="https://jazz.net/pub/learn/videos/data/visual-studio-intro/rtcvs-beta.html"&gt;demo&lt;/a&gt; you will see strikingly similar features as compared to Team Foundation Server. There is a session for this proposed for the &lt;a href="http://agile2009.agilealliance.org/"&gt;Agile 2009 &lt;/a&gt;conference that I am hoping to make it to this year. It will be &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_1"&gt;interesting&lt;/span&gt; to see this product demonstration and compare it to the VSTS/TFS feature set.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-6984784512475288111?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/6984784512475288111/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=6984784512475288111' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/6984784512475288111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/6984784512475288111'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/01/rational-team-concert-jazz-platform.html' title='Rational Team Concert/ Jazz Platform: Serious TFS Competitor?'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_nzj0JxErQqA/SWRGuqBnPZI/AAAAAAAAAO0/Put-WyVe3GI/s72-c/RationalTeamConcert.png' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5208603160925629539</id><published>2009-01-06T19:46:00.003-06:00</published><updated>2009-01-06T19:55:54.475-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='troubleshooting'/><category scheme='http://www.blogger.com/atom/ns#' term='installation'/><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><title type='text'>Team Foundation Server Installation Troubleshooting Guide</title><content type='html'>I hate re-blogging posts from another &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;blogger&lt;/span&gt;, but &lt;strong&gt;Brian Harry's&lt;/strong&gt; post about the new guide for &lt;a href="http://blogs.msdn.com/bharry/archive/2009/01/06/tfs-installation-troubleshooting-guide.aspx"&gt;Troubleshooting Installation for Team Foundation &lt;/a&gt;is worthy of breaking my rule. A few months ago I was at a client performing an upgrade of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;TFS&lt;/span&gt; 2005 to 2008 and we hit a snag in the middle of the installation where the setup could not configure the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;SQL&lt;/span&gt; Reporting Services web directories in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;IIS&lt;/span&gt;. We spent 4 days on the phone with Microsoft who finally advised us to slick the server and install &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;TFS&lt;/span&gt; 2008 from scratch then restore the databases. I have already seen some of the symptoms we experienced in &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_5"&gt;this&lt;/span&gt; guide.&lt;br /&gt;&lt;br /&gt;It also has some post installation configuration issues I have seen many times. These also pop up after service pack installations or similar events that alter the configurations of any of the supporting services.&lt;br /&gt;&lt;br /&gt;Definitely keep this guide handy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-5208603160925629539?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5208603160925629539/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5208603160925629539' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5208603160925629539'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5208603160925629539'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/01/team-foundation-server-installation.html' title='Team Foundation Server Installation Troubleshooting Guide'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-7089582101847058731</id><published>2009-01-06T11:24:00.004-06:00</published><updated>2009-01-06T11:54:40.942-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comfortably scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='xp'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Comfortably Scrum: Man Cannot Live on Scrum Alone (Throw in a Little XP)</title><content type='html'>Many detractors of the Scrum framework claim it to be too thin and does not include the prescribed Agile engineering practices like &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;XP&lt;/span&gt;. Scrum is actually supposed to be a very light weight framework for a company to adopt into the development process. It is minimalistic on purpose.&lt;br /&gt;&lt;br /&gt;As far as the engineering practices, one does not have to search too hard to find all the primary originators of Scrum stating that it is a management wrapper for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;XP&lt;/span&gt;. The Control Chaos website has a good summary of the &lt;strong&gt;xp@scrum&lt;/strong&gt; approach &lt;a href="http://www.controlchaos.com/about/xp.php"&gt;here&lt;/a&gt;. During my Scrum Master training, &lt;a href="http://jeffsutherland.com/"&gt;Jeff Sutherland&lt;/a&gt; himself featured the graphic below prominently in his first few slides and stressed how the engineering practices of &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;XP&lt;/span&gt; were essential to getting more productivity out of any Scrum implementation. Ken &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Schwaber&lt;/span&gt; has also co-authored an &lt;a href="http://www.informit.com/articles/article.aspx?p=26057"&gt;article &lt;/a&gt;about combining Scrum and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;XP&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5288235867405096898" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 320px; CURSOR: hand; HEIGHT: 294px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SWOWgM0pF8I/AAAAAAAAAOs/CZqa8-8MCN4/s320/ScrumAndXP.jpg" border="0" /&gt;&lt;br /&gt;All of this information has been around for quite awhile and is fairly prominent, so I find it astounding that so many still see these approaches and not compatible. Jeff also told us in our training of the infamous email he received from Kent Beck in 1995 asking for more information about Scrum so he could incorporate it into his approach:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;"Is there a good place to get reprints of the SCRUM paper from &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;HBR&lt;/span&gt;? I've written&lt;br /&gt;patterns for something very similar and I want to make sure I steal as many&lt;br /&gt;ideas as possible."&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;In general, Scrum leans more towards a management process that supports Agile development processes like the ones prescribed in &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;XP&lt;/span&gt;. I personally believe that you cannot be very successful with Scrum without implementing things such as Continuous Integration, Unit Testing (TDD), Coding Standards, Small Iterations, Sustainable Pace, etc.&lt;br /&gt;&lt;br /&gt;I also think Scrum is a bit more acceptable to the masses (which some people also site as a detractor) that a pure implementation of just &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;XP&lt;/span&gt;. It is called &lt;strong&gt;extreme&lt;/strong&gt; programming for a reason!&lt;br /&gt;&lt;br /&gt;Hopefully this combined approach will be what people implement rather than just adopting the Scrum mechanics and continuing to develop with their same, non-agile methods. This would most likely lead to failure and that usually gives people the impression that the reason for the failure was Scrum.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-7089582101847058731?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/7089582101847058731/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=7089582101847058731' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7089582101847058731'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7089582101847058731'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2009/01/comfortably-scrum-man-cannot-live-on.html' title='Comfortably Scrum: Man Cannot Live on Scrum Alone (Throw in a Little XP)'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SWOWgM0pF8I/AAAAAAAAAOs/CZqa8-8MCN4/s72-c/ScrumAndXP.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-3802502507673592548</id><published>2008-12-27T09:32:00.001-06:00</published><updated>2009-01-03T05:16:05.053-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virtual pc image'/><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><title type='text'>New TFS 2008 VPC Images Available</title><content type='html'>Microsoft has posted an update to their &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;VSTS&lt;/span&gt; 2008/&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;TFS&lt;/span&gt; 2008 &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;VPC&lt;/span&gt; trial image &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=c7a809d8-8c9f-439f-8147-948bc6957812&amp;amp;displaylang=en"&gt;here&lt;/a&gt;. This one expires 12/31/2009 so you can get a good years worth of use out of it. These are great for a test environment, demonstrations, or simple a playground to experiment with this software.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-3802502507673592548?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/3802502507673592548/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=3802502507673592548' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3802502507673592548'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3802502507673592548'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/12/new-tfs-2008-vpc-images-available.html' title='New TFS 2008 VPC Images Available'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-6294033571478125343</id><published>2008-12-09T00:59:00.000-06:00</published><updated>2009-01-03T04:55:31.162-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comfortably scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='product backlog'/><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><category scheme='http://www.blogger.com/atom/ns#' term='Conchango'/><title type='text'>Comfortably Scrum: My Common Product Backlog Work Item Customizations</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/ST4YK-ILL5I/AAAAAAAAAOY/VD7MJSD-PAM/s1600-h/CustomPBI.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5277682390079844242" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 261px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/ST4YK-ILL5I/AAAAAAAAAOY/VD7MJSD-PAM/s400/CustomPBI.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;For the last half of this year I have spent the majority of my time helping various clients adopt Scrum and Agile engineering practices using Visual Studio Team System and Team Foundation Server. After initial Scrum training and an overview of TFS, we will customize the implementation to fit each company's individual needs. I am a big fan for &lt;a href="http://www.scrumforteamsystem.com/"&gt;Conchango's TFS process template for Scrum &lt;/a&gt;and their work item template for Product Backlog items is the template I extend the most. Here are some of the most common changes and additions I make to this item for my clients.&lt;br /&gt;&lt;br /&gt;First I change few of the labels for the standard fields from the Conchango template:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Business Priority&lt;/strong&gt; is changed to &lt;strong&gt;Business Value&lt;/strong&gt; since the word "priority" has a certain connotation of order. I also implement a SuggestedValues rule with values ranging from 100 to 1000 with increments of 100 (100, 200, 300, etc.).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Estimated Effort (days/story points)&lt;/strong&gt; is changed to just &lt;strong&gt;Story Points&lt;/strong&gt; since I really encourage teams to not use days or hours when estimating the Product Backlog. I add a SuggestedValues rule to this field with the Agile standard of the Finbonacci sequence variation (1,2,3,5,8,12,20,40,100). Some clients use the planning poker cards from &lt;a href="http://old.crisp.se/planningpoker/"&gt;Crisp&lt;/a&gt;, but I do not include 0, 1/2, ?, or the Coffee Break card.&lt;br /&gt;&lt;br /&gt;I also change the description on the &lt;strong&gt;Conditions of Acceptance&lt;/strong&gt; section to include "&lt;em&gt;or How To Demo Steps&lt;/em&gt;" since I really like using this technique over just a bulleted list of acceptance criteria.&lt;br /&gt;&lt;br /&gt;I also add two new fields:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Return On Investment&lt;/strong&gt; which is a read only field calculated by dividing the Business Value by the Story Points. We use this as additional perspective when ordering the Product Backlog. The value is updated by a web service created using &lt;a class="headermaintitle" id="_ctl0____ctl0____ctl0__ctl0_bcr_bth___BlogTitle" href="http://blogs.conchango.com/howardvanrooijen/default.aspx"&gt;Howard van Rooijen's &lt;/a&gt;project template for TFS event subscription end points.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Product Backlog Type&lt;/strong&gt; which is used many different ways depending on your Agile tool or general philosophy. My version has three allowed values:&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;User Story&lt;/strong&gt; which is exactly what it sounds like. All these entries must fit the user story format.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Technical Requirement&lt;/strong&gt; which is for any behind the scenes work like refactoring, building supporting components with no UI, etc. This helps identify which items require functional tests to be created (meaning a User Story) or those that just need to be regression tested with the current suite of tests.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Epic&lt;/strong&gt; which is used for placeholder entries. Some people like to use TFS Areas for this but I prefer to put it at the Product Backlog level. It allows stakeholders to throw pie in the sky ideas on the backlog. Our rules specify that an Epic is not estimated, is always last in delivery order, and can never be added to a Sprint until it is broken up into acceptable User Stories with a Story Point value that can be done in half a Sprint.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;I also add some new work flow steps:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Ready For Test&lt;/strong&gt; is something the Conchango template puts at the Sprint Backlog level and I prefer to have this measured at the Product Backlog level. There is some contention on this even on the &lt;a href="http://scrumforteamsystem.com/cs/forums/1801/ShowPost.aspx"&gt;Conchango forums&lt;/a&gt;. My thought is that a task like "Create class to hold search criteria." cannot be tested but its corresponding User Story ("Search Online Catalog") can be.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Failed Test&lt;/strong&gt; and &lt;strong&gt;Passed Test&lt;/strong&gt; are two optional steps I sometimes put in to follow Ready For Test. This depends on how integrated the testers are with the development team. If they are very integrated and the team is good with simply communicating failed and passed tests verbally or via email then these can be left off. I have had less integrated QA teams that were also not co-located with the team and we found these steps necessary to keep up with test results.&lt;br /&gt;&lt;br /&gt;And finally I organize the form a bit to keep it symmetrical and grouped a bit more clearly.&lt;br /&gt;&lt;br /&gt;These changes are not necessarily a good fit for every team and I really try to understand the level at which each client can adopt the Scrum processes before we run head first into customization. I have found these changes to bring value to the process for the majority of time.&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/21327984-6294033571478125343?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/6294033571478125343/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=6294033571478125343' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/6294033571478125343'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/6294033571478125343'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/12/comfortably-scrum-my-common-product.html' title='Comfortably Scrum: My Common Product Backlog Work Item Customizations'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/ST4YK-ILL5I/AAAAAAAAAOY/VD7MJSD-PAM/s72-c/CustomPBI.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-1047128917258283828</id><published>2008-12-08T22:32:00.000-06:00</published><updated>2009-01-03T04:55:31.174-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='quick launch'/><category scheme='http://www.blogger.com/atom/ns#' term='jeff blakenburg'/><title type='text'>What's in My Quick Launch Bar?</title><content type='html'>Recently &lt;a href="http://jeffblankenburg.com/default.aspx"&gt;&lt;strong&gt;Jeff Blakenburg&lt;/strong&gt; &lt;/a&gt;proposed the eternal question: "&lt;a href="http://jeffblankenburg.com/2008/10/whats-in-your-quick-launch-bar.aspx"&gt;What's in your Quick Launch bar?&lt;/a&gt;" This is Jeff's way of analyzing our responses in some freaky, Freudian way and determining the way developers think so he can create a mind control drink which he will disperse in highly caffeinated drinks that we will consume and he will use us to take over the world. That or he is just curious. Either way I thought it would be fun to play along (and I am swearing of caffeinated drinks for awhile just in case).&lt;br /&gt;&lt;br /&gt;Here is my Quick Launch bar in all its shortcut glory:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5277644617055443602" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 145px; CURSOR: hand; HEIGHT: 24px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/ST310SpXmpI/AAAAAAAAAOI/hakxTxWO1mE/s320/MyQuickLaunchBar.jpg" border="0" /&gt;That's it. Soak it all in. Bask in its gleaming aura of one click access goodness.&lt;/p&gt;&lt;p&gt;You got your Open Destop, Internet Explorer, FireFox, Outlook, Shortcut to my work web mail (no POP3 access you big jerks), and OneNote (ah...OneNote).&lt;/p&gt;&lt;p&gt;So I do not put a lot of links on my Quick Launch. And I do not put that many on my Desktop either. Why you ask? &lt;/p&gt;&lt;p&gt;Is it because of my Zen like knowledge of shortcut keys? No. I don't even think my ALT button is working.&lt;/p&gt;&lt;p&gt;Is it because of some Toolbar and Desktop Feng Shui philosophy? No. I tried that and the incense just gunked up my keyboard (Maybe that is why the ALT button is broken).&lt;/p&gt;&lt;p&gt;Is it because I simply do not actually do that much work? Maybe. Some co-workers might think that. :)&lt;/p&gt;&lt;p&gt;Mainly it is because I do not have that much installed on my local hard drive. I normally use VPC images that actually contain the bulk of the applications and tools I use. And for what I do have installed locally, I just keep the shortcuts off the Desktop and Quick Launch because I like a clean interface. I do not mind a few clicks to find things in my Start menu. My Start menu is organized in a very set pattern that I have used ever since there was a Start menu and I have just gotten  used to it.&lt;/p&gt;&lt;p&gt;Think I'm crazy? Check out my &lt;a href="http://devlink.net/"&gt;devLink&lt;/a&gt; buddy, &lt;a href="http://twitter.com/SteveAndrews"&gt;Steve Andrews&lt;/a&gt;, and his &lt;a href="http://www.platinumbay.com/blogs/dotneticated/archive/2008/12/08/what-s-in-your-quick-launch-bar.aspx"&gt;Quick Launch Bar of Doom!&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-1047128917258283828?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/1047128917258283828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=1047128917258283828' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1047128917258283828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1047128917258283828'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/12/what-in-my-quick-launch-bar.html' title='What&amp;#39;s in My Quick Launch Bar?'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_nzj0JxErQqA/ST310SpXmpI/AAAAAAAAAOI/hakxTxWO1mE/s72-c/MyQuickLaunchBar.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4078689331432359885</id><published>2008-12-07T16:14:00.000-06:00</published><updated>2009-01-03T04:55:31.180-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='developer community'/><title type='text'>Great Developer Community Leaders</title><content type='html'>&lt;p&gt;&lt;br /&gt;With 4 children at home (all girls 11 yrs. To 6 months) and a 17 year old son, I don't seem to get as much free time to be active in the local development community like I used to. After working all day, dinner with the family, and the logistics of homework/housework/etc., when I do finally sit down in front of the computer (usually around 11:30 PM) it is very tempting to turn it off and just go to bed. But when I hesitate to sit down and write a blog post, investigate a new technology, or participate in a local community event, the people listed below are the ones I think about to inspire me to stay involved. This list below reflects people I interact with regularly either in person or online that serve as an example for involvement in the developer community. I think it only right that I pay them a little homage:&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.brianhprince.com/"&gt;&lt;strong&gt;Brian Prince&lt;/strong&gt; &lt;/a&gt;- Brian is the Microsoft Architect Evangelist for my region and is always willing to help out with our local community events. He is also very helpful to me personally whenever I ping him for assistance. I have seen him take personal interest in more junior members of our local community and encourage them to become involved when sometimes these people are left out.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://webdevdotnet.blogspot.com/"&gt;Elijah manor&lt;/a&gt;&lt;/strong&gt; - Elijah a prolific blogger and tweeter. I know he is very involved in his family and church and where he finds the time to do this I have no idea. Almost every day I follow a link from one of his tweets and discover something knew.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.vinull.com/"&gt;Michael Neel&lt;/a&gt;&lt;/strong&gt; - Mike is the .NET User Group leader in Knoxville and I have worked with him at several local and regional events. He is very passionate about the community and it seems he is always driving somewhere (usually a great distance and on his own dime) to participate in community events. He is the one who got me started on filling up my iPod with developer podcasts to listen to while I am in the car (that's an hour of knowledge every day).&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;a href="http://www.evanhoff.com/"&gt;&lt;strong&gt;Evan Hoff&lt;/strong&gt;&lt;/a&gt; - Evan is always traveling to go to a developer conference or referring a new technology book to me. He seems to know just about everyone in the Agile/ALT.NET community. I guess it helps that he is single and has the time to be so deeply involved but I remember when I was younger and single I did not have the dedication for that level or effort.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;strong&gt;&lt;a href="http://www.coreyhaines.com/coreysramblings/"&gt;Corey Haines&lt;/a&gt;&lt;/strong&gt; - I met Corey at devLink 2008 and found his outlook very refreshing. He is very passionate about being the best developer he can be in any language. He recent endeavor to &lt;a href="http://www.coreyhaines.com/tour2008/"&gt;travel the region pair programming&lt;/a&gt; with people all over to learn more is something I would never have the guts to do.&lt;/p&gt;&lt;p&gt;&lt;br /&gt;There are more people and I apologize to those I did not mention. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4078689331432359885?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4078689331432359885/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4078689331432359885' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4078689331432359885'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4078689331432359885'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/12/great-developer-community-leaders.html' title='Great Developer Community Leaders'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4330328529453707470</id><published>2008-12-06T23:17:00.000-06:00</published><updated>2009-01-03T04:55:31.187-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='VersionOne'/><category scheme='http://www.blogger.com/atom/ns#' term='comfortably scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='Task Board for Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='Conchango'/><title type='text'>Comfortably Scrum: Sprint Planning Using Conchango’s Sprint Task Board Application</title><content type='html'>After my last &lt;a href="http://crazedcodemonkey.blogspot.com/2008/12/comfortably-scrum-will-vsts-2010-be.html"&gt;blog post &lt;/a&gt;about the Agile features in the upcoming 2010 release of VSTS and TFS I got to thinking about some comments by &lt;strong&gt;&lt;a href="http://www.jeffreyhunsaker.com/"&gt;Jeff Hunsaker&lt;/a&gt;&lt;/strong&gt;. I had complained about the lack of good Sprint planning features in TFS and Jeff had mentioned using the &lt;strong&gt;&lt;a href="http://scrumforteamsystem.com/en/TaskBoard/default.aspx"&gt;Sprint Task Board &lt;/a&gt;&lt;/strong&gt;WPF application provided by Conchango to work with their &lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;Scrum process template for TFS.&lt;/a&gt; I have used this in my Daily Scrums but had not really thought of it as a planning tool. I revisited that idea after Jeff’s comments and I will say it does have some features around this that I had not thought of using before. &lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;When you open the Sprint Task Board you are prompted to choose a project then choose a Sprint. The Sprint you choose is actually an item in the hierarchical list of Iterations. I have always just selected my specific Sprint, but if you choose a Release you will then see all of the Product Backlog items under that release. So if you have previously performed your Release Planning and assigned Product Backlog items to their projected releases then they should show up. The image below is a view of a sample Product Backlog viewed in Excel. Notice that all but one item is assigned to the Release 1 Iteration.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;img id="BLOGGER_PHOTO_ID_5276914437121860354" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 48px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/STtduObHYwI/AAAAAAAAANo/CKuZaJ5KhzU/s400/ProductBacklogInExcel.jpg" border="0" /&gt;&lt;br /&gt;When you open the Task Board application and choose Release 1 for this project you will see all of the items that were associated to Release 1 (or a Sprint in that Release). Anything not assigned to that Release will not be shown.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;/div&gt;&lt;img id="BLOGGER_PHOTO_ID_5276914280736679586" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 283px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/STtdlH1-5qI/AAAAAAAAANg/ZPMAmJlFx9c/s400/ProductBacklogInTaskBoardApp.jpg" border="0" /&gt; At this point you could start a Sprint Planning meeting using this interface a add Sprint Backlog Items to each Product Backlog by rights clicking anywhere on the row and choosing Add Sprint Backlog Item. You can fill out the pop up form and a new Sprint Backlog item will be created and linked to the corresponding Product Backlog item. The linking is required for all the various reporting mechanisms in the Conchango Scrum template on TFS.&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5276914702980939250" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 283px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/STtd9s02_fI/AAAAAAAAANw/UD52JPMU6Cw/s400/NewSprintBacklogItemInTaskBoard.jpg" border="0" /&gt;&lt;br /&gt;Most of the time we have used Excel during Sprint Planning meetings since we tend to be adding quite a lot of items and using the query view in Team Explorer was tedious. Using the Task Board app is less tedious than Team Explorer but still not as easy as Excel. So you can still use Excel to rapidly enter Sprint Backlog items and then publish them back to TFS, but since you cannot link items in Excel they will not be connected to any Product Backlog items. You can then open the Task Board app and open the Orphaned Work Item section to drag and drop these Sprint Backlog items to their corresponding Product Backlog item.&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5276914840363105138" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 224px; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/STteFsnUe3I/AAAAAAAAAN4/EPoXtxWoHQ0/s400/OrphanedWorkItems.jpg" border="0" /&gt;&lt;br /&gt;So while this option does not provide a good option for Release Planning, it is one possible solution for Sprint Planning. Using the Task Board app can give the team a more tactile feeling during the process. Seeing item represented on the screen gives you more of an idea for the scope of a Sprint/Release. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;I still like the interface provided by &lt;strong&gt;&lt;a href="http://versionone.com/"&gt;VersionOne&lt;/a&gt;&lt;/strong&gt; for Release Planning. Not only does it provide an easy to use drag and drop interface, it provides feedback on capacity as you go (see a demo &lt;a href="http://demos.versionone.com/video/ReleasePlanning/ReleasePlanning.html"&gt;here&lt;/a&gt;).&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5276914925370587266" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 262px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/STteKpSruII/AAAAAAAAAOA/8PWmmK0gOwI/s400/VersionOneReleasePlanning.jpg" border="0" /&gt;&lt;br /&gt;So thanks again to Jeff for prompting me to take another look at the functionality in the Conchango Task Board application. Now if they could just rip off the features in VersionOne I could get down to only two applications!&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4330328529453707470?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4330328529453707470/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4330328529453707470' title='5 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4330328529453707470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4330328529453707470'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/12/comfortably-scrum-sprint-planning-using.html' title='Comfortably Scrum: Sprint Planning Using Conchango’s Sprint Task Board Application'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_nzj0JxErQqA/STtduObHYwI/AAAAAAAAANo/CKuZaJ5KhzU/s72-c/ProductBacklogInExcel.jpg' height='72' width='72'/><thr:total>5</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2953574152116354896</id><published>2008-12-01T22:14:00.000-06:00</published><updated>2009-01-03T04:55:31.200-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server 2010'/><title type='text'>Comfortably Scrum: Will VSTS 2010 be More Agile Friendly?</title><content type='html'>&lt;div&gt;I was very excited about all the new features I kept hearing were coming to &lt;strong&gt;VSTS/TFS 2010&lt;/strong&gt; (formerly Rosario). I was especially interested in some talk about adding more Agile friendly functionality into both VSTS and TFS. I've downloaded the &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyId=922B4655-93D0-4476-BDA4-94CF5F8D4814&amp;amp;displaylang=en"&gt;2010 CTP &lt;/a&gt;and been reviewing the &lt;a href="http://channel9.msdn.com/tags/Visual+Studio+Team+System+2010/"&gt;Channel 9 2010 videos &lt;/a&gt;and here are my initial impressions:&lt;/div&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Iteration Planning/Backlog Maintenance&lt;/strong&gt; &lt;strong&gt;(-1):&lt;/strong&gt; This is probably my most disappointing set of features. I never found the work item queries view in Team Explorer or Excel a decent interface for organizing the Product Backlog and Release/Sprint Planning. Products like &lt;a href="http://www.rallydev.com/products/lifecycle_management/"&gt;RallyDev&lt;/a&gt; and &lt;a href="http://www.versionone.com/"&gt;VersionOne&lt;/a&gt; (which both have connectors to TFS) had easy to use, drag and drop user interfaces that made these features more tactile. &lt;a href="http://blogs.msdn.com/stephaniesaad/"&gt;Stephanie Saad&lt;/a&gt; shows the new Agile planning templates in this &lt;a href="http://channel9.msdn.com/posts/VisualStudio/Agile-Planning-Templates-in-Visual-Studio-Team-System-2010/"&gt;Channel 9 video&lt;/a&gt;. All that was really added were some Excel sections for capacity and release number crunching that we had implemented ourselves in Excel about a year ago. Microsoft may be simply relying on ISVs like Rally and VersionOne to fill in this space but I hate to buy another product (on top of VSTS/TFS's substantial cost) to get this functionality.&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Unit Testing/TDD Support (+1):&lt;/strong&gt; While I am not a TDD zealot I do believe in test early and test often when it comes to unit testing. For those who really wanted to write their tests first in true TDD fashion it was a little kludgy to get a unit test class written without any of the references of target classes already defined. There are some new options while creating your unit tests to automatically create your target classes and namespaces as you go. Karen Lui demonstrates this in &lt;a href="http://channel9.msdn.com/posts/VisualStudio/Test-Driven-Development-with-Visual-Studio-2010/"&gt;this Channel 9 video&lt;/a&gt;. These features are definitely going to make writing unit tests first easier.&lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;QA/Functional Testing (+1):&lt;/strong&gt; This functionality I have not gotten to play around with as much so I have really only gotten an idea of how it works from &lt;a href="http://channel9.msdn.com/posts/VisualStudio/Manual-Testing-with-Visual-Studio-Team-System-2010/"&gt;this video&lt;/a&gt;. The new testing application, Camano, is a stand alone application that QA/functional testers can use to execute manual test and record them for automation afterwards. There are also the other cool features for recording video while testing and saving metadata about the path the tester took to get to the bug. All this info can be bundled up in a bug report that can be sent and tracked through TFS.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/STTOctmFmbI/AAAAAAAAANQ/paWdu_3YTSc/s1600-h/Camano.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5275068056228698546" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 96px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/STTOctmFmbI/AAAAAAAAANQ/paWdu_3YTSc/s200/Camano.jpg" border="0" /&gt;&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;strong&gt;Self Documenting Code (+1):&lt;/strong&gt; Since there is less concentration on documenting architecture and design information up front in most Agile processes, techniques for making your code/application self documenting are highly recommended. But even these practices never gave you those great UML diagrams that really showed the "big picture" of how the solution as a whole was built. But now with some of the "bottom up" design features (&lt;a href="http://channel9.msdn.com/posts/VisualStudio/Bottom-up-Design-with-Visual-Studio-Team-System-2010-Architect/"&gt;demonstrated here&lt;/a&gt;), you can generate not only the standard class diagrams, but sequence diagrams also. The Architecture Explorer is also a very cool way to browse the basic structure of any .NET solution.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/STTNeJgijjI/AAAAAAAAANI/wnTXy10Dn08/s1600-h/ArchitectureExplorer.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5275066981389864498" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 192px; CURSOR: hand; HEIGHT: 200px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/STTNeJgijjI/AAAAAAAAANI/wnTXy10Dn08/s200/ArchitectureExplorer.jpg" border="0" /&gt;&lt;/a&gt; &lt;/li&gt;&lt;br /&gt;&lt;br /&gt;&lt;li&gt;&lt;strong&gt;Code Quality [Adherence to Architecture/Design] (+1):&lt;/strong&gt; Enforcing code quality in a self managing Agile team is sometimes a difficult task. Pair programming and good code reviews are good ways to ensure the developers are following the basic architecture/design of the solution. The Layer Diagram (same &lt;a href="http://channel9.msdn.com/posts/VisualStudio/Bottom-up-Design-with-Visual-Studio-Team-System-2010-Architect/"&gt;video&lt;/a&gt; as above at the 30 minute mark) is a great way to layout the basic boundaries of your application that can actually enforce that the underlying code does not cross boundaries.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/STTM0N7nTMI/AAAAAAAAANA/OvjB5iCaVAA/s1600-h/LayerDiagram.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5275066261022657730" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 138px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/STTM0N7nTMI/AAAAAAAAANA/OvjB5iCaVAA/s200/LayerDiagram.jpg" border="0" /&gt;&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;So far the Release/Sprint Planning and Backlog management is the only area I found wanting. Otherwise I am very eager to start using 2010!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-2953574152116354896?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2953574152116354896/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2953574152116354896' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2953574152116354896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2953574152116354896'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/12/comfortably-scrum-will-vsts-2010-be.html' title='Comfortably Scrum: Will VSTS 2010 be More Agile Friendly?'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_nzj0JxErQqA/STTOctmFmbI/AAAAAAAAANQ/paWdu_3YTSc/s72-c/Camano.jpg' height='72' width='72'/><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-7978069784438565412</id><published>2008-11-23T23:03:00.000-06:00</published><updated>2009-01-03T04:55:31.210-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='certified scrum master'/><title type='text'>Certified Scrum Master</title><content type='html'>&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SSo3nQbRMCI/AAAAAAAAAM4/od7SfYRQO5Y/s1600-h/ScrumMasterMEDIUM.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5272087461354352674" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 300px; CURSOR: hand; HEIGHT: 85px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SSo3nQbRMCI/AAAAAAAAAM4/od7SfYRQO5Y/s400/ScrumMasterMEDIUM.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;I received my official &lt;a href="http://www.scrumalliance.org/profiles/44547-tommy-norman"&gt;&lt;strong&gt;Certified Scrum Master&lt;/strong&gt; &lt;/a&gt;certification from the &lt;a href="http://www.scrumalliance.org/"&gt;&lt;strong&gt;Scrum Alliance&lt;/strong&gt; &lt;/a&gt;this weekend. Apparently I received my training a month before they instituted a test for the certification. This has been hotly debated on the web for some time and all I have to add is that most certifications (earned via a test or not) have very little value by themselves. My CSM is quite a bit like the CNE, MCSD, etc. technical certifications that were so in vogue for awhile. You could also compare it to a college degree. I know plenty of great developers who never finished college and I know plenty of incompetent people with Masters. I feel my past few years of successes and failures using Scrum is what counts. The certification is great for the resume and clients will like it, but I was happy just to attend and hear what &lt;strong&gt;Jeff Sutherland&lt;/strong&gt; and &lt;strong&gt;Joe Little&lt;/strong&gt; had to say as well as have some great discussions with my classmates.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-7978069784438565412?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/7978069784438565412/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=7978069784438565412' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7978069784438565412'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7978069784438565412'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/11/certified-scrum-master.html' title='Certified Scrum Master'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SSo3nQbRMCI/AAAAAAAAAM4/od7SfYRQO5Y/s72-c/ScrumMasterMEDIUM.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4278547834376539967</id><published>2008-11-19T10:27:00.000-06:00</published><updated>2009-01-03T04:55:31.221-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='compuware'/><category scheme='http://www.blogger.com/atom/ns#' term='pdc'/><category scheme='http://www.blogger.com/atom/ns#' term='microsoft'/><title type='text'>Microsoft Mini-PDC in Nashville, Dec. 11th</title><content type='html'>&lt;strong&gt;Microsoft&lt;/strong&gt; and &lt;strong&gt;Compuware&lt;/strong&gt; are brining some of the content from &lt;a href="http://www.microsoftpdc.com/"&gt;PDC 2008 &lt;/a&gt;to Nashville for those (like me) who were not able to attend. Previews of VSTS 2010, .NET 4.0, C# futures, and Azure will be shown. We are also giving away an Xbox 360. Seating will be limited so sign up early by emailing us at &lt;a href="mailto: jeanne.waskiewicz@compuware.com"&gt;jeanne.waskiewicz@compuware.com&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4278547834376539967?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4278547834376539967/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4278547834376539967' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4278547834376539967'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4278547834376539967'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/11/microsoft-mini-pdc-in-nashville-dec.html' title='Microsoft Mini-PDC in Nashville, Dec. 11th'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-145724390040271542</id><published>2008-11-12T21:01:00.000-06:00</published><updated>2009-01-03T04:55:31.232-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><category scheme='http://www.blogger.com/atom/ns#' term='Conchango'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Comfortably Scrum: Free Scrum Dashboard on CodePlex</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/SRuZdFpUXMI/AAAAAAAAAMI/xmscB2-KRoU/s1600-h/scrumdashboardpreview3.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5267972914150661314" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 223px; TEXT-ALIGN: center" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/SRuZdFpUXMI/AAAAAAAAAMI/xmscB2-KRoU/s400/scrumdashboardpreview3.png" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;Thanks to the guys over at &lt;a href="http://www.tfstimes.com/"&gt;TFS Times &lt;/a&gt;I found this &lt;a href="http://www.codeplex.com/scrumdashboard"&gt;cool web application &lt;/a&gt;on CodePlex. This is a web based dashboard for the &lt;a href="http://www.conchango.com/"&gt;Conchango Scrum Process Template for Team Foundation Server&lt;/a&gt;. It provides some basic rollup information about work item states and hours, a sprint burn down chart, and a sprint task board similar to the &lt;a href="http://scrumforteamsystem.com/en/TaskBoardBeta/Default.aspx"&gt;WPF application version &lt;/a&gt;being released by Conchango next month. You can drag and drop items to different states like Conchango's application aslo.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;I had a few issues getting it to work but nothing major. It is pretty cool for a free tool. The WPF app from Conchango has more features, but it costs $90 per license so this can be a cheap alternative.&lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;CodePlex has a ton of &lt;a href="http://www.codeplex.com/Project/ProjectDirectory.aspx?TagName=TFS"&gt;TFS content &lt;/a&gt;and if you use Team Foundation Server at your development shop I highly suggest you check it out.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-145724390040271542?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/145724390040271542/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=145724390040271542' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/145724390040271542'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/145724390040271542'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/11/comfortably-scrum-free-scrum-dashboard.html' title='Comfortably Scrum: Free Scrum Dashboard on CodePlex'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_nzj0JxErQqA/SRuZdFpUXMI/AAAAAAAAAMI/xmscB2-KRoU/s72-c/scrumdashboardpreview3.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-3431940282273732655</id><published>2008-11-12T20:42:00.000-06:00</published><updated>2009-01-03T04:55:31.239-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='visual studio team system test edition'/><category scheme='http://www.blogger.com/atom/ns#' term='mark mydland'/><category scheme='http://www.blogger.com/atom/ns#' term='compuware'/><title type='text'>Mark Mydland, Program Director for VSTS Test, in Nashville</title><content type='html'>Our favorite Microsoft geek chic &lt;a href="http://blogs.msdn.com/jennifer/default.aspx"&gt;Jennifer Marsman&lt;/a&gt; is bring the Program Director for Visual Studio Team System Test Edition,&lt;a href="http://www.linkedin.com/in/mmydland"&gt; Mark Mydland&lt;/a&gt;, to Nashville on November 19th. Mark will be showing off some of the new test features in VSTS 2010. There will also be giveaways and free dinner. Space is limited so to RSVP please reply by email to &lt;a href="mailto:Jeanne.Waskiewicz@compuware.com"&gt;Jeanne Waskiewicz &lt;/a&gt;or by phone at (615) 238-0333. Seating will be limited to only 60 guests, so please RSVP as soon as possible. Registration will close at 5 PM Monday the 17th or when we meet our cap of 60 attendees. The event will start at 6:00 PM at the Microsoft offices at 2555 Meridian Blvd, Suite 300, Franklin, TN 37067. Here is a &lt;a href="http://maps.google.com/maps?sourceid=navclient&amp;amp;ie=UTF-8&amp;amp;rlz=1T4ADBR_enUS301&amp;amp;q=2555+Meridian+Blvd,+Suite+300,+Franklin,+TN+37067&amp;amp;um=1&amp;amp;sa=X&amp;amp;oi=geocode_result&amp;amp;resnum=1&amp;amp;ct=image"&gt;Google map&lt;/a&gt;, but do not believe the satellite view. Below is more information about the presentation and our speaker:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Topic: Breaking Serve on Dev/Test Ping Pong in Visual Studio 2010 &lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;This has probably never happened to you, but picture this scenario: a tester finds a bug, writes it up, and sends it to the appropriate developer. The developer can’t reproduce the bug and sends it back. The tester digs around a bit more to find better repro steps. The developer insists it’s a configurable error of the tester. Back and forth we go. In VSTS 2010, this process is streamlined by automatically gathering critical information about the project and code and making that data available when, where, and to whom it is needed. During this talk, Mark Mydland (Principal Group Manager of VSTS Test) will demonstrate these cool new features and dive into technical topics on the new architect tools, some amazing research work for concurrency and for bounds checking, 3-tier execution, and data recording (aka “Tivo for debugging”).&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Speaker: Mark Mydland&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;Mark Mydland is the Principal Group Manager for the Visual Studio Team Edition for Software Testers product at Microsoft. In the past 12 years, Mark has worked as a developer and consultant across a wide variety of applications and industries. Mark first joined Microsoft in 2001 working as a member of the Natural Interactive Services Division (NISD). During his time in that group, Mark was the development manager for a team focused on analytics for assessing the efficacy of natural language interpreters with a particular emphasis on driving authoring simplification and relevance quality for user assistance. Based on this work, Mark filed numerous patents and coauthored a paper for the SIGIR journal. In 2004, Mark left Microsoft to work as a Director of Development at Getty Images where he led a change in process from a traditional waterfall methodology to a scrum-based agile approach which brought the release frequency from 12-18 months down to 1 month. Since Getty made extensive use of VSTS, it seemed a natural fit for Mark to join VSTS on his return to Microsoft in 2006. Mark received his B.S. from West Point in 1991. He has also held positions with USWeb/marchFirst and Andersen Consulting/Accenture.&lt;br /&gt;&lt;br /&gt;We would like to thank &lt;a href="http://www.compuware.com/"&gt;Compuware &lt;/a&gt;for sponsoring the event.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/SRuXccP7qcI/AAAAAAAAAMA/DyC98iwf2Qs/s1600-h/compuware_logoSMALL.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5267970704015075778" style="FLOAT: left; MARGIN: 0px 10px 10px 0px; WIDTH: 175px; CURSOR: hand; HEIGHT: 87px" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/SRuXccP7qcI/AAAAAAAAAMA/DyC98iwf2Qs/s400/compuware_logoSMALL.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="left"&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-3431940282273732655?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/3431940282273732655/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=3431940282273732655' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3431940282273732655'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3431940282273732655'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/11/mark-mydland-program-director-for-vsts.html' title='Mark Mydland, Program Director for VSTS Test, in Nashville'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_nzj0JxErQqA/SRuXccP7qcI/AAAAAAAAAMA/DyC98iwf2Qs/s72-c/compuware_logoSMALL.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-727302409740073267</id><published>2008-11-10T11:09:00.000-06:00</published><updated>2009-01-03T04:55:31.255-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><category scheme='http://www.blogger.com/atom/ns#' term='BizSpark'/><title type='text'>Microsoft Bizspark Program</title><content type='html'>Earlier this month Microsoft announced its &lt;a href="http://www.microsoftstartupzone.com/BizSpark/Pages/At_a_Glance.aspx"&gt;BizSpark &lt;/a&gt;program for startup comapnies. This seems like a great program for any privately held company, in business for less than 3 years, and makes less that $1 million in annual revenue. The reason I mention it is that the program comes with a VSTS MSDN Premium subscription and Team Foundation Server 2008 Standard Edition. As I perform more of my TFS/Scrum coaching engagements I get feedback from smaller, new companies about how they cannot afford TFS and this program could possibly help some of them get the software. If you own or work for a private startup, definitely check out this offering!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-727302409740073267?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/727302409740073267/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=727302409740073267' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/727302409740073267'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/727302409740073267'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/11/microsoft-bizspark-program.html' title='Microsoft Bizspark Program'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-3882297676659788283</id><published>2008-11-04T23:50:00.000-06:00</published><updated>2009-01-03T04:55:31.248-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='certified scrum master'/><category scheme='http://www.blogger.com/atom/ns#' term='jeff sutherland'/><category scheme='http://www.blogger.com/atom/ns#' term='penny game'/><category scheme='http://www.blogger.com/atom/ns#' term='joe little'/><title type='text'>Comfortably Scrum: Scrum Penny Game</title><content type='html'>In my &lt;strong&gt;Certified Scrum Master&lt;/strong&gt; training in Atlanta with &lt;strong&gt;Jeff Sutherland&lt;/strong&gt; last week we did a few very cool exercises. The one that proved its intended point the best was the &lt;strong&gt;Scrum Penny Game. &lt;/strong&gt;This game is actually an exercise created partly by &lt;a href="http://agileconsortium.blogspot.com/"&gt;Joe Little&lt;/a&gt;. This activity really illustrates the benefit of developing in small iterations.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;The Setup&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;To run the exercise you need 20 pennies, 6 stopwatches, and 10 people. Sit 5 people around a table. Assign 4 of them as &lt;strong&gt;workers&lt;/strong&gt; for department 1 thru 4. The last person sitting at the table is the &lt;strong&gt;customer&lt;/strong&gt;. The other five people will stand behind one of the people seated at the table. The people standing behind the workers are the department &lt;strong&gt;managers&lt;/strong&gt;. The person standing behind the customer is the company &lt;strong&gt;president&lt;/strong&gt;. All of the people standing have stopwatches as well as the customer. Place the 20 pennies heads up in front of department 1.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5265049325646444770" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 312px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SRE2d1wQ-OI/AAAAAAAAALw/62B-OAbhJ4Q/s400/ScrumPennyBatchGame.png" border="0" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Running the Exercise (First and Second Pass)&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="font-size:130%;"&gt;&lt;/span&gt;&lt;/strong&gt;&lt;br /&gt;You will run the exercise 6 times. The first pass starts with the worker in department 1 turning over each penny in front of them with one hand from heads to tails. As soon as the worker starts, the manager for department 1 starts his stopwatch as do the customer and the president.&lt;br /&gt;&lt;br /&gt;When all the pennies have been turned over to tails, worker 1 will slide over all 20 pennies to the worker in department 2 next to them. When the first penny is moved to worker 2, manager 2 will start their stopwatch. When the last penny is moved from worker 1 to worker 2, manager 2 will stop their stopwatch. This process will be repeated for worker 2, worker 3, and worker 4.&lt;br /&gt;&lt;br /&gt;When the first penny is moved to the customer from worker 4, the customer will stop their stopwatch. When the last penny is moved to the customer from worker 4, the president will stop their stopwatch.&lt;br /&gt;&lt;br /&gt;Record the results of the first pass in a table like the one below:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;&lt;img id="BLOGGER_PHOTO_ID_5265048380907228178" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 400px; CURSOR: hand; HEIGHT: 300px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SRE1m2U4jBI/AAAAAAAAALo/LGeuteP-cFE/s400/GetAttachment.jpg" border="0" /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;This chart shows each departments productivity, the time to market (the first penny to the customer), and project completion (the last penny to the customer).&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;Perform the second pass exactly as you did the first pass. Make sure before you start all the participants with stopwatches reset them. Record the second pass results on your chart.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Running the Exercise (Third thru Sixth Pass)&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;On the third pass each worker will pass 10 pennies at a time to the next in line. So once worker 1 has turned over 10 pennies, they will pass them to worker 2 who can then start turning over their pennies while worker 1 turns over their remaining 10. It will not be more important that the customer stop when the first batch of 10 pennies arrives and the president stops when the last batch arrives. Record your results in your chart.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;The fourth pass the batch size is decreased to 5 and the fifth/sixth pass the batch size will be 1 penny. Record both passes results.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;The Results&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;p&gt;At the end of the exercise review the results with the team and you will see some very interesting trends. The chart above is the results from our exercise at the Scrum training.&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;When the team repeats the process with the same batch size they generally increase individual and overall productivity.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;As the batch size decreases each department’s individual productivity decreases.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;As the batch size decreases, the time to market is faster.&lt;br /&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;As the batch size decreases, the time to complete the entire project decreases.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;I found that paradox that the smaller the batch size (or iteration), the worse each department’s individual productivity. As we discussed this we talked about how this illustrated how in Scrum each iteration encompasses all the activities of the SDLC making each individual effort a bit less productive. The other interesting point was how the overall productivity of the “company” was increased. We as a company were quicker to market and completed faster. It really brought home the point of small iterations of work to the entire class.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;I have described the exercise to several clients that I am helping adopt Scrum and Team Foundation Server and they have all suggested that it should be something I have each client’s team perform to help them grasp the benefits of the iterative style of development in Scrum.&lt;/p&gt;&lt;br /&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-3882297676659788283?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/3882297676659788283/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=3882297676659788283' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3882297676659788283'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3882297676659788283'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/11/comfortably-scrum-scrum-penny-game.html' title='Comfortably Scrum: Scrum Penny Game'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SRE2d1wQ-OI/AAAAAAAAALw/62B-OAbhJ4Q/s72-c/ScrumPennyBatchGame.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-744944787899360391</id><published>2008-10-29T12:55:00.000-05:00</published><updated>2009-01-03T04:55:31.264-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='certified scrum master'/><category scheme='http://www.blogger.com/atom/ns#' term='jeff sutherland'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Comfortably Scrum: Certified Scrum Master Training Part 1</title><content type='html'>This week I attended a &lt;a href="http://www.scrumalliance.org/training"&gt;Certified Scrum Master &lt;/a&gt;course in Atlanta led by &lt;a href="http://jeffsutherland.com/"&gt;Jeff Sutherland &lt;/a&gt;and &lt;a href="http://www.scrumalliance.org/profiles/8345-joe-little"&gt;Joe Little&lt;/a&gt;. It was a great opportunity to hear best practices from the man himself. It was also great to be around a good group of people in different stages of adopting Scrum and we had some really great conversations.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;p align="center"&gt;&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SQirxDGU3NI/AAAAAAAAALI/RLS9sfadKhc/s1600-h/CAM_0796.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5262645023716203730" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 150px; TEXT-ALIGN: center" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SQirxDGU3NI/AAAAAAAAALI/RLS9sfadKhc/s200/CAM_0796.JPG" border="0" /&gt;&lt;/a&gt;&lt;em&gt;Me with Jeff Sutherland in Atlanta. &lt;/em&gt;&lt;/p&gt;&lt;p&gt;For my first post on the training I wanted to describe how the course itself was run. One of the interesting approaches was that the training was run like a Scrum project. Each day Jeff populated our Sprint Task Board with subjects we would cover that day. Each hour he would move the cards on the board and update a burn down chart. All of the exercises were time boxed and he kept things going with Tibetan meditation bells to end a session.&lt;br /&gt;&lt;/p&gt;&lt;div align="center"&gt;&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SQirTtowihI/AAAAAAAAALA/ZOjpeblbmkA/s1600-h/CAM_0793.JPG"&gt;&lt;img id="BLOGGER_PHOTO_ID_5262644519738837522" style="DISPLAY: block; MARGIN: 0px auto 10px; WIDTH: 200px; CURSOR: hand; HEIGHT: 150px; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SQirTtowihI/AAAAAAAAALA/ZOjpeblbmkA/s200/CAM_0793.JPG" border="0" /&gt;&lt;/a&gt;&lt;em&gt;Our course's sprint task board.&lt;/em&gt; &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;The course manual had quite a bit of content and we did not make it all the way through the book. Jeff skipped around quite a bit and his slide deck had updated content that was not in the book but was provided to us afterwards. A good bit of content came from Henrik Kniberg's &lt;a href="http://www.infoq.com/minibooks/scrum-xp-from-the-trenches"&gt;Scrum and XP from the Trenches &lt;/a&gt;book which I reviewed in my &lt;a href="http://crazedcodemonkey.blogspot.com/2008/10/comfortably-scrum-book-review-for-scrum.html"&gt;last blog post&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Jeff had many anecdotes of adopting Scrum from his many years of experience that made the ideas behind it a bit more real. There was a lot less rhetoric than I had anticipated and he backed up all the ideas with hard numbers from a multitude of studies. These numbers are great fodder for conversations with management when trying to convince them to adopt Scrum.&lt;br /&gt;&lt;br /&gt;There were also some very cool activities that really illustrated the contrasts between traditional practices and those prescribed with Scrum. There are many paradoxes in Scrum (and Agile/lean processes) that produce results that are contradictory of what most people would think. I plan to post more info on some of these activities soon.&lt;br /&gt;&lt;br /&gt;All in all it was a great class where I not only had a good bit of what I have been doing for that past couple of years validated but learned many new things as well. I would strongly suggest that if your company plans to implement Scrum that everyone involved in software development attend a training course of this type. Jeff recounted studies that have shown Scrum teams starting without a Scrum Coach or the right training normally only see about a 35% benefit initially where teams that are trained and coached well see a 400% increase in productivity.&lt;br /&gt;&lt;br /&gt;Thanks to Jeff and Joe for a great course!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-744944787899360391?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/744944787899360391/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=744944787899360391' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/744944787899360391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/744944787899360391'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/10/comfortably-scrum-certified-scrum.html' title='Comfortably Scrum: Certified Scrum Master Training Part 1'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SQirxDGU3NI/AAAAAAAAALI/RLS9sfadKhc/s72-c/CAM_0796.JPG' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-8848523646605455143</id><published>2008-10-17T16:45:00.000-05:00</published><updated>2009-01-03T04:55:31.292-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='comfortably scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='book review'/><category scheme='http://www.blogger.com/atom/ns#' term='xp'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Comfortably Scrum: Book Review for "Scrum and XP from the Trenches"</title><content type='html'>&lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SPkJ2QlENkI/AAAAAAAAAK4/Or1_ghlt1rc/s1600-h/51qfxlxbl%252BL__SL500_AA240_.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5258244867699783234" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SPkJ2QlENkI/AAAAAAAAAK4/Or1_ghlt1rc/s400/51qfxlxbl%252BL__SL500_AA240_.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;The book &lt;a href="http://www.amazon.com/Scrum-Trenches-Enterprise-Software-Development/dp/1430322640/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1224280147&amp;amp;sr=8-1"&gt;&lt;strong&gt;"Scrum and &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;XP&lt;/span&gt; from the Tranches"&lt;/strong&gt; by Henrik &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Kniberg&lt;/span&gt; &lt;/a&gt;was suggested reading for my &lt;a href="http://www.scrumalliance.org/courses"&gt;Certified Scrum Master &lt;/a&gt;training course. You can download it for from from &lt;a href="http://www.infoq.com/minibooks/scrum-xp-from-the-trenches"&gt;&lt;strong&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;InfoQ&lt;/span&gt; &lt;/strong&gt;&lt;/a&gt;and I highly suggest you do. It has been out for almost a year now so I am a little late coming across it and I really wish I had found it sooner. The book's format is great in that it is told totally from Henrik's point of view describing how his team adopted Scum (and some &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;XP&lt;/span&gt; practices) at his company over one year. It does not have the same rhetoric as a few of the other popular Scrum books, but rather a basic outline of how they implemented the Scrum &lt;em&gt;framework &lt;/em&gt;and the basic philosophy around each decision. He never claims that his process is the &lt;em&gt;right&lt;/em&gt; way to do Scrum, but the one that worked best for his team. I found it realistic and pragmatic. It is a short read and goes very fast so with it being free you really can't go wrong with this one.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-8848523646605455143?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/8848523646605455143/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=8848523646605455143' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8848523646605455143'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8848523646605455143'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/10/comfortably-scrum-book-review-for-and.html' title='Comfortably Scrum: Book Review for &amp;quot;Scrum and XP from the Trenches&amp;quot;'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_nzj0JxErQqA/SPkJ2QlENkI/AAAAAAAAAK4/Or1_ghlt1rc/s72-c/51qfxlxbl%252BL__SL500_AA240_.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4581322580998313444</id><published>2008-10-15T12:53:00.000-05:00</published><updated>2009-01-03T04:55:31.304-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Task Board for Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='Conchango'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Conchango Scrum Template 2.2 &amp; Sprint Task Board Updates</title><content type='html'>&lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Conchango&lt;/span&gt;&lt;/a&gt; has released the &lt;a href="http://www.scrumforteamsystem.com/en/download.aspx?key=D25D01567B967D8FC248172487769789&amp;amp;site=UK&amp;amp;version=v2.2"&gt;2.2 version &lt;/a&gt;of their Scrum Process Template for Team Foundation Server. This template is free and includes some great additions including a load of new reports, bug fixes from 2.1, and a web based report &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_1"&gt;slide show&lt;/span&gt;. They have also provided a command line utility to upgrade your 2.1 template to 2.2. See the full details &lt;a href="http://scrumforteamsystem.com/cs/forums/3110/ShowPost.aspx"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;They released the beta 3 version of their &lt;a href="http://scrumforteamsystem.com/en/TaskBoardBeta/Default.aspx"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;WPF&lt;/span&gt; Sprint Task Board &lt;/a&gt;application a few weeks ago which now supports the Scrum template 1.2 for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;TFS&lt;/span&gt; 2005 as well as 2.x on &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;TFS&lt;/span&gt; 2008. It is going to be release by the end of this month and the pricing will be $90 per license for 10 copies or under. You can get discounts for larger volumes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4581322580998313444?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4581322580998313444/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4581322580998313444' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4581322580998313444'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4581322580998313444'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/10/conchango-scrum-template-22-sprint-task.html' title='Conchango Scrum Template 2.2 &amp;amp; Sprint Task Board Updates'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5669771567712556501</id><published>2008-10-15T12:44:00.000-05:00</published><updated>2009-01-03T04:55:31.298-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><category scheme='http://www.blogger.com/atom/ns#' term='user group'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Huntsville User Group</title><content type='html'>Yesterday I drove down to Huntsville, AL to present to the local &lt;a href="http://www.huntug.org/"&gt;.NET user group&lt;/a&gt;. The meeting was hosted in a very nice auditorium on the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Intergraph&lt;/span&gt; company campus. The majority of the attendees worked for &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Intergraph&lt;/span&gt; who has been recently adopting Scrum and evaluating using &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;TFS&lt;/span&gt; for their management tool. I ended up delivering both the &lt;strong&gt;"Intro to Scrum"&lt;/strong&gt; talk in an abbreviated form and then going right into my &lt;strong&gt;"Implementing Scrum using Team Foundation Server"&lt;/strong&gt; presentation. The crowd was very engaged and there were some great conversations afterwards.&lt;br /&gt;&lt;br /&gt;I want to thank the user group leaders (&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;Sujata&lt;/span&gt;, Jim, Charlie, &amp;amp; Steve) for having me down.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-5669771567712556501?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5669771567712556501/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5669771567712556501' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5669771567712556501'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5669771567712556501'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/10/huntsville-user-group.html' title='Huntsville User Group'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-8593776735339841794</id><published>2008-09-14T23:22:00.000-05:00</published><updated>2009-01-03T04:55:31.312-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='requirements gathering'/><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='design'/><category scheme='http://www.blogger.com/atom/ns#' term='architecture'/><title type='text'>Agile: Where is the Line in the Sand?</title><content type='html'>The more I read on agile practices the more I hear some fairly edgy ideas about requirements gathering, design, and architecture in the agile world. While I understand the concept of embracing change, there has to be a line in the sand somewhere of how your company performs its business and how you build software to enable that business. As I work with clients adopting Scrum I find different levels of the &lt;a href="http://en.wikipedia.org/wiki/You_Ain"&gt;YAGNI &lt;/a&gt;(Your Ain't Gonna Need It) principle and the idea of building extensible software that gracefully accepts change. My struggle is that I need to find a happy medium with the majority of my clients. &lt;a href="http://martinfowler.com/"&gt;Martin Fowler's &lt;/a&gt;article &lt;a href="http://martinfowler.com/articles/designDead.html"&gt;"Is Design Dead?"&lt;/a&gt; makes an argument for something in between also, but he focuses more with contrasting against the more edgy concepts in&lt;a href="http://www.xprogramming.com/xpmag/whatisxp.htm"&gt; XP&lt;/a&gt;. Unfortunately a large number of agile pundits have taken up the idea that design up front is a wasteful practice as is gathering any type of detailed requirements. These are not just the inexperienced newbies blogging from their soap boxes, but well respected and experienced thought leaders in our industry.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;So is up front requirements gathering and design really dead?&lt;/strong&gt;&lt;br /&gt;&lt;strong&gt;&lt;/strong&gt;&lt;br /&gt;I have never been a agile purist and I think that for my clients some hybrid is more prudent. In the past I have been on Scrum teams that designed on the fly and kept the &lt;a href="http://www.xprogramming.com/Practices/PracNotNeed.html"&gt;YAGNI&lt;/a&gt; mantra. Sometimes this resulted in some patchwork architectures and some disjointed business themes in the application. While I do think it is a great idea to embrace change, a basic vision for both your business case and architecture/design of any software solution are needed to keep the smaller iterations on at least some common path. This vision should be able to change as well, but there are some fundamental things that most probably will ring true for the solution. Determining that line is a black art. Too little and you risk being all over the place in your deliverables. Too much and you start becoming too rigid and have lost the benefits of an agile approach.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;So how do you know how much up front work to do?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;If I had a textbook answer I would give it to you. And it would most likely be wrong. Every case is different. Each client's situation and environment is different. As a company's business evolves the line might have to move also. But I do think that forming a basic business case as the initial vision and some high level architecture and design is almost always warranted. Even Ken Schwaber, one of the originators of Scrum, advises to start as soon as you have enough backlog items to start a sprint. You do not need grand functional specifications and loads of UML diagrams. As is often quoted "The plan is useless, but the planning is essential." When determining if you need to detail a specific business case ask yourself how essential is it to our core business? Higher value requirements always get the most attention. As far as architecture/design, defining the basic components and their interactions at a high level should be enough to ensure your deliverables follow a cohesive path. When determining how extensible a given component should be, concentrate of the most probable changes rather than inventing all sorts of possible future scenarios.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;So how can you gather requirements and perform up front design while still being agile?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;If you are going to start a sprint with just enough product backlogs items then some of those product backlog items should be forming high level business cases and prototypes so that subsequent sprints will have the benefit of an uniform vision on both fronts. I also believe that you do need some level of documentation for these outside of just the backlogs. A wiki is a great place for them since by its very nature embraces change (and the good ones can provide history for those people who just cannot get over the idea of this type of change). To take that idea to the next step, Team Foundation server allows you to add links to web pages on backlog items so that you can tie the documentation to the user functionality and development tasks. If you want to go low-tech use flip charts and save all the paper. Post it on the walls of the room where the team is literally surrounded by the business and architectural vision.&lt;br /&gt;&lt;br /&gt;Even if you are well into an agile project, you can always have the stakeholders redefine the vision if you feel you are straying too far because of only thinking about the next sprint. Change is inevitable, but your company's core business fundamentally changing in not very probable. And good design should elegantly accept change also. I do not think up front gathering of requirements or design is dead. I just think that in agile environments it has evolved and shed its more useless features.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-8593776735339841794?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/8593776735339841794/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=8593776735339841794' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8593776735339841794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8593776735339841794'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/09/agile-where-is-line-in-sand.html' title='Agile: Where is the Line in the Sand?'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-791803365771414377</id><published>2008-09-09T22:28:00.000-05:00</published><updated>2009-01-03T04:55:31.279-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='comfortably scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Comfortably Scrum: Is your company ready to be agile?</title><content type='html'>As I have posted in &lt;a href="http://crazedcodemonkey.blogspot.com/2008/02/management-buy-in-is-one-of-keys-to.html"&gt;previous blog posts&lt;/a&gt;, adoption of Scrum (or any agile process) cannot be a development only effort. If done right, Scrum will have an effect on almost every department in your company that is involved in developing software. And if your company (or even just key parts of it) do not get on board, it can make for a painful process. So if you are thinking about possibly adopting Scrum, ask yourself the following questions to see how open you company might be:&lt;br /&gt;&lt;br /&gt;&lt;ol&gt;&lt;li&gt;&lt;strong&gt;Do key members of management buy-in to the agile concept?&lt;/strong&gt; They do not need to understand it in its entirety, but they need to be open to the new (and sometimes radical) ideas it brings.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Do the other departments show interest in the agile concept?&lt;/strong&gt; I have seen the most push back from &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;QA&lt;/span&gt; and BA departments when adopting Scrum. Some of them see it as the developers wanting to "take over" some of their territory. It is sometimes a hard task to convince them this is is not taking over anything but sharing the effort across all departments as part of a cross functional team.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Does the nature of your business mandate processes that are counter to Scrum's?&lt;/strong&gt; Many agile purists claim there is not such thing, but there are simply some businesses that would have a difficult time adopting Scrum because their way of doing business demands an approach in direct conflict with some of its ideals. Strict deadlines that cannot move, regulations that require comprehensive documentation, or a level of precision that requires a large amount of up front requirements gathering and system design are not impossible in Scrum, but might cause you to adapt it to the point of loosing the true benefits of the process.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Do you have a team of disciplined developers?&lt;/strong&gt; This is something I talked about in another &lt;a href="http://crazedcodemonkey.blogspot.com/2008/04/good-agile-team-is-disciplined-team.html"&gt;blog post&lt;/a&gt;. Scrum (and agile in general) is misconstrued as allowing developers to do whatever they feel like. In fact it is the exact opposite. Many developers have struggled coming from very structured shops that gave them a process to hide in and basically told them what to do. Scrum requires a developer to be cross functional and the processes themselves are meant to expose inefficiencies.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Does your infrastructure allow for cross functional teams?&lt;/strong&gt; The best way to work in a Scrum team is to have them physically located together. I have worked in both situations where everyone was in the same room or a short distance away to having half the team in two other states. If you cannot be together physically, you will need some mechanisms to bridge the gap and allow easy collaboration between team members. Everyone knows I am a big &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;TFS&lt;/span&gt; fan and I personally would not manage a diversely located team without it. Readily available conference calls, Live Meetings (&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;WebEx&lt;/span&gt; or whatever), and instant messaging are a must for every member of the team. This does not just mean developers. &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;BAs&lt;/span&gt;, &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;QA&lt;/span&gt; resources, IT staff, and the users/stakeholders should all be as easy to collaborate with as the developer sitting next to me.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;These are by far not all the questions to ask yourself, but they are some big ones that get the conversation started. I have heard agile experts even advise adopting agile practices without management knowing and slowly work up to involving them. In my experience that is a huge mistake. Moving to Scrum or any other agile methodology should be something the entire company works together on to make a clear and unanimous choice. There are definitely companies out there that are not yeat ready to adopt a process like Scrum and may never be able to. Scrum like any other software development process is not a silver bullet and is not meant for everyone.&lt;/p&gt;&lt;p&gt;Coming up next for the Comfortably Scrum series: &lt;strong&gt;Product Backlog Items&lt;/strong&gt;. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-791803365771414377?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/791803365771414377/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=791803365771414377' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/791803365771414377'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/791803365771414377'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/09/comfortably-scrum-is-your-company-ready.html' title='Comfortably Scrum: Is your company ready to be agile?'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-3679715199602696475</id><published>2008-09-09T22:06:00.000-05:00</published><updated>2009-01-03T04:55:31.320-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Venkat Subramaniam'/><category scheme='http://www.blogger.com/atom/ns#' term='Practices of an Agile Developer'/><category scheme='http://www.blogger.com/atom/ns#' term='Andy Hunt'/><title type='text'>Good book on Agile development</title><content type='html'>&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SMc9olzEQGI/AAAAAAAAAKY/0FEUkv0V8VU/s1600-h/pad.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5244228058646593634" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SMc9olzEQGI/AAAAAAAAAKY/0FEUkv0V8VU/s400/pad.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;This book is a few years old, but I just got around to reading it. &lt;a href="http://www.amazon.com/Practices-Agile-Developer-Pragmatic-Programmers/dp/097451408X"&gt;Practices of an Agile Developer &lt;/a&gt;by &lt;a href="http://blog.toolshed.com/"&gt;Andy Hunt &lt;/a&gt;and &lt;a href="http://www.agiledeveloper.com/blog/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Venkat&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Subramaniam&lt;/span&gt; &lt;/a&gt;is a good, &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_2"&gt;practical&lt;/span&gt; introduction to the daily activities and approaches software developer's can adopt to become more "agile". A good bit of the items mentioned are not even necessarily only applicable to agile development. Quite a few of the agile books I have read stick to a good deal of rhetoric and little in practical implementation. This book is part of the&lt;a href="http://www.pragprog.com/"&gt; "Pragmatic Programmers"&lt;/a&gt; series and does a good job of cutting &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;thru&lt;/span&gt; the theoretical hype and giving some solid advice. It was a very easy read because of the way the book is laid out. Each major section has small sub sections that tackle one specific idea in about 3 to 5 pages. It was easy to sit down for five minutes and digest one facet from the book. The book does have an angel and devil motif that is a bit &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;cheezy&lt;/span&gt;, but even this provided some &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_5"&gt;practical&lt;/span&gt; context for each section. The Nashville Agile User Group has this book as a staple in their meeting prizes (that is where I got mine). I give it a thumbs up and suggest it as an easy read with some practical advice on how to become a more agile developer.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-3679715199602696475?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/3679715199602696475/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=3679715199602696475' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3679715199602696475'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3679715199602696475'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/09/good-book-on-agile-development.html' title='Good book on Agile development'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_nzj0JxErQqA/SMc9olzEQGI/AAAAAAAAAKY/0FEUkv0V8VU/s72-c/pad.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-980142466168244821</id><published>2008-08-27T22:46:00.000-05:00</published><updated>2009-01-03T04:55:31.327-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='devlink'/><title type='text'>devLink 2008 (Slight Return): Part 3</title><content type='html'>It seems at most events I am too busy running around keeping things going that I really never get to enjoy the company of my peers. This time around I made sure to get some time with people in the community who make our event so great:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://blogs.tedneward.com/"&gt;&lt;strong&gt;Ted &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Neward&lt;/span&gt;&lt;/strong&gt; &lt;/a&gt;bought me a beer right off the bat. Then lost all his poker chips to me. Awesome. I also hear is a pretty smart guy!&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.brianhprince.com/"&gt;&lt;strong&gt;Brian Prince&lt;/strong&gt; &lt;/a&gt;is a great DE and is always dedicated to growing the community as well as its individuals. Plus he was at &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;devLink&lt;/span&gt; on his birthday.&lt;/li&gt;&lt;li&gt;&lt;a href="http://sqlblog.com/blogs/kevin_kline/"&gt;&lt;strong&gt;Kevin Kline&lt;/strong&gt; &lt;/a&gt;is a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;SQL&lt;/span&gt; genius. Plus he came to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;devLink&lt;/span&gt; on his wedding day!&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.betav.com/blog/billva/"&gt;&lt;strong&gt;Bill Vaughn&lt;/strong&gt; &lt;/a&gt;is also a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;SQL&lt;/span&gt; genius, plus someone told me he wrote a book or two. But he is terrible at bluffing in Texas Hold 'em.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.coreyhaines.com/coreysramblings/"&gt;&lt;strong&gt;Cory &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;Haines&lt;/span&gt;&lt;/strong&gt; &lt;/a&gt;has some edgy ideas but who can argue with those manly mutton chops! Plus he plays a mean harmonica.&lt;/li&gt;&lt;li&gt;&lt;a href="http://geekswithblogs.net/rfoster/"&gt;&lt;strong&gt;Rob Foster&lt;/strong&gt; &lt;/a&gt;is always fun to be around and if I am going to slink past hotel security at midnight, he is my wing man.&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.platinumbay.com/"&gt;&lt;strong&gt;Steve Andrews&lt;/strong&gt; &lt;/a&gt;graced my &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_6"&gt;TFS&lt;/span&gt; talk and made me nervous. He did not throw anything or laugh out loud so I thank him for that.&lt;/li&gt;&lt;li&gt;&lt;a href="http://timrayburn.net/"&gt;&lt;strong&gt;Tim Rayburn&lt;/strong&gt; &lt;/a&gt;and I came up with the one true method call to end all method calls. He could also become a poker tournament announcer if he ever quits his day job.&lt;/li&gt;&lt;li&gt;&lt;a href="http://blogs.msdn.com/jennifer/"&gt;&lt;strong&gt;Jennifer &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_7"&gt;Marsman's&lt;/span&gt;&lt;/strong&gt; &lt;/a&gt;passion and excitement for developing is so contagious that the World Health Organization ranks her right below the Asian bird flu. She is also the bastard daughter of Dutch royalty. God save the Queen!&lt;/li&gt;&lt;li&gt;Drew Robbins also did a great job with the event and the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_8"&gt;pre&lt;/span&gt;-conference poker tourney. Oh wait, that was &lt;strong&gt;&lt;a href="http://www.jeffblankenburg.com/"&gt;Jeff &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_9"&gt;Blakenburg&lt;/span&gt;&lt;/a&gt;&lt;/strong&gt;. He is a great guy too!&lt;/li&gt;&lt;li&gt;I did not get to spend much time with &lt;a href="http://www.fallenrogue.com/"&gt;&lt;strong&gt;Leon &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_10"&gt;Gersing&lt;/span&gt;&lt;/strong&gt; &lt;/a&gt;but he tends to break out into spontaneous dance routines fairly often which is bonus for any event.&lt;/li&gt;&lt;li&gt;&lt;a href="http://sirenabenefield.blogspot.com/"&gt;&lt;strong&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_11"&gt;Sirena&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_12"&gt;Benefield&lt;/span&gt;&lt;/strong&gt; &lt;/a&gt;was a new attendee from &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_13"&gt;ITT&lt;/span&gt; tech who won everyone over the second she showed up. She codes, she plays &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_14"&gt;Diablo&lt;/span&gt; II (old &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_15"&gt;skool&lt;/span&gt;!), rocks on Guitar Hero, and was genuinely excited to be a part of all the activities. We will hear more from her in the near future.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;There were so many more people, but I cannot come up with clever (or not so clever) lines for all of them. Thanks to everyone who participated in every capacity and I hope to see you again soon!&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-980142466168244821?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/980142466168244821/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=980142466168244821' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/980142466168244821'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/980142466168244821'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/08/devlink-2008-slight-return-part-3.html' title='devLink 2008 (Slight Return): Part 3'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2592100341717566942</id><published>2008-08-26T22:20:00.000-05:00</published><updated>2009-01-03T04:55:31.333-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='volunteers'/><category scheme='http://www.blogger.com/atom/ns#' term='devlink'/><title type='text'>devLink 2008 (Slight Return): Part 2</title><content type='html'>One of the thing that keeps &lt;a href="http://www.devlink.net/"&gt;devLink &lt;/a&gt;at such a high level of quality is the great group of organizers and volunteers. No one is paid for the work they do on the conference, yet we see a level of commitment that is very inspiring. I wanted to tip my hat to the people that made it happen:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://johnkellar.blogspot.com/"&gt;&lt;strong&gt;John Kellar&lt;/strong&gt; &lt;/a&gt;is the backbone of devLink. His attention to detail makes sure the event runs as smooth as possible and his involvement in the developer community ensures a great line up of speakers every year.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Leanna Baker&lt;/strong&gt; does a fantastic job with the logistics of the conference which are considerable. Where most of us work in the industry and gain a little notoriety from being a part of it, Leanna is not a developer and just simply wants the conference to be the best it can be. Her husband &lt;strong&gt;John Baker&lt;/strong&gt; was a big part of keeping things running smoothly although he is a donut thief.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Rachel Twyford&lt;/strong&gt; has been a dedicated part of all three devLinks while being very pregnant for two of them. She was constantly on the move and when I saw her doing stretches at the final keynote I swore she was having the baby!&lt;/li&gt;&lt;li&gt;&lt;a href="http://netcave.org/"&gt;&lt;strong&gt;Alan Stevens&lt;/strong&gt; &lt;/a&gt;brought a very cool, new vibe this year with his excellent Open Spaces. Plus he throws a heck of an after party.&lt;/li&gt;&lt;li&gt;&lt;a href="http://keithelder.net/blog/"&gt;&lt;strong&gt;Keith Elder&lt;/strong&gt; &lt;/a&gt;was always on hand to help out and is a great M.C. Plus he does a great Frank Sinatra impression.&lt;/li&gt;&lt;li&gt;&lt;a href="http://geekswithblogs.net/rwalker/Default.aspx"&gt;&lt;strong&gt;Randy Walker&lt;/strong&gt; &lt;/a&gt;was constantly lending a hand and was usually one of the first volunteers onsite and one of the last to leave.&lt;/li&gt;&lt;li&gt;We had a great group of volunteers who really did a terrific job of helping run the conference: &lt;strong&gt;Jason Clark&lt;/strong&gt; (who I am glad did not pass out in the sun), &lt;strong&gt;Bryan Meyer&lt;/strong&gt;, &lt;strong&gt;Cliff Jacobson,&lt;/strong&gt; and &lt;strong&gt;Evan Hoff&lt;/strong&gt;. These guys were either constantly moving or stuck in one place (and sometimes outside) for long periods of time.&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;Without these people devLink would never be the greatest regional conference in the known universe. &lt;/p&gt;&lt;p&gt;&lt;strong&gt;THANKS TO EVERYONE!&lt;/strong&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-2592100341717566942?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2592100341717566942/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2592100341717566942' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2592100341717566942'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2592100341717566942'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/08/devlink-2008-slight-return-part-2.html' title='devLink 2008 (Slight Return): Part 2'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-8007226087167365030</id><published>2008-08-26T00:17:00.000-05:00</published><updated>2009-01-03T04:55:31.271-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='comfortably scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Comfortably Scrum: Series Introduction</title><content type='html'>I have been presenting on Scrum and how I have implemented it processes using Team Foundation Server for the last year and almost every time I talk about it I run out of time. Both Scrum and TFS are complex entities and it is hard to talk about them both in one hour.&lt;br /&gt;&lt;br /&gt;I am starting a new series of blog postings entitled "Comfortably Scrum" as a way to spend a little more time on a specific topic and do it justice. I eventually plan to accompany each blog post with a companion video.&lt;br /&gt;&lt;br /&gt;I am currently working on the first post on gauging if your company is ready to adopt an agile process like Scrum.&lt;br /&gt;&lt;br /&gt;More to come!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-8007226087167365030?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/8007226087167365030/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=8007226087167365030' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8007226087167365030'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/8007226087167365030'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/08/comfortably-scrum-series-introduction.html' title='Comfortably Scrum: Series Introduction'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2351901295905607615</id><published>2008-08-25T21:38:00.000-05:00</published><updated>2009-01-03T04:55:31.341-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='devlink'/><title type='text'>devLink 2008 (Slight Return): Part 1</title><content type='html'>&lt;div&gt;The &lt;a href="http://www.devlink.net/"&gt;devLink 2008 Technical Conference &lt;/a&gt;is now in the books and I am happy to say it went very well. Despite a few bumps and bruises most everything went off without a hitch. I'm now fully recovered and wanted to post about what a great experience it was this year. First I wanted to post this video montage from the event. I plan to post more the next few days about the people who made devLink happen, the interesting people I met this year, and some of the content.&lt;/div&gt;&lt;br /&gt;&lt;p align="center"&gt;&lt;br /&gt;&lt;object height="350" width="425"&gt;&lt;param name="movie" value="http://www.youtube.com/v/91LIGXCYlpM"&gt;&lt;br /&gt;   &lt;embed src="http://www.youtube.com/v/91LIGXCYlpM" type="application/x-shockwave-flash" width="425" height="350"&gt;&lt;/embed&gt;  &lt;/object&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-2351901295905607615?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2351901295905607615/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2351901295905607615' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2351901295905607615'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2351901295905607615'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/08/devlink-2008-slight-return-part-1.html' title='devLink 2008 (Slight Return): Part 1'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-58393286138286614</id><published>2008-08-18T07:33:00.000-05:00</published><updated>2009-01-03T04:55:31.349-06:00</updated><title type='text'>devLink 2008</title><content type='html'>&lt;a href="http://devlink.net"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SKlulET_baI/AAAAAAAAAIQ/x379Ca61T4M/s400/bethere.gif" border="0" alt=""id="BLOGGER_PHOTO_ID_5235837624886717858" /&gt;&lt;/a&gt;&lt;br /&gt;This week is the third &lt;a href="http://devlink.net/"&gt;devLink Technical Conference &lt;/a&gt;here in Tennessee. After helping &lt;a href="http://www.anvilsystems.com/Blog/tabid/114/Default.aspx"&gt;John Kellar &lt;/a&gt;start this in 2006, I took a break in 2007 to have a baby, but I am back as Vice Chairman again this year. For 2007 we are located at Middle Tennessee State University (MTSU) in Murfreesboro, TN. We thought the change in venue and the extra distance from Nashville may cause some roll off in attendance, but we have been sold out for a month. There are some great speakers coming this year and I am excited about the addition of Open Spaces which are being run by .NET Jesus himself, &lt;a href="http://netcave.org/"&gt;Alan Stevens&lt;/a&gt;. I took time off from presenting the last few months after my 5th child was born, but last week presented for the local &lt;a href="http://www.aitpnashville.org/index.htm"&gt;AITP &lt;/a&gt;chapter and I am doing my Scrum and TFS presentation on the last day of devLink. Hope to see everyone there!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-58393286138286614?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/58393286138286614/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=58393286138286614' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/58393286138286614'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/58393286138286614'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/08/devlink-2008.html' title='devLink 2008'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_nzj0JxErQqA/SKlulET_baI/AAAAAAAAAIQ/x379Ca61T4M/s72-c/bethere.gif' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-3813349105184993890</id><published>2008-07-16T22:51:00.000-05:00</published><updated>2009-01-03T04:55:31.356-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='scrum team'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Collaboration and Responsibility in a Scrum Team</title><content type='html'>As I have worked on Scrum teams in companies that were traditionally waterfall, I have observed how the various team members struggle with the concept of the collaborative, cross functional team. &lt;a href="http://www.scrumalliance.org/profiles/7"&gt;Ken Schwaber &lt;/a&gt;describes the tendency to resist these changes and fall back into old habits as “muscle memory”. When a traditional project manager was brought onto our team as our Product Owner, he asked several questions and received answers he was not expecting:&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Question&lt;/strong&gt;: Where is the functional requirements documentation?&lt;br /&gt;&lt;strong&gt;Answer&lt;/strong&gt;: There is none. They are in the &lt;a href="http://scrumforteamsystem.com/processguidance/v2/Artefacts/ProductBacklog.aspx"&gt;Product Backlog &lt;/a&gt;as &lt;a href="http://en.wikipedia.org/wiki/User_story"&gt;User Stories&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Question&lt;/strong&gt;: Where is the architectural and design documentation?&lt;br /&gt;&lt;strong&gt;Answer&lt;/strong&gt;: There is none. It is in the code itself.&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Question&lt;/strong&gt;: When do I get status reports?&lt;br /&gt;&lt;strong&gt;Answer&lt;/strong&gt;: Never. Every day we have a &lt;a href="http://scrumforteamsystem.com/processguidance/v2/Process/DailyScrumMeeting.aspx"&gt;Daily Scrum &lt;/a&gt;and update our tasks in the &lt;a href="http://scrumforteamsystem.com/processguidance/v2/Artefacts/SprintBacklog.aspx"&gt;Sprint Backlog&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;While I am not a true agilist, I do believe that relying on static documentation and periodic status reports to keep track of a project is what I call “managing from afar for plausible deniability.” Being a part of a Scrum Team means accepting a large level of responsibility. Product Owners cannot simply stroll in occasionally and rely on one-off status reports to gauge how well a project is going. Everyone is involved and it is not an opt-in process. No one on a Scrum should ever be able to use the excuse “I did not know…”&lt;br /&gt;&lt;br /&gt;This does not only affect the Product Owner. The most resistance I have gotten in the past is from Quality Assurance. Typically they are used to detailed specifications to create detailed test cases that they execute after the development process is over. In a Scrum Team, the QA testers are peer members just as much as the developers. I’ve had the complaint before that all QA was given at the start of a Sprint to create their test cases were User Stories and Conditions of Acceptance. My response is “You’re right, but that’s all I have to go on too and I have to write the code!” The best way to get QA on board in my experience so far has been to have them at every Daily Scrum and in any design or requirements gathering sessions the developers have. This means getting your testers out of their section of the office and in the thick of the development team. They can use the User Story as a starting point and then flesh out their test cases along with the developers as the functionality is created. They can perform dry runs on code that is nearing completion so that at the end of the Sprint the goal would be that all code has been QA tested at least once.&lt;br /&gt;&lt;br /&gt;Developers are not immune to this ailment either. Some junior or less disciplined developers may become vapor locked when they have to start coding without a detailed specification. You cannot go code in the corner and be fed requirements and Jolt cola through a slot in the door. You should not turn to the Scrum Master when you have finished a task and ask “What next?” The excuse “That’s what it said in the spec” is no longer valid. Team members must rely on constant collaboration to make sure the developed solution meets the user’s needs as well as the team’s technical standards.&lt;br /&gt;&lt;br /&gt;I must admit the teams I have been on have experienced these problems and we still struggle against old habits. We try to make good use of the Sprint Retrospective to adjust each iteration to make the process better. Our Scrum Team has met every date, encountered very few QA or production defects, and has made our stakeholders consistently happy. We have done this through constant collaboration across all members and by evolving our process. There have been very few late nights and no death marches. And I have to say that the experience had made my statement of not really being an agilist less true each time I say it.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-3813349105184993890?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/3813349105184993890/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=3813349105184993890' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3813349105184993890'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3813349105184993890'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/07/collaboration-and-responsibility-in.html' title='Collaboration and Responsibility in a Scrum Team'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-3538078412955892169</id><published>2008-07-07T09:03:00.000-05:00</published><updated>2009-01-03T04:55:31.363-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Task Board for Team System'/><category scheme='http://www.blogger.com/atom/ns#' term='Conchango'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Conchango Task Board for Team System Beta Released</title><content type='html'>The Conchango Task Board for Team System has been been released in Beta. It only works with TFS/VSTS 2008 and the 2.0 version of the Scrum process template. You can download it &lt;a href="http://scrumforteamsystem.com/cs/forums/2171/ShowPost.aspx"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-3538078412955892169?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/3538078412955892169/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=3538078412955892169' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3538078412955892169'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3538078412955892169'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/07/conchango-task-board-for-team-system.html' title='Conchango Task Board for Team System Beta Released'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-7865944955656210298</id><published>2008-06-29T22:27:00.000-05:00</published><updated>2009-01-03T04:55:31.371-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sprint task board'/><category scheme='http://www.blogger.com/atom/ns#' term='linq'/><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server api'/><title type='text'>TFS API: Work ItemHistory</title><content type='html'>One of the tasks I had while developing my own version of a Sprint Task Board was to note each work item’s “staleness”. This meant that for any Sprint Backlog task that was in a state of “In Progress” or “Ready for Test” I needed to know the last time its Work Remaining field had been updated.&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://msdn.microsoft.com/en-us/library/bb130146(VS.80).aspx"&gt;Team Foundation Server API&lt;/a&gt; provides an easy object model for iterating through a work item’s history. Each &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.workitemtracking.client.workitem(VS.80).aspx"&gt;WorkItem&lt;/a&gt; has a &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.workitemtracking.client.workitem.revisions(VS.80).aspx"&gt;Revisions&lt;/a&gt; collection that holds individual snap shots of the work item each time it was updated. The Revisions in the collection are in order or earliest to latest, but there is also a &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.workitemtracking.client.workitem.rev(VS.80).aspx"&gt;Rev&lt;/a&gt; property for each one that is the sequential order. Each Revision has a collection of &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.workitemtracking.client.field(VS.80).aspx"&gt;Fields&lt;/a&gt; for each field, both the common system fields and any fields added from a custom process template. When you access an individual Field in the Revision you can see what the original value was (&lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.workitemtracking.client.field.originalvalue(VS.80).aspx"&gt;OriginalValue&lt;/a&gt;) versus what the value was changed to in the revision (&lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.workitemtracking.client.field.value(VS.80).aspx"&gt;Value&lt;/a&gt;). If the field was not changed the values are the same.&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/_nzj0JxErQqA/SGhVJzBqcQI/AAAAAAAAAHE/Syi4rcwjv60/s1600-h/Revision1.png"&gt;&lt;img id="BLOGGER_PHOTO_ID_5217513795113087234" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://4.bp.blogspot.com/_nzj0JxErQqA/SGhVJzBqcQI/AAAAAAAAAHE/Syi4rcwjv60/s400/Revision1.png" border="0" /&gt;&lt;/a&gt;Since this is the very first time the work item was saved the OriginalValue property on all fields is null. The &lt;strong&gt;ChangedDate&lt;/strong&gt; is the date we saved this particular revision and the &lt;strong&gt;RevisedDate&lt;/strong&gt; is displayed as the maximum value of the DateTime type since this particular revision has not been revised yet. If we edit the work item on June 3rd the Revisions would look like this:&lt;br /&gt;&lt;br /&gt;&lt;img id="BLOGGER_PHOTO_ID_5217514219214590210" style="DISPLAY: block; MARGIN: 0px auto 10px; CURSOR: hand; TEXT-ALIGN: center" alt="" src="http://1.bp.blogspot.com/_nzj0JxErQqA/SGhVie7V0QI/AAAAAAAAAHM/w5pLaB4-JJE/s400/Revision2.png" border="0" /&gt;The RevisedDate for Revision 1 is set to the ChangedDate for Revision 2. The fields for Revision 2 now have their OriginalValues populated with the appropriate values from Revision 1.&lt;br /&gt;&lt;br /&gt;So based on the examples above, if we want to know the last time a specific field was updated you would look for the “System.ChangedDate” field’s Value for the latest Revision where that field’s OriginalValue and Value properties are not equal. &lt;a href="http://1.bp.blogspot.com/_nzj0JxErQqA/SGhWT-fvrqI/AAAAAAAAAHc/9E8QMVPe068/s1600-h/RevisionCodeSample.png" target="_blank"&gt;Here&lt;/a&gt; is a LINQ query that would accomplish this for the “Work Remaining” field (this field is an extended field that comes with the Conchango Agile Process Template).&lt;br /&gt;&lt;br /&gt;One thing to remember when using the Work Item object model is its effect on performance. Not all fields are loaded initially so depending on how you access the &lt;a href="http://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.workitemtracking.client.workitemstore(VS.80).aspx"&gt;WorkItemStore&lt;/a&gt; you may incur additional round trips to the server. This &lt;a href="http://msdn.microsoft.com/en-us/library/bb130338(VS.80).aspx"&gt;MSDN article&lt;/a&gt; does a good job of explaining how this works and what your options are to increase performance.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-7865944955656210298?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/7865944955656210298/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=7865944955656210298' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7865944955656210298'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7865944955656210298'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/06/tfs-api-work-itemhistory.html' title='TFS API: Work ItemHistory'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/_nzj0JxErQqA/SGhVJzBqcQI/AAAAAAAAAHE/Syi4rcwjv60/s72-c/Revision1.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-1458237825275376799</id><published>2008-06-29T20:47:00.000-05:00</published><updated>2009-01-03T04:55:31.378-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sprint task board'/><category scheme='http://www.blogger.com/atom/ns#' term='Conchango'/><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server api'/><title type='text'>Conchango's Sprint Task Board</title><content type='html'>I wanted to thank &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Crispin&lt;/span&gt; for giving me the heads up that &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;Conchango&lt;/span&gt; has posted two &lt;a href="http://scrumforteamsystem.com/cs/forums/2097/ShowPost.aspx#2097"&gt;video demos&lt;/a&gt; of their upcoming Sprint Task Board application. As I stated in my last few blog posts, I had been working on something similar but where &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Conchango&lt;/span&gt; has dedicated development resources, I had only a few spare hours here and there between work and handling the new baby. I look forward to the release of this application and will post a review as soon as it is out. I did learn a good deal more about the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;TFS&lt;/span&gt; &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;API&lt;/span&gt; while working on my own pet project and I am working on some more in-depth technical posts in the next week or so.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-1458237825275376799?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/1458237825275376799/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=1458237825275376799' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1458237825275376799'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1458237825275376799'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/06/conchango-sprint-task-board.html' title='Conchango&amp;#39;s Sprint Task Board'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-3342376397357441914</id><published>2008-06-16T00:48:00.000-05:00</published><updated>2009-01-03T04:55:31.384-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sprint task board'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server api'/><title type='text'>Sprint Task Board Update</title><content type='html'>I wanted to clarify that the Sprint Task Board project I mentioned last post is by far not an original idea. It is simply a side project for me to create a version that does exactly what I want it to do. There are various other versions of this in Scrum management &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;products&lt;/span&gt; like &lt;a href="http://studios.thoughtworks.com/mingle-project-intelligence/a-quick-tour"&gt;Mingle &lt;/a&gt;and &lt;a href="http://danube.com/scrumworks/pro/features/sprint-management"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;ScrumWorks&lt;/span&gt;&lt;/a&gt;. &lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;Conchango&lt;/span&gt; &lt;/a&gt;has even hinted at one for Team Foundation Server in a reply to one of my &lt;a href="http://scrumforteamsystem.com/cs/forums/1637/ShowPost.aspx"&gt;forum posts&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Working on this has helped me get deeper into the &lt;a href="http://msdn.microsoft.com/en-us/library/bb130334(VS.80).aspx"&gt;Team Foundation Server &lt;/a&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;API&lt;/span&gt; and I will post soon about some interesting discoveries in the work item history objects.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-3342376397357441914?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/3342376397357441914/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=3342376397357441914' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3342376397357441914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3342376397357441914'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/06/sprint-task-board-update.html' title='Sprint Task Board Update'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4526951267684200353</id><published>2008-06-05T00:47:00.000-05:00</published><updated>2009-01-03T04:55:31.393-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='sprint task board'/><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>Sprint Task Board</title><content type='html'>&lt;a href="http://2.bp.blogspot.com/_nzj0JxErQqA/SEeAobcjhdI/AAAAAAAAAF0/k5iWIpy7FGc/s1600-h/SprintTaskBoardPbi.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5208272926127916498" style="CURSOR: hand" alt="" src="http://2.bp.blogspot.com/_nzj0JxErQqA/SEeAobcjhdI/AAAAAAAAAF0/k5iWIpy7FGc/s400/SprintTaskBoardPbi.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://3.bp.blogspot.com/_nzj0JxErQqA/SEeAgrcjhcI/AAAAAAAAAFs/kcGIs7Q_ckU/s1600-h/SprintTaskBoardUser.jpg"&gt;&lt;img id="BLOGGER_PHOTO_ID_5208272792983930306" style="CURSOR: hand" alt="" src="http://3.bp.blogspot.com/_nzj0JxErQqA/SEeAgrcjhcI/AAAAAAAAAFs/kcGIs7Q_ckU/s400/SprintTaskBoardUser.jpg" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;div&gt;With the arrival of our new baby I took a few weeks off. During the late nights I started fiddling around with creating my own virtual Sprint Task Board to emulate the physical sticky note boards most scrum (and other agile) teams use. I have always like the immediacy of the task board, but never could &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;relinquish&lt;/span&gt; having the data digitally rather than physically. I am not an agile purist plus my current team has some remote members and a physical board would not work for us. I have created the initial draft as an ASP.NET web page which I plan to port to a &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;WPF&lt;/span&gt;&lt;/span&gt; extension inside of Visual Studio 2008. This rough version allows you to view the current sprint tasks grouped by either the Product Backlog Item it is associated with or the Assigned User. The IDs of the work items link directly to Team System Web Access so that you can view the details. I plan to start &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;refactoring&lt;/span&gt;&lt;/span&gt; this into an actual application soon and possibly submit it to &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;CodePlex&lt;/span&gt;&lt;/span&gt;. &lt;/div&gt;&lt;div&gt; &lt;/div&gt;&lt;div&gt;The color coding is based on when an "In Progress" or "Ready for Test" task's Work Remaining field was last updated. The scale goes from green to red according to how "stale" the work item is. Work Items with an open Impediment are &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_3"&gt;clearly&lt;/span&gt; noted. This should provide a good overview of the sprint's health at a glance.&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4526951267684200353?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4526951267684200353/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4526951267684200353' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4526951267684200353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4526951267684200353'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/06/sprint-task-board.html' title='Sprint Task Board'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_nzj0JxErQqA/SEeAobcjhdI/AAAAAAAAAF0/k5iWIpy7FGc/s72-c/SprintTaskBoardPbi.jpg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-1929846941134728053</id><published>2008-04-28T20:31:00.000-05:00</published><updated>2009-01-03T04:55:31.411-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='agile'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum master'/><category scheme='http://www.blogger.com/atom/ns#' term='discipline'/><category scheme='http://www.blogger.com/atom/ns#' term='scrum'/><title type='text'>An Good Agile Team is a Disciplined Team</title><content type='html'>Since last year I have been at two different development shops that were in various stages of adopting Scrum. At the first I was the development manager and initial Scrum Master for a medium sized team that was moving from a waterfall/cowboy process to Scrum. Most recently I have been consulting with a smaller company that had previously loosely adopted Scrum, but has been bought by a larger company that has a more structured methodology. It has been a very educational experience.&lt;br /&gt;&lt;br /&gt;One thing that I have learned is that a development team that wishes to get the most out of adopting Scrum must be a very disciplined team. It is sometime a misconception that agile methodologies are basically "the inmates running the asylum", but agile (and Scrum in my experience) requires a more mature and self-reliant team than waterfall. Scrum team are "self organizing" and are given almost total freedom to get their job done during each Sprint. They are left to determine what needs to be done, who works on what task, the approach for each item, etc. often with little to no outside influence.&lt;br /&gt;&lt;br /&gt;This is quite a big responsibility and I have seen many people (and I include myself) struggle with it. Less mature developers may dive into a technical task and be oblivious to how their task relates to the project as a whole. Often they do not take advantage of the Daily Scrum meetings to get a good sense of how the team is progressing towards the current Sprint goal. These developers will often under estimate tasks and their &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_0"&gt;deliverables&lt;/span&gt; will tend to be less on target.&lt;br /&gt;&lt;br /&gt;Scrum Masters can fall into old habits also. As a Scrum Master I tended to want to "lead" the team rather than facilitate the team leading itself. Sometimes this was "muscle memory", but often I had to provide a more hands on approach when my team would start to drift away from the goals of a Sprint. I had to make a concentrated effort to let go and allow my team to run itself. I also am guilty of getting off track in the sacred Daily Scrum meetings. My team takes great joy in using my own phrase "Don't tell me about the pregnancy, show me the baby." when I do this.&lt;br /&gt;&lt;br /&gt;I think that most every developer really knows what must be done to create a solid software solution, but what we struggle with is the discipline to execute in our daily activities. It is often easy at the beginning and then gets decidedly harder as the pressure increases. I personally struggle with this and am trying to make a real effort to make myself adhere to the principals that I believe make me a better developer.&lt;br /&gt;&lt;br /&gt;Just this last Sprint I found myself continuing on a task that we had time boxed to a few days. At the end of the time period I was very close to wrapping it up and decided to extend the time period. Each time I got "close to finishing" another issue arose and I extended the time period again. I did finish the task and the result will greatly benefit the team, but other tasks were &lt;span class="blsp-spelling-corrected" id="SPELLING_ERROR_1"&gt;sacrificed&lt;/span&gt;. I also had to admit to myself that if another member of the team had done something similar, as the Scrum Master I would have probably called them out on it. It was another lesson it how to be more disciplined in my approach.&lt;br /&gt;&lt;br /&gt;My hope is that each day I gain a little more experience and a little more practical approach to how I adopt (and sometimes DON'T adopt) agile/Scrum philosophies. That way the next day I become a more disciplined developer.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-1929846941134728053?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/1929846941134728053/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=1929846941134728053' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1929846941134728053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1929846941134728053'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/04/good-agile-team-is-disciplined-team.html' title='An Good Agile Team is a Disciplined Team'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-627044508756203711</id><published>2008-04-16T22:49:00.000-05:00</published><updated>2009-01-03T04:55:31.426-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><category scheme='http://www.blogger.com/atom/ns#' term='msbuild'/><title type='text'>VSTS2008, TFS2005 MSBuild Woes</title><content type='html'>This last week I have been working with a client to create MSBuild scripts for build automation. We ran into various issues and after various web searches and blog mining we got everything working today. Although I am not a big fan of posting links to items that have been blogged about rather frequently, I decided to provide a rundown of our issues and the blog posts that helped us fix them because of the large amount of sites that had wrong or misleading information.&lt;br /&gt;&lt;br /&gt;Our first issue was the fact that our applications were built using Visual Studio Team System 2008 targeting both the 3.0 and 3.5 versions of the framework, but our Team Foundation Server was still 2005. There were several posts about creating custom tasks or using Powershell, but the simplest resolution was to simply use the FileUpdate task in the MSBuild script to modify the solution file. This was not actually in a blog post, but in the comments to this &lt;a href="http://tfsnow.wordpress.com/2007/08/22/building-visual-studio-2008-under-team-build-2005/"&gt;one&lt;/a&gt;. I would add to this approach that you change it back somewhere after the CoreCompile target fires. I opened the solution on the TFS server itself a few times to troubleshoot some other errors and without changing the file you get the conversion wizard when you try to open the modified solution file.&lt;br /&gt;&lt;br /&gt;This worked for our 3.0 projects for our WCF services, but our web application needed the 3.5 version of the compiler due to our use of C# 3.0 syntax such as automatic properties and object initializers. Again there were several posts with various resolutions (some involving create another build server with a modified MSBuild.exe) but most were not acceptable to the client. We eventually called the DEVENV for VSTS2008 directly from the command line to build the web application solution. This worked better than I expected and even itemized build errors in the build log just as if it were part of the core compile. Calling the DEVENV was outlined in several blog posts also, but a fair amount of these had incorrect or incomplete syntax. Finally we found &lt;a href="http://blogs.msdn.com/aaronhallberg/archive/2007/06/29/building-from-the-command-line-with-devenv.aspx"&gt;this post &lt;/a&gt;that provided the correct syntax and a very clear explanation of why it works. This resolution also helped us overcome the glaring omission of MSBuild support for setup projects.&lt;br /&gt;&lt;br /&gt;So after many, many failed builds we finished our build scripts today that compile all of our solutions, build the setup projects, copy the MSI files to a network share, and then use PSEXEC to install the application on our development server. We have a separate batch of build scripts for the different branches in the code so within a few minutes I can deploy any branch of the code to our development server (or local machine) for testing. Even with a few days to figure it out the overhead of doing that manually will save us much more time in the long run.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-627044508756203711?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/627044508756203711/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=627044508756203711' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/627044508756203711'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/627044508756203711'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/04/vsts2008-tfs2005-msbuild-woes.html' title='VSTS2008, TFS2005 MSBuild Woes'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4219888352945411908</id><published>2008-04-09T11:56:00.000-05:00</published><updated>2009-01-03T04:55:31.419-06:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virtual pc image'/><category scheme='http://www.blogger.com/atom/ns#' term='team foundation server'/><category scheme='http://www.blogger.com/atom/ns#' term='2008'/><title type='text'>New VPC Image for TFS 2008 VSTS 2008</title><content type='html'>When I presented at teh Chattanooga user group the otehr night I spun up my VPC image with TFS 2008 and VSTS 2008 on it to run thru my demos before I started. It was then I rememberd that the image expired last week. I set back my system date to get thru the presentation with only one demo (the CI Build creation) bombing out due to the change. Looks like there is a &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=c7a809d8-8c9f-439f-8147-948bc6957812&amp;amp;displaylang=en"&gt;new image &lt;/a&gt;out there that expires Dec. 31, 2008.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4219888352945411908?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4219888352945411908/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4219888352945411908' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4219888352945411908'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4219888352945411908'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/04/new-vpc-image-for-tfs-2008-vsts-2008.html' title='New VPC Image for TFS 2008 VSTS 2008'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2510439771022261670</id><published>2008-04-09T11:34:00.000-05:00</published><updated>2009-01-03T04:55:31.433-06:00</updated><title type='text'>Chattanooga .NET User Group Presentation</title><content type='html'>Presented at the &lt;a href="http://www.chadnug.com/"&gt;Chattanooga .NET User Group &lt;/a&gt;last night. I did my Scrum in TFS talk and the audience was very engaged. It was a good balance of using TFS to automate common, time consuming development tasks and pragmattic ideas on how to implement Scrum. Chattanooga has a great group and the facility was top notch. Thanks to Anthony Bowman for inviting me down!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-2510439771022261670?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2510439771022261670/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2510439771022261670' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2510439771022261670'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2510439771022261670'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/04/chattanooga-net-user-group-presentation.html' title='Chattanooga .NET User Group Presentation'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-9106291983742210772</id><published>2008-03-29T18:42:00.000-05:00</published><updated>2009-01-03T04:55:31.441-06:00</updated><title type='text'>Little Rock Tech Expo</title><content type='html'>Last Thursday I headed down to Little Rock, AR with &lt;a href="http://www.anvilsystems.com/Blog/tabid/114/Default.aspx"&gt;John Kellar &lt;/a&gt;to speak at their &lt;a href="http://techexpo.lrdnug.org/"&gt;Tech Expo 2008 &lt;/a&gt;conference. Terry and Larry who run the &lt;a href="http://www.lrdnug.org/"&gt;Little Rock .NET User Group &lt;/a&gt;did a good jump reviving the conference after a one year hiatus. Attendance was around 130 with 3 tracks in the morning and 2 tracks in the afternoon. The facility on the campus of University of Arkansas was great and the weather was perfect. I did two sessions, "Scrum in TFS" and "Zen and the Art of Customizing TFS". My Scrum in TFS presentation became more of a general session about adopting Scrum from the audience's questions. Other speakers included the fore mentioned John Kellar, &lt;a href="http://www.vinull.com/"&gt;Mike Neel&lt;/a&gt;, &lt;a href="http://morewally.com/cs/blogs/"&gt;Wally McClure&lt;/a&gt;, &lt;a href="http://weblogs.asp.net/dmckinstry/"&gt;Dave McKinstry&lt;/a&gt;, &lt;a href="http://telerikwatch.com/"&gt;Todd Anglin&lt;/a&gt;, &lt;a href="http://www.mysoftwarestartup.com/"&gt;Randy Walker&lt;/a&gt;, &lt;a href="http://www.netcave.org/"&gt;Alan Stevens&lt;/a&gt;, and Raymond Lewallen. I had some good discussion with Dave around TFS/VSTS and Scrum that gave me some good ideas for some other more focused sessions. All in all it was a good time and I hope to speak again next year.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-9106291983742210772?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/9106291983742210772/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=9106291983742210772' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/9106291983742210772'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/9106291983742210772'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/03/little-rock-tech-expo.html' title='Little Rock Tech Expo'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5932739438983110935</id><published>2008-03-22T21:17:00.000-05:00</published><updated>2009-01-03T04:55:31.450-06:00</updated><title type='text'>TFS/Scrum Resource Links</title><content type='html'>In order to decrease the size and length of my TFS/Scrum presentations I am removing the slides that list links to online resources. I am posting those links here and simply referring to them from a slide in the presentations now.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Scrum/Agile Links&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://scrumforteamsystem.com/cs"&gt;Scrum for Team System &lt;/a&gt;- One of the best TFS Project Templates for Scrum around. Created by Conchango in association with Ken Schwabber.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.controlchaos.com/"&gt;Control Chaos &lt;/a&gt;- A good website for all things Scrum. Lots of whitepapers, books, and other resources.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.scrumalliance.org/"&gt;Scrum Alliance &lt;/a&gt;- Another good website for Scrum with a more community feel.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.agilemanagement.net/Articles/Weblog/TeamFrustrationServer.html"&gt;Agile Management Blog &lt;/a&gt;- Aimed more at project manager types (or Scrum Masters), but has some good practical blog entries from David Anderson. This link is to his post about TFS and Agile processes.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=55A4BDE6-10A7-4C41-9938-F388C1ED15E9&amp;amp;displaylang=en"&gt;eScrum &lt;/a&gt;- Another TFS Project Template for Scrum.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Scrum/Agile Books&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.amazon.com/Integrating-Agile-Development-World-Programming/dp/1584503645/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1206240894&amp;amp;sr=8-1"&gt;"Integrating Agile Development in the Real World"&lt;/a&gt; by Peter Schuh - Good introduction to several agile methodologies (including Scrum).&lt;/li&gt;&lt;br /&gt;&lt;li&gt;"&lt;a href="http://www.amazon.com/Agile-Project-Management-Microsoft-Professional/dp/073561993X/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1206240949&amp;amp;sr=1-1"&gt;Agile Project Management with Scrum&lt;/a&gt;" by Ken Schwabber - The de facto book on Scrum by one of its creators.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;"&lt;a href="http://www.amazon.com/Enterprise-Scrum-Ken-Schwaber/dp/0735623376/ref=pd_sim_b_img_1"&gt;The Enterprise and Scrum&lt;/a&gt;" by Ken Schwabber - The companion for the book above that takes the Scrum ideas and applies the to large, enterprise level projects.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;"&lt;a href="http://www.amazon.com/User-Stories-Applied-Development-Addison-Wesley/dp/0321205685/ref=pd_sim_b_img_5"&gt;User Stories Applied: For Agile Software Development&lt;/a&gt;" by Mike Cohn - Good introduction to using User Stories to gather and document requirements.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Team Foundation Server Resources/Tools&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://msdn2.microsoft.com/en-us/teamsystem/aa718934.aspx"&gt;MSDN TFS Site &lt;/a&gt;- The official Microsoft site for Team Foundation Server.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://msdn2.microsoft.com/en-us/teamsystem/aa718351.aspx"&gt;TFS 2005 Power Tools &lt;/a&gt;- Tools for editing work item and process templates, check in policies, extended command line tools, build tasks. etc.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://msdn2.microsoft.com/en-us/tfs2008/bb980963.aspx"&gt;TFS 2008 Power Tools &lt;/a&gt;- Mostly the same tools for 2005 ported to 2008.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.codeplex.com/Project/ProjectDirectory.aspx?ProjectSearchText=team%20foundation"&gt;CodePlex &lt;/a&gt;- Tons of community created tools and guides for TFS including a migration tool, Subversion source control bridge, and more.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://www.personifydesign.com/default.aspx"&gt;Personify Design &lt;/a&gt;- Creators of TeamLook which adds TFS extensions into Outlook and TeamSpec which is similar to Rational's RequisitePro tool for maintaining links from Word documents to work items in TFS.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://msdn.microsoft.com/msdnmag/issues/07/04/TeamSystem/"&gt;TFS API MSDN Sample &lt;/a&gt;- Great sample project showing how to interact with the TFS API.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Team Foundation Server Blogs&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://blogs.msdn.com/buckh/"&gt;Buck Hodges &lt;/a&gt;- Lots of good information on TFS, third party tools, etc.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://blogs.msdn.com/bharry/"&gt;Brian Harry &lt;/a&gt;- Some overlap with Buck Hodges' blog, but he also includes lots of statistics on their own implementation of TFS internally.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;&lt;a href="http://blogs.msdn.com/narend/default.aspx"&gt;Naren Datha &lt;/a&gt;- Several blog posts on TFS customization.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;strong&gt;Team Foundation Server Books&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;"&lt;a href="http://www.amazon.com/Professional-Foundation-Server-Jean-Luc-David/dp/0471919306/ref=pd_bbs_sr_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1206241332&amp;amp;sr=8-1"&gt;Professional Team Foundation Server&lt;/a&gt;" from WROX - Good starter book that covers a wide range of topics.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;"&lt;a href="http://www.amazon.com/Development-Visual-Studio-Foundation-Server/dp/0735625719/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1206241382&amp;amp;sr=1-1"&gt;Team Development with Visual Studio Team Foundation Server&lt;/a&gt;" by Microsoft - General guide for implementing. Lots of good practical examples. You can download it for free from &lt;a href="http://www.codeplex.com/TFSGuide/Release/ProjectReleases.aspx?ReleaseId=6280"&gt;CodePlex&lt;/a&gt;.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-5932739438983110935?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5932739438983110935/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5932739438983110935' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5932739438983110935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5932739438983110935'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/03/tfsscrum-resource-links.html' title='TFS/Scrum Resource Links'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-5938732744415658871</id><published>2008-03-04T20:15:00.000-06:00</published><updated>2009-01-03T04:55:31.458-06:00</updated><title type='text'>Conchango Scrum for Team System 2008 Plug In Beta 2</title><content type='html'>I recently posted that &lt;a href="http://scrumforteamsystem.com/en/default.aspx"&gt;Conchango &lt;/a&gt;posted the beta for the second version of their scrum plug in for Team Foundation Server 2008. I have been using the new process template for my TFS/Scrum presentations and wanted to list a few of my favorite features:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Use of Iterations for designating Sprints&lt;/strong&gt;: Previously you entered a sprint number into Product Backlog Items (PBI) and Sprint Backlog Items (SBI) to designate what sprint they corresponded to. There was no real validation and it was a tenuous link at best. Now the TFS Iterations are used and it provides a more solid approach.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;User Stories in Product Backlog Items&lt;/strong&gt;: The PBI template now supports the User Story motif with a specific field for the user story text and another for the acceptance criteria. Not that you could not have done this before, it is now just built in.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Much Improved Project Portal&lt;/strong&gt;: The project portal is much cleaner than the previous version and I love the built in Wiki. It would be nice to have the ability to add a link directly to Wiki items, but you can do this with Hyperlink links if you really want to.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Bug Work Item&lt;/strong&gt;: We created our own "Bug" work item in the previous version. Having a built in item for this makes reporting much easier out of the box.&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;I have also enjoyed several of the improvements to TFS 2008 including:&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;&lt;strong&gt;Easier Build Type Creation&lt;/strong&gt;: A new wizard makes creating a build type much easier. Things you used to have to man handle the XML build script to accomplish are now simple options in the creation wizard.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Queued Builds&lt;/strong&gt;: I hated getting the pop up telling me another build was already in progress and having to sit and wait for it to finish.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Out of the box Continuous Integration (CI) support&lt;/strong&gt;: What used to be several steps that included touching event subscriptions, filters, and web services is now a few options on the build creation wizard.&lt;br /&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Links in Web Access&lt;/strong&gt;: There has never been a very good way to see the link relationships between work items, but now the views in the Web Access portal show a nice little plus icon so that you can drill down to related items. Very nice.&lt;br /&gt;&lt;/li&gt;&lt;/ul&gt;I am still in the honeymoon phase with these products and have not yet upgraded them in production, so I am sure there may be new issues lurking under the surface. So far I am pleased with the new features and upgrades.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-5938732744415658871?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/5938732744415658871/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=5938732744415658871' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5938732744415658871'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/5938732744415658871'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/03/conchango-scrum-for-team-system-2008.html' title='Conchango Scrum for Team System 2008 Plug In Beta 2'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-2410340177831581402</id><published>2008-03-01T20:37:00.000-06:00</published><updated>2009-01-03T04:55:31.471-06:00</updated><title type='text'>The Idea Backlog</title><content type='html'>While talking to some co-workers about Scrum, we discussed the initial part of the process: &lt;a href="http://scrumforteamsystem.com/processguidance/v2/Preparation/Preparation.aspx"&gt;Preparation&lt;/a&gt;. This part of the process is one of the less detailed overall, most likely because of the various ways companies have to initiate and validate a project. Most of us had come from more structured development shops where the project initiation process was fairly laborious and usually did not include anyone outside of management until the project was already a go and timelines/details basically written in stone. So the question was how could some of the Scrum/Agile philosophies be implemented to make this a "better" process (Better is always a relative term).&lt;br /&gt;&lt;br /&gt;Thinking about it later, I thought of how people have kept up what they call an "Idea Backlog" of things they think up but cannot immediately put the time into them to see them to fruition. I thought using TFS, Sharepoint, or some similar technology so that a company could create an Idea Backlog much like a Product Backlog to facilitate the submission, discussion, and initiation of project ideas.&lt;br /&gt;&lt;br /&gt;My thought was that ANYONE would be able to post an item to this Idea Backlog from the highest member of management to the most junior developer. These backlog items would have a little bit of structure to make sure initial submissions were at least minimally fleshed out, but then people would post comments in response to the submitted idea.&lt;br /&gt;&lt;br /&gt;So Employee A submits an idea that equipping the engineers that regularly inspect Company XYZ's Widgets in the field with a Tablet PC application would increase data accuracy and decrease time spent per inspection. Other employees would post comments, questions, etc. to help flesh out the idea such as: "What about a Tablet PC application would provide better accuracy and less entry time than a laptop or handheld?", "Does anyone know a formula for calculating the average cost per minute for an inspection currently and the average inspection time?"&lt;br /&gt;&lt;br /&gt;Now the discussion is open and available to everyone instead of siloed to management. Input from any source could provide great value and address areas of the idea that may have not been covered if it had been decided by only a few select people.&lt;br /&gt;&lt;br /&gt;Most companies want a bit more structured analysis when deciding to move forward with a project and they usually have some basic criteria and metrics they apply to a business case to judge how valuable it would be to an organization. For instance, the pencil pushers usually want to know what the Return On Investment (ROI) or Total Cost of Ownership (TCO) would be. On previous projects I have seen companies spend a good bit of time trying to calculate this up front and just like trying to capture all the requirements up front and predict strict timelines: it is rarely very accurate. But it is something to be addressed, so each Idea Backlog item can have an ROI (or TCO, etc.) metric applied to it by any employee. It could be as simple as a 1 to 5 rating: 1 being little ROI and 5 being substantial. Risks Analysis is another big thing I have seen companies dedicating effort to and this could be yet another metric to apply to an item in the Idea Backlog. There could be many more metrics, both standard ones for all ideas and then custom ones that are more specific to a particular idea.&lt;br /&gt;&lt;br /&gt;These metrics would follow a convention of the lowest rating being the least valuable and the highest rating being the most valuable to the company. A report could easily show what the employees of the company think about the value of the items in the backlog. Items could then be sorted by the metrics and you start to get a prioritized list of ideas much like a Product Backlog. A go decision for a project is still most likely going to be up to a select few, but now the evaluation of the idea is much more open and collaborative. When the go decision is made, postings and comments to the Idea Backlog item would also most likely give birth to Product Backlog items to get the project started in its first Sprint.&lt;br /&gt;&lt;br /&gt;I'd be interested to hear comments on this idea as I myself start to think more about it. As a big proponent of Team Foundation Server, I am going to try and implement something like what I have described above as a collection of custom work items and links. I will post more as I start to work on this.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-2410340177831581402?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/2410340177831581402/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=2410340177831581402' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2410340177831581402'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/2410340177831581402'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/03/idea-backlog.html' title='The Idea Backlog'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-7783076204292688158</id><published>2008-02-20T17:03:00.000-06:00</published><updated>2009-01-03T04:55:31.479-06:00</updated><title type='text'>Thanks Memphis!</title><content type='html'>Yesterday I drove the long 3+ hour drive to my old haunt Memphis, TN to give my "Implementing Scrum with Team Foundation Server" presentation to the Memphis .NET User Group. We had a decent crowd who were equally interested in both Scrum and TFS. I went long (Again!), but was able to get the bulk of the meat done and then rounded out the rest afterwards with a few of the members who stayed afterwards. Thanks to Colin and Adam for having me! The venue at the University of Memphis was great.&lt;br /&gt;&lt;br /&gt;Thanks again guys!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-7783076204292688158?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/7783076204292688158/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=7783076204292688158' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7783076204292688158'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/7783076204292688158'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/02/thanks-memphis.html' title='Thanks Memphis!'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-3707650241800871467</id><published>2008-02-07T21:04:00.000-06:00</published><updated>2009-01-03T04:55:31.487-06:00</updated><title type='text'>Management buy in is one of the keys to adopting Scrum</title><content type='html'>All last year I worked at a shop where we struggled to adopt the Scrum process. It was haphazardly implemented and most of management never really had any training or direction and did not buy into the process. They remained very entrenched in their old ways. This resulted in some major frustration and poor results which just made matters worse since everyone thought this was due to the process being flawed.&lt;br /&gt;&lt;br /&gt;While I am not an agile purist by any means, I do find value in Scrum in certain situations. It is hard to say if my last shop was ready for it.&lt;br /&gt;&lt;br /&gt;This year I am on a project with a new client who has also adopted Scrum. At first I was worried because they were almost polar opposite in that they had development iterations (Sprints), but did not do much else as prescribed by the Scrum process. Since they were basically outsourcing the development to my team of all contractors, I asked to implement a bit more structure to ensure that the client's expectations were met.&lt;br /&gt;&lt;br /&gt;We created our initial Product Backlog, started our Sprints with our Sprint Backlog and moved forward. By the second Sprint Planning Session the Product Backlog had been fairly refactored and with the current velocity it did not seem that all the backlog items they wished to have done by the 3rd Sprint were going to happen. I met with the CTO to talk about options and if capacity could be increased somehow. After all our options were discussed he was very understanding and did not press to throw bodies at the problem or modify the process to get more backlog items done.&lt;br /&gt;&lt;br /&gt;And during a meeting where we reviewed the Sprint Backlog items, someone observed that the total of the Sprint Backlog Items for the current Sprint did not add up to our theoretical capacity based on the Scrum Team. Before I could open my mouth, the CTO was explaining how the Sprint Backlog was constantly changing during the Sprint and that we gauged ourselves by the weight (story points) of Product Backlog items. I have to say I was floored. Here was a shop where the management truly got the ideals of the Scrum process and was totally on board.&lt;br /&gt;&lt;br /&gt;The experience has been very positive so far and I have been able to try more of the Scrum process nuances that we could never get off the ground at my previous company. It has given me some more insight into the potential qualities in a company that may (or may not) make it more conducive to adopting an Agile methodology like Scrum.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-3707650241800871467?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/3707650241800871467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=3707650241800871467' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3707650241800871467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3707650241800871467'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/02/management-buy-in-is-one-of-keys-to.html' title='Management buy in is one of the keys to adopting Scrum'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-9170976212818717581</id><published>2008-02-01T20:14:00.000-06:00</published><updated>2009-01-03T04:55:31.493-06:00</updated><title type='text'>Upcoming Gigs</title><content type='html'>Here are some upcoming presenting gigs I have scheduled. This is my new &lt;strong&gt;"Implementing Scrum and Team Foudnation Server: A Semi-Practical Guide"&lt;/strong&gt; presentation which has been going very well.&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;li&gt;February 19th at the &lt;a href="http://memphisdot.net/"&gt;Memphis .NET User Group&lt;/a&gt;&lt;/li&gt;&lt;li&gt;March 27th at the Little Rock &lt;a href="http://techexpo.lrdnug.org/"&gt;Tech Expo 2008&lt;/a&gt;&lt;/li&gt;&lt;li&gt;April  29th at the &lt;a href="http://www.etnug.org/"&gt;East Tennessee .NET User Group&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;If you have a group in within driving distance of Nashville, I'd love the opportunity to present for you. Post back to this blog entry if you are interested.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-9170976212818717581?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/9170976212818717581/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=9170976212818717581' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/9170976212818717581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/9170976212818717581'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/02/upcoming-gigs.html' title='Upcoming Gigs'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-1590066957059186564</id><published>2008-02-01T19:29:00.000-06:00</published><updated>2009-01-03T04:55:31.503-06:00</updated><title type='text'>Death by bullet points!</title><content type='html'>At a recent Microsoft get together, our local DE &lt;a href="http://www.joshholmes.com/"&gt;Josh Holmes&lt;/a&gt; gave us a book on creating better presentations (&lt;a href="http://www.amazon.com/Beyond-Bullet-Points-PowerPoint-Presentations/dp/0735620520/ref=pd_bbs_sr_2?ie=UTF8&amp;amp;s=books&amp;amp;qid=1201916336&amp;amp;sr=8-2"&gt;Beyond Bullet Points&lt;/a&gt;). After reading it I tried to adopt some its basic ideas around trying to tell a story and not using the standard bullet list approach to my presentations. I have to say I found it very hard to succinctly convey my ideas in a technical presentation without using bullet points at all. I found that my scripts became more essential, which was not bad necessarily, but it made the presentation as a stand along meaningless. So if I posted the presentation online without the notes, it provided little value.&lt;br /&gt;&lt;br /&gt;I started looking at presentations from other speakers I had enjoyed in the past to get some ideas. I found this &lt;a href="http://laribee.com/files/fundamental-ddd.pdf"&gt;presentation &lt;/a&gt;by &lt;a href="http://codebetter.com/blogs/david_laribee/"&gt;David Laribee &lt;/a&gt;which had no bullet points at all and was very stylized. While aesthetically pleasing, the presentation by itself held little value when you did not have David talking over it. I also found plenty of rote presentations with tons of bullet points with a few standard architecture diagrams sprinkled in for good measure. While those did have plenty of information contained in the actual presentation, I can see where sitting through them might have been pretty boring.&lt;br /&gt;&lt;br /&gt;I came away thinking there is a good middle ground where you can effectively display your information (and yes use bullet points) while not resorting to just reading from your slides and not actually presenting the material. I am currently revamping my Scrum and TFS presentation in this manner and trying it out at several user groups in the Tennessee area over the next few months.&lt;br /&gt;&lt;br /&gt;If you have links to good presentations done in this style, I would love for you to post them for me to take a look at.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-1590066957059186564?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/1590066957059186564/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=1590066957059186564' title='4 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1590066957059186564'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/1590066957059186564'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2008/02/death-by-bullet-points.html' title='Death by bullet points!'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-4739200106333664960</id><published>2007-12-17T20:45:00.000-06:00</published><updated>2009-01-03T04:55:31.509-06:00</updated><title type='text'>.NET User Group Xmas Party</title><content type='html'>So last Thursday we had our Christmas party for the &lt;a href="http://www.nashdotnet.org/"&gt;Nashville .NET User Group&lt;/a&gt;. We had about 25 people show up, mostly regulars and officers, but a few new faces too. The location of choice was the &lt;a href="http://www.theitalianmarket.net/"&gt;Italian Market &lt;/a&gt;which was awesome. They have a great little back room which was just about right for 20 to 25 people and a great spread of food. Pricing was great for what we got and I think it would be a great place for a summer get together especially with the bocce ball courts in the back.&lt;br /&gt;&lt;br /&gt;My wife attended and hung in there as long as she could with the geek speak, then elegantly excused herself. Later in the evening with only a few regulars in attendance, someone broke out the &lt;a href="http://en.wikipedia.org/wiki/Absinthe"&gt;Absinthe&lt;/a&gt; and Scott Walters and I broke out the guitars. And man can Scott play!&lt;br /&gt;&lt;br /&gt;All in all it was a great time and I thank everyone who attended.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-4739200106333664960?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/4739200106333664960/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=4739200106333664960' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4739200106333664960'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/4739200106333664960'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2007/12/net-user-group-xmas-party.html' title='.NET User Group Xmas Party'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-21327984.post-3334660854065273883</id><published>2007-12-15T19:27:00.000-06:00</published><updated>2009-01-03T04:55:31.517-06:00</updated><title type='text'>Team Foundation Server 2008 Tools and Plug Ins</title><content type='html'>&lt;a href="http://www.conchango.com/"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;Conchango&lt;/span&gt; &lt;/a&gt;decided to go ahead and release the &lt;a href="http://scrumforteamsystem.com/cs/forums/7/ShowForum.aspx"&gt;beta for the 2.0 release &lt;/a&gt;of their &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_1"&gt;TFS&lt;/span&gt; Scrum Project Template. This version works with &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_2"&gt;TFS&lt;/span&gt; 2008 and has many new features. Unfortunately my first attempt to install it failed, but&lt;em&gt; &lt;/em&gt;I think it because I tried it on the &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_3"&gt;TFS&lt;/span&gt; 2008 &lt;span class="blsp-spelling-error" id="SPELLING_ERROR_4"&gt;CTP&lt;/span&gt; virtual PC image.&lt;br /&gt;&lt;br /&gt;The beta for the &lt;a href="http://blogs.microsoft.co.il/blogs/tfsidekicks/archive/2007/11/29/msbuild-v2.aspx"&gt;&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_5"&gt;MSBuild&lt;/span&gt; Sidekick 2.0&lt;/a&gt; has also been released. It has many more visual tools to help you create custom builds scripts.&lt;br /&gt;&lt;br /&gt;Hopefully I will more info on these as I use them over the next few weeks.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/21327984-3334660854065273883?l=tommynorman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://tommynorman.blogspot.com/feeds/3334660854065273883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=21327984&amp;postID=3334660854065273883' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3334660854065273883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/21327984/posts/default/3334660854065273883'/><link rel='alternate' type='text/html' href='http://tommynorman.blogspot.com/2007/12/team-foundation-server-2008-tools-and.html' title='Team Foundation Server 2008 Tools and Plug Ins'/><author><name>Tommy Norman</name><uri>http://www.blogger.com/profile/04525034029168813147</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
