turbo-charge collaboration by automating site provisioning in sharepoint 2010

Post on 26-Jan-2015

705 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Turbo charge collaboration by automating site provisioning in share point 2010 presented by Bob German 6 March 2013 at SPTechCon San Francisco

TRANSCRIPT

Turbo-Charge Collaboration by Automating Site Provisioning

Bob German

SharePoint Practice Director

BlueMetal Architects

About the Speaker

Bob GermanSharePoint Practice Director and Principal Architect at BlueMetal Architects

Developer and architect on the SharePoint platform since it was called “Site Server 3.0”

Co-author of SharePoint 2010 Development with Silverlight for Addison-Wesley

http://blogs.msdn.com/BobGerman

BlueMetal Architects We are experts at building solutions that exactly meet

the needs of our customers by apply the right people, processes and platforms.

Our focus is on modernizing applications through expertise in Creative, Social, Development and Data.

We have offices in Boston, New York, and Chicago.

@Bob1German

Some of us still miss the site directory, which was removed in SharePoint 2010…

The Challenge

How do you empower end-users to create SharePoint sites while making sites consistent, organized, and discoverable?

@Bob1German

Agenda

Sites and Site Collections

“Out of the Box” Site Creation

Three models of success① Very simple: Client side

② Medium: Sandboxed workflow

③ Full featured: Farm solution

1

1

2

2

33

@Bob1German

SharePoint Containers

Farm

Web Application

Content Database

Top-level Site List/Library

Item

Item

Top-level Site

List/Library Item

Site List/Library Item

Site List/Library Item

Content Database

Top-level Site List/Library Item

Web Application

Content Database

Top-level Site

List/LibraryItem

Item

List/LibraryItem

ItemSite

Site Collection

Site Collection

Site Collection

Site Collection

SharePoint Containers

Farm

Web Application

Content Database

Top-level Site List/Library

Item

Item

Top-level Site

List/Library Item

Site List/Library Item

Site List/Library Item

Content Database

Top-level Site List/Library Item

Web Application

Content Database

Top-level Site

List/LibraryItem

Item

List/LibraryItem

ItemSite

• Storage Management

• Independent Administration

• Connection to IIS and server URL(s)

• Authentication and high-level policy settings

• Shared Service Connections

Site Collection

Site Collection

Site Collection

Site Collection

• A set of servers in one location

• A common configuration database

Site Collections

SharePoint Groups

Root of permission inheritance

Storage and Sandbox Quotas

Navigation

Rollups with SPQuery or Content Query Web Part

Content Types and Site Columns*

Lookup lists

Galleries (Web parts, Solutions, Master Pages, etc.)

Many things are scoped at the Site Collection

Farm

Web Application

Site Collection Top Level Site

Site Collection Top Level Site

Web Application

Site Collection Top Level Site

Site Collection Top Level Site

Shared Service Provider

Content DB 1

Content DB 2

Content DB 3

A site collection cannot span content DB’s, butA content DB can have many site collections

@Bob1German

SharePoint Site Model

IntranetPortal

Functional Portals

Groups & Teams

Projects & Workspaces

My Sites

Publishing• Employee Communications• Functional Portals (HR,

Finance, etc.)• Group and Team Portals• Information Repositories• Business Intelligence

Collaboration• Team / project

workspaces• Social

Networking• Personal

publishing

SharedServices• Search• Metadata• User Profile• BCS

@Bob1German

SharePoint Site Model

IntranetPortal

Functional Portals

Groups & Teams

Projects & Workspaces

My Sites

SharedServices• Search• Metadata• User Profile• BCS • Created by IT

• Content managed by business

• Self-service

Customized

Standardized

@Bob1German

A Place for Everything

SharedServices• Search• Metadata• User Profile• BCS

Portal

PortalPortalPortalPortal

Dashboard

Dashboard

AppAppApp

RepositoryRepositoryRepository

StructuredCollaboratio

n

StructuredCollaboratio

n

StructuredCollaboratio

n

Ad-HocCollaboratio

n

Ad-HocCollaboratio

n

Ad-HocCollaboratio

n

My SiteMy SiteMy SiteMy SiteMy Site

= Site Collection

AppAppApp

Customized

Standardized

• Created by IT• Content

managed by business

• Self-service

@Bob1German

Out of the BoxSelf Service Site Collection Provisioning

demo@Bob1German

12Scenario 1: Simple Site Provisioning

• Creates child sites in a site collection

• Runs on the client using the ClientObject Model- Can run in a Content Editor Web Part!

- Can run as a SharePoint 2013 app!

• Lists sites directly – no separatedirectory

• Users need to have permission to create a site

Very Simple: Client SideClient-side site listing and creation

Works in Office 365 or On-Premises – or even as a SharePoint 2013 app!

demoThe same code works in a

SharePoint 2013 app!

@Bob1German

14Scenario 2: Custom Workflow Activity

• Runs in the sandbox and on Office 365

• Custom workflow action creates and configures a child site

• Out of the box workflow actions provide approval and directory update

• Workflow runs as a privileged user to allow any user to request a site

Medium: Sandboxed WorkflowCustom Action

Works in Office 365 or On-Premises

demo@Bob1German

Site Definitions and Web Templates

Site Definitions SharePoint ships with several site definitions – team site, blank site, etc. A developer can build a site definition, but it’s not a good idea

Site Templates Earlier versions of SharePoint supported site templates (.spt files) when you clicked

“Save as a Template” Now you get a declarative web template (.wsp file)

Web Templates Contain the differences between a site definition and the site you want End users can get them with “Save as a Template” (sometimes) Developers can build them from scratch but it’s painful

WARNINGS: Do not fake out “Save as a Template” for publishing sites … it doesn’t work well Beware of the “Import .wsp file” option in Visual Studio to build web templates

Creating a Site Collection froma Custom Web Template

demo@Bob1German

18Scenario 3: Advanced Scenario

• Create site collections, not just child sites

• Use web templates to provide tailored and consistent sites

• Maintain metadata and directories for multiple site types

• Work robustly across farms

@Bob1German

APPS FARM

Site DirectorySite Collection

Metadata

Site Collection

Metadata

Site Collection: Request and Creation

RequestList

RequestList

RequestList

WorkflowWorkflowWorkflow

COLLAB FARM

TimerJob

TimerJob

TimerJob

Site Collection

Metadata

Web app 1: Custom AppsWeb app 2: Community SitesWeb app 3: Project Sites@Bob1German

Full Featured: Farm SolutionMulti-farm solution

Uses any approval workflow

Maintains metadata and directory

Could create sites or site collections with this design

demo@Bob1German

Summary

Automate site creation to- Balance user empowerment with governance- Provision sites consistently- Maintain a directory and site metadata

Choose wisely between sites and site collections

In sandboxed solutions- Elevate privileges with workflow “Impersonation Steps”- Beware of calling sandboxed solutions from sandboxed

solutions

In SharePoint 2013 apps- Elevate privileges via app identities

@Bob1German

Thank You!

@Bob1German

top related