I'm trying to find the best way logically separate projects in TFS 2010. Currently we have three separate projects:
TFS partitions projects into Team Projects. All of these three are really separate "projects", but the last two depend on the framework .dll reference. In the Java world you can set up dependency management where the core framework would build and publish to a central repository in the company and the client projects could be checked out separately and just reference the dll in the repository so no projects would break.
Does TFS manage dependencies? Should these three projects be set up in separate team projects or the same one? Can you build across team projects?
What is the best way to set up team projects so that there are minimal dependency issues, but are also partitioned so that they can be individually worked on and build scripts can access all projects for CI?
TFS Team projects are not comparable to what you may understand as a software project/solution. Basically a Team project is a container for a bunch of stuff that you want to keep together.
So I think it's best in your case to have one team project for all the three software projects you mention above. They obviously are interdependent and have to be maintained together anyway. Regarding CI, you can access each software project on it's own or all in one go, you can do whatever is most useful for you.
HTH.
Thomas