SESSION CODE: OFS310 Brian Farnhill Solutions Architect Extelligent Design blog.brianfarnhill.com Alexander Burton Senior Consultant OBS www.epmsource.com THE SHAREPOINT DEVELOPERS GUIDE TO PROJECT SERVER (c) 2011 Microsoft. All rights reserved. “It’s only a Service Application” (c) 2011 Microsoft. All rights reserved. Agenda ► An introduction to Project Server Development ► Three common customisation scenarios ► Questions and Answers ► Call to Action & Resources (c) 2011 Microsoft. All rights reserved. What is Project Server? (c) 2011 Microsoft. All rights reserved. Project Server Architecture 3rd Party Application WCF Forwarder Web Service Forwarder IE Project Web Application SPF and SPS Queue Web WCFServices Service Events App Server 3rd Party Application WFE Project Professional Business Objects SPF and SPS Data Access Layer (DAL) Draft Published Reporting Archive (c) 2011 Microsoft. All rights reserved. Content Config What to tell the developers ► Project Server is built on SharePoint, so a lot of the same rules apply ► The Project Server SDK is your new best friend ► Understand when to build and when to customise (c) 2011 Microsoft. All rights reserved. SharePoint vs Project Server Identical • Ribbon • JavaScript • Ajax JSGrid • Silverlight • Server Object Model • Event Handling • Solution packaging Similar • Client Object Model • Workflow • LINQ • Open Data (REST) (c) 2011 Microsoft. All rights reserved. Different • Dedicated Reporting Database • Multiple OLAP Cubes • Supported Developer environments Common Customisation Scenarios BUILDING DEMAND MANAGEMENT WORKFLOWS (c) 2011 Microsoft. All rights reserved. Demand Management in Project Server Project Server workflows ► Built on top of SharePoint Workflow ► Developed in Visual Studio 2010 ► Deeply tied with Project Server Configuration ► Associated with a Enterprise Project Type (c) 2011 Microsoft. All rights reserved. Propose a Project Idea Does the Project require funding? No Team Lead Approval Yes Approved Project Approved Rejected Project Cancelled (c) 2011 Microsoft. All rights reserved. Workflow with Visual Studio 2010 DEMONSTRATION (c) 2011 Microsoft. All rights reserved. Workflow considerations ► Project Server allows workflows to be restarted – Need to consider coding ‘Skip to Stage’ logic ► Must keep workflow and PS configuration in sync – Playbooks (Project Resource Kit) – DM Import / Export Solution Starter ► Third Party solutions exist ► Leverage the solution starters if you can – Dynamic Workflow – Morphing Workflow – Visualisation (c) 2011 Microsoft. All rights reserved. Common Customisation Scenarios LEVERAGING THE PROJECT SERVER INTERFACE (c) 2011 Microsoft. All rights reserved. PSI Admin Object Link Provider Archive Project Calendar Queue Cube Admin Resource Custom Fields Resource Plan Events Security Lookup Table Statusing Notifications Timesheet (c) 2011 Microsoft. All rights reserved. WSS Interop Interfaces to the PSI ► Two interfaces – ASMX web services and WCF Services ► ASMX behave similarly to Project Server 2007 – Must specify ?wsdl when adding reference – References must be made through the web app URL – Can’t use localhost as the URL ► Project Professional and PWA use WCF ► WCF is recommended for new applications ► Object models are identical (c) 2011 Microsoft. All rights reserved. Working with the PSI ► Services exist within the SharePoint Web Services application (because it’s just a service app!) ► These can not be called directly because of the claims-based authentication and custom WCF bindings on the web app ► Project Server provides a router service through the main PWA web app to set as an end point (c) 2011 Microsoft. All rights reserved. Common scenarios for PSI use ► Pulling data from the reporting database ► Consolidating PSI calls ► Transforming data to pass to a third party app ► Extending LOB systems with Project Server data (c) 2011 Microsoft. All rights reserved. Leveraging the Project Server Interface DEMONSTRATION (c) 2011 Microsoft. All rights reserved. Project Server Interface Considerations ► Love thy SDK and the great example code in it ► Remember to take the queue into account ► Plan use of the PSI carefully to avoid adding performance overheads to your servers (c) 2011 Microsoft. All rights reserved. Common Customisation Scenarios PROJECT WORKSPACES (c) 2011 Microsoft. All rights reserved. Project workspaces (c) 2011 Microsoft. All rights reserved. Customising workspaces ► Workspaces are just SharePoint site templates ► Inherit from the PWS site definition ► Site templates can be saved through the UI or hand crafted in Visual Studio ► Custom features can be added to templates to build in additional functionality to workspaces (c) 2011 Microsoft. All rights reserved. Workspace customisation DEMONSTRATION (c) 2011 Microsoft. All rights reserved. Workspace considerations ► Workspaces are based on a template – Limitations, such a web part connections will exist ► Risk and Issue Lists – – – – Don’t delete items Don’t change choice field values Instead override the content types Leverage calculated fields ► Bulk Update Project Sites is your friend (c) 2011 Microsoft. All rights reserved. To review…. ► Many similarities ► Three common customisation scenarios – Workflow – PSI – Workspaces ► But where to next? (c) 2011 Microsoft. All rights reserved. QUESTION & ANSWER SESSION (c) 2011 Microsoft. All rights reserved. Call to action ► Install the SDK – http://bit.ly/PS2010SDK ► Review the Developer Curriculum – http://bit.ly/PSDevCur ► Evaluate Project Server 2010 – http://bit.ly/PSEval (c) 2011 Microsoft. All rights reserved. “It’s only a Service Application” (c) 2011 Microsoft. All rights reserved. Development Resources ► Getting started with development for Project 2010 http://msdn.microsoft.com/en-us/library/gg607685.aspx ► Project Server 2010 Programming Tasks http://msdn.microsoft.com/enus/library/ee767703.aspx ► Developing Project Server Workflows http://msdn.microsoft.com/enus/library/ee767694.aspx ► PSI Reference http://msdn.microsoft.com/en-us/library/ms488627.aspx ► Project 2010 SDK http://msdn.microsoft.com/enus/library/ms512767.aspx ► Project 2010 Resource Kit http://www.microsoft.com/download/en/details.aspx?displaylang=en&i d=22810 ► Project Server 2010 Solution Starters http://archive.msdn.microsoft.com/P2010SolutionStarter ► Project 2010 Customisation and Programming Forum http://social.msdn.microsoft.com/Forums/en-US/project2010custprog/ (c) 2011 Microsoft. All rights reserved. Key Project Resources http://www.microsoft.com/project EnterpriseProject Management Microsoft Project EPM Solutions and Scenarios Microsoft EPM Partner Portal Find a Partner Project Desktop Microsoft Project on Office Online Easier with Project: Project Desktop Home Page Project Professional and Office 365 IT Professionals/Administrators-TechNet Project TechCenter (2007, 2010…) Project Solution Starters Compiled Help File Project Server Compiled Help File SharePoint Project Server 2010 Technet Pivot Developers Project Developer Home Page Getting Started with Development for Project 2010 Project Software Development Kit Project Resource Kit Team Blogs Individual Blogs Project Team Project Programmability Project Administration EPM Content Publishing News SharePoint Team Brian Smith – Project Support Doug McBlog – Project Partners Christophe Fiessinger – Project News Jan Kalis - Project Partner ForumsAsk A Question Twitter http://twitter.com/MSFTProject Facebook Microsoft Project Videoswww.youtube.com/MSFTProject CONTENT SLIDE • 3rd Annual Community SharePoint Conference • Business and Technical Tracks, all levels • Superb Internationally Renowned SharePoint Experts • Discount for Tech.Ed attendees - $675.00 (full price $795.00) • Register: www.sharepointconference.com.au • Enter Discount Code TECHED Enrol in Microsoft Virtual Academy Today Why Enroll, other than it being free? The MVA helps improve your IT skill set and advance your career with a free, easy to access training portal that allows you to learn at your own pace, focusing on Microsoft technologies. What Do I get for enrolment? ► Free training to make you become the Cloud-Hero in my Organization ► Help mastering your Training Path and get the recognition ► Connect with other IT Pros and discuss The Cloud Where do I Enrol? www.microsoftvirtualacademy.com Then tell us what you think. TellTheDean@microsoft.com © 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. (c) 2011 Microsoft. All rights reserved.