Anatomy of a Team Project


Before you dive into your project management duties as part of the initial phases of your project, you should become familiar with Team Explorer, which is the primary interface by which your team will interact with Visual Studio Team System.

Understanding Team Explorer

Team Explorer gets installed when you install the Team Foundation Client software. If you have Visual Studio 2005 installed, Team Explorer will come alive from within Visual Studio providing a new Team Explorer dockable window and new menus such as the Team menu. If you don’t have Visual Studio 2005 installed, Team Foundation Client installation routines will set up the Visual Studio 2005 development for you. Figure 3-3 depicts Team Explorer from within Visual Studio 2005.

image from book
Figure 3-3: Team Explorer in Visual Studio

Team Explorer is the main interface for all of the services provided by Team Foundation Server. It provides you with access to work items and work item queries, documents stored in document libraries on your Windows SharePoint project portal, all project reports, automated Team Build definitions, and access to the source code repository. Team Explorer also acts as a launching ground to Office Excel and Office Project integration and to the project portal and process guidance Web pages.

Accessing Process Guidance

As a project manager, you will likely be interested in how to access the process guidance Web pages. Process guidance provides you and your team with the context of the selected process template and underlying methodology and a wealth of reference information. MSF Agile, for example, provides information such as the core concepts of the methodology, details on how cycles and iterations relate to one another, team model definitions, core team mindsets, and tasks you need to perform to get started with the methodology. MSF Agile process guidance also provides details on each of the roles your team members will play on a project. These role descriptions also provide step-by-step guidance on associated workstreams and activities these roles will participate in. For example, the MSF Agile process guidance specifies that the Business Analyst role is responsible for helping to capture the project vision. It goes further by detailing the activities associated with creating a project vision, such as writing the vision statement and creating and refining personas. You can even see step-by-step how to perform each activity. For example, for the Write Vision Statement activity, the MSF Agile process guidance details how to summarize the project background, explain driving factors, identify users of the system, and determine key value propositions that reinforce the need of the project.

To access the process guidance Web page, perform the following steps:

  1. In Team Explorer, right-click your Team Project and choose Show Project Portal from the shortcut menu. Alternatively, you can choose Show Project Portal from the Team menu within Visual Studio 2005. This will launch the Windows SharePoint site that was created for your project by the Project Creation Wizard.

  2. From your project portal site, choose the process guidance link from the SharePoint navigation on the left side of the Web page. Your browser should now display the process guidance pages associated with your project.

You can also access process guidance directly from Team Explorer by right-clicking the Work Items folder under your team project and selecting Team Project process guidance from the shortcut menu.

Process guidance pages also go on to describe each work item type you will use in your project, detailing each work item’s workflow states and transitions and how to use each field in the work items for your project. Process guidance also provides a few other ways of accessing information-through the Views and Index pages. The Views pages provide an alternate perspective of the content contained within the process guidance pages. Here the information that can also be accessed from other areas of process guidance is organized into different categories. The Index page works as the index of a book, providing you a categorized reference to all aspects of the site.

As a project manager, the process guidance pages are quite relevant because they reinforce the underlying methodology you will be using to deliver software. Many process guidance pages are available for your reference; however, you may want to change the default page that will be displayed to you when you enter the site to make it easier to access the information that is relevant to your role. To configure the process guidance pages to display the Project Manager role page when initially launched, perform these steps:

  1. Launch process guidance by right clicking your project and choosing Show Project Portal from the shortcut menu.

  2. After the process guidance is displayed in a browser window, navigate to the page that offers a description of the project manager role by clicking the Role tab at the top of the Web page. Then click the Project Manager role from the list of roles on the left side of the process guidance page.

  3. In the top right corner of the Project Manager description pages, select the Set As Start Page check box.

After performing this step, whenever you next launch process guidance, the first page you will see will be the Project Manager role page. You can instruct all of the members of your team to configure their Start page as appropriate.

Work Items and Work Item Queries

Team Explorer displays your project in a folder-like structure. If you expand your project, you see that there is a folder for every main set of services provided by Team Foundation Server. The first folder you will see is the Work Items folder, and if you expand it, you will see that here you will be able to access work item information through work item queries. Work items are the heart and soul of Visual Studio Team System, especially for project managers. They specify everything that needs to get done on a project and are the source of virtually all reports and the underlying Visual Studio Team System data warehouse.

To view work items on your projects, you will use work item queries. There are a number of work item queries automatically created by the process template you used during the creation of your project. These queries provide filter criteria to help you determine the list of work items you want displayed. For example, in a project created from the MSF Agile process template, you will see a Project Checklist work item query, which will return a list of work items, regardless of their type, that are set within your current project and are in the “closed” state and that have their Exit Criteria check box selected. Alternatively, if you chose to create your project by using MSF for CMMI, you will see a work item query called Customer Requirements, which will return to you a list of Requirement work items that have a requirement type of either a Scenario or Quality of Service. To view a list of queries and execute a work item query to return a list of work items that meet the criteria specified in the work item query, perform these steps:

  1. In Team Explorer, open the Work Items folder under your Team Project. Expand the Team Queries folder to view a list of all queries for your project.

  2. Select a query from the list of work item queries that provides the closest search criteria for your needs, such as All Work Items, which will return all work items in your project that are not in the closed state.

  3. Double-click the work item query to execute your query against your Team Project. The results of the query will be displayed as a grid within Visual Studio 2005. Click a returned row to view the work item details.

You will also see an area called My Queries. These are work item queries that are not shared with the team or are standard work item queries that you may use often. You can simply drag one of the provided work item queries to the My Queries folder to add an existing query to this list. More importantly, it is very easy to customize existing queries or even create your own to provide you with lists that are unique to your team, project, or organization. To customize a work item query, right-click it, preferably from your My Queries folder, and select View Query from the shortcut menu. This will display a work item query builder window, which you can use to specify filter criteria for your query. Each row in the query builder represents a filter condition. The first column allows you to specify an AND/OR relationship of the filter condition. The remaining columns allow you to specify field matching criteria: the Field column allows you to specify the work item field value you want to evaluate, the Operator column allows you to specify the conditional operator for the field value comparison, and the Value column allows you to specify the target of the field value comparison. Creating your own custom queries is very similar to customization, except that instead of viewing an existing query definition, you would choose Add Query from the Team menu. You will be prompted to save your query when you close the query builder window and will have an opportunity to provide a name and a location for your new query, You can name the query anything you want and store it as a My query that will be visible only to you under the My Queries folder or to a file on your computer.” For more information about how to customize work item queries, refer to Chapter 7.

We just looked at how we can view work item information through work item queries. The next step is to understand how to create work items for your team. The good news is there are a lot of ways to do this; however, let’s start by looking at how to create work items from within Team Explorer. To create a new work item, select the Work Items folder from Team Explorer and choose Team | Add Work Item. Alternatively, you can right-click the Work Item folder within Team Explorer and choose Add Work Item from the shortcut menu. You should see that you have a choice of a number of different work item types. The type of work item you will be able to add will depend on the process template you used to create your project. At this point, choose a work item type; for example, a Bug, and the work item form will appear inside of the Visual Studio IDE. Every work item type will have a different form for filling out its details.

Caution 

Don’t let the name of the work item fool you. The definition of a Bug work item in an MSF Agile project will be different from that of a Bug in an MSF for CMMI project.

Work item forms are broken down into the following sections:

  • Title Specifies the brief description of the work item

  • Classifications Help to categorize your work items

  • Status Provides information on the workflow and assignment of the work item

  • Work item detail Allows you to specify additional information about the work item and see a work item history of change and its association with other Visual Studio Team System information.

Even though every work item type is different, all work items will share some common traits. For example, all work items have a History tab. Work item history will provide you with a way of understanding all of the changes to the work item during the duration of your project. History will be updated every time you change any detail of a work item and then choose to save those changes. The history section will show you which value changed with every save, as depicted in Figure 3-4. Every time you save a work item, the history tab will display the date and time of the save and detail the changes made to the work item field by field. The history area also provides you with the ability to add open-ended comments to your work items as you make changes allowing you to provide extra information to the work item or to participate in a work item–related discussion.

image from book
Figure 3-4: Work item history

Work items also have a Links tab. Here is where you will be able to associate a work item with various pieces of information such as other work items, source control change sets, files in the source code repository, and hyperlinks to anything with a URL including Web pages or documents stored within your project portal. In order to jump to the destination of a link, simply select the link and click Open or double-click the link in the list of links for the work item. The File Attachments tab will provide you with the ability to save associated documents along with the work item. A good example of this usage is to attach screen shots of a bug found in your solution to a Bug work item to help give developers assigned to resolve the bug more context and insight into the problem.

In Team Explorer, a related work item is simply a work item that has a link to another work item. To quickly create a related work item from an existing work item in your Team Project, right-click the existing work item in a work item query results window in Visual Studio 2005 and choose Add Related Work Item from the shortcut menu. Then choose the type of work item you want to create. The work item form will appear with a link to the original work item already populated in the Links tab (see Figure 3-5). In a similar fashion, you can make a copy of an existing work item by right-clicking the work item in the work item query results window in Visual Studio 2005 and choosing Create Copy Of Work Item in the shortcut menu. In the resulting dialog box, verify the Team Project you would like to make a copy of the item in (by default, it is your current team project) and the work item type of the copied work item (note that the target work item does not need to be of the same type as the original work item type). Again, the new work item will be automatically linked up with the original work item you just made a copy of. This may sound trivial; however, ensuring a healthy degree of traceability between work items means better reporting and a better flow of work. These methods make implementing high-fidelity traceability easier.

image from book
Figure 3-5: Creating links in a work item

Warning 

Do not store all your project documentation using files attached to work items. You should use the document libraries in your project portal for all project-level documentation unless specifically relevant to a work item and accessible only by those who can access the details from that work item, such as storing screen shots along with recorded bugs.

As a project manager, you might not feel right managing your work items within Visual Studio, unless, of course, you feel just as at home in Visual Studio as you do in Office Project. For this reason, work items can be managed with both Office Excel and Office Project via a Microsoft Office plug-in that is included in the installation of the Team Foundation Client software. This functionality is very powerful; in fact, many project managers will almost never use Team Explorer to manage work items after the project is underway; they will use Office Excel or Office Project exclusively.

There are two ways that you can integrate Office Excel/Office Project with work items: by either pushing to the Office products or by having the Office products pull work items from Visual Studio Team System. Pushing refers to the process of sending the results of a work item query from within Team Explorer. Pulling refers to retrieving the results of a work item query initiated from within Office Excel or Office Project. Using either method will result in a twoway link between work item data stored within Visual Studio Team System and the work item information within Office Excel/Office Project. This means that if work item information changes in either Office Excel/Office Project or directly through Team Explorer, the changes will be reflected in both locations after you perform a synchronization.

Note 

Conflicts are always a possibility when you are allowed to edit work item information from different locations. For example, one of your team members may by modifying a Risk work item through the Visual Studio interface at the same time you are modifying the Risk item through Office Excel. When you perform a synchronization from Office Excel, a collision will be detected, and you will be given the opportunity to resolve the conflict by choosing which version should be stored in the Team Foundation Database.

To push work item information to Office Excel or Office Project, perform the following steps:

  1. Launch Team Explorer from within Visual Studio 2005.

  2. Navigate to your project in Team Explorer and expand the Work Items folder.

  3. From the Team Queries subfolder, select a query whose results you want to manage within either Office Excel or Office Project.

  4. Right-click the work item query definition, and on the shortcut menu, click Open In Microsoft Excel or Open In Microsoft Project.

These steps will then launch Office Excel or Office Project (depending on which command you clicked) and then run the query you specified and return the results to the selected application. Figure 3-6 demonstrates what it might look like in Office Excel. From within Office Excel/Office Project, notice the new Team menu, which was installed with the Team Foundation Client. The Team menu provides you with the options to synchronize changes between Team Foundation Server and Office Excel/Office Project, configure column settings, edit links and attachments, and modify project classifications.

image from book
Figure 3-6: Microsoft Office Excel integration

If you wanted to pull work item information to Office Excel or Office Project, perform the following steps.

From Microsoft Office Excel:

  1. Choose New List from the Team menu to display the Connect To Team Foundation Server dialog box.

  2. Select your project from the list of Team Projects and click OK. Note that you also have the opportunity to connect to a new computer running Team Foundation Server at this point.

  3. You will be presented with a dialog box asking if you want to fill your new list with the results of a query or by typing new values you want to publish to Team Foundation Server. For the purpose of this exercise, ensure that Query List is selected and then choose a specific work item query from the Query Office list. Click OK to populate the Excel list with the results of the query.

From Microsoft Office Project:

  1. From the Team menu, select Choose Team Project to display the Connect To Team Foundation Server dialog box.

  2. Select your project from the list of Team Projects and click OK.

  3. From the Team menu, choose Get Work Items to display a dialog box that will allow you to specify the work items you want to bring into Office Project as tasks. Here you will be able to select a work item query in your Team Project, specify work items by their ID, or specify a value that must be contained within the work item title. In this case, select the Title Contains option, and then type set up: in the corresponding field with All Work Item types selected in the Type Selection drop-down list. Click Find to retrieve a list of work items that match this criteria.

  4. Select the work items you want to import from the results of the Find command by checking the work items in the results list. You can optionally use Select All or Unselect All to help you with this task if there are a lot of work items. When you have finished selecting the work items, click OK to load the work item information into Office Project.

    Note 

    More information on how to use Office Excel and Office Project will be provided in Chapter 4, “Planning a Project.”

There are lots of reasons you might want to manage your work items in Office Excel and Office Project. For example, after you have work items in Office Excel, you can enjoy all of the Office Excel goodness you have come to enjoy such as automatically formatted lists, conditional formatting, filtering, pivot tables and pivot charts, and sorting. In addition, managing your work items through Office Excel or Office Project also means that you can take your work item information with you. By default, Team Explorer cannot be used when you are not connected to Team Foundation Server. When you use Office Excel and Office Project, you can make modifications to work items, add new work items, and delete work items even when you are not connected. When you are able to connect to Team Foundation Server, all you would need to do is to choose Publish Changes from the Team menu to synchronize all your changes and all of the changes to work items that may have been made by others on your team. Another added bonus of using Office Excel and Office Project to manage your work items is that all of the rules specified by the work item type, such as mandatory fields, workflow rules, and reference data, which includes lists of areas and iterations or project team members, are available within the products. Essentially, this means that you will be able to use Office Excel and Office Project for virtually every aspect of work item management.

Classifications

Your project will have a lot of work items of different types. Visual Studio Team System provides a feature called Classifications to better group work items into more manageable buckets. Visual Studio Team System provides two types of work item classifiers, areas and iterations. An area is literally a functional area or physical component of your solution. You can have an entire tree of areas which you can assign work items to. The project areas are then used to organize and display work items into logical groupings such as in reports or as a filter criteria in work item queries. Iterations are very similar, but they represent segments of time that work items must be completed within. Just as with areas, you can create a hierarchy of iterations that allow you to categorize work temporally. Examples of areas and iterations are show in Figure 3-7.

image from book

image from book
Figure 3-7: Hierarchical project classifications

Area classifications have another really valuable feature relating to security. In order to modify classifications, you must have the appropriate permissions to do so, and by default, any team member who is a part of the Project Administrators group can do this. Areas, however, can take this a step further and even restrict users from editing and viewing work items assigned to specific area nodes. For example, you could prevent certain members of your team to see only work items that are assigned to the Mobile Client area by excluding their View Work Items In This Node permission on all other nodes. Using permissions such as this is just one way that you can logically partition your teams and their work.

You can customize classifications from Visual Studio 2005, Office Excel, or Office Project. From within Office Excel or Office Project, on the Team menu, choose Edit Areas And Iterations. From Visual Studio, select your team project in Team Explorer and then choose Team Project Settings | Areas And Iterations from the Team menu to display the Areas And Iteration dialog box. To add a new area or iteration, simply select the parent of the area or iteration in the corresponding tree list and click Add A Child Node or press Insert. Similarly, you can use the Areas And Iterations dialog box to delete, move, and indent areas and iterations to best fit your project’s structure.

Project Portal

Your project will undoubtedly create document artifacts, from project charters to meeting minutes and project plans. Visual Studio Team System creates a Windows SharePoint portal for each of your team projects, automatically creating document libraries and populating them with templates ready for use. After the site has been created, it is completely disconnected from the rest of Visual Studio Team System and operates as every other Windows SharePoint site does, with the exception of displaying reports. Once the site is created, you can feel free to create your own SharePoint lists, calendars, or subsites as you would on any other Windows SharePoint site. You can also create your own document libraries and populate them with your own documents.

Note 

Windows SharePoint Server is a very rich product with lots of options and features. This book will not provide you with details on how to use or configure Windows SharePoint Server other than in areas that directly relate to Microsoft Visual Studio Team System.

Documents and SharePoint

Team Explorer also provides you access to the documents stored on the project portal through the Documents folder under your Team Project. If you navigate to the Documents folder, you will see that you can view and access all of the document libraries and documents contained within directly from Team Explorer instead of being required to access content through your Web browser. The default document libraries and associated content you see when you initially create a Team Project are specified in the process template you used during the creation of your Team Project. You can learn how to modify the default content in Chapter 7.

From the document folder, you will have the option to create new document libraries, create new folders within document libraries, upload new documents into existing document libraries and folders, and open, edit, and delete documents stored within document libraries. To create a new document library by using Team Explorer, right-click the document folder under your Team Project, and choose New Document Library from the shortcut menu. To create new folders within document libraries, which are the root folders listed directly underneath the Documents folder in Team Explorer, right-click a document library folder and then choose New Folder from the shortcut menu. If you want to open a document, you have two choices, Open and Edit, which you can access from the shortcut menu after you right-click a document. If you choose Open, the document is launched in read-only format. If you choose Edit, the document is launched, and you will have the ability to perform check-out/check-in operations from the document library to help maintain document versioning.

Of course, you can still access all of the documents in the project portal from a browser, which will likely be the most common method for those on your team who do not need to interact with Team Foundation Server directly, such as business sponsors. The Documents folder in Team Explorer provides an interface to documents stored in your document libraries. Note, however, that the documents you see listed in Team Explorer on your system may not always be up to date. To ensure that you’re seeing the latest list of document libraries, folders, and documents, right-click the Documents folder under your Team Project and choose Refresh from the shortcut menu. This will instruct Team Explorer to refresh its list of document library contents from your project portal site.

Reports

From a project manager’s perspective, Visual Studio Team System’s reports are your best friend. As we discussed in Chapter 2, Visual Studio Team System Reports provide you with insight into how well your project is going, providing you with near real-time representations of the work that is being done, the quality of the software being produced, and the overall production trends of your team. These reports will provide you with the ability to monitor the progress of your project in real time without having to continually pester team members for their status. The list of reports for your project are accessed from the Report folder under your Team Project in the Team Explorer. Projects that were created from different process templates will generate different reports. For example, MSF for CMMI has a number of reports that are not provided in MSF Agile, and the Scrum process template from Conchango has an entirely different set of reports that are designed specifically for the Scrum methodology. At project inception, however, reporting will not play any role; because of this, we will provide you with more detailed information on how to interpret and act on the more significant MSF Agile– based reports in Chapter 5, “Monitoring and Controlling Projects Execution.”

Builds

In Chapter 2, we discussed the importance of automated builds to the quality of software. The Build folder under your Team Project is where your developers will create and manage automated builds. Creating automated builds is a fairly technical task, and as a project manager, you will likely not be directly responsible for performing this task. You will likely, however, want the ability to see results of an automated build such as what tests passed and failed during the build and details on what features or bugs were included in each of the builds. Before you can do any of this, however, you will need to have created a build, and that means that your team will have already produced code. For more information on how to view and interpret the results of automated builds, refer to Chapter 5.




Managing Projects with Microsoft Visual Studio 2005 Team System
Managing Projects with Microsoft Visual Studio 2005 Team System
ISBN: 735622167
EAN: N/A
Year: 2007
Pages: 93

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net