Work Item Type Customization Overview
Team members use work items to track work to be done. Depending on the installed methodology, such as MSF for CMMI Process Improvement or MSF for Agile Software Development, a selection of types of work items, such as bug, requirement, risk, and task, will be available to the members of your team.
You might want to expand this selection so that Visual Studio Team System better serves the processes that your team uses and the ways that you communicate. To do that, you can author new work item types, which are templates from which work items are created. Depending on the processes that your team uses, it could find useful any one of the following work item types: task, bug, change request, quality of service requirement, issue, requirement, review, risk, and scenario.
After you create a work item, it contains the fields and behavior that were defined in the work item type from which you created it.
Note
In addition to creating work item types, you can also modify existing work item types. For example, you might have installed a methodology that includes the task and requirement types of work items. To better support the processes that your team uses, you can add fields to the task work item type or change the workflow behavior of the requirement work item type.
Although you can view a work item type as an abstraction of the more concrete work item that is formed from it, a work item type is a set of XML definitions that you can author. The following sections and topics describe the work item type definitions. For a step-by-step illustration, see Customizing Work Item Types for Team Foundation.
The following sections describe the work item type definition. You can also reference the XML schema, Work Item Type.xsd, in the Visual Studio Team System SDK on the Microsoft Web site.
Scope of Your Changes
Your customization work can have a broader or narrower effect, depending on what you customize. You can take either of the following approaches:
Customize for All New Team Projects You can customize work item types in a process template by changing its plug-ins, work item types, and process guidance. In this case, your customizations appear in all projects that are created from that process template.
Customize an Existing Team Project You can customize work item types on single project by using command-line tools. In this case, your changes affect the way people work in that project, but they do not affect existing or future projects.
Customizing All New Team Projects
To customize work item types on all new team projects, you should change the process template that your team project uses. By taking this approach, you can make changes in one location, and these changes will be reflected in all team projects made from the process template that you changed. For more information, see Modify an Existing MSF Process Template.
Note
Instead of creating a process template for a new series of team projects, we recommend that you modify an existing process template to suit your needs. For example, you can modify templates for MSF for Agile Software Development or MSF for CMMI Process Improvement.
Modify an Existing MSF Process Template
Process Template Plug-ins
Process template plug-ins set up required files or configure data when you create a team project. Visual Studio Team System includes plug-ins for work item tracking, classification, Windows SharePoint Services, version control, reports, and groups and permissions. You can modify each plug-in to customize a process template. For more information about how to modify the plug-in for tracking work items, see Work Item Tracking Process Template Plug-in.
Work Item Types
You might want to expand the selection of work items that Visual Studio Team System provides to better serve the processes that your team uses and the ways in which you communicate. To create custom work items, you can author new work item types, which are templates from which work items are created. For more information about how to customize or create work item types for a process template, see Customizing Work Item Types or How to: Create a New Work Item Type.
Process Guidance
Process guidance documents the roles, work items, work products, activities, and reports for a specific software development process. Process guidance complements a specific process template.
Visual Studio Team System includes two process templates: MSF for Agile Software Development and MSF for CMMI Process Improvement. You can customize each of these processes and use it to develop software in projects. As you add or customize work item types, you should update the corresponding process guidance to address any changes that you made. For more information, see MSF for Agile Software Development (https://go.microsoft.com/fwlink/?linkid=55200) and MSF for CMMI Process Improvement (https://go.microsoft.com/fwlink/?linkid=55203).
Customizing an Existing Team Project
You change an existing team project in similar ways to how you change a process template, but the scope is much narrower. If you change an existing team project, you affect how team members conduct their day-to-day work. You do not change the nature of projects that will be created from a process template in the future.
Work Items Types
You use the following tools to administer work item types on projects that already exist. For more information, see Customizing Work Item Types.
You can use the witexport command to export an XML definition for a work item type from Team Foundation Server. You can also use this command to print an XML definition to the screen. For more information, see witexport.
As soon as you have changed the work item type, you can use the witimport command to validate and import a work item type from an XML file to a team project for Team Foundation Server. For more information, see witimport.
You can use the witfields command to administer fields in a type of work item for Team Foundation Server. For more information, see witfields.
You can use the glexport command to export an XML definition for global lists from Team Foundation Server. You can also use this command to print an XML definition to the screen. For more information, see glexport.
As soon as you have changed the global lists, you can use the glimport command to validate and import global lists from an XML file to a team project for Team Foundation Server. For more information, see glimport.
See Also
Tasks
Walkthrough: Make Basic Customizations to a Work Item Type
Walkthrough: Make Advanced Customizations to a Work Item Type
Walkthrough: Administer Fields in a Work Item Type
Concepts
Customizing Work Item Types on an Existing Project