With P12, we wanted to dramatically improve the extensibility of Project Server. We have found that a bit over 50% of our Project 2002/2003 customers customize Project Server. This can range from integrating with LOB or G/L systems to tightly integrating a 3rd part product with Project Server (for example, EPK's products).
Today, developers need to have a reasonably deep knowledge of Project Server and the Project Server database to extend Project 2002/2003. We wanted P12 to be relatively easy to extend by developers familiar with the Microsoft platform.
Some key extensibility points re Project Server 12:
Project Server 12 is a managed application running on top of ASP.Net
We replaced the PDS with a new, much deeper set of web services called the Project Server Interface (PSI). ALL of our clients (Project Professional, Project Web Access) communicate with Project Server through the PSI. The PSI has over 350 methods. These methods include the standard CRUD methods for Projects, Resources, Tasks, Assignments, and Admin functions. PSI methods use and return ADO.Net (typed) datasets.
Project Server 12 includes pre- and post-events for many of the PSI methods. This allows developers to subscribe to the events of interest, run their business logic, and allow a transaction to proceed or be rolled back. I will ask one of the workflow experts on my team to post in the future on how you can use this functionality to build rich workflows on top of Project Server ... all tightly integrated with Visual Studio.Net.
Project Server 12 includes a "true" reporting database. We have built a reporting database that moves data from our operational stores (used by Project Pro and PWA) into a database consisting of "wide", denormalized tables. The reporting db is quite complete = projects, resources, tasks, assignments, and timesheet data. The Project Server Reporting DB makes it much easier to plug in the report writer of choice to build banded reports/briefing books on very large datasets.
What does all this mean? Project Server 12 will be vastly easier to extend for developers familiar with Visual Studio.Net and ASP.Net. And the new broader functionality in P12 eliminates the need to write many of the PDS extensions developed for Project 2003. We have been using these new platform features for the past 12 months to develop Project Web Access and Project Professional. We think that you are going to love the new PSI as well.