The organization of the project is still largely subjective, although we are all faced with this, starting with Team Foundation Server. The ALM documentation is useful, and in fact there is a newer version of the documentation that I would recommend using. You can get it from CodePlex in the Visual Studio TFS Branching Guide 2010 . Even if you do not plan to fork, it is always a smart idea to be able to do this, in case you need to.
Use the previous guide, and this is newer, I have a structure that I use as a template. I will show you the structure, which includes only the "Main" branch, and if you use the branch, you can understand that everything in the "Main" section will be reproduced, if necessary, for each.
$/Team Project Root
/Main
/Documentation
/Project A
{XML Help support - such as Sandcastle projects}
/Project B
{XML Help support - such as Sandcastle projects}
/References
{3rd party and scripts to install any the GAC, as/if needed}
/Source
/Project A
{Project file, and associated source}
/Project B
{Project file, and associated source}
/Tests
/Project A
{Project file, and associated source}
/Project B
{Project file, and associated source}
{Solution Files}
, . , , , . Main, :
. Builder Builder Sandcastle , , .
- , , Team Foundation Server. , , , , , , .
- . , . , , .
- , , . "Project A" Source "Project A" .Tests .
, " " . , "-".
, , . , , , , . , , , , .