Monday, August 3, 2009

TFS Admin, Part I - Requirements for Team project creation

After installing TFS, most organizations sooner or later comes across many questions how to handle team system administration in their organization. In this post I will take a look at one of the first questions, How to handle Team Project Creation. Unfortunately this is one of the dark spots in case of functionality in the team system package. I will look at the requirements for team project creation process based on my experience from different organizations.

I will start by looking at different stakeholders to the process of team project administration.

The first and obvious stakeholder is the project manager or “customer” who needs a project environment for the team. In many organizations there simply isn’t any process for ordering a new team project. From the project manager perspective it is important that the process for ordering a new team project is clear and simple resulting in a ready to go environment.
The management needs to keep track of existing project and systems, requiring lots of metadata like customer or business area, process and/or system owner. This require the ability to define and store metadata or/and make connection to some external tool for handling metadata. It also requires the metadata to be reportable.
The architectural function is responsible for standards and policies within the organization. Today all efforts to establish and maintaining a mandatory list of policies have to be done manually. The architectural function needs to be able to define the list of policies, and have them automatically deployed to new team projects.
The TFS admin crew is obvious a stakeholder for team project creation. TFS Admin also requires meta data such as project owners, administrators, cost centers and so on. Today creation of team projects is a manual process handling gathering, creation and customization of metadata, policies and reassigning work items and user rights. The whole process should be automated to avoid unnecessary work and errors.
The stakeholders listed above is/or should always be involved in the team project creation process. In addition to this, other stakeholders such as IT Operations for setting up project , staging and production environments, and License managers for handling license could be involved in the process, requiring the process itself to be easily extendable and customizable.

The list of requirements
The functionality could be divided into user stories or use cases and described like this. In addition to the requirements listed there is a n general requirement to be able to extend and customize the process easily.

Defining organizations standard
• Easy configuration of project metadata.
• Configuration of organization standard user rights
• Configuration of organization standard check-in policies

Ordering team project
• Easy accessible ordering form
• Collection of core values (Project name, administrator, process template, description)
• Collection of project metadata
• Approval workflow

Automated team project creation
• project creation
• reassigning of work items
• Applying user rights for project administrator
• Applying standard user rights.
• Applying standard check-in policies
• Notifying project administrator upon completion

• Project catalog
• Extending project metadata to the TFS warehouse


  1. HI we are using VSTS for one of our projects , it was working very fine but suddenly over night all the files got corrupted. when we open a Aspx file .VB is appearing and when we open a .vb file aspx code is comming and projects are also getting overlapped i mean when i access ProjectA home page the code which is appearing is the ProjectB code. please let me know what could be the problem as we are not able to move further.......
    Thanks in advance for your help.


  2. HI mattias,

    After some analysis we were able to find that our tfswarehouse data base is lost due to some sql loging error. Do you think because of this we lost our chnge sets as well as the code got corrupted.

    Thank u very much in advance for you valuable help