2. Ed Hild Microsoft http://blogs.msdn.com/edhild edhild@microsoft.com Technology Architect at the Microsoft Technology Center. Author of Pro SharePoint Solution Development. Callout in the SharePoint Best Practices book.
3. Agenda Review some vocabulary Why managing site provisioning is important Site provisioning examples: Out-of-the-Box Self Service Provisioning Using a Visual Studio .NET workflow Using SharePoint Designer Leveraging the Out-of-the-box workflows Review
4. Vocabulary:Site versus Site Collection Customers Customer A Customer B Customer C Project 1 Project 2 Project 3 Project 4 Project 5
5. Vocabulary:Important facts about site collections Can be provisioned at a managed path Content must reside within a single content database Supports quotas Defines an inheritance tree for security Supports site use confirmation and deletion A B C 1 2 3 4 5 DB
6. Vocabulary:Questions to ask yourself At what level will quotas be maintained? Are there different SLAs for different customers? Do we need to distribute content across content databases? Do I have to prevent accidental access across customers or projects? Will the customer sites require their own developed web parts? What will the naming conventions be for URLs?
7. Worst Practice:ie What not to do Don’t build out your taxonomy without answering the previous questions. You may have difficulty meeting SLA Backup and Recovery procedures may be untimely You could run into scalability problems You may not be able to use OOB capability to help you identify stale content You may not be in a position to enforce governance policies
8. Vocabulary:Out-of-the-Box Provisioning Controls Site Collections Self service site creation Turned on or off in Central Admin for a Web Application Allows user to create site collections within managed paths Allow user to specify title, URL, and template Sites Permissions granted within the top-level site Allows user to specify title, URL, and template
9. Self-service site provisioning Best Practice: Configure self-service site provisioning to create site collections for ad-hoc collaboration processes.
10. Vocabulary:Defining Governance “Governance develops and manages consistent, cohesive policies, processes and decision-rights for a given area of responsibility.” “Governance makes decisions that define expectations, grant power, or verify performance.” Wikipedia.org 1/24/2008
11. Envisioning a Better Way Enable the user to self provision sites but in a constrained way particular to their business process URL naming convention Selection of template Different approval paths Control security settings Audit log Allow the environment to support different provisioning processes
12. Provisioning with a VS.NET Workflow Developers can use Visual Studio to create workflows that define a process for site provisioning adding approvals, auditing, and control.
13. Key Concepts VS.NET developers can construct a workflow made up of activities Built using MOSS SDK template if using VS.NET 2005 or the VSTO template in VS.NET 2008 A code activity can create site collections Best Practices: Use the Contact helper class RunWithElevatedPrivileges Deploy as a Solution/Feature
14. Provisioning using SharePoint designer SharePoint Designer can be extended to provide site collection administrators the ability to define workflows for the creation of sub-sites.
15. Key Concepts Developers can deploy new activities that will integrate into SharePoint Designer SharePoint Designer workflows are built “in production” SharePoint Designer workflows are built against a specific list or library Best Practice: Incorporate SPD workflows as point solutions created by end-users not enterprise-wide workflows
16. Provisioning using out-of-the-box workflows You can simplify supporting multiple provisioning processes by leveraging the Out-of-the-Box workflows and extending them with an extra step.
17. Key Concepts You can’t modify the code of the OOB workflows Best Practices: Analyze perspective workflows to see if you can generalize them to this OOB+ pattern Use the Content Approval flag to know when an OOB workflow has completed and then an event handler Storing the provisioning settings externally in another list adds flexibility
18. Review Most organizations want to add control to how sites and site collections get created URL naming convention Selection of template Different approval paths Control security settings Audit log Workflows can support process for provisioning
19. Resources Governance Information for SharePoint Server 2007http://technet.microsoft.com/en-us/office/sharepointserver/bb507202.aspx Provisioning a site collection with a custom VS.NET workflowhttp://blogs.msdn.com/edhild/archive/2007/03/03/how-to-create-a-site-collection-in-a-workflow.aspx Custom filter provider web parthttp://blogs.msdn.com/edhild/archive/2007/03/28/how-to-build-a-custom-filter-provider-web-part.aspx Building Custom Activities for Use in SharePoint 2007http://msdn2.microsoft.com/en-us/library/bb629922.aspx Leveraging Out-of-the-Box workflows for site provisioninghttp://blogs.msdn.com/edhild/pages/using-oob-workflows-to-provision-sites.aspx