SharePoint Apps model
overview
new challenges, new architecture
23/04/2014 – V1.0
Competitive forces
• We want to pay only for what we need!
• We want you to be quicker than wind!
• We want the better qua...
Competitive forces
QUICK ACCESS to
SPECIFIC NEED
SCALABILITY and STABILITY
3
The answer?
• Cloud model with multi-tenants
• Control what is running on each environment
• Microsoft cloud platform
– Ma...
The answer?
• Easier upgrade
• Multi-hosts capability
• Better integration
• Multi-devices
• SharePoint not required local...
App for SharePoint Defined
• "There's an App for that"
– Popular catch phrase that demonstrates the
popularity of App Stor...
Technologies used for the apps
• HTML (5)
• CSS
• JavaScript
• No SharePoint server-side code!
• Need some server-code? It...
App Shapes for SharePoint
8
Chrome Control
• Present the navigation header of the Host Web
in a block element on the App page
• Register the SharePoin...
App Licensing
• 1 License for each App on each Host Web
• Perpetual or Trial
• All user or multiuser
• Free, Trial, Paid, ...
Authentification & authorization
• Specific set of permissions
• If user has the ability to grand permissions,
app can be ...
App rights
• Default rights : Read, Write, Manage and Full
Control
• Not possible to customize
• Apps are granted permissi...
Impacts
• New model based on well-known
architectures
• New way for doing business
– Sell to the mass
– Expose online apps...
Tools
• Office Developer Tools in Visual Studio 2012+
• Napa for SharePoint/Office
14
Napa for SharePoint
• Develop on the cloud from any device
• HTML/CSS/Javascript
• Available for free
• Can be opened in V...
Hosting models
• SharePoint-hosted
• Cloud-hosted (AKA self-hosted)
– Provider-hosted (On-premise, ISP, etc.)
– Azure-Auto...
SharePoint-hosted Apps
• App resources are hosted in SharePoint but
code only runs in the client browser
• Code is HTML an...
Provider-hosted
• All files are located on an external server
• Pre-deployed Web/Database:
– On-premise
– Third-party (ISP...
Azure-Autohosted
• Auto-deployed Azure Web/Database
• Azure Web Site
– Limit 1
– ASP.NET (including MVC)
• Azure DB
– Limi...
Auto-hosted options
• Provider-hosted: Lots of Users, Few Apps
• Azure Autohosted: Lots of Apps, Few Users
20
Hosting options summarized
21
Hosting options summarized
22
Characteristics Of An App for SharePoint
• Always Web-scoped
• Always installed the Host Web
• Always contain an AppManife...
Structure of an App
24
Host Web
• Web where the business user installs the App
• The user interacts with the App on the Host
Web
• Only limited S...
App Web
• Dynamically created subweb,
created when the App Package includes a WSP
• Used to store Web resources:
– Pages, ...
App configuration for on-premises farm
• Ensure that App service application and subscription service are created
and runn...
App Architecture with SP2013
28
Client Script Object Models
• .NET and Silverlight API
• JavaScript API
• REST API (useful when .NET is not available)
• C...
SharePoint 2013 Remote API
30
How to choose the API
31
Sandboxed Solutions
• Sandboxed solutions are deprecated
• Really?
• Sandboxed code is deprecated and should
not be used a...
App Stores
• SharePoint Store
– Managed by Microsoft
– Must be a Microsoft Seller to upload an App
– Handles discovery to ...
App Catalogs
34
SharePoint 2010 applications
• Full-trust farm solutions and sandboxed
solutions are still available
• SharePoint 2010 dev...
Next steps?
• Speak about cloud-model around you!
• Office 365 trial subscriptions
• 5-days Training session @ Boost-IT in...
SharePoint Apps model overview
Upcoming SlideShare
Loading in...5
×

SharePoint Apps model overview

939

Published on

Published in: Software, Technology, Design
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
939
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
47
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

SharePoint Apps model overview

  1. 1. SharePoint Apps model overview new challenges, new architecture 23/04/2014 – V1.0
  2. 2. Competitive forces • We want to pay only for what we need! • We want you to be quicker than wind! • We want the better quality for us! • We want it cheap! • We want to control what we are doing with our environments • We want to develop the easiest way 2
  3. 3. Competitive forces QUICK ACCESS to SPECIFIC NEED SCALABILITY and STABILITY 3
  4. 4. The answer? • Cloud model with multi-tenants • Control what is running on each environment • Microsoft cloud platform – Major platforms in the Microsoft ecosystem available online – Owned and operated by Microsoft – Microsoft is a major competitor and goes quickly 4
  5. 5. The answer? • Easier upgrade • Multi-hosts capability • Better integration • Multi-devices • SharePoint not required locally for dev purposes 5
  6. 6. App for SharePoint Defined • "There's an App for that" – Popular catch phrase that demonstrates the popularity of App Stores • Like an App on a phone, Apps for SharePoint provide functionality that extends SharePoint • Installed on a specific SharePoint Web but always runs somewhere other than SharePoint • Rectangle thru which users interact with functionality 6
  7. 7. Technologies used for the apps • HTML (5) • CSS • JavaScript • No SharePoint server-side code! • Need some server-code? It must be hosted outside 7
  8. 8. App Shapes for SharePoint 8
  9. 9. Chrome Control • Present the navigation header of the Host Web in a block element on the App page • Register the SharePoint ChromeControl JavaScript using a <script> tag • Provide an HTML block element to put the header into • The control inherits its appearance from the Host Web • Customize the control using the available options 9
  10. 10. App Licensing • 1 License for each App on each Host Web • Perpetual or Trial • All user or multiuser • Free, Trial, Paid, or Site • With or without an expiration date • 15, 30, 60 days, unlimited, OR Perpetual • Per user or Unlimited • Free or Paid • Only applies to Apps in the SharePoint Store • Microsoft currently receives a 20% fee for paid Apps in the SharePoint Store 10
  11. 11. Authentification & authorization • Specific set of permissions • If user has the ability to grand permissions, app can be installed • SharePoint-Hosted apps have the benefit of using built-in security • Oauth is required for Self-hosted and Azure- Provisioned apps 11
  12. 12. App rights • Default rights : Read, Write, Manage and Full Control • Not possible to customize • Apps are granted permissions to a scope and all children of the scope • Defined in declarative XML 12
  13. 13. Impacts • New model based on well-known architectures • New way for doing business – Sell to the mass – Expose online apps in SharePoint • New way of thinking about IT and services 13
  14. 14. Tools • Office Developer Tools in Visual Studio 2012+ • Napa for SharePoint/Office 14
  15. 15. Napa for SharePoint • Develop on the cloud from any device • HTML/CSS/Javascript • Available for free • Can be opened in Visual-Studio 2012+ • Many great dev features 15
  16. 16. Hosting models • SharePoint-hosted • Cloud-hosted (AKA self-hosted) – Provider-hosted (On-premise, ISP, etc.) – Azure-Autohosted (Office 365) • Hybrid – SharePoint-hosted but depend on Cloud resources – Cloud-hosted but depend on SharePoint resources 16
  17. 17. SharePoint-hosted Apps • App resources are hosted in SharePoint but code only runs in the client browser • Code is HTML and JavaScript, no server-side code can run at all • Unless deployed using JSOM, no JavaScript on the Host Web • App resources are stored in an App Web • Deployed entirely to SharePoint 17
  18. 18. Provider-hosted • All files are located on an external server • Pre-deployed Web/Database: – On-premise – Third-party (ISP) hosting service • Web content NOT hosted on SharePoint's Azure • Content can use any Web technology • Content can be common for all tenants • If a WSP is included, an App Web is generated 18
  19. 19. Azure-Autohosted • Auto-deployed Azure Web/Database • Azure Web Site – Limit 1 – ASP.NET (including MVC) • Azure DB – Limit 1 – Limits during preview • 1 GB in size • Not in SharePoint Store • Workflow – No Limit – 2013 Workflow Manager 19
  20. 20. Auto-hosted options • Provider-hosted: Lots of Users, Few Apps • Azure Autohosted: Lots of Apps, Few Users 20
  21. 21. Hosting options summarized 21
  22. 22. Hosting options summarized 22
  23. 23. Characteristics Of An App for SharePoint • Always Web-scoped • Always installed the Host Web • Always contain an AppManifest.xml file that defines characteristics about the App • Never run server-side code on SharePoint server • Optionally, house App resources on an auto- created subweb called the App Web 23
  24. 24. Structure of an App 24
  25. 25. Host Web • Web where the business user installs the App • The user interacts with the App on the Host Web • Only limited SharePoint resources allowed: – App Parts – Custom Actions • App resources can be housed in an App Web or elsewhere on the Web 25
  26. 26. App Web • Dynamically created subweb, created when the App Package includes a WSP • Used to store Web resources: – Pages, CSS, Images, JavaScript, etc. • The App Web is used to store SharePoint resources: – Master Pages, Lists/Libraries, SharePoint Lists, Site Columns and Content Types, Web Parts, etc. • Isolated endpoint the App can securely call using client side code (CSOM, JSOM, REST) • The App always has Full Control of its App Web 26
  27. 27. App configuration for on-premises farm • Ensure that App service application and subscription service are created and running in farm • Subscription service is used to provide unique Site Collection ID for App Urls • Apps will be hosted on own domain, within their own frame – Leverages web browser same-origin policy for script isolation • URL naming – each app has unique URL – one app = one URL – http://default-appUID.apps.contoso.com – appUID – combination of site collection ID and particular SPWeb where app is installed http://sp/sites/web http:// /sites/web/appguidtenant-apphash1.contosoapps.com main SharePoint site app1 SharePoint site http://apps-87e90ada14c175.contosoapps.com/sites/web/014c9c59-5d9c-4a59-a5ce-2116a4c90296
  28. 28. App Architecture with SP2013 28
  29. 29. Client Script Object Models • .NET and Silverlight API • JavaScript API • REST API (useful when .NET is not available) • Choose the right object model according to your needs, constraints and existing apps 29
  30. 30. SharePoint 2013 Remote API 30
  31. 31. How to choose the API 31
  32. 32. Sandboxed Solutions • Sandboxed solutions are deprecated • Really? • Sandboxed code is deprecated and should not be used anymore • Sandboxed solution without code are used for App Web with CAML declarative XML 32
  33. 33. App Stores • SharePoint Store – Managed by Microsoft – Must be a Microsoft Seller to upload an App – Handles discovery to purchase to updates • Web Application App Catalog – Managed in SharePoint Central Administration – Company-developed or purchased Apps • Apps in Testing – Managed in a Developer Site – Sideloaded by Napa/Visual Studio – Intended for testing Apps only 33
  34. 34. App Catalogs 34
  35. 35. SharePoint 2010 applications • Full-trust farm solutions and sandboxed solutions are still available • SharePoint 2010 developments still work in SharePoint 2013 • Small changes can be required 35
  36. 36. Next steps? • Speak about cloud-model around you! • Office 365 trial subscriptions • 5-days Training session @ Boost-IT in the next few months 36
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×