Upload
jeremy-thake
View
2.730
Download
0
Embed Size (px)
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 SolutionsAvePoint 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.
Citation preview
SharePoint Solutions vs. SharePoint AppsJeremy ThakeVP of Global Product InnovationAvePoint Inc.
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
Speaker
Jeremy Thake
Author
AvePoint Labs
VP of Global Product Innovation
@jthake www.jeremythake.com
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
Intro to customizing SharePoint
Intro to Solution Model
Intro to App Model
Comparing models
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
Intro to customizing SharePoint
© Jeremy Thake 2013 – www.jeremythake.com - @jthakeWindows Phone 8 Launch Oct 2012
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
New York Fashion Week Oct 2013
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
No local environment
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
JavaScript:IsTheFuture();
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
Intro to Solution Model
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
SharePoint Designer: Design View
© 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
© 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
© 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
© 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
© 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
© 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
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
HELP! I’m stuck in the Site Collection!
© 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
© 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
© 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
© 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
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
Tenant Permission, eh?
Don’t touch other Site Collections
though!
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
AvePoint Task & Calendar Sync Architecture
Azure Worker role
Azure Web role
Azure SQL role
SharePoint 2013App Package
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
AvePoint Meetings Architecture
Azure Web role
Azure SQL role
SharePoint 2013App Package
Data Here
© 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
© 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
© 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
© 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
© 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
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
Tough install on-premises
© 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
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
Intro to customizing SharePoint
Intro to Solution Model
Intro to App Model
Comparing models
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
On-premises vs Online…
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
Will they change their mind?
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
Q&AJeremy Thakewww.jeremythake.comwww.AvePoint.com
[email protected]@jthakewww.linkedin.com/in/jeremythake
© Jeremy Thake 2013 – www.jeremythake.com - @jthake
http://www.jeremythake.com/2013/09/sharepoint-apps-playbook-series-intro/
© 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.
© 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.
© 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.
© 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.
© 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.