Create and Modify Areas and Iterations

You define areas and iterations for a team project to support the grouping of work items into useful categories, such as milestones and related features. You can also control who can modify work items that are assigned to an area or iteration. You define areas to organize work items into logical, physical, or functional categories. You define iterations to group work items into milestones or time cycles.

If you assign each work item to an area and an iteration, you can quickly generate queries and reports on the work progress for specific areas and iterations. Also, many artifacts that the process templates for Microsoft Solutions Framework (MSF) provide use the iterations to organize work and display team progress. For more information, see Artifacts (Agile) and Artifacts (CMMI).

Note

By default, team projects that are based on MSF process templates have three iteration nodes and no area nodes. For information about how to change these default settings, see Defining the Initial Areas and Iterations in the Classification Plug-in.

After a team project has been created, you can use any client program for Team Foundation to customize its areas or iterations. To control access to a project area or iteration, you must use Team Explorer, Microsoft Excel, or Microsoft Project.

In this topic

  • Guidelines for Specifying Areas and Iterations

  • Naming Conventions and Restrictions on Areas and Iterations

  • Changing Areas or Iterations by Using Team Web Access

  • Changing Areas or Iterations by Using Team Explorer, Microsoft Excel, or Microsoft Project

  • Controlling Access to Work Items Assigned to an Area or Iteration

Areas and Iterations

Areas and Iterations

   

Adding and modifying area and iteration nodes

Required Permissions

To perform these procedures, you must be a member of the Project Administrators group or your Create and order child nodes, Delete this node, and Edit this node permissions must be set to Allow for the node that you want to modify. For more information, see Team Foundation Server Permissions.

Guidelines for Specifying Areas and Iterations

When you specify the areas and iterations for your team project, consider the following guidelines:

  • For Areas

    • Define areas that support your traceability and security requirements. You can create a hierarchy of areas under which your team can organize all user stories, requirements, tasks, and bugs.

    • Use areas to represent logical or physical components, and then create sub-areas to represent specific features. Your team can use this structure to keep work items organized and improve traceability by component or feature.

    • Set permissions on areas to restrict access to work items that are assigned to particular categories. You can set security options that dictate not only who can change each area node but also who can edit or even view work items in a particular area. For more information, see Restricting Access to Work Items Assigned to an Area or Iteration later in this topic.

    • Avoid creating an area structure that is too complex. You can create areas to partition permissions on work items, but complex trees require significant overhead for permission management. You may find that it is too much work to duplicate the structure and permissions in other team projects.

  • For Iterations

    • Use iterations to represent sprints, milestones, or cycle time for your project.

    • Determine the cycle duration that meets your team processes, and define your iterations to support that cycle.

    • Create a separate iteration for unassigned backlog items, user stories, requirements, tasks, or other work items.

    • For an overview of how you can plan a sprint by using iterations and the process template for MSF Agile Software Development v5.0, see Scrum.

    • If you are using the process template for Visual Studio Scrum 1.0, you will want to define your iterations first and then your Sprint work items. For more information, see Sprint (Scrum).

  • For Both Areas and Iterations

    • When you name an area or iteration, follow the conventions that Naming Conventions and Restrictions On Areas and Iterations summarizes later in this topic.

    • The area and iteration fields use the TreePath data type. For more information, see Areas and Iterations.

    • When you run a query to find work items that are assigned to an area or an iteration, the results always include all work items that are defined under the path of that area or iteration. You can also create queries to find work items that are not under a specific node. For more information, see Query Fields, Operators, Values, and Variables and Finding Bugs, Tasks, and Other Work Items.

    • You cannot export the area and iteration nodes that you have created for one team project to use with another team project.

Back to top

Areas

You build the structure of product areas by creating nodes that represent components and features. As an example, you might create three areas for a team project that is named MyApplication. These areas would represent the three main development components of a tiered web application: the website, the web services, and the database. As the following illustration shows, you can create a node under the team project node for each of these components, which are labeled My Websites, My Web Services, and My Database.

Area and Iteration Hierarchy iconMyApplication    My Websites    My Web Services    My Database

After you create these areas, you can assign work items, such as user stories, tasks, or bugs, to a specific area and run a query to find all items that are assigned to that area.

You can also organize the major components into more granular groupings. As the following example shows, each top node now contains two or more child nodes.

Area and Iteration Hierarchy iconMyApplication

   Area and Iteration Hierarchy iconMy Web Sites

        Layout & Design

        Navigation

        Area and Iteration Hierarchy iconPages

          Home

          Products

          Resources

          Services

          Support

   Area and Iteration Hierarchy iconMy Web Services

       Logon

       Logoff

       Performance

       Security

   Area and Iteration Hierarchy iconMy Database

         Event Triggers

         Performance

         Schema

         Security

Back to top

Iterations

By default, Iteration 1, Iteration 2, and Iteration 3 are defined in MSF process templates. Certain artifacts, especially the Iteration Backlog query and the Iteration Backlog workbook, use these iterations. For more information, see Team Queries (Agile) and Iteration Backlog Workbook.

Important

If you delete or modify the predefined iterations, you must modify the artifacts that reference them.

You build the structure of the project lifecycle by creating nodes that represent a hierarchy of events, such as sprints, pre-beta and beta deliverables, and other release milestones. In the following example, Backlog, Beta 1, Beta 2, Release 1.0, and Release 2.0 are defined for the MyApplication team project. You can assign all work items to the Backlog iteration if they are not yet scheduled for work or for a release.

Area and Iteration Hierarchy iconMyApplication

   Backlog

   Beta 1

   Beta 2

   Release 1.0

   Release 2.0

As you create the backlog of product features and tasks, you can start to assign them to the milestones by which you expect the team to finish the features and tasks. As your needs change, you can add events under each major milestone that reflect how your team schedules and manages its work. As the following example shows, the Beta 1 iteration now contains five child nodes, one for each sprint in the Beta 1 time period.

Area and Iteration Hierarchy iconMyApplication

    Backlog

   Area and Iteration Hierarchy iconBeta 1

         Sprint 1

         Sprint 2

         Sprint 3

         Sprint 4

         Sprint 5

   Collapse icon for Area and Iteration hierachiesBeta 2

   Collapse icon for Area and Iteration hierachiesRelease 1.0

   Collapse icon for Area and Iteration hierachiesRelease 2.0

Iterations do not enforce any rules. For example, you can assign a task to an iteration but not close or complete it during that iteration. At the end of an iteration, you should find all work items that remain active or have not been closed for that iteration and take appropriate action. You can, for example, move them to a different iteration or return them to the backlog.

Back to top

Restrictions on Area and Iteration Paths

The Area and Iteration fields are paths that consist of multiple node items that are separated by backslash (\) characters. The following table describes the restrictions that govern the definition of nodes and paths.

Restriction type

Restriction

Node length

  • Must not contain more than 255 characters

Special characters for nodes

  • Must not contain Unicode control characters

  • Must not contain any of the following characters: \ / $ ? * : " & > < # % | ,

  • Must not contain characters that the local file system prohibits. For more information about character restrictions in Windows, see the following topic on the Microsoft website: Naming a File.

Reserved names

  • Must contain more than a period (.) or two periods (..)

  • Must not be a system-reserved name such as PRN, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, COM10, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9, NUL, CON, or AUX

  • For more information about reserved names, see the following topic on the Microsoft website: Naming a File.

Path length

  • Must contain fewer than 4,000 Unicode characters

    Important noteImportant
    If you define a path name that contains more than 256 characters, you will not be able to specify it in Office Project. To avoid this problem, define path names of fewer than 10 characters, and do not nest nodes more than 14 levels deep.

Path hierarchy depth

  • Must be fewer than 14 levels deep

Back to top

Changing Project Structure or Iterations by Using Team Web Access

To modify the team project structure or iterations by using Team Web Access

  1. In Team Web Access, in the Project list, click the project for which you want to modify areas or iterations.

  2. Follow one of these steps:

    • To modify areas, click Settings, point to Team Project, and then click Areas.

    • To modify iterations, click Settings, point to Team Project, and then click Iterations.

  3. To add a node, follow these steps:

    1. Click the parent node.

    2. On the toolbar, click the Add Child Node button.

    3. In the Node name box, type a name for the new node, and then click OK.

  4. To rename a node, follow these steps:

    1. Click the node.

    2. On the toolbar, click the Rename button.

    3. In the Node name box, type a different name for the node, and then click OK.

  5. To delete a node, follow these steps:

    1. Click the node.

    2. On the toolbar, click the Delete button.

    3. In the New reference path list, click the name of a node that you do not plan to delete, and then click OK.

      Work items that were assigned to the node that you deleted are assigned to the new reference path.

Back to top

Changing Areas or Iterations by Using Team Explorer, Microsoft Excel, or Microsoft Project

To modify areas or iterations by using Team Explorer, Microsoft Excel, or Microsoft Project

  1. Connect to the team project by following one of these steps:

  2. Follow one of these steps:

    • In Team Explorer, on the Team menu, point to Team Project Settings, and then click Areas and Iterations.

    • In Microsoft Excel, on the Team tab, in the Work Items group, click Edit Areas and Iterations.

    • In Microsoft Project, on the Team menu, click Edit Areas and Iterations.

  3. In the Areas and Iterations dialog box, follow one of these steps:

    • To modify team project areas, click the Area tab.

    • To modify iterations, click the Iteration tab.

    To add, remove, or modify the node structure, click the buttons in the following illustration:

    Adding and modifying area and iteration nodes

  4. To add a node, follow these steps:

    1. Click the parent node.

    2. On the toolbar, click the Add a child node button.

    3. Type a name for the new node, and then press ENTER.

  5. To rename a node, follow these steps:

    1. Right-click the node, and then click Rename.

    2. Type a different name for the node, and then press ENTER.

  6. To delete a node, follow these steps:

    1. Click the node that you want to delete.

    2. On the toolbar, click the Delete node button.

      The Delete Nodes dialog box opens.

    3. In the Select the new path for the items to reference list, click the name of a node that you do not plan to delete, and then click OK.

      Work items that were assigned to the node that you deleted are assigned to the new path.

  7. To promote a node, demote a node, or move a node up or down in the list, click the node, and then click the appropriate toolbar button.

  8. Click Close.

Back to top

Controlling Access to Work Items Assigned to an Area or Iteration

By assigning permissions, you can scope the set of actions that users or groups can perform on work items or test plans that are assigned to an area or iteration. You can also restrict or allow users or groups to manage the project structure for an area or iteration.

To control access to an area or an iteration by using Team Explorer, Microsoft Excel, or Microsoft Project

  1. Connect to the team project by following one of these steps:

  2. Follow one of these steps:

    • In Team Explorer, on the Team menu, point to Team Project Settings, and then click Areas and Iterations.

    • In Office Excel, on the Team tab, in the Work Items group, click Edit Areas and Iterations.

    • In Office Project, on the Team menu, click Edit Areas and Iterations.

  3. In the Areas and Iterations dialog box, click the area or iteration whose permissions you want to set, and then click Security.

    The Project Security dialog box appears, as the following illustration shows:

    Security dialog window for Areas

    You can add users or groups and then set the Allow or Deny permissions for each user or group. Specifically, you can grant or deny permission to manage the structure of a node, to view or modify work items that are assigned to that node, and to manage test plans.

    For more information, see Change Permissions for a Group or User.

  4. When you have finished modifying the permissions, click Close, and then click Close again to close the Areas and Iterations dialog box.

Back to top

See Also

Concepts

Areas and Iterations

Iteration Backlog Workbook

Scrum

Sprint (Scrum)

Iteration Activities

Other Resources

Work Items and Workflow (Agile)

Work Items and Workflow (CMMI)

Launching a New Team Project