26.04.2015 Views

Team Development with Visual Studio Team Foundation Server

Team Development with Visual Studio Team Foundation Server

Team Development with Visual Studio Team Foundation Server

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

• To learn more about <strong>Team</strong> <strong>Foundation</strong> Version Control extensibility, see “Walkthru:<br />

The Version Control Object Model” at http://msdn2.microsoft.com/enus/library/bb187335(VS.80).aspx<br />

• For more information about the ComponentSoftware converter, see the<br />

ComponentSoftware Web site at<br />

http://www.componentsoftware.com/Products/Converter/<br />

Project/Workspace Management<br />

• How to choose one team project versus multiple team projects<br />

• How to organize your source tree<br />

• How to define workspace mappings<br />

• How to use workspaces to isolate code changes on your computer<br />

How to Choose One <strong>Team</strong> Project vs. Multiple <strong>Team</strong> Projects<br />

To plan your project structure, evaluate common project organization strategies and<br />

choose the one that best fits your organization’s size, server constraints, and process<br />

workflow. Projects are intended to represent the largest unit of work possible in your<br />

organization. You should preferably choose a single project versus creating multiple<br />

projects. Use multiple projects when there is strong reason for doing so; for example, the<br />

team changes, or there is significant change from one release to another and you do not<br />

want to carry the unwanted work items (bugs, etc.) forward, or there is change in the<br />

process template, and so on.<br />

The main advantages of creating a single project versus multiple projects are that it<br />

simplifies the moving of requirements, features, scenarios, and bugs between releases.<br />

The most important decision points are:<br />

• Do you want to maintain work items and other assets from release to release? If so,<br />

choose to keep all releases in the same project.<br />

• Do you want to create a new process and work item structure from scratch when you<br />

move to a new release? If so, choose to create a new project for each release.<br />

Common project structures include:<br />

• One project per application. Use a single project to contain all versions of your<br />

application. Create one branch per release <strong>with</strong>in that project.<br />

o Reasons to use this structure: Makes it easy to carry forward code, work<br />

items and other assets.<br />

o Reasons not to use this structure:<br />

• Releases in parallel are forced to share work items’ schema, checkin<br />

policies, and process guidance.<br />

• Reporting is more difficult; because reports default to the entire<br />

project, you must add filtering by release.<br />

• If you have hundreds of applications, each in its own project, you<br />

may run up against TFS scalability limits.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!