We are getting started on Team System and would like some guidance on organizing projects. We are going to have a web based product and a smart client product with components that are going to be shared among them. If we are going to do project references among the two solutions we will have to go with one Team Project as source code cannot be shared among team projects according to this: http://msdn2.microsoft.com/en-us/library/ms242910(en-US,VS.80).aspx. Am I right in understanding this Having one team project for two different products might make it difficult to manage. Is our choice to go with dll references for the common stuff and then split into three different team projects - Web, Smart Client & Common Frameworks
Thanks
Vasu

Organizing Projects
Radexx
There are cases where you have some shared components that are used by more than one application. When this happens, I think we generally recommend that you create a separate team project for your globally shared code. You version control workspaces can contain source from more than one team project. The Build feature has a bit harder time with this configuration and perhaps someone from that feature team could talk to that.
Brian
greenie
A whole product generally undergoes that same iterations, workflow and progress so they should share the same types, iterations (milestones) etc ...
You wouldn't nexessarily want different pieces of the application to have different milestones and workflow.
You should push for project to be very course so an admin can define a workflow that defines the process for the scope that is needed.
As an internal analagy, if you were sitting in the triage for office, you wouldn't want the word and excel portions to have different bug definitions and workflow. As a senior office member I would want to query across the org and make the same decisions across all workitems and bars for those workitems.
As an administrator for the office workitem system, I would not want to make the same workitem type changes across many projects.
nicope
Are there any guidelines for those situations where large numbers of projects are unavoidable For instance, in our contacting environment we perform a large number of projects for a variety of customers. We'd love to have some other structure besides naming convention, but this doesn't seem to be possible.
wendy_yfl
What would be a good way of organizing this I guess we want a separate project for the common framework. Should we then have one project per service Or should we try to group "related" services into larger projects Or should we try to mimic our organization (i.e. try to map projects in MS Project to projects in TFS) which, for example, would mean creating a new project for every major release.
I just added a blog entry about the question on how to organize team projects.
si-borg
Brian
DrJazz
My desire, however, is to provide an easy method of grouping this projects by some criteria, for instance by client and state (active, inactive)... so we can easily find the eight active projects for Client X among the fifty active projects and 100's of older projects...
Alan Faux
_Donnie-Darko_
Well, we've tested into 100s and even approaching 1000 projects.
From the Workitem Tracking point of view:
1. Workitem types cannot span projects so if you want similar workflow and process between multiple projects, making a change to the bug type in one will need a similar change in the other. This could be an administration headache.
2. If you have many project with many different workitem types - try to work together and re-use fields. Communicate. Don't have one project create a 'priority' field and have another project create an 'urgency' field. The workitem becomes a union of all fields so in the query builder for example, you can query across all workitem types in all projects (enables the my workitems scenario no matter how many projects there are). It also makes the perf better. Lastly, the whole server can only have just over a 1000 fields. Well before that limit, you don't want a thousand fields in the querybuilder drop downs.
Personally, from a workitem tracking perspective I would push for less projects - the main consideration is the workflow and administration rules. Would these many projects have similar process, bug forms workflow etc...
Hope that helps.