sharepoint solution model vs. app model

59
SharePoint Solutions vs. SharePoint Apps Jeremy Thake VP of Global Product Innovation AvePoint Inc.

Upload: jeremy-thake

Post on 08-Dec-2014

2.729 views

Category:

Technology


0 download

DESCRIPTION

Blog post here http://www.jeremythake.com/2013/10/sharepoint-apps-playbook-series-part-1-sharepoint-apps-vs-sharepoint-solutions/ SharePoint Full-Trust Solutions vs. SharePoint Apps: Which one should you use on-premises? Development – Level 200 Jeremy Thake, SharePoint MVP and AvePoint VP of Global Product Innovation, will give you a first-hand look into AvePoint Labs’ journey to build an app for the SharePoint 2013. Jeremy will discuss the details of the technical decisions made throughout the entire process – from idea inception through to delivery into the marketplace. If you’re thinking of building a solution on top of SharePoint, this is the one session you don’t want to miss. Demonstrations on how to get started and what resources you’ll need on your journey will be discussed, in addition to situations when to use the new app model or use Full-Trust Solutions in your on-premises environment. Attendees will leave this session with a better understanding of: • Utilizing the new SharePoint App model to bring your products to SharePoint 2013 • Some example business solutions and how they were developed • When to use the SharePoint 2013 app model compared to Full-Trust Solution and Sandboxed Solutions AvePoint is a global technology company and proven software leader. Since its founding in 2001, AvePoint has become the world’s largest provider of enterprise-class governance, compliance, and management solutions for social enterprise collaboration platforms, helping more than 10,000 customers. AvePoint, Inc. is headquartered in Jersey City, NJ, with wholly owned operational centers on five continents worldwide.

TRANSCRIPT

Page 1: SharePoint Solution model vs. App model

SharePoint Solutions vs. SharePoint AppsJeremy ThakeVP of Global Product InnovationAvePoint Inc.

Page 2: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Speaker

Jeremy Thake

Author

AvePoint Labs

VP of Global Product Innovation

@jthake www.jeremythake.com

Page 3: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Intro to customizing SharePoint

Intro to Solution Model

Intro to App Model

Comparing models

Page 4: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Intro to customizing SharePoint

Page 5: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Microsoft “V1.0”

Page 6: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthakeWindows Phone 8 Launch Oct 2012

Page 7: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

New York Fashion Week Oct 2013

Page 8: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Rumors

Page 9: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

No local environment

Page 10: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

You’ll need

Page 11: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Page 12: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

JavaScript:IsTheFuture();

Page 13: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Intro to Solution Model

Page 14: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Web Interface

Page 15: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

SharePoint Designer: Design View

Page 16: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Old skool

Page 17: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

SharePoint2007

SharePoint2010

Services (IIS, Apache, Other, …)

Services (Azure, IIS, Apache, Other…)

SP2007 SP2010

Custom Code

Custom Code

CSOM

_vti_bin_vti_bin

Evolution of customizations in SharePoint

Page 18: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Full-Trust Solutions Integration

Declarative componentsApplication PagesSite PagesWeb PartsRibbonEvent ReceiversVS/SPD WorkflowsTimer Jobs

Service ApplicationsFarm Wide Layouts filesDelegate controlsSite TemplatesSite Collection FeaturesSite Features

http://msdn.microsoft.com/en-us/library/ff798428.aspx

Page 19: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Solution ModelSharePoint

Web application

Site CollectionRoot Site

Feature 1 Feature 3

Sub Site

Feature 5

Feature 2

Feature 4

WSP1

Feature 1 Feature 2

WSP2

Feature 3 Feature 4 Feature 5

WSP3

F F

Page 20: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Versioning Solution ModelSharePoint

Web application

Site CollectionRoot Site

Feature 1V1.0.0.0

Feature 3V2.0.0.0

Sub Site

Feature 2V1.0.0.0

WSP1

Feature 1V1.0.0.0

Feature 2V1.0.0.0

WSP2

Feature 3V1.0.0.0

Feature 4V1.0.0.0

Feature 5V1.0.0.0

WSP3

F F

WSP2

Feature 1V2.0.0.0

Feature 2V1.4.0.0

Feature 1V2.0.0.0

Feature 2V1.5.0.0

WSP2

Feature 3V2.0.0.0

Feature 4V2.3.0.0

Feature 5V2.1.0.0

No Versioning at WSP level

Feature 5Feature 4 Feature 5V2.1.0.0

Feature 4V2.3.0.0

Page 21: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

What do you mean

Sandboxed Solution

Managed Code is

“deprecated”!?!

http://technet.microsoft.com/en-us/library/ee721992(v=office.14).aspx

Page 22: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Sandboxed Solutions Integration

Declarative ComponentsSite PagesWeb PartsRibbonEvent Receivers (managed only)SPD Workflowshttp://msdn.microsoft.com/en-us/library/ff798425.aspx

Page 23: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

HELP! I’m stuck in the Site Collection!

Page 24: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Server Side Object Model

SPFarm SPServer SPService SPServiceApplication SPServiceApplicationProxy

SPServiceInstance SPServiceProxy SPWebApplication SPDatabase SPSite

http://msdn.microsoft.com/en-us/library/ee538251(v=office.14).aspx

Page 25: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Client Side API

CSOMRESTASMX Web ServicesWCF Web ServicesRPC

http://msdn.microsoft.com/en-us/library/ee537564(v=office.14).aspx

Page 26: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Intro to App Model

Page 27: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

SharePoint2007

SharePoint2010

SharePoint W15

Services (IIS, Apache, Other, …)

Services (Azure, IIS, Apache, Other…) Services

(Azure, IIS, Apache,Other, etc…)

SP2007 SP2010 SP2013

Declar. App & Workflow Events

Custom Code

Custom Code

CSOM

_vti_bin_vti_bin

_api

_api

Evolution of customizations in SharePoint

Page 28: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Architecture of AppsSharePoint

Azure

Web application

IIS Web Server

Site CollectionRoot Site

App 1SP Hosted

App 3Provider Hosted

App 2Web

App 2SQL

App 3Web

Sub Site

App 3Provider Hosted

App 3SQL

App 2Azure

Hosted

App 3Worker

Azure

App 2Web

App 2SQL

App 2Azure

Hosted

Page 29: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Tenant Permission, eh?

Don’t touch other Site Collections

though!

Page 30: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Page 31: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

AvePoint Task & Calendar Sync Architecture

Azure Worker role

Azure Web role

Azure SQL role

SharePoint 2013App Package

Page 32: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

AvePoint Meetings Architecture

Azure Web role

Azure SQL role

SharePoint 2013App Package

Data Here

Page 33: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Integration

Declarative componentsImmersive PageApp PartRibbonRemote Event ReceiversVS Workflows

http://technet.microsoft.com/en-us/library/sharepoint-online-developer-service-description.aspx

Page 34: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

VersioningSharePoint

Azure

Web application

IIS Web Server

Site CollectionRoot Site

App 1V1.0.0.0

App 3V1.0.0.0

App 2Web

V1.0.0.0

App 2SQL

V1.0.0.0

App 3Web

V1.0.0.0

Sub Site

App 3V1.0.0.0 App 3

SQLV1.0.0.0

App 2V1.0.0.0

App 3WorkerV1.0.0.0

Azure

App 2Web

V1.0.0.0

App 2SQL

V1.0.0.0

App 2 V1.0.0.0

App 1V2.0.0.0

App 1V3.0.0.0

App 2V2.0.0.0

App 2Web

V2.0.0.0

App 2SQL

V2.0.0.0

App 2V3.0.0.0

App 2Web

V3.0.0.0

App 2SQL

V3.0.0.0

App 3V2.0.0.0

App 3Web

V2.0.0.0

App 3SQL

V2.0.0.0

App 3WorkerV2.0.0.0

App 3V3.0.0.0

App 3Web

V3.0.0.0

App 3SQL

V3.0.0.0

App 3WorkerV3.0.0.0

App 2 V2.0.0.0

App 2Web

V2.0.0.0

App 2SQL

V2.0.0.0

App 3Web

V3.2.0.0

Page 35: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Marketplace

SP App upgrade process

New Version Available

1.0.0.02.0.0.0

Parent Site

Child Site A

Child Site B

Child Site C

Meetings App

V1.0.0.0

Parent Site

Child Site A

Child Site B

Child Site C

Meetings App

V1.0.0.0

Meetings App

V1.0.0.0

Meetings App

V2.0.0.0

Meetings App

V2.0.0.0

App Catalog

Page 36: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

App Trust

Page 37: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

OAuth TokensSharePoint

Azure

Web application

IIS Web Server

Site CollectionRoot Site

App 1SP Hosted

App 3Provider Hosted

App 2Web

App 2SQL

App 3Web

Sub Site

App 3Provider Hosted

App 3SQL

App 2Azure

Hosted

App 3Worker

Azure

App 2Web

App 2SQL

App 2Azure

Hosted

Page 38: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

App Impersonation

Page 39: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Comparing models

Page 40: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Comparison

Full-Trust

• Server-side OM• Client-side OM• No marketplace• On-premises

only• No OAuth• UI integration• All Farm

Sandbox

• Limited Server-Side OM

• Client-side OM• No marketplace• On-premises

and Online• No OAuth• UI integration• Site Collection

only

SP Apps

• Client-side OM only

• Marketplace• On-premises

and Online• OAuth• Restricted UI

integration• Site Collection

only

Page 41: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Tough install on-premises

Page 42: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

It’s v1.0Where are my user controls?

Where is my logging?

No Pre-Prod environments?

Breaking APIs in O365

Wheres my Navigation in Chrome bar? Missing Client

Side APIs

Page 43: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

No migration

Page 44: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Page 45: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Intro to customizing SharePoint

Intro to Solution Model

Intro to App Model

Comparing models

Page 46: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Page 47: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

On-premises vs Online…

Page 48: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Learn the tools

Page 49: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Assess Solutions

Page 50: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Will they change their mind?

Page 51: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

The Future

Page 52: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Bringback Jessica!

Page 53: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

Q&AJeremy Thakewww.jeremythake.comwww.AvePoint.com

[email protected]@jthakewww.linkedin.com/in/jeremythake

Page 54: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

http://www.jeremythake.com/2013/09/sharepoint-apps-playbook-series-intro/

Page 55: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

http://sharepoint.microsoft.com/en-us/preview/sharepoint.aspx

© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.

Page 56: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

http://msdn.microsoft.com/en-us/library/jj162979(v=office.15).aspx

© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.

Page 57: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

http://technet.microsoft.com/en-us/sharepoint/fp142366.aspx

© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.

Page 58: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

https://www.nothingbutsharepoint.com

© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.

Page 59: SharePoint Solution model vs. App model

© Jeremy Thake 2013 – www.jeremythake.com - @jthake

https://www.yammer.com/spyam

© 2011 AvePoint, Inc. All rights reserved. No part of this may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written consent of AvePoint, Inc.