SlideShare a Scribd company logo
Apps for SharePoint 2013
Alex Pop
July 2013
Application development models in
SharePoint 2010
● sandboxed solutions:
○ limited server side API access;
● farm solutions:
○ installed using "*.wsp" packages that have impact on
the whole SharePoint farm when installed or
updated
○ on a production system these solutions have to be
installed out of hours;
Application development models in
SharePoint 2013
● sandboxed solutions: deprecated;
● farm solutions: only use for applications targeted at
SharePoint administrators;
● new "apps for SharePoint" model:
○ THE recommended model for end user applications;
○ derived from SharePoint Online and Office 365
requirements;
○ isolates all custom server-side code from the
SharePoint instance
"Apps for SharePoint" types
● There are 3 new types of SharePoint
solutions:
○ SharePoint hosted, autohosted and provider hosted;
○ they all create a new ".app" file that has to be
deployed to SharePoint using a very complex
process;
● SharePoint hosted app: a SharePoint app project
containing SharePoint assets(lists, workflows, etc.) +
web pages that can only use client side code;
"Apps for SharePoint" types(cont.)
● Autohosted and Provider hosted apps:
○ both have a SharePoint app project and an ASP.
NET web project: a SharePoint app and a web
application;
○ the Autohosted solution packages all assets
(including the website and the database scripts) in
the ".app" file;
○ the Provider hosted solution packages only the
SharePoint app project into the ".app" file. The web
application deployment is done independently.
Provided hosted apps - integration
● the web application communicates with SharePoint
using:
○ a shared security certificate;
○ a helper library "AppForSharePointWebToolkit"
(available as a NuGet package);
○ the SharePoint Client Object Model(CSOM);
○ the SharePoint app manifest needs to list the
SharePoint permissions that your app needs;
Provided hosted apps - integration
(cont.)
● the web application can expose "app parts"
to SharePoint: <iframe> elements that render
content from the web application;
● the SharePoint app can:
○ package SharePoint assets(lists, content types,
workflows, etc.);
○ extend SharePoint menus;
What this all means
● employ modern web development practices:
develop clean, testable applications;
● leverage existing web development skills: you
don't need advanced SharePoint knowledge to
accomplish even the most basic tasks;
● scalable, distributed web applications: you can
allocate more resources to an app for SharePoint if and
when needed;
● support for other application frameworks?
Scenarios enabled by Apps For
SharePoint
● use SharePoint as a data store together with
a custom web application;
● use a third party data store together with a
custom web application;
● mix and match SharePoint and external data
stores;
● provide "app parts" to SharePoint;
Current SharePoint application
architecture
● the entry point for all applications is a
SharePoint page;
● the SharePoint app delivers all SharePoint
specific assets;
● the web application will render all UI
components;
● the web application will interact with
Sharepoint using the current user identity or
using a custom identity within a scheduled
job;
Development update
● Bootstrap is everywhere:
○ Bootstrap master pages now deployed on the
SharePoint server;
○ Bootstrap is used to style the app for SharePoint;
○ The result is consistent styles applied throughout;
● ASP.NET MVC:
○ provides Windows authentication and session
identity;
○ builds the single page application skeleton;
○ minifies and concatenates all assets;
Development update (cont.)
● ServiceStack: used to build RESTful , testable web
services (90% server side code coverage with
AutoFixture);
● AngularJS:
○ MV* framework for single page applications;
○ reusable web components(a.k.a the future of web);
○ testable code via dependency injection;
● Kendo UI Web: powerful grid and other widgets plus
IE8 support (now compatible with AngularJS);
● Entity Framework 5: using the code first model with
database migrations.
Notes
● Reimagine SharePoint Development: http:
//msdn.microsoft.com/en-
US/office/apps/dn133840
● Deciding between apps for SharePoint and
SharePoint solutions: http://msdn.microsoft.
com/library/sharepoint/dn268593(v=office.
15)

More Related Content

What's hot

Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...BlueMetalInc
 
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015Bram de Jager
 
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...Bram de Jager
 
SharePoint Framework - Developer Preview
SharePoint Framework - Developer PreviewSharePoint Framework - Developer Preview
SharePoint Framework - Developer PreviewSean McLellan
 
SharePoint Framework
SharePoint FrameworkSharePoint Framework
SharePoint FrameworkVitaly Zhukov
 
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted AppsSharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted AppsSanjay Patel
 
SharePoint 2013 apps overview
SharePoint 2013 apps overviewSharePoint 2013 apps overview
SharePoint 2013 apps overviewElie Kash
 
Webhooks in Microsoft SharePoint Online
Webhooks in Microsoft SharePoint OnlineWebhooks in Microsoft SharePoint Online
Webhooks in Microsoft SharePoint OnlineNetwoven Inc.
 
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...Bram de Jager
 
Introducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich ApplicationsIntroducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich ApplicationsRyan McIntyre
 
Deep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft GraphDeep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft GraphBram de Jager
 
Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013Sonja Madsen
 
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...Corey Roth
 
#OCSPUG SharePoint 2013 Best Practices
#OCSPUG SharePoint 2013 Best Practices#OCSPUG SharePoint 2013 Best Practices
#OCSPUG SharePoint 2013 Best PracticesIvan Sanders
 
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Bram de Jager
 
SharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSPC Adriatics
 

What's hot (20)

Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
Apps 101 - Moving to the SharePoint 2013 App Model - Presented 7/27/13 at Sha...
 
Sharepoint 2013 App
Sharepoint 2013 AppSharepoint 2013 App
Sharepoint 2013 App
 
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
Develop, Build, Package and Deploy Office Add-ins with Visual Studio - ESPC 2015
 
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
Developing SharePoint 2013 apps with Visual Studio 2012 - SharePoint Connecti...
 
SharePoint Framework - Developer Preview
SharePoint Framework - Developer PreviewSharePoint Framework - Developer Preview
SharePoint Framework - Developer Preview
 
SharePoint Framework
SharePoint FrameworkSharePoint Framework
SharePoint Framework
 
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted AppsSharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
SharePoint 2013 “App Model” Developing and Deploying Provider Hosted Apps
 
What's New for SP2010 Devs
What's New for SP2010 DevsWhat's New for SP2010 Devs
What's New for SP2010 Devs
 
SharePoint 2013 apps overview
SharePoint 2013 apps overviewSharePoint 2013 apps overview
SharePoint 2013 apps overview
 
Webhooks in Microsoft SharePoint Online
Webhooks in Microsoft SharePoint OnlineWebhooks in Microsoft SharePoint Online
Webhooks in Microsoft SharePoint Online
 
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
Developing hybrid SharePoint apps that run on-premise and in the cloud - Bram...
 
Introducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich ApplicationsIntroducing Office Web Apps as a Tool for Developing Content Rich Applications
Introducing Office Web Apps as a Tool for Developing Content Rich Applications
 
What Is SPS Arabia
What Is SPS ArabiaWhat Is SPS Arabia
What Is SPS Arabia
 
Deep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft GraphDeep Dive Building Office Mail Add-ins with the Microsoft Graph
Deep Dive Building Office Mail Add-ins with the Microsoft Graph
 
Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013Sonja madsen speaker slides espc 2013
Sonja madsen speaker slides espc 2013
 
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
Office 365 - Introduction to SharePoint Online Development - SharePoint Conne...
 
#OCSPUG SharePoint 2013 Best Practices
#OCSPUG SharePoint 2013 Best Practices#OCSPUG SharePoint 2013 Best Practices
#OCSPUG SharePoint 2013 Best Practices
 
Access SharePoint Remotely
Access SharePoint RemotelyAccess SharePoint Remotely
Access SharePoint Remotely
 
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
Developing SharePoint 2013 apps with Visual Studio 2012 - Microsoft TechDays ...
 
SharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSharePoint 2013 APIs demystified
SharePoint 2013 APIs demystified
 

Viewers also liked

SharePoint Add-Ins - the Next Level
SharePoint Add-Ins - the Next LevelSharePoint Add-Ins - the Next Level
SharePoint Add-Ins - the Next LevelPaul Schaeflein
 
Get started developing apps for SharePoint 2013
Get started developing apps for SharePoint 2013Get started developing apps for SharePoint 2013
Get started developing apps for SharePoint 2013Muawiyah Shannak
 
Introduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsIntroduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsRushi Waghmare
 
Share point 2013 - Javascript Object Model
Share point 2013 - Javascript Object ModelShare point 2013 - Javascript Object Model
Share point 2013 - Javascript Object ModelMuawiyah Shannak
 
OneNote 2013 - Top features deepdive
OneNote 2013 - Top features deepdiveOneNote 2013 - Top features deepdive
OneNote 2013 - Top features deepdiveMuawiyah Shannak
 
SharePoint 2013 Client-Side Rendering (CSR) & JSLink Templates
SharePoint 2013 Client-Side Rendering (CSR) & JSLink TemplatesSharePoint 2013 Client-Side Rendering (CSR) & JSLink Templates
SharePoint 2013 Client-Side Rendering (CSR) & JSLink TemplatesMuawiyah Shannak
 
MSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to appMSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to appJoris Poelmans
 

Viewers also liked (11)

SharePoint Add-Ins - the Next Level
SharePoint Add-Ins - the Next LevelSharePoint Add-Ins - the Next Level
SharePoint Add-Ins - the Next Level
 
Get started developing apps for SharePoint 2013
Get started developing apps for SharePoint 2013Get started developing apps for SharePoint 2013
Get started developing apps for SharePoint 2013
 
Introduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsIntroduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 Apps
 
Share point 2013 - Javascript Object Model
Share point 2013 - Javascript Object ModelShare point 2013 - Javascript Object Model
Share point 2013 - Javascript Object Model
 
Apps for SharePoint
Apps for SharePointApps for SharePoint
Apps for SharePoint
 
OAuth in SharePoint 2013
OAuth in SharePoint 2013OAuth in SharePoint 2013
OAuth in SharePoint 2013
 
JSOM and java script practices
JSOM and java script practicesJSOM and java script practices
JSOM and java script practices
 
OneNote 2013 - Top features deepdive
OneNote 2013 - Top features deepdiveOneNote 2013 - Top features deepdive
OneNote 2013 - Top features deepdive
 
App deployment
App deploymentApp deployment
App deployment
 
SharePoint 2013 Client-Side Rendering (CSR) & JSLink Templates
SharePoint 2013 Client-Side Rendering (CSR) & JSLink TemplatesSharePoint 2013 Client-Side Rendering (CSR) & JSLink Templates
SharePoint 2013 Client-Side Rendering (CSR) & JSLink Templates
 
MSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to appMSDN - SharePoint 2013 to app or not to app
MSDN - SharePoint 2013 to app or not to app
 

Similar to Apps for SharePoint 2013

SP Apps, New Model, New App Store: The Office Store
SP Apps, New Model, New App Store: The Office StoreSP Apps, New Model, New App Store: The Office Store
SP Apps, New Model, New App Store: The Office StoreJuan Carlos Gonzalez
 
Cloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and AzureCloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and AzureTobias Lekman
 
Relearning SharePoint Development
Relearning SharePoint DevelopmentRelearning SharePoint Development
Relearning SharePoint Developmentbgerman
 
Developing Apps for SharePoint Store
Developing Apps for SharePoint StoreDeveloping Apps for SharePoint Store
Developing Apps for SharePoint StoreKashif Imran
 
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)Christian Heindel
 
Prepararsi a spostare le proprie applicazioni share point su office 365
Prepararsi a spostare le proprie applicazioni share point su office 365Prepararsi a spostare le proprie applicazioni share point su office 365
Prepararsi a spostare le proprie applicazioni share point su office 365Giuseppe Marchi
 
Web application development process
Web application development processWeb application development process
Web application development processJohn Smith
 
Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Fabio Franzini
 
SharePoint Saturday Silicon Valley - SharePoint Apps - Ryan Schouten
SharePoint Saturday Silicon Valley - SharePoint Apps - Ryan SchoutenSharePoint Saturday Silicon Valley - SharePoint Apps - Ryan Schouten
SharePoint Saturday Silicon Valley - SharePoint Apps - Ryan SchoutenRyan Schouten
 
Deciding Between apps for SharePoint and SharePoint Solutions
Deciding Between apps for SharePoint and SharePoint SolutionsDeciding Between apps for SharePoint and SharePoint Solutions
Deciding Between apps for SharePoint and SharePoint SolutionsDavid J Rosenthal
 
O365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in actionO365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in actionNCCOMMS
 
Highlights of WSO2 API Manager 4.0.0
Highlights of WSO2 API Manager 4.0.0Highlights of WSO2 API Manager 4.0.0
Highlights of WSO2 API Manager 4.0.0WSO2
 
Grow your SharePoint development platform with SPFx
Grow your SharePoint development platform with SPFxGrow your SharePoint development platform with SPFx
Grow your SharePoint development platform with SPFxDipti Chhatrapati
 
Building a mobile app connected to WordPress with WP-AppKit
Building a mobile app connected to WordPress with WP-AppKitBuilding a mobile app connected to WordPress with WP-AppKit
Building a mobile app connected to WordPress with WP-AppKitBenjamin LUPU
 
Intro apps
Intro appsIntro apps
Intro appsBIWUG
 
(Almost) All About Apps for SharePoint 2013
(Almost) All About Apps for SharePoint 2013(Almost) All About Apps for SharePoint 2013
(Almost) All About Apps for SharePoint 2013Dragan Panjkov
 
Charla desarrollo de apps con sharepoint y office 365
Charla   desarrollo de apps con sharepoint y office 365Charla   desarrollo de apps con sharepoint y office 365
Charla desarrollo de apps con sharepoint y office 365Luis Valencia
 

Similar to Apps for SharePoint 2013 (20)

SP Apps, New Model, New App Store: The Office Store
SP Apps, New Model, New App Store: The Office StoreSP Apps, New Model, New App Store: The Office Store
SP Apps, New Model, New App Store: The Office Store
 
Cloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and AzureCloud-Based App Development using SharePoint 2013, Office 365 and Azure
Cloud-Based App Development using SharePoint 2013, Office 365 and Azure
 
Relearning SharePoint Development
Relearning SharePoint DevelopmentRelearning SharePoint Development
Relearning SharePoint Development
 
SharePoint Server 2013: to app or not to app?
SharePoint Server 2013: to app or not to app? SharePoint Server 2013: to app or not to app?
SharePoint Server 2013: to app or not to app?
 
Developing Apps for SharePoint Store
Developing Apps for SharePoint StoreDeveloping Apps for SharePoint Store
Developing Apps for SharePoint Store
 
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
Apps für SharePoint 2013 (Office Store, Windows 8, Windows Phone 8)
 
Prepararsi a spostare le proprie applicazioni share point su office 365
Prepararsi a spostare le proprie applicazioni share point su office 365Prepararsi a spostare le proprie applicazioni share point su office 365
Prepararsi a spostare le proprie applicazioni share point su office 365
 
A Complete Guide to Python Web Development
A Complete Guide to Python Web DevelopmentA Complete Guide to Python Web Development
A Complete Guide to Python Web Development
 
Web application development process
Web application development processWeb application development process
Web application development process
 
Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...Come riprogettare le attuali farm solution di share point con il nuovo modell...
Come riprogettare le attuali farm solution di share point con il nuovo modell...
 
SharePoint Saturday Silicon Valley - SharePoint Apps - Ryan Schouten
SharePoint Saturday Silicon Valley - SharePoint Apps - Ryan SchoutenSharePoint Saturday Silicon Valley - SharePoint Apps - Ryan Schouten
SharePoint Saturday Silicon Valley - SharePoint Apps - Ryan Schouten
 
Deciding Between apps for SharePoint and SharePoint Solutions
Deciding Between apps for SharePoint and SharePoint SolutionsDeciding Between apps for SharePoint and SharePoint Solutions
Deciding Between apps for SharePoint and SharePoint Solutions
 
O365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in actionO365con14 - the new sharepoint online apps - napa in action
O365con14 - the new sharepoint online apps - napa in action
 
SharePoint Apps model overview
SharePoint Apps model overviewSharePoint Apps model overview
SharePoint Apps model overview
 
Highlights of WSO2 API Manager 4.0.0
Highlights of WSO2 API Manager 4.0.0Highlights of WSO2 API Manager 4.0.0
Highlights of WSO2 API Manager 4.0.0
 
Grow your SharePoint development platform with SPFx
Grow your SharePoint development platform with SPFxGrow your SharePoint development platform with SPFx
Grow your SharePoint development platform with SPFx
 
Building a mobile app connected to WordPress with WP-AppKit
Building a mobile app connected to WordPress with WP-AppKitBuilding a mobile app connected to WordPress with WP-AppKit
Building a mobile app connected to WordPress with WP-AppKit
 
Intro apps
Intro appsIntro apps
Intro apps
 
(Almost) All About Apps for SharePoint 2013
(Almost) All About Apps for SharePoint 2013(Almost) All About Apps for SharePoint 2013
(Almost) All About Apps for SharePoint 2013
 
Charla desarrollo de apps con sharepoint y office 365
Charla   desarrollo de apps con sharepoint y office 365Charla   desarrollo de apps con sharepoint y office 365
Charla desarrollo de apps con sharepoint y office 365
 

Recently uploaded

Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityScyllaDB
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Thierry Lestable
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlPeter Udo Diehl
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...Product School
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...CzechDreamin
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCzechDreamin
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaRTTS
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIES VE
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...Product School
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3DianaGray10
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...Sri Ambati
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀DianaGray10
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Alison B. Lowndes
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Product School
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoTAnalytics
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaCzechDreamin
 

Recently uploaded (20)

Optimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through ObservabilityOptimizing NoSQL Performance Through Observability
Optimizing NoSQL Performance Through Observability
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
Behind the Scenes From the Manager's Chair: Decoding the Secrets of Successfu...
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya HalderCustom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
Custom Approval Process: A New Perspective, Pavel Hrbacek & Anindya Halder
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024IoT Analytics Company Presentation May 2024
IoT Analytics Company Presentation May 2024
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 

Apps for SharePoint 2013

  • 1. Apps for SharePoint 2013 Alex Pop July 2013
  • 2. Application development models in SharePoint 2010 ● sandboxed solutions: ○ limited server side API access; ● farm solutions: ○ installed using "*.wsp" packages that have impact on the whole SharePoint farm when installed or updated ○ on a production system these solutions have to be installed out of hours;
  • 3. Application development models in SharePoint 2013 ● sandboxed solutions: deprecated; ● farm solutions: only use for applications targeted at SharePoint administrators; ● new "apps for SharePoint" model: ○ THE recommended model for end user applications; ○ derived from SharePoint Online and Office 365 requirements; ○ isolates all custom server-side code from the SharePoint instance
  • 4. "Apps for SharePoint" types ● There are 3 new types of SharePoint solutions: ○ SharePoint hosted, autohosted and provider hosted; ○ they all create a new ".app" file that has to be deployed to SharePoint using a very complex process; ● SharePoint hosted app: a SharePoint app project containing SharePoint assets(lists, workflows, etc.) + web pages that can only use client side code;
  • 5. "Apps for SharePoint" types(cont.) ● Autohosted and Provider hosted apps: ○ both have a SharePoint app project and an ASP. NET web project: a SharePoint app and a web application; ○ the Autohosted solution packages all assets (including the website and the database scripts) in the ".app" file; ○ the Provider hosted solution packages only the SharePoint app project into the ".app" file. The web application deployment is done independently.
  • 6. Provided hosted apps - integration ● the web application communicates with SharePoint using: ○ a shared security certificate; ○ a helper library "AppForSharePointWebToolkit" (available as a NuGet package); ○ the SharePoint Client Object Model(CSOM); ○ the SharePoint app manifest needs to list the SharePoint permissions that your app needs;
  • 7. Provided hosted apps - integration (cont.) ● the web application can expose "app parts" to SharePoint: <iframe> elements that render content from the web application; ● the SharePoint app can: ○ package SharePoint assets(lists, content types, workflows, etc.); ○ extend SharePoint menus;
  • 8. What this all means ● employ modern web development practices: develop clean, testable applications; ● leverage existing web development skills: you don't need advanced SharePoint knowledge to accomplish even the most basic tasks; ● scalable, distributed web applications: you can allocate more resources to an app for SharePoint if and when needed; ● support for other application frameworks?
  • 9. Scenarios enabled by Apps For SharePoint ● use SharePoint as a data store together with a custom web application; ● use a third party data store together with a custom web application; ● mix and match SharePoint and external data stores; ● provide "app parts" to SharePoint;
  • 10. Current SharePoint application architecture ● the entry point for all applications is a SharePoint page; ● the SharePoint app delivers all SharePoint specific assets; ● the web application will render all UI components; ● the web application will interact with Sharepoint using the current user identity or using a custom identity within a scheduled job;
  • 11. Development update ● Bootstrap is everywhere: ○ Bootstrap master pages now deployed on the SharePoint server; ○ Bootstrap is used to style the app for SharePoint; ○ The result is consistent styles applied throughout; ● ASP.NET MVC: ○ provides Windows authentication and session identity; ○ builds the single page application skeleton; ○ minifies and concatenates all assets;
  • 12. Development update (cont.) ● ServiceStack: used to build RESTful , testable web services (90% server side code coverage with AutoFixture); ● AngularJS: ○ MV* framework for single page applications; ○ reusable web components(a.k.a the future of web); ○ testable code via dependency injection; ● Kendo UI Web: powerful grid and other widgets plus IE8 support (now compatible with AngularJS); ● Entity Framework 5: using the code first model with database migrations.
  • 13. Notes ● Reimagine SharePoint Development: http: //msdn.microsoft.com/en- US/office/apps/dn133840 ● Deciding between apps for SharePoint and SharePoint solutions: http://msdn.microsoft. com/library/sharepoint/dn268593(v=office. 15)