Tuesday, April 27, 2010

The April RTM version of the TFS2010 Power tools are released.  Find a detailed description here: http://blogs.msdn.com/bharry/archive/2010/04/26/tfs-2010-power-tools-have-released.aspx

TFS
4/27/2010 7:22:58 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, April 14, 2010

You want to know everything about compatibility with TFS2010and all the Team Explorer versions, well read this article: http://blogs.msdn.com/team_foundation/pages/compat-matrix-for-2010-rtm-team-foundation-server-to-team-explorer-2008-and-2005.aspx

TFS
4/14/2010 6:44:21 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Tuesday, March 23, 2010

MVP, Jeff Levinson, has created a nice Work item visualization tool (first version).  This tool turns work item relationschip information into some nice DGML graphs.  These graphs can be viewed  in the new architecture visualization tools.

You can find this great tool at codeplex: http://visualization.codeplex.com/. So go there, download it, use it, etst it and give feedback :-) to improve the tool.

3/23/2010 8:34:28 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Friday, March 05, 2010

Yesterday Microsoft announced the beta release of Microsoft Visual Studio Team Explorer 2010 codename “Eaglestone”.  This is an eclipse plug from Teamprise (acquired in November 2009).  Read the whole article on Brian harry's blog : http://blogs.msdn.com/bharry/archive/2010/03/04/microsoft-visual-studio-team-explorer-2010.aspx

TFS
3/5/2010 8:31:03 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Friday, January 22, 2010

After his last great post about the difference between CI and Build Automation tools, Roy Osherove posted the next part about this.  Now he gives us 18 questions to ask when choosing CI and Automated Build tools.  It's a nice list of questions, so read this article http://weblogs.asp.net/rosherove/archive/2010/01/21/18-questions-to-ask-yourself-when-choosing-continuous-integration-and-build-automation-tools.aspx and the next time consider using this list when you have to make a choice.

1/22/2010 8:36:33 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Friday, January 15, 2010

Roy Osherove has posted a nice article about the difference between Continuous Integration Tools and Automated Build Tools.  Read it here: http://weblogs.asp.net/rosherove/archive/2010/01/14/the-difference-between-continuous-integration-tools-and-automated-build-tools.aspx

1/15/2010 8:30:51 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Monday, January 04, 2010

When you get this error using TSWA, the solution is to recycle the Apppool of TSWA.
Go to your TFS Application tier and start IIS to recycle the pool.

But here at work, this error pops up, a few times each month.  So for a final solution read the TSWA Scalability Limits White paper: http://www.microsoft.com/downloads/details.aspx?FamilyID=ee378d7b-45c3-4690-bd06-a060cfa43b06&displaylang=en

All requirements described in this document, where OK for us.  But still we had the problem.  So we took the third solution in this document and every night we run a job that recycles the App_pool.  Now out problem is solved.

TFS
1/4/2010 12:08:16 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Friday, December 18, 2009

A quick guide about one of the Free Telerik TFS tools. So here we go.

After my last blog about these two tools, I had time to test both tools.  In this post, I put my attention to the dashboard as several teams here want to have something like this.

In my earlier post, I stated that I couldn't get it up.  Txs to Joel Poiron, I saw it was because my system couldn't copy the builderror.wav file into the Telerik dashboard folder in MyDocuments.

After some investigation at my site, I became aware that there was a policy which doesn’t allow us to copy music files on this folder (it's a network folder).

So after talking to security, my account was disabled for this policy and I was able to copy music files.  This problem, solved I run again the dashboard and there it was running smoothly.

And it works very fine.  I just took the default settings of widgets and added 3 projects.  For testing purposes, I reduced the recycle time to 30 seconds instead of 300.

See here some screenshots.

 

Project using the Conchango Scrum template 2.2, using TFS full blown and all the widgets.


Project using the Conchango Scrum template 2.2, using not everything in TFS and all the widgets.


Project using the Conchango Scrum template 1.2, using not everything in TFS and all the widgets.

As you can see, even with the last project, the dashboard still runs, but some widgets can't be used.

So a little about how to setup and configure the dashboard.
You can start up the dashboard din two ways:

  1. Directly by clicking the Telerik TFS Project Dashboard
  2. From within the Work Item Manager

Just one reminder, if you have the dashboard already running, you will get a message when starting it the second time to close the first session.

We will focus now only on the first method.
When the dashboard has started, you will see that there are no projects to display.

Just press F2 to go to the configuration screen.



You will see the configuration screen.  On the first tab you could change some basic settings.  Click on the projects tab at the left side.

Here you can add and configure the projects you want to see.  So click "Add project".  You will get the standard TFS project selector window.  Choose the TFS server and the project.
Next you will get a question where to store the User settings.  this can be on your TFS server in the selected project or locally on the computer.  You can always change this later.

Make your selection.  Now that the project is added, you need to change the configuration to work with your TFS.  First see if the default basic settings are good for you, otherwise just change them.  Next press configure to configure the widgets to use, the TFS datawarehouse connection string,...

When the config screen is open, you see that you need to setup the connection string first.  But you also have tabs for the images.  Opening this will give you the list of TFS users.  Here you can add for each user a nice picture :-).  Also there are tabs for every widget that can be used in the dashboard.  I'm not going into detail for the widgets.  Just see and you will see how easy it is to configure them.  or you can leave them with the default values.

Press save to store the info.  Next you can add another project or press save here and view your beautiful TFS project dashboard.

For the moment we already have 2 teams (with a total of 8 projects) who are interested in this dashboard after seeing my POC.  Instead of a 19" monitor like I have, we will supply them a nice 30" monitor....

Some (personnel) thoughts about it:

  1. You can't change the path where to store your settings,...  It's always in MyDocuments.  So when you have like us a policy that you can't store music files on it, it won't work, because it will copy one .wav file.  I hope in the next version you can choose your storage path.
  2. The startup is slow.  It took several minutes to start up.
  3. Best is to use a dedicated PC.  Because starting up another application will result in performance loss of the Dashboard.
  4. Mostly the memory and processor usage is very good.  But I had a few times where the process performance went up to 70% and the memory usage up to 1.6 GB.  When this is the case, you better kill the process, because pressing f.e. F2 will result in waiting for more than 5 minutes and nothing more than hanging of the application happened.
  5. It's free and very good.  Even the support is great.
  6. It's beta for the moment, keep that in mind.
  7. Two system requirements are needed:
    • VS 2008 Team Explorer
    • .Net 3.5 SP1 runtime

I'm eager to see the first official release.

ALM | TFS
12/18/2009 9:59:47 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, December 02, 2009

A few new release are out now.

  1. Powertools 2010 are released.  It's the first public release with status pre-release. Download here http://visualstudiogallery.msdn.microsoft.com/en-us/0e69a28f-020c-488b-80b3-f4c89a20621d
  2. The MSSCCI provider beta 2 can be downloaded here: http://visualstudiogallery.msdn.microsoft.com/en-us/f959ea32-5ac3-424a-a709-5001a158ebe8

If you find bugs, you can report them to Microsoft using this link: https://connect.microsoft.com/VisualStudio.  Set it to TFS2010 and note somewhere that it's for the powertools.

Share your experience or post your questions on the forum: http://social.msdn.microsoft.com/Forums/en-US/tfspowertools/threads

An other release is the new conchango scrum template version 3 beta2.  This template is compatible with TFS2010 beta 2.  All info and download links can be found here: http://scrumforteamsystem.com/cs/forums/4554/ShowPost.aspx and here: http://consultingblogs.emc.com/crispinparker/default.aspx

TFS
12/2/2009 8:21:39 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Thursday, November 26, 2009

Ghost projects or Deleted team projects that are still visible in Source Control Explorer.  We had this problem at our work.  Thanks to Pieter Gheysens, we now have solved this issue.  Find the solution on his blog here: http://intovsts.net/2009/11/25/deleted-team-projects-still-visible-in-source-control-explorer/

TFS
11/26/2009 7:55:25 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, November 25, 2009

If you want to export the list of known issues to Excel, you can only export the first 100.  This is a setting done by MS.  You can change this on your TFS server.  Go to "<Disk>:\Program Files\Microsoft Visual Studio 2008 Team System Web Access\Web" and open here the web.config file.  Look for the setting "<maxWorkitemsInReportList count="100"/>".  here you cange the value 100 to another value.

But one remark.  If you set this number too high, you will encounter some performance issues.

TFS
11/25/2009 9:08:56 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Thursday, November 19, 2009

Brian Harry wrote a nice blog post about the features of the TFS2010 Powertools.  Read it here: http://blogs.msdn.com/bharry/archive/2009/11/18/tfs-2010-power-tools-coming-soon.aspx

TFS
11/19/2009 8:34:26 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Thursday, October 22, 2009

And more release news:

Visual Studio 2010, .Net framework 4.0,n Team Foundation Server 2010 are now in Beta 2.  This beta is open for public.  So go here and download it, install it and enjoy it: http://go.microsoft.com/fwlink/?LinkID=151797.

10/22/2009 8:08:51 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Monday, October 05, 2009

When playing around with custom Work Item Types, there will be a moment you want to delete this item. Standard this isn't possible.  But when you install the Microsoft Power Tools for TFS, you have a program tfpt.

With this program you could use the command destroywitd, which will delete your WIT. Use it this way:

tfpt destroywitd /server:<tfsservername> /project:<projectname> /workitemtype:<witdname>

The WIT will now be physically removed from the server and can't be resrtored.

TFS
10/5/2009 10:55:56 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Friday, September 18, 2009

When you want to customize a Work item in TFS2008, you will see that there’s not so many information to find about it.  In common it’s easy, especially when you use the Process Editor.  But I can say, when doing a lot of changes, you come to several problems.  I will try to write down the problems I had together with a solution or work around.  Also I will write down some strange effects I came across.  So let’s start.

First, it’s a lot easier to install the TFS Power tools (October 2008 is the latest release for the moment).  This will give you the Process Template Editor, which is a lot easier to customize your work items than the pure XML.  But it’s the first release and still not giving the user experience you have in VS. For example you don’t have intellisense.

Next, the validation is done when you save your item.  This is OK, only not all error messages are clear what the meaning is.

A little bit about the import in a project.  When choosing the import WIT menu, be sure to follow this order of steps:

  1. Locate the WI XML file
  2. Choose the project in which you want to import

If you don’t follow this order, the project selection is gone and the WI is imported in all your projects, which is something you don’t want during the testing phase.  Also after doing an import, restart your VS.  Why? Well, not always is the import visible if you don’t close your VS.  And if it’s visible, it could work or not.  Sometimes, you even got errors about object references and more.
The most irritating part was that while I was busy with the customization, the system got slower and slower (even when saving in between).  At a certain moment you even got an error.

Now that we have described some problems/solutions, we will go a little deeper into the customization itself.

First you need to define your fields.  Defining them means

  1. Give them a fieldname
  2. Select what type the field would be
  3. Choose a reference name.

This is easy, but be sure that when you create a new field you are sure about the type and reference name.  As when you want to change this later and the WI is already installed you can’t do this anymore.  You will get an error that there’s already a field of with a different type/reference name.

For the reference name, you could use your own name, but it always contain at least 1 period.  You could also use standard TFS Reference names like System.Title, Microsoft.VSTS.Common.ResolvedBy,…  The problem is that I haven’t found anywhere some documentation about all the internal defined reference names.  If you want to add or maintain existing states, you don’t have to add your one state field.  Mostly there will be a state field already defined, which gets the values out of the workflow.

After you have defined all your fields, you can put them on screen.  This is done in the layout tab.  When you’re expecting a nice form designer I have to disappoint you.  It’s an old fashion form designer.  Through a tree you have to add groups and columns in where you can add your fields.  But when adding a column don’t forget to set the width of this column even when it’s 100%, otherwise you got an error during the validation.

You can add rules to a field.  Rules like required, default, even a when statement can be used.  One of the rules I used, and which give a strange effect, is the empty rule.  I used this rule together with the whennot rule:

When system.state is not in state resolved, empty the field.

The field is empty, but with the site effect that the field is also read-only.  The moment the state is changed into resolved, the field becomes editable.
When adding fields, you think that everywhere where you need to select a field, you can use the field name.  yes?  Well none of this is true.  When you need to select a field for example in a rule or when putting it on the screen, you need to use the reference name.  And here is the problem.  The drop downs are mostly too small.  So you see for example x times “Microsoft.VSTS.” and not knowing which the field you need is.

   
Bad dropdown               Good dropdown

Overall, I’m happy with the process editor.  Especially when doing a lot of customization. It’s better than the pure XML editing.  But the tool can have a lot of improvements.  Haven’t checked for TFS2010, but I hope that it works a little bit more user friendly.

We will do some more customization in the future.  I will blog about them specific the moment we start with it.

TFS
9/18/2009 1:09:03 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Friday, September 11, 2009

Telerik has just released two TFS tools : TFS Work item Manager and TFS Project Dashboard.  And the best part is : They are FREE.  yes you read it correctly FREE.  Inf act Telerik released them, but it is Imaginet Resources who build tehm.

The tools are fully build using Telerik's RadControls for WPF, which should give a great user experience, and it is.

The version now released is still in beta, so you still could encounter a few bugs.  But they have a great forum, and looking through the forum posts they do a great job with replying to the problems.

I already did a quick test and it looks good.  Going to deep dive in it the next couple of days/weeks.  Especially I want to see if it's better than the Episerver dashboard we are using for the moment.  Also I will hceck it against the Conchango Dashboard, because the version we have in our company of teh Conchango Dashboard is very slow (They have a newer version so i will check that also).

Just encountered 2 problems for the moment:

  1. Starting up the taskboard from within the Work Item Manager works, but not the taskboard settings sometimes gives an error on opening.
  2. Didn't manage to startup the project dashboard.  It gives me a black screen.

Find all info here : http://www.telerik.com/products/tfsmanager-and-tfsdashboard.aspx

A screenshot

TFS | WPF
9/11/2009 8:20:29 AM (Romance Standard Time, UTC+01:00)  #    Comments [2]  | 
 Friday, August 28, 2009

yesterday evening, we upgraded our TFS Server with the Conchango Scrum template 2.2.  For testing we created a testproject.  Afterwards when we want to delete the project we got following error:

TF30063: You are not authorized to access <tfsserver>

As I'm in the TFS Admin group I thought this would be no problem.  But it is.  And the problem is at the level of the Sharepoint Project Portal.  I was not defined in site collection administration.  It seems that the Farm admins supports AD groups, while the Site collection administrators doesn't.

So the solution is easy.

  1. Go to the team project portal
  2. Click on site actions and choose Site settings
  3. Click on Site collection administrators
  4. Add your account

Now, you can delete your project.

If you want to know more, read more on this technet article.

TFS
8/28/2009 9:01:33 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, July 15, 2009

Last week, Microsoft released Silverlight 3 and Expression Blend 3.  Now, the Expression Blend users can integrate their work in TFS Version Control.

Read everything in this post of Ed Hintz: http://blogs.msdn.com/edhintz/archive/2009/07/13/tfs-integration-a-top-10-new-feature-of-expression-blend-3.aspx.

As you will read in the post, TFS2008 can also be used, buyt you need to install a patch.

TFS
7/15/2009 7:14:03 AM (Romance Standard Time, UTC+01:00)  #    Comments [1]  | 
 Thursday, July 09, 2009

We had some problems.  It seems that nobody knows what the data-tier server for TFS was.  Well it's easy to find out.

Go the your TFS application server and start Explorer.  Browse to "X:\Program Files\Microsoft Visual Studio 2008 Team Foundation Server\Web Services\Services" where X is your installation HD.  Hier you find the web.config.

Open the web.config and you will see your connectionstring to the TFS instance of your data-tier.

TFS
7/9/2009 11:11:28 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Tuesday, June 23, 2009

For the moment we use Conchango's Scrum template v2.1.  We have some older TFS Team Projects created with an older version of the template, which isn't availlable anymore on the server.  Now we want to know in what version these team projects are created. 

You can get the info with a certain report, namely the version report.

This report will give you the report version and depending on the version info about the process time.  As you can see in the next picture.

The report version is the same as the Template version.

Scrum | TFS
6/23/2009 3:20:40 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Monday, June 22, 2009

Maybe you haven't seen this error before, but if you have, this was when trying to create a work item. 

There are 2 solutions.  I prefer the second one.

Solution 1:
This solution can be found at the connect site of Microsoft and is a temporary workaround.  You can read all of it here: http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=356083

Solution 2:
In my opinion this is the best (and easiest) solution.  Mostly you got this error because you have installed Team Explorer after installing VS2008 SP1.  So what you can do is re-installing VS2008 SP1 and the problem should be resolved.

If you do a clean install, be sure to follow this order of installation to avoid problems:

1. Visual Studio 2008
2. Team Explorer
3. Visual Studio 2008 SP1

On some sites you will see that before installing SP1, you also need to install the TFS 2008 October Power tools, but I didn't encounter any problem when I install them after installing SP1.  If you want to be sure then install the power tools before SP1.

TFS
6/22/2009 9:26:05 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, June 17, 2009

By default the data warehouse runs every hour.  Normally during your work this should be enough.  But there are moments you need the updated information directly.  To solve this you could force the data warehouse to update before the hour delay time is finished.

 

There are 2 ways of forcing:

 

  1. By using the webservice locally on the TFS server.
  2. By using SQL Management studio.

 

Using the webservice

  1. Logon to the TFS server.
  2. Open your browser
  3. Browse to http://localhost:8080/Warehouse/v1.0/WarehouseController.asmx
  4. Select the “Run” method 

The problem here is that you don’t have any identication when the job is done.  Except that you could check with “GetWarehouseStatus”.  If the result says it’s idle, then the job is finished.

 

Using the SQL Management Studio

  1. Run the SQL Management Studio
  2. Change the type to “Analysis Services”
  3. Logon
  4. In the Database node, look for the TFSWarehouse database
  5. Right click on this database
  6. Choose “Process” from the popup menu and follow the instructions in the popup windows

Using this method, you see the progress from this job.

TFS
6/17/2009 12:38:45 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 

Always wonder how you could debug your custom Work items controls?  You know it's not easy.  Well now there are some guidelines online.  William Bartholomew has posted these guidelines on his blog: http://blogs.teamsystemnotes.com/2009/06/17/easily-debugging-custom-work-item-controls/

TFS
6/17/2009 7:18:30 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Thursday, June 11, 2009

After two years, the Microsoft Scrum template for TFS is maintained.  You can read all info on Brian Harry's blog : http://blogs.msdn.com/bharry/archive/2009/06/10/the-future-of-escrum.aspx

Agile | Scrum | TFS
6/11/2009 8:19:24 AM (Romance Standard Time, UTC+01:00)  #    Comments [1]  | 
 Friday, May 29, 2009

When you have queued a build and at the end you got following error :

TF214007: No build was found with the URI vstfs:///Build/Build/<Build Number>. Either the URI does not exist, or <domain\user> does not have permission to access it.

This error doesn't tell you a lot.  During the build, you can open the build window

Sometimes the link to the log file is availlable, but not always.  When it's availlable and you click on it to open, you got the message that the file isn't found.  You will also see that no files are copied to the droplocation, but everything (including the log file) is availlable in the build directory.

You will also see that the Build Definition isn't availlable. You can open it during the build, but that's all.

Mostly this happens when a build partially succeeded?

So be sure to check that all the permissions are set correctly (tfsservice account needs write permissions).  If this is OK, you also could check the retention policies.  Mostly you will see that the retention for Partly succeeded builds is set to "Keep none". In this case as soon as the build is finished and patially succeeded, everything will be thrown away.  And this even before the copy to the droplocation is done.

TFS
5/29/2009 7:50:51 AM (Romance Standard Time, UTC+01:00)  #    Comments [1]  | 
 Monday, May 25, 2009

If your are looking for the Scrum template of Conchango, well read their announcement about the template : http://blogs.conchango.com/stuartpreston/archive/2009/05/19/scrum-for-team-system-v3-0-plans.aspx

Agile | Scrum | TFS
5/25/2009 7:43:12 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, May 20, 2009

TSWA was always available as separte toolkit.  Since VSTS 2010, TSWA is installed by default as a part of TFS.  You can connect to it by adding "/web" at the end of the TFS URL.  So you got following URL:

   http://<your servername>:8080/tfs/web

Be aware, TSWA is always installed on the application tier.

TFS | VSTS
5/20/2009 7:38:42 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Tuesday, May 19, 2009

After a long wait, it's announced by Soma Somasegar on his blog.

Together with framework 4.0 you can download it from the MSDN subscriber site.  And you can give your feedback.

More info on the product page.

Some important information about Team Explorer 2010 beta can be found here.

.Net 4.0 | TFS | VSTS
5/19/2009 7:01:48 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, May 13, 2009

Pieter Gheysens has posted his slides of the ALM Roadshow in Gent.  Find them here : http://intovsts.net/2009/05/12/slides-of-alm-roadshow/

TFS | VSTS | ALM
5/13/2009 7:11:07 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Thursday, May 07, 2009

In my new job, one of my functions is supporting Team Foundation Server for the development teams.  One of the first questions I have was a team that wants to have the Build server automatically copies the binaries from a build to their development server. 

First we must say that this task only can be done when the build is successful.

So I added following pieces of code to their build script before the SolutionToBuild part:
First I made a new property under the propertygroup node which contains the path to their destination server

<DestFolder><Put here your destination folder></DestFolder>

Next I use the AfterDropBuild, as this event is only fired when the build is succesfull.  So I override the AfterDropBuild target:

<Target Name="AfterDropBuild">
   <
Message Text="Copy to ontwikkel started!"/>
   <
CreateItem Include="$(BinariesRoot)\**\*.*" >
      <
Output ItemName="FilesToCopy" TaskParameter="Include" />
   </
CreateItem>
   <
Copy SourceFiles="@(FilesToCopy)"
            
DestinationFiles="@(FilesToCopy ->'$(DestFolder)\%(RecursiveDir)%(Filename)%(Extension)')" ContinueOnError="true" />
   <
Message Text="Copy to ontwikkel done!"/>
</
Target>

TFS
5/7/2009 12:58:47 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, January 14, 2009

If you write programs against TFS, well this is something handy for you then.  Thanks to Neno Loje you can now save time by using the TFS Utilities Template for VS2008.

Download the template here : http://msmvps.com/cfs-file.ashx/__key/CommunityServer.Blogs.Components.WeblogFiles/vstsblog/TfsUtility_5F00_58E29B12.zip

Read more info here : http://msmvps.com/blogs/vstsblog/archive/2009/01/14/download-visual-studio-2008-project-template-for-tfs-utilities.aspx

1/14/2009 11:48:40 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, January 07, 2009

The program manager of the TFS team has created a new TFS guide which is now released.

It's called "Troubleshooting Installation of Team Foundation Server Guide".

This guide is composed from all the problems reported by customers during installation or configuration of a TFS server.  You will find recommendations on how to avoid or eliminate them.  So be sure to check this first when having troubles :-).

1/7/2009 9:10:11 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Tuesday, January 06, 2009

During my Christmas holiday version 2 of the TFS Branching guidelines are released.

The new package contains :

  • TFS Branching Guide - Main 2.0
  • TFS Branching Guide - Scenarios 2.0
  • TFS branching Guide - Q&A 2.0
  • TFS branching Guide - Drawings 2.0
  • TFS branching Guide - Labs 2.0

You can download everything here.

If you want to read the previous version, go here.

1/6/2009 8:48:59 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Tuesday, November 18, 2008

A few months ago several MVP's joined together in a new community project on Codeplex.  This project is called TSWA Community Translation Project.

The purpose of this project is to give the community some additional languages for TSWA above the 9 that already ships with the product.

You can read the full story here : http://blogs.infosupport.com/marcelv/archive/2008/11/17/First-release-of-Team-System-Web-Access-Translations-now-available_2100_.aspx

11/18/2008 9:58:34 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 

Already more than a week old, but due Holiday now I'm able to post it.

The new version of the TFS Power Tools is released.  After a short delay to some issues mentioned by the TFS MVP's the october release is released in November :-).

You can download this version here : http://www.microsoft.com/downloads/details.aspx?FamilyId=FBD14EEA-781F-45A1-8C46-9F6BA2F68BF0&displaylang=en

You want to know more about this release read the preview on Brian Harry's blog : http://blogs.msdn.com/bharry/archive/2008/10/01/preview-of-the-next-tfs-power-tools-release.aspx.

Brian Harry also posted about some common issues/questions about this release.  You can read it here : http://blogs.msdn.com/bharry/archive/2008/11/10/common-oct-08-tfs-power-tools-questions.aspx

11/18/2008 9:53:43 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Tuesday, October 07, 2008

Together with my colleague Bart Wullems I wrote an article about eScrum in Team Foundation Server.  This article is published in the Dutch .Net Magazine.  This magazine is from Microsoft Netherlands for the Netherlands and Belgium Microsoft Developers.

This is the link directly to our article : http://download.microsoft.com/download/1/3/0/130ccf47-be89-48ee-829d-3a6568befbaa/114602.pdf (It's in Dutch)

You can read the magazine online here : http://msdn.microsoft.com/nl-nl/cc998678.aspx.

Common | Personal | Scrum | TFS
10/7/2008 8:24:22 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, September 17, 2008

I hear you thinking, another Team System user group.  Yes, but this one is special.  Its called TSUG-VE which means Team System User Group - Virtual Edition.

This user group lives on the Microsoft Island of Second Life.  So everyone in the world could join this group.  This is the link to the website : http://www.tsug-ve.com/.

If you join, please read the rules.

TFS
9/17/2008 8:51:59 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Monday, September 01, 2008

After all the SP releases, Microsoft also now released the SP1 for Team System Web Access.

Download it here : http://www.microsoft.com/downloads/details.aspx?FamilyId=3ECD00BA-972B-4120-A8D5-3D38311893DE

TFS
9/1/2008 7:50:10 AM (Romance Standard Time, UTC+01:00)  #    Comments [2]  | 
 Tuesday, July 22, 2008

If you have installed Team explorer 2005 and afterwards installed Team Explorer 2008, there's a bug when opening Work items in Excel.  You got following error

TF80070 Team Foundation encountered an error while performing the operation. It is recommended that you save your work and restart the application.

There's a hotfix available for this : KB946075. Unfortunately you can't download this fix, unless you have Microsoft support calls available in your organization.

But luckily there's a work around for this.  You can use Team Explorer 2005 to connect to your TFS 2008 and open from within this tool your excel.  I know it's a work around, but till you can get your hands on the hotfix, this should help you.

TFS
7/22/2008 12:30:39 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Thursday, July 17, 2008

Today the July version of the TFS Power Tools is released.  You can download them here : http://www.microsoft.com/downloads/details.aspx?FamilyID=00803636-1d16-4df1-8a3d-ef1ad4f4bbab&displaylang=en

Read more about them in the preview of Brian Harry.

Two other updates are also coming shortly:

  • eScrum for TFS2008
  • Update of Team Web Access and SCOM management
TFS
7/17/2008 8:10:36 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, July 09, 2008

Since the release of the March 2008 TFS Power tools, it is possible to write scripts to automate the creation of new Team Projects.  So this is a little walk through on how to use this feature.

Two important remarks:

  • You need to have Visual Studio 2008 Service Pack 1 installed.  But as there's no Service Pack 1 for the moment, you could use the beta of it.  Download it here.
  • If you have, like me a test VPC with and the server and the client, you need first install the Visual Studio 2008 Service Pack 1 and then also the Team Foundation Server Service Pack 1.  You can download the TFS SP1 here.

The command you have to use is this : tfpt createteamproject /validate /server:tfsservername [/teamproject:teamprojectname] [sourcecontrol:Branch:[branchpath]] [/processtemplate:[templatename]] or you could use a settingsfile and the command would look like this tfpt createteamproject /validate /settingsfile:filespec. Using the settingsfile is a lot easier.

A bit about the parameters :

/validate Validate all the settings, no project will be created.  If you leave this from the command, your project will be created.
/verbose Specifies that team project creation log information is to be printed to the console.
/log Specifies that team project creation log is to be written to a specific folder
logfilespec Specifies the folder where the team project creation log file is to be stored.
/server Specifies that a TFS server is used
tfsservername Specifies the name of the TFS server
/teamproject Specifies the Team Project name
teamprojectname Specifies that the source control is used
/sourcecontrol    Specifies the name of the team project
New Specifies that the source control of the team project creates a new path
None    Specifies that the source control is not enabled when creating the team project.
Branch Specifies that the source control of the team project branches from an existing path
/processtemplate    Specifies that a process template name is used.
templatename    Specifies the name of the process template.
/settingsfile Specifies that a team project creation file is used
filespec Specifies the file containing team project creation settings

  OK, let's make a little example now.  The example I will show make use of a setting file.  Let's start with the XML. This XML file contains all our settings for our project.

 1: <?xml version="1.0" encoding="utf-8"?> 
 2: <Project xmlns="ProjectCreationSettingsFileSchema.xsd"> 
 3:  
 4: <TFSName>win2k3</TFSName> 
 5:  
 6: <LogFolder> 
 7: c:\RemoteTFSProjectStart
 8: </LogFolder> 
 9:  
 10: <ProjectName> 
 11: My First Auto project
 12: </ProjectName> 
 13: <ProjectSiteTitle> 
 14: <!-- default to project name if not specified --> 
 15: My First Auto project
 16: </ProjectSiteTitle> 
 17: <ProjectSiteDescription> 
 18: <!-- default to empty string if not specified --> 
 19: This is my first attemp to automaticly create Team Projects
 20: </ProjectSiteDescription> 
 21: <SccCreateType> 
 22: <!-- none | new | branch --> 
 23: New
 24: </SccCreateType> 
 25: <SccBranchFromPath> 
 26: <!-- string.Empty for none and new; supplied for branch --> 
 27: string.empty
 28: </SccBranchFromPath> 
 29: <ProcessTemplateName> 
 30: MSF for Agile Software Development - v4.2
 31: </ProcessTemplateName> 
 32: </Project>

So this is pretty easy.  Next step is to run the createteamproject command :

  1. Start the command prompt
  2. Go to C:\Program Files\Microsoft Team Foundation Server 2008 Power Tools
  3. Usage: tfpt createteamproject /settingsfile:<path to >AutoCreate1.xml (be sure that you put the path to the settingsfile with it)
  4. If alle settings are correct your team project will be created.

Three things are missing:

  1. Area's
  2. If necessary creating of new TFS security groups
  3. Adding your users to the correct groups

But all three items can also be in the automated process by calling a service afterwards.  This service will can the TFS API's to do these jobs.

Why would you use this?

Well in our company we are busy with creating an Infopath form, where project leaders can request a new team project.  After they submit the form, one of the three TFS administrators approve this request and then a workflow will start to automatically create the team project and put the security correct.

TFS
7/9/2008 8:41:10 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 

The July version of the TFS power tools are coming.  It's a small release this time.  But for me the most important change is the new UI for subscribing to TFS alerts.  After my basic version, I think I will use this one, instead of improving mine.

More info and a few screen shots can be found on Brian Harry's blog.

TFS
7/9/2008 8:20:15 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Thursday, June 26, 2008

Why would you do this? It's a very drastic move.  So before doing this, please consider if you have other options.  A few reasons why :

  1. There's no UI available, so you have to do this through the command-line tool using "TfsDeleteProject".
  2. It only deletes
    • The references to the project
    • The SharePoint portal site
    • Reporting Services site
  3. It will not delete
    • The data warehouse info.  And don't try to delete the info in SQL directly.  As the data schema and the relationships are very complex, so in most of the times, you will corrupt your database.

As we know all this above we have also one important conclusion :

After you have deleted the Team Project, you can't add anymore a new Team Project with the same name.

Now we know all this above and let's say we have considered some other options.  Still the result is OK, we want to delete our team project.  Here's how you do this :

  1. Be sure that you don't have any assets open
  2. Goto to C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\
  3. Here you will find the command "tfsDeleteProject.exe"
  4. Usage: TfsDeleteProject [/q] [/force] </server:<server name>> <team project name>
    /q : Silent installation.  No prompt
    /force : If data can't be delete, still continue
    /server<server name> : your TFS server
    <Team project name> : Name of the Team Project to delete.  If there are spaces in the name use quotes.
  5. Run the command.  You will be prompted if you are sure that you want to do this irrecoverable operation.  Just answer Yes.
    deletingteamproject 
  6. At the end you're project is deleted.

One remark : You can recover a deleted team project, but you have to restore a backup of the database.

TFS
6/26/2008 4:11:39 PM (Romance Standard Time, UTC+01:00)  #    Comments [1]  | 
 Monday, June 16, 2008

In a previous post I told about the tool for subscribing to the override policy event.  With this tool, there's one problem.  If you don't remember your subscription ID anymore, you can't unsubscribe from this event.

So I've created a first version of my new tool "Managing TFS Subscriptions".  It's a little bit quick and dirty written tool, but it does it's job.  I'm planning to rewrite it better.  At for this moment there are two limitations :

  1. You can't edit an existing subscription
  2. When adding a new subscription and you need to add extra parameters, there's no build tool.  So you have to write you're own expression here.  There's an example filled in for the override policy.

How does this tool work?

When you start the tool, you will ask for the TFS server.  I used the same principle as the Team Explorer here, but without selecting a project. You can do this by using following code line

 1: DomainProjectPicker dpp = new DomainProjectPicker(DomainProjectPickerMode.None);
 2: if (dpp.ShowDialog() == DialogResult.OK)
 3: {
 4: //You're code gets here
 5: }

ManagingTFSSubscriptions1

After you're authorized for the server, you will see a list of all subscriptions you've have added.  You don't see the subscriptions that somebody else has made for you.  Now you can select a subscription and then unsubscribe from it.

ManagingTFSSubscriptions2

You can also add a new subscription.  I've used the screen from the override policy tool for this and made some changes to it :

  1. I've deleted the server info
  2. Add the lists of projects
  3. Add the list of events you can subscribe 
  4. Add the field for the extra parameters.

ManagingTFSSubscriptions3

You can download the source here and the binary here.

TFS
6/16/2008 3:55:11 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Thursday, June 12, 2008

In our company we do a lot small internal projects (not for customers).  We don't want to create for each project a team project.  Otherwise we come directly to the limitation of 256 Team Projects.

So we have created one Team Project with the name of our company.  In here we create for each small project we create an area.  Our policy is that everyone who has access to the team project, have read rights to all area's and contribution rights to the area project his currently working on.  Here's a little guide on how to set the correct rights.

  1. Create a local TFS group.  We give it the same name as the area.
  2. Add the users to this group who need contributor rights.
  3. Add this group to the contributor group of your team project.
  4. Go to areas and iterations
  5. For the main area gave the contributor group view rights.
  6. Add the new area
  7. Add the group to the corresponding area with following rights
    1. Edit Work Items in this node
    2. View this node
    3. View work items in this node
  8. Go back to source control
  9. Click for the properties of the team project.
  10. Give the contributors read rights
  11. Create a subdirectory for the area
  12. Go to your area and click for the properties
  13. Add the corresponding TFS group
  14. Give following rights for this group
    1. Read
    2. Check Out
    3. Check In
    4. Label
    5. Lock

Now you have your security correct when working with area's.

TFS
6/12/2008 2:58:42 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Monday, June 09, 2008

Creating a build project in TFS2008 is very easy.  This because you can create a standard Build using the build wizard.

Mostly you will create at least 2 builds

  • Continuous Integration Build (CI): This wasn't possible in TFS2005, without doing some hard work in the build script.  Mostly you will check every x minutes if there are new check-ins done by the developers.  If so, we will start a build.  This gives us the possibility for having a rapid feedback on any breaking changes and more after each check-in.
  • Nightly Build: This build will only run during the night and will perform several more tasks than the CI Build, like deploying your binaries to your test server,...

We will show you how to create a standard build.  You can add more features to your build script like

  • Unit testing
  • Code analyzes
  • Code Metrics
  • Deployment
  • ...

Later we will show you how to implement those items.

OK, here we go.

You will see that creating a build under TFS2008 it’s much different than using TFS2005.  One of the big changes is that it will be easier to trigger events.  It’s all in the build wizard now.  So no more command lines, batch files and adding them to the windows scheduler.

One remark: Always keep in mind that your total length of the path (including filename) can be maximum 259 characters.  If the path is longer your build will fail.

  1. Go to Team Explorer
  2. Right click on builds and choose “New Build Definition”

    BuildImage1
  3. Choose a build name.  Be aware for the path, as this will be a part of the path. And give it a description
  4. Normally the workspace can be the default one
  5. Next you have to add a new build project file.  You can use an existing one or create a new one.  Be sure to have defined the build name before this step.  You will see that the path to the build types is already filled in.

    BuildImage2
  6. Take the option Create.  This will lead you to a new popup.

    BuildImage3

    Choose your solution.  You can change the configuration if necessary.  In the options tab you can if you want add unit testing and/or code analysis during the build cycle.  Press finish if everything is done.  Best practice on this is just doing a build before adding the extra tools.  When your build succeeded you can start adding the extra tools.
  7. The next tab is the retention Policy.  Here you can say which builds you want to keep when a build was failed, stopped, partially succeeded or succeeded.  By default all builds will be kept.
  8. The previous last step is the build defaults.  Here you define your Build agent and the staged location for your builds.  This is the most important part as you must define here the paths.  You can define one build agent for each Buildserver with the same port.  When defining the agent, you need to give the working dir.  By default this is $(Temp)\$(BuildDefinitionPath).  Mostly this will give you a path that is too long.  We create on the server a directory Buildserver, which will be also our share.  So for our working dir we got following path : x:\Buildserver\)\$(BuildDefinitionPath).  For the staged path we give in \\<servername>\Buildserver\<Team Project name>.  If you define it this way you will have following directory structure :

    BuildImage5
  9. The last step before your build is ready is setting up the trigger.  This step was in TFS2005 very difficult especially when you want a CI build.  In TFS2008, this was made very easy.

    BuildImage4

    As you can see you can choose between different triggers. 
    For our nightly build we choose the last option with the default options.  So every weekday at 3 o’clock our nightly build will run, only when there are changes since the last build. 
    If you want a CI build, you can choose between the second and third option.  We have chosen for the third option and it will run every 15 minutes. Best practice is to start with the first option and when your build succeeded you can switch the trigger to the build type you want to use.
  10. Now press OK and you can start with your builds.
    Now that you have your build script, you can double click on it to open the Build Explorer window.  On this window you can view complete builds and their logs.  You can follow which builds are in the queue and you can even start a build before it’s actual trigger by queuing the build.

    BuildImage6 BuildImage7

If you want to change your build, you can do this again through this wizard.  Just keep in mind that some options aren't available in edit mode like adding your unit testing to the build.  So for those options that aren't available anymore you still need to change it directly in your build script.

Hopes this quick guide helps you to setup your first build project.

TFS
6/9/2008 12:19:00 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Tuesday, April 29, 2008

You want to know more about the new, improved features that are coming with TFS2008 SP1 ? Well Brian Harry blogged about all those new and improved features that are coming out.  It's impressive.  Take your time and read more in his blog "Team Foundation Server 2008 SP1 Preview".

I'm glad we now also have the info that was shown at the MVP summit two weeks ago.

TFS
4/29/2008 10:52:21 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Friday, April 25, 2008

Finally a new weekly links list.  The previous one was more then a month ago :-(.  One of the reasons is that I hadn't much time and I'm also having troubles with my knee.  In about 4 weeks I'm going to have an operation and then I'm out for at least 3-4 weeks.

Agile:

Applying agile practices in still-waterfall processes : http://blogs.msdn.com/architectsrule/archive/2008/04/08/applying-agile-practices-in-still-waterfall-processes.aspx

Office:

Outlook SMS Officer :/http://blogs.msdn.com/outlook/archive/2008/04/07/introducing-smsofficer.aspx

TFS:

CTP Team System Web Access 2008 SP1 - What's new : http://blogs.msdn.com/hakane/archive/2008/04/09/what-s-new-in-tswa-2008-sp1.aspx
CTP Team System Web Access 2008 SP1 - Download : http://www.microsoft.com/downloads/details.aspx?FamilyId=A06ED577-DE38-426F-9341-3F78E46DA09A&displaylang=en
CTP Work Item Web Access 2008 - What's WIWA : http://blogs.msdn.com/hakane/archive/2008/04/09/what-is-work-item-web-access-wiwa.aspx
CTP Work Item Web Access 2008 - Download : http://www.microsoft.com/downloads/details.aspx?FamilyId=FAED8359-F54D-480E-8A86-F154D3DEA07E&displaylang=en
Richt text in work items : http://blogs.msdn.com/teams_wit_tools/archive/2008/04/09/rich-text-in-work-items.aspx
March TFS Times newsletter : http://www.tfstimes.com/news/
March '08 Team Foundation Server Power Tools Released : http://blogs.msdn.com/bharry/archive/2008/04/21/march-08-team-foundation-server-power-tools-released.aspxv
TFS Sticky Buddy from Martin Hinshelwood : http://www.codeplex.com/TFSStickyBuddy

Visual Studio:

A new place for the Visual Studio hotfixes : http://code.msdn.microsoft.com/

Agile | Links | Office | TFS | VSTS
4/25/2008 9:12:40 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Thursday, April 17, 2008

Here's the second part of he custom actions we are using in our project.  You can read the first part here.

Mandatory add check-in comments

For each time a developer wants to check-in his code, we also want a short description of what is changed in the code for this check-in. We want this mandatory. After you have installed the power tools check-in policy pack, you have some extra policies, of which this is one of them.

How do add this policy?
  1. In Team Explorer, right-click your team project, select Team Project Settings, and then click Source Control.
  2. Click the Check-in Policy tab.
  3. Click Add and then select and configure the Changeset Comments Policy check-in policy.
What gives this for the developers?

When the developer wants to check-in his code, he must add comments on what is changed in the code for this check-in. One disadvantage with this policy is that you can add a space as comment. I’m still looking for a policy where this isn’t possible.

Check if all methods have comments

Code comment is very important. If a developer writes a method, and another developer use the method in another layer, intellisense will give some explication about the method and the parameters if the comment is added to the method.

For this you can add a check-in policy. We use the CCCP policy. Info can be found here : http://www.codeplex.com/TFSCCPolicy. This is a very powerful policy with a lot of options to setup.

How do add this policy?
  1. In Team Explorer, right-click your team project, select Team Project Settings, and then click Source Control.
  2. Click the Check-in Policy tab.
  3. Click Add and then select and configure the Check for Code Comments (///) Policy 3.0.0.0 check-in policy.
  4. You can edit the policy for selecting the language, which items must be checked (private, public, methods, properties and more). You can even exclude namespaces. Find all info on the codeplex website. Image 7
What gives this for the developers?

A developer creates a new method

CustomPoliciesImage8

and he forget to add comment about the method in his code using /// or any other tool like Ghostdoc<<< http://www.roland-weigelt.de/ghostdoc/>>>. Next he wants to check-in his code; he will get a check-in policy error.

CustomPoliciesImage9

He add the comment to the method.

CustomPoliciesImage10

Tries to check-in again and the policy is disappeared.

CustomPoliciesImage11

Code Analysis

Each project has its coding guidelines which the developers have to follow. Using the code analysis tool, you can setup up a validation on your code for certain guidelines. You can add code analysis for each project and when a developer builds, code analysis will be performed. If you have the power tools installed, you can replace or merge them with your check-in policy. But you can also add a check-in policy.

As we have already added the code policy as a work around for checking if the latest build was successful, we could use this policy and add our guidelines against which we want to check.

Later I will post the list of checks we use with the code analisys.  I can only mention not to take all checks.

If you want to have a certain part of your code not checked by the Code Analysis,read this blog article http://blogs.msdn.com/fxcop/archive/2007/04/27/correct-usage-of-the-compilergeneratedattribute-and-the-generatedcodeattribute.aspx

How do add this policy?

See How to add the Last build must be successful policy.

What gives this for the developers?

When using code analysis, your code will be much more proper as it will check certain rules.  You can add your own specific rules if you want.

Override policies in Check-in dialog

Developers can overwrite the policies when checking in their code. This is something we don’t want to have. For the moment it isn’t possible to change this. Maybe we should add a report which gives us an overview of all overrides. But you can also use a notifier tool. The source of a good one can be found here.

The only thing is that it don’t give back your subscription number and you can’t unsubscribe. So I’ve changed the program a bit. For the moment you get also your subscription number back and you can unsubscribe. Exception handling will be added later. Here’s the changed version. You need VS2008 to open it. Download my version here.

TFS
4/17/2008 4:50:29 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Monday, March 03, 2008

This is the last part of the series posts about scrum under TFS.  We'll end this story by taking a look into the future by having a sneak preview at the Scrum templates for Visual Studio 2008.  Read our previous parts here:

This article is also cross posted on the Ordina blog.

What about Team System 2008 ?

We looked at each of these templates in 2 ways:

  1. Does the template still works after an inplace upgrade to TFS 2008?
  2. Is there a new (upgraded) version available specifically for TFS 2008?
Microsoft eScrum

After an inplace upgrade, the template was still up and running. Only the website suffered a painful dead. Brian Harry was so friendly to post a solution on his blog. Go check it out!

VSTS Scrum Process Template

Everything keeps working after the inplace upgrade. A newer version is available here.

Conchango Scrum for Team System

No problems occured after the inplace upgrade. Scrum for Team System v2.0 is now available. Don't hesitate and download this template here.

Conclusion

Microsoft did a good job in terms of backward compatibility. After using the upgraded versions of the templates for some time, I did not encounter any problems. If we look at the new releases, we'll find a range of improvements. But this will be a story for a future series of blog posts.

So stay tuned for an updated version of these posts where we'll dig deeper into the new features of the updated Scrum templates for Team System 2008.

Your TFS Scrummasters

Bart Wullems and Sven Cipido

Agile | Scrum | TFS | VSTS
3/3/2008 1:39:02 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Tuesday, February 19, 2008

The fifth part of the series posts about scrum under TFS.  This time we will give a final review and our conclusion about the Scrum templates under TFS2005.  Read our previous parts here:

This article is also cross posted on the ordina blog.

Final review

eScrum

Advantage:

  • Much SCRUM functionality on board
  • Easy to use
  • Lot of reports specific Scrum
  • Has web front end

Disadvantage:

  • Scrum à la Microsoft
  • First version contains lots of bugs
  • Extra libraries needed if you want to use the site also.
  • Difficult installation, it’s a pain in the ass ;-)
  • No help in Visual Studio
  • Sometimes slow.  But the test was under a VPC, but you still need a heavy server.
CodePlex

Advantage:

  • Easy installation
  • Guidance Explorer
  • Very easy, very common as working with the standard TFS, just some renaming. 

Disadvantage:

  • Not a many extra’s like reports
  • No daily scrum
  • In fact doesn’t follow the Scrum guidelines
Conchango

Advantage:

  • Implements mostly the Scrum guidelines
  • Easy in use, and very low learning curve
  • Several skillfull tools added
  • Very good reporting

Disadvantage:

  • No web interface

Conclusion

If you want to use Scrum in TFS, Conchango is for the moment the best (free) solution.  The very good reporting with the skillfull tools makes it a pleasant experience.
eScrum has a lot of potential, but sometimes drops a stitch.  A very good point is the web interface.
Codeplex in its current form has too many limits to use in practice.  Although there is a final version (since September 2007) which seems to go on the good way.

So this was the fifth part.  In the next part, we'll talk about the Scrum templates under TFS2008. 

Your TFS Scrummasters

Bart Wullems and Sven Cipido

 

Agile | Scrum | TFS | VSTS
2/19/2008 12:54:34 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Tuesday, February 12, 2008

The fourth part of the series posts about scrum under TFS.  This time we will give a complete overview of all the features of the Scrum templates.  Read our previous parts here:

This article is also cross posted on the ordina blog.

We'll start by explaning the different criteria we looked at:

  • Licensing: What are the licensing conditions? Is it free to use?
  • Installation: Which format has the provided setup? Are there any installation guidelines?
  • Web Interface: Is there a separate web interface available?
  • Real Scrum: Does the template follows all the Scrum principles?
  • Process Guidance: Is there any form of process guidance available?
  • Workitems: Which workitems are available?
  • Custom reports: Which custom reports are available?
  • Custom queries: Which custom queries are available?
  • Overall quality: How did we rate the overall quality of the template? 
  • Bugs found: Did we found any bugs while testing?

 

 
Microsoft eScrum
VSTS Scrum Process Template
Conchango Scrum for Team System
Licensing Free Free Free
Installation MSI Zip MSI
Web Interface Y N N
Real Scrum N N Y
Process Guidance Y Y Y
Workitems

Bug

eScrum Product Backlog

eScrum Product Details

eScrum Sprint Details

eScrum Sprint Retrospective

eScrum Sprint Task

BackLogItem

Defect

Impediment

Review

User Story

Product Backlog Item

Release

Sprint

Sprint backlog item

Sprint Retrospective Item

Custom reports

Product Summary

Sprint Burndown

Sprint Cumulative Flow

Sprint Metrics

Sprint Retrospective

Sprint Totals

Burn Down chart

Tests Failing without Active Defects

Tests Passing without Active Defects

Bug Count

Bug History Chart

Bug Priority Chart

All Product Backlog Items

All Sprint Backlog Items

All Sprints

Delta Report

Impediment Report

Product Backlog Composition

Product Burndown Chart

Product Cumulative Flow

Retrospective Report

Sprint Burndown Chart

Sprint Cumulative Flow

Sprint Overview Chart

Sprint View

Version

Custom queries

All eScrum Product Backlog Items

All eScrum Product Details

All eScrum Sprint Details

All eScrum Sprint Retrospectives

All eScrum Sprint Tasks

My eScrum Product Backlog Items

My eScrum Sprint Tasks

Active Defects

All backlog Items

Impediments

My backlog items

My defects

My impediments

My reviews
Project checklist

Resolved defects

Untriaged defects

All impediments

All product backlog items

All sprint backlog items

All sprint backlog tasks

All sprint retrospective items

All sprints

My impediments

My sprint backlog items

My sprint backlog tasks

My sprint retrospective items

Recycle bin

Overall Quality ** * ***
Bugs found Y N N

 

So this was the fourth part.  In the next part, we'll do a final review and make some conclusions. 

Your TFS Scrummasters

Bart Wullems and Sven Cipido

Agile | Scrum | TFS | VSTS
2/12/2008 10:12:33 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Monday, February 11, 2008

The third part of the series posts about scrum under TFS.  This time we will focus on the usage of the Scrum templates.  Read our previous parts here:

This article is also cross posted on the Ordina blog.

Use the Scrum templates
Common

Create your Team Site with the correct Template.  Once you have chosen a template, you can’t change to another template only make minor changes to the chosen template.

eScrum

Learning eScrum from within TFS is very difficult as there is no guidance.  So there is a lot of searching what everything means. For example: product backlog details, area, sprint backlog details.

The best way to learn this product is by using the web interface.  Here you can find a context sensitive help for each part which explains you very well what it means.

You can group several product items by using the areas.  There can be several areas’ which can contain several products.

A sprint is the same as iteration in TFS and the product backlog details in Scrum is the description in TFS.
Sprint information (Scrum master, start and end date of the sprint, goal,…) can be filled in the Sprint details

When using TFS to add your sprint items you have to connect manually the backlog ID.  This is done automatically when using the web interface.

In common we can say that the web interface is more handy and user friendly to use than TFS.  Although that the web interface has a few issues.  There are times that items disappear in the web interface.  But when you restart they’re back.  Also it seems that the page refresh after a post back not always work.  And in some cases you need a full refresh trigger (F5) before everything will be showed again.

Also viewing some reports seems to give problems, but after you rebuild the data warehouse this is solved.
The biggest disadvantage of eScrum is that not all the Scrum guidelines are followed.  Microsoft shouldn’t be Microsoft if they haven’t give it their own interpretation.  For example the burn down chart doesn’t give an overview of the complete sprint, but only to the current date.  This doesn’t give you a complete overview of the sprint.  Also when you want to book more hours than initial planned on a sprint task, eScrum gives sometimes strange results.

CodePlex

Codeplex has the less connection with Scrum.  There is no product backlog only the sprint backlog.  Making sprint items is equal to making work items.  During this phase you also include the item to an iteration.  There are 3 reports and the rest are just the standard reports.

Most of the changes are just a rename of the standard VSTS items.

The name Lightweight is well chosen.

Conchango

Using this template gives us a very nice user experience because it’s totally converted to Scrum

When creating product backlog items or sprint items, you have to fill in the manually the sprint number, which is defined separately.

There is no direct connection between the product backlog items and the sprint items, but you can link them through the Links tab.  This is the best solution, because you can’t create a hierarchical structure in VSTS 2005.

They have integrated a recycle bin, so if you “delete” (which means status is set to deleted) a Work item, you can recover it from here.

There are a few administration modules available which gives us extra possibilities.

It’s easy to maintain the users through the separate Administration tool “Listmanager”.  Through the Administration module “Report installer” you can choose which reports are available per project.

If you want a direct update of for example the burn down charts, you can use the “Warehouse manager” to push a direct update.

So this was the third part.  In the next part, we will give a complete overview of all the Scrum templates. 

Your TFS Scrummasters

Bart Wullems and Sven Cipido

Agile | Scrum | TFS | VSTS
2/11/2008 11:04:46 AM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Thursday, February 07, 2008

As I'm posting with my colleague Bart a serie of 6 posts about Scrum templates in TFS2005, we also will cover TFS2008.

But just too make you warm :-) you can download the new beta of Scrum for Team System v2 from Conchango.

They had a lot of new improvements.  Read more here.

Remark: if you upgrade form beta 1, read this forum post how to do it. (You must login to read it).

Agile | Scrum | TFS | VSTS
2/7/2008 10:38:37 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 

In this next post, we focus on the installation of the 3 Team Foundation Scrum templates we're gonna test. If you want to know more about Scrum or TFS, read our first blogpost here. This article will also be crosspost on the Ordina Blog.

Installation of the templates
Microsoft eScrum
  1. Download the necessary files
  2. Before you start installing the MSI, make sure you have following programs installed:
    • ASP 2.0 Ajax Extensions 1.0
    • Microsoft Anti-Cross Site Scripting Library 1.5 installed
  3. Install the MSI.
  4. After the installation Read The F***ing Manual, because from here you have to do a lot of configuration work like security, IIS, and so on...
    • Our experience :
      Bad luck first... our installation failed. After some searching, we found that removing the Sharepoint templates and reinstalling them back by hand solved the problem. After this step the installation succeeded.
    • Remark: Microsoft has taken care of the several complains and bugs during the installation of the first eScrum version. Meanwhile they have released a new version (still called version 1.0) with a much better installation experience.
  5. Create a project in TFS based on the installed eScrum template.
  6. After the creation of an eScrum project, you still need to add the project to a config file in the directory where the eScrum website is installed. If you don’t do this, the project will not be available in the website.
  7. The pain is over. We're done!
VSTS Scrum Process Template
  1. Download the process template here.
  2. Unzip the downloaded file
  3. Read the readme.txt file! You'll regret it when you skip this step
  4. Next install the SharePoint template(more info in the readme.txt 
  5. Upload the process template to the team foundation server (If you have no idea how to start uploading templates, here is the answer.
  6. Done!
Conchango Scrum for Team System
  1. Surf to the Conchango website and  register to start downloading the necessary files.
  2. After the short registration process, download the MSI files.
  3. Run the MSI's and follow the installation instructions. There is one MSI for the template and one for the administration utilities.
  4. The project guidance can be viewed online, but can also downloaded separately and added to TFS. Allthough we used version 1 of this guidance, a second edition is available.
  5. Don’t forgot to install the reports through the Administration module “Report installer”. At first we did not do that. The reports were visible in Team Explorer, but we've got an error when calling one. After reinstalling the reports throught the Report Installer, the problem was solved.
  6. After the installation, you'll find following administration utilities at your service:
    • Migration Utility: Migrate your current TFS Scrum projects to the newer version
    • Report Installer: Choose which reports you want to install additionally in your project.
    • Warehouse Manager: One of the problems in TFS is that changes to workitems are not directly visible in reports. The reason for this is that the datawarehouse only runs one time each hour(by default) to collect all info. This could be a problem because a lot of developers wait till just before the Daily Scrum Meeting to update their information. During the meeting this information isn’t up to date and the burndown chart doesn’t match the current situation.With the warehouse manager it is possible to start the update directly or even to regenerate the warehouse from scratch.You can achieve the same functionality with the command line tools of TFS, but this manager gives you a much nicer experience.
      • Remark: Depending on the number of projects and the amount of date, rebuilding  the warehouse could be a time consuming task. Keep that in mind before you start clicking the rebuild button.
    • Teams & Enviroments: Manage the environments and teams in your TFS projects.
Conclusion about the installation process

As a conclusion we could say that installing the different templates wasn't a big problem. One precaution must be made. Always start by reading the available documentation, this will save you a lot of time(I know that IT guys normally don't read manuals, but please make an exception. You will be thankful).


So this was the second part.  In the next part, we will talk about our usage experiences with the different templates. 

Your TFS Scrummasters

Bart Wullems and Sven Cipido

Agile | Scrum | TFS | VSTS
2/7/2008 10:28:11 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Tuesday, February 05, 2008

In our company lately I'm busy with TFS and Scrum.  Also my colleague Bart is busy with these items.  So we decided to joined together for a serie of posts about the different Scrum templates in TFS. This article will also be crosspost on the Ordina blog. So let's start with the first post of this serie.

What is Scrum?

A definition by ControlChaos.com:

Scrum is an iterative, incremental process for developing any product or managing any work. It produces a potentially shippable set of functionality at the end of every iteration. It's attributes are: 

  • Scrum is an agile process to manage and control development work. 
  • Scrum is a wrapper for existing engineering practices. 
  • Scrum is a team-based approach to iteratively, incrementally develop systems and products when requirements are rapidly changing 
  • Scrum is a process that controls the chaos of conflicting interests and needs. 
  • Scrum is a way to improve communications and maximize co-operation. 
  • Scrum is a way to detect and cause the removal of anything that gets in the way of developing and delivering products. 
  • Scrum is a way to maximize productivity. 
  • Scrum is scalable from single projects to entire organizations. Scrum has controlled and organized development and implementation for multiple interrelated products and projects with over a thousand developers and implementers. 
  • Scrum is a way for everyone to feel good about their job, their contributions, and that they have done the very best they possibly could.

Scrum naturally focuses an entire organization on building successful products. Without major changes -often within thirty days - teams are building useful, demonstrable product functionality. Scrum can be implemented at the beginning of a project or in the middle of a project or product development effort that is in trouble.

Scrum is a set of interrelated practices and rules that optimize the development environment, reduce organizational overhead, and closely synchronize market requirements with iterative prototyes. Based in modern process control theory, Scrum causes the best possible software to be constructed given the available resources, acceptable quality, and required release dates. Useful product functionality is delivered every thirty days as requirements, architecture, and design emerge, even when using unstable technologies.

What is TFS?

Visual Studio Team System Team Foundation Server is an integrated collaboration server for Visual Studio Team System. It combines team portal, version control, work item tracking, build management, process guidance, and business intelligence into a unified server. It allows everyone on the team to collaborate more effectively and deliver better quality software.

Scope.

This document describes the advantages/disadvantages between several Scrum templates that can be used on VSTS 2005.

Used Scrum templates.

Template

Version

Download link

eScrum (Microsoft)

1.0

http://www.microsoft.com/downloads/details.aspx?FamilyID=55A4BDE6-10A7-4C41-9938-F388C1ED15E9&displaylang=en

Codeplex Scrum Process

1.0

 

www.codeplex.com/vstsscrum/

Conchango Scrum For Team System

1.2

http://www.scrumforteamsystem.com/en/default.aspx

Remark : You have to register before you can download.

So this was the first part.  In the next part, we will talk about the installation process of the different templates.  So stay tuned.

Your TFS Scrummasters

Bart Wullems and Sven Cipido

Agile | Scrum | TFS | VSTS
2/5/2008 8:18:22 PM (Romance Standard Time, UTC+01:00)  #    Comments [2]  | 
 Wednesday, January 23, 2008

In our Build Server configuration we have a Continuous Integration build which runs every 30 minutes if there’s a checkin done by a developer and a Nightly build which runs every weekday on 3 o’clock when there are code changes since the last build.

Now we have following situation.  Yesterday there were no code changes, so there was no Continuous Integration build (the only one was a forced done by me) and there was no Nightly build.

Today during the day one of the developers had made some changes to the code and did a checkin.  Directly after the checkin the Nightly build starts to run (it was around 13:53 hour). 

So, for me it seems that when the Nightly build didn’t run he still waits till there is some code changes to run. Which we don’t want to have.

Hope to find exactly why and how to solve it (if it’s not a bug ;-)).

Technorati Profile
TFS
1/23/2008 2:55:08 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Friday, January 18, 2008

Since I’m using TFS2008 for our project, I'm playing around with it to learn the product (Haven’t use before TFS really as I’m come from a CruiseControl.Net environment).

One of the new features in TFS2008 is annotation support. 

What is it?

It gives you support in the IDE of VS of Who did what and when.  You can click on the changeset number to get more detail about that change like which work items are associated, which source files and what the check-in comment is.

How to use it?

First you need to have Team Explorer installed.  Next in the solution explorer go to the class you want to annotate. 
Right click with your mouse.  In the popup you can choose “Annotate”.


After the code tab is visible with the Annotate information, click on the changeset number to open the detailed information.

To Annotate or not to Annotate?

The question is, will this feature a big help?  Well personally I think yes.  It will be a big help when the CI build breaks.  You could easily track the changes from within your VS IDE, instead of going to the source control, check for the history…

PS: For the diehards under us: the command prompt is still available.

TFS
1/18/2008 2:40:55 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Thursday, January 17, 2008

As I’m the responsible guy for the TFS 2008 server on our project, I started to add some custom policies to the check-in.  Later I also add the build server part.

You can use several check-in policies.  After talking with a few other colleagues and friends about which policies should be added, we came to following list, which is a kind of standard for most of the projects where they use TFS.

  1. Associate with your work item
  2. Last build must be successful.
  3. Mandatory add check-in comments
  4. Check if all methods have comment
  5. Code analysis

Some check-in policies are not by default installed.  So for those, we have to install them for each developer.  These are the tools/policies we need to install extra:

  1. Mandatory add check-in comments : Comes with the power tools.  Install only the Check-in policy pack on the developers machines.  Download it at http://msdn2.microsoft.com/en-us/tfs2008/bb980963.aspx.
  2. Code Comment Check-in policy (CCCP): download it at http://www.codeplex.com/TFSCCPolicy.  Be aware that the current version (v 2.1.1) doesn’t work with TFS 2008.  If you want to add this, they have currently following beta version 3.0.0.1 Beta 1.
Associate Work items with check-in

Why would add Work items with your check-in?
If a build breaks, it is important that you know what change sets are associated with this build and what work items those change sets are associated with. With this knowledge, you can identify the developer responsible for checking in the changed code and the area of the project on which he or she is working. 

For a build to be associated with a set of completed work items, each check-in must be associated with a work item. These check-ins are represented as change sets associated with the build, and it is possible to trace from build to change set to work item.

How do add this policy?
  1. In Team Explorer, right-click your team project, select "Team Project Settings", and then click "Source Control".
  2. Click the "Check-in Policy" tab.
  3. Click Add and then select and configure the "Work Item" check-in policy.
What gives this for the developers?

After they have changed their code and they want to perform check-in.  The check-in policy dialog appears.

When they press Check In, they got the message that not all policy requirements have been satisfied. 

They can check the policy warnings to see which policies they need to approve.

So to solve this, they have to go to the work items tab and choose their related work item.  By default the check-in action will state that the Work item is resolved.  But in case you still want to have the work item active, you need to change the Check-in action to Associate.

Last build must be successful

This policy requires that the last build was successful before the developer can check his code.  This is not the same as the standard Build policy.  The standard build policy is affecting the CI build.  If this build fails, developers can’t check in, till the problem is solved.
To add that the last build of the developer must be successful, we have to use a little trick.  We will use the Code Analysis policy, but without any rules selected.

This policy is makes sure that the developer at least check-ins a buildable change set.  Normally in this case our build server will not break on the build.

How do add this policy?
  1. In Team Explorer, right-click your team project, select "Team Project Settings", and then click "Source Control".
  2. Click the "Check-in Policy" tab.
  3. Click Add and then select and configure the "Code Analysis" check-in policy.
  4. In the settings, uncheck all rules and the option “Enforce Code Analysis For Managed Code”
What gives this for the developers?

When a developer wants to check-in his code which doesn’t build or isn’t a build after changing code on his machine, he will get a check-in policy error for the code analysis.

I will explain the other Check-in policies in my next blog post, so stay tuned.

TFS
1/17/2008 9:19:39 AM (Romance Standard Time, UTC+01:00)  #    Comments [2]  | 
 Tuesday, January 15, 2008

Standard this could not be done with TFS 2008.  But if you install the power tools  you will have a tool called “Find in Source Control” which allows you.  This gives you an addition to the Team Explorer menu that provides the ability to locate files and folders in source control by the item’s status or with a wildcard expression.

How to use this power tool?
  1. Open the source control explorer
  2. Right Click on a folder you want to explore
  3. Choose from the menu “Find in Source Control”.  This will show you a sub menu with following items: Status search, Wildcard search and changeset.
  4. In our example choose Status search
  5. You got a popup 
  6. Choose the default as we want to search for all checked out files and press “Find”
  7. This will give you a result like following image
  8. Here you can right click on an item.  You get a popup menu where you can checkout files, undo changes (including someone else’s changes if you have enough rights), view history, open the file and open the folder in Source Control Explorer
TFS
1/15/2008 3:49:25 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Tuesday, January 08, 2008

If you are working with Team System 2008, Microsoft has a few interesting tools you can download and use

  1. Visual Studio Team System Web Access 2008 Power Tool
  2. Visual Studio Team System 2008 Team Foundation Server Power Tools
TFS | VSTS
1/8/2008 1:30:05 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Monday, January 07, 2008

Today we had a strange problem in our project.  One of my colleagues opens his solutions and he did a “Get Latest Version”.  Afterwards it seems that he lost his connection with the TFS.  All code was unbinded.

We checked if TFS was the default source control, which was true.  We want to manually bind his code again with TFS, which failed because there was no recognized server.

Me and another colleague had no problem with it, so we knew that the TFS server was working correctly.

Next we did following steps :

  • Removing the workspace and create a new one
  • Delete the local TFS cache

None of this worked.

As last step we removed the tfs server from the “Connect to team foundation server dialog box”, add again the server and now it works again.

We still don’t know what the problem was, but it was strange.

Update :

Txs to Gabriel Lozano-Moran I have more info on this problem.  It seems that this behavior is a bug in TFS 2008.  This happens when the TFS instance goes offline.  He also has a better solution too solve it.

More info can be found here : http://gabriel.lozano-moran.name/blog/PermaLink,guid,40ec1818-1e8a-45de-9111-7370544d3ba4.aspx.

TFS
1/7/2008 12:40:46 PM (Romance Standard Time, UTC+01:00)  #    Comments [2]  | 
 Thursday, January 03, 2008

This error comes up when you want to change your workspace and another one is already mapped to the directory you want to use.  even after removing the workspace.

It seems that the workspace is still in cache.

You can solve this by starting up the VS Command prompt and use the command

tf workspaces /remove:*

More info can be found here.

TFS
1/3/2008 2:21:25 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  | 
 Wednesday, January 03, 2007

When you want to build your solution in VS 2005, together with TFS as source control it could that you encountered the following error:

Build FAILED.
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Microsoft.Common.targets(2797,9): error MSB3491: Could not write lines to file "obj\project.vbproj.FileList.txt". Access to the path 'd:\builds\project\obj\project.vbproj.FileList.txt' is denied.

The problem is that this file is checked into source control and they are marked as read-only.  Even by setting the read-only flag to off it doesn’t work, because the next build the flag is switched on again.  As they are intermediate files, generated by the build, these should never been checked in.  So to solve the error above, delete the file from SCC, delete the file from your HD and try again.

1/3/2007 2:47:30 PM (Romance Standard Time, UTC+01:00)  #    Comments [0]  |