I have heard this question a number of times now - "Should our team/unit/company use Team Foundation Server or Project Server for managing our IT projects?".
My answer is that it is usually not an Either-Or proposition. The two solutions are complementary.
Project Server, or more accurately the Enterprise Project Management (EPM) solution, addresses the following business imperatives:
The net is that Project Server is a great work management solution for managing all the work in an organization. It is a great decision support system for the project stakeholders, the business decision makers, the PMO, the resource managers etc.
Now TFS. TFS is the development team's hub. This where the team lives day in and day out. TFS is a very flexible and a powerful change management system where the development team can track work, issues, risks, requirements. The change management system has deep integration with the test and the source code controls system as well and is hosted in the integrated development environment. This is great because it makes the developers very productive. All the tools they need are integrated and available in one place. TFS is where the day to day working of the team is managed.
So, the core TFS modules are
Now, the WIT system can be used for doing tactical project management, but it doesn't provide support resource management, schedule management for a portfolio of projects. TFS has no notion of a resource's overall capacity. If a resource, who is already working on tasks in a different project, is allocated work in a project, no red flags are raised. Project Server has strong resource management capabilities. Resource utilization can be managed across multiple projects. There are checks and bounds in place to prevent resource over allocations. Schedules can be managed across multiple projects - CP links (cross project links) and Deliverables/Dependencies provide a great way to manage cross project scheduling and other dependencies.
TFS doesn't really manage the fiscal aspects of the project; Project Server on the other hand has strong support for fiscal data management (resource cost rate tables, budget resources, cost resource).
One more difference that I'd like to highlight is the fact that development projects are typically executed in TFS; ongoing maintenance work is executed in other system. Anecdotally, development work accounts for less than half of the IT budget. Project Server can track all the work across the organization; app dev projects as well as maintenance work.
It makes great sense for both of these systems to work together in a complementary fashion. TFS is the execution platform and PS is the enterprise planning platform. TFS is well suited for a dev team's needs; PS is a great decision support system for the business decision makers, the PMO etc.
I drew this diagram a couple of years ago - when I was trying out the early smart art feature in PowerPoint 07 when it was still in Beta - and I think it still makes sense:
While we work on providing this functionality out of the box, there are a couple of options available currently for connecting the two systems . The PS-TFS connector solution has been mentioned on this and other blogs before. The source code and documentation is available right now. The other one is the ProjectParty solution from OranTech.