SharePoint App Model Architecture & Design Considerations - Sean Hester
-
Upload
threewill -
Category
Technology
-
view
3.720 -
download
1
Transcript of SharePoint App Model Architecture & Design Considerations - Sean Hester
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Please thank our sponsors!Platinum Sponsors
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Please thank our sponsors!Gold Sponsors
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Please thank our sponsors!Silver Sponsors
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Lunch Snack
SharePint
Please thank our sponsors!Item & Event Sponsors
Speaker ShirtsAttendee Shirts
Abel Solutions
Speaker Dinner
‹#› SharePoint Saturday Atlanta
Sean Hester – Senior Research Engineer, ThreeWill
SharePoint 2013 Application Models: Architecture & Design Considerations
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Sean HesterSenior Research Engineer, ThreeWill [email protected]@seansageek@threewilllabs
Research Emerging Technologies & Best PracticesWeb Dev 1997 / .NET 2001 / SharePoint 2008MCSD Web Apps, MCTS SharePoint
About your presenter…
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
You Might Think You’ve Got Two Or Three Choices for SharePoint App Model Development: 1.App Web App (SharePoint-Hosted)2.Host Web App (SharePoint-Hosted)3.Provider-Hosted
#BoldStatement
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
#BoldStatementI Say You’ve Only Got One:
1.Where Are You Going To Host Your Provider-Hosted App?
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
2001
Team Services 1.0No There There
(Dev-Wise)
2003
WSS/Portal Server 2.0.NET
Web PartsCustom Forms
2007
WSS/Portal Server 3.0Application PagesCustom Features
2010
WSS/Portal Server 4.0Custom AdminListData.svc
Sandbox Solutions
2013
SharePoint Server 2013SharePoint Online / O365
Hosted SolutionsExpanded REST + CSOM
You Are
Here
BPOS.NET 1.0
Web MVC
(Struts)
ASP.NET MVC CTP
ASP.NET MVC
1.0
AngularBackbo
ne(i.e.
SPAs)
NHibernate
(.NET ORM)
EF 1.0
SharePoint’s Fundament
al Web Technologie
s
HTML 5.NET 4.5
MVC 5.0
EF 6.0Web API
2Signal R
…
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Don’t Panic
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
App Web App
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
SharePoint (Farm or Online)
Host Web
OotB / Out-of-Band1.Users2.CAML
(Lists… Anything)
3.Web Parts4.App Pages5.Controls6.Etc.
Browser
App Web API
SharePoint-Hosted App1. CAML (Lists,
Fields)2. Web Artifacts
(HTML, JS, CSS)3. App Parts4. Custom Actions
Cloud Friendly
SharePoint Only
Simple Structure
No Middle
Tier
Fragile Integrati
on
Exposed Flanks
Design Limitations
Data Limitations
Reduced Productivit
y
~
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
1.All Your Use Cases Are Strictly UX Related
2.You Don’t Need Private Logic3.You Don’t Need App-Specific Security4.Your Data Needs Are Simple5.You Don’t Have Strict Availability
Requirements
Sweet Spot
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Host Web App
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
SharePoint (Farm or Online)
Host Web
OotB / Out-of-Band1.Users2.CAML
(Lists… Anything)
3.Web Parts4.App Pages5.Controls6.Etc.
Browser
App Web API
SharePoint-Hosted App1. CAML (Lists,
Fields)2. Web Artifacts
(HTML, JS, CSS)3. App Parts4. Custom Actions
Cloud Friendly
SharePoint Only
Simple Structure
No Middle
Tier
Fragile Integratio
n
Exposed Flanks
Design Limitations
Data Limitations
Reduced Productivit
y
~
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
SharePoint (Farm or Online)
Host Web
OotB / Out-of-Band1.Users2.CAML
(Lists… Anything)
3.Web Parts4.App Pages5.Controls6.Etc.
API
Browser
App WebHost Web
OotB / Out-of-Band1.Users2.CAML
(Lists… Anything)
3.Web Parts4.App Pages5.Controls6.Etc.
SharePoint-Hosted App1. CAML (Lists,
Fields)2. Web Artifacts
(HTML, JS, CSS)3. App Parts4. Custom Actions5. ???
No Silo
Improved Data
Security… More Fragile Integration
Out-of-Band Sync
Reduced Host Security
ImprovedIntegration
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
1.All Your Use Cases Are Strictly UX Related
2.You Don’t Need Private Logic3.You Don’t Need App-Specific Security4.Your Data Needs Are Simple5.You Don’t Have Strict Availability
Requirements
Sweet Spot
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Sweet Spot
6.Your Data Already Exists In A SharePoint Web
7.You Want Your Data To Live In The Host Web (For Whatever Reason)
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Provider-Hosted App
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
“Provider” (Azure or Wherever)
Provider Web / Services
Provider App
1.CSOM (Broad Support) 2.Events3.Timer Jobs4.Workflow 5.App Services6.Anything!
SharePoint (Farm or Online)
App WebHost Web
OotB / Out-of-Band
API
Browser
SP App
API
SQL NoSQL Queue *Stable(r) Integratio
n
DesignChoices
Performance Controls
Revenue OptionsALM
Full Featured
Integration
Full Middle Tier! !
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
“Provider” (Azure or Wherever)
Provider Web / Services
Provider App
1.CSOM (Broad Support) 2.Events3.Timer Jobs4.Workflow 5.App Services6.Anything!
SharePoint (Farm or Online)
App WebHost Web
OotB / Out-of-Band
API
Browser
SP App
API
SQL NoSQL Queue *
Complex
Increased Effort
Learning Curve
Tooling LackingReduced Capability (vs Farm Solutions)
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
1.Your Use Cases Exceed UX2.You Need Private Logic3.You Need App-Specific Security4.You Need Complex and/or App-Specific
Data5.You Have Strict Availability
Requirements6.You Want To Leverage Server Side Code7.You Need Agency Beyond A Browser
Sweet Spot
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Sweet Spot
8.You Have Tolerance For Complexity9.You Have Time To Learn
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Capability Farm App Web Host Web ProviderAvailability, Stability 4 3 3 4
Schema, Data Management 5 3 3 5Design Flexibility
5 2 2 5
Operational Capability 4 3 3 4Packaging, Distribution, Deployment 4 2 2 4
Productivity, Resourcing, Tooling 5 2 2 3
User Experience 4 4 4 5
User Management, Security 5 1 1 5Biggest Delta
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Where Are You Going To Host Your Provider-Hosted App?
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Presentation DeckDemo Code
Complete Absence & Vacation Request, Help DeskPartials of Extranet Time & Task Entry
Reference ListWhite Paper (Coming Soon!)
Materials Available
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Questions, Comments, Accusations…
‹#› SharePoint Saturday Atlanta|SharePoint Saturday Atlanta
Sean HesterSenior Research
Engineer, [email protected]@seansageek@threewilllabs
End of SessionWe value your feedback… please
complete event evaluation