SlideShare a Scribd company logo
1 of 34
Download to read offline
Understanding SharePoint 2013
Code Deployment Models
- Apps vs. Solutions


Nik Patel
Lead Solutions Architect, Slalom Consulting, Chicago Practice
Session Goals

 Session Level - 200
 Audience – SharePoint Architects and SharePoint Developers
 Simple Goal – Understanding where Apps fits in SharePoint 2013 Development Landscape




                                                                                         2
About Me


           Nik Patel
               •   Lead Solutions Architect, Slalom Consulting
               •   Working with SharePoint 2010 since Summer 2009 TAP
               •   Master in Computer Science from IIT, Chicago

           Contact Info
               •   Email – patenik2@yahoo.com
               •   Blog – Nik Patel’s SharePoint World -
                   http://nikspatel.wordpress.com/
               •   Twitter - @nikxpatel
               •   LinkedIn - linkedin.com/in/nikspatel
               •   Slideshare - slideshare.net/patenik2




                                                                        3
Session Agenda

 Why New Code Deployment Model – SharePoint 2013 Apps?
 Revisit Farm Solutions and Sandbox Solutions Models
 Introducing SharePoint Apps as Code Deployment Model
  Quick walkthrough of SharePoint Hosted Apps

 In-depth Comparison of Solutions vs. Apps
 Prescriptive Guidance of when to use SharePoint Solutions vs. Apps
 Questions and Answers




                                                                       4
SharePoint 2013 Apps – Rumors, Humors, Opinions, and Level Set
It’s too early to say how organization will adopt Apps Model

 Apps are Crapps
   Apps are not magic button

   Both solutions and Apps are valid options

 Apps supports No Server side code, Lots of Client side scripting
   Don’t be confused with Server Side Code with SharePoint Server Side APIs

   This is true for SharePoint Hosted Apps but you can have server side code in Cloud hosted Apps

 Sandbox Solutions are deprecated
   Microsoft’s meaning for deprecated is – Not preferred

   Apps are preferred option over Sandbox Solutions


 Don’t listen to early opinions, Try it by yourself to decide.. 

                                                                                                     5
What are SharePoint 2013 Apps?
Independent, Self-contained, Scenario-based Applications


                                             It’s an application
                                             whose interface is      Yeah..It’s a widget
                                             surfaced through        or application I can
      Hmmm.. It’s self-                     SharePoint but code
      contained piece of                                             acquire to perform
                                              runs somewhere
      functionality that extend                                      my work or run
                                              elsewhere away
      the capabilities of a                    from Servers or       business regardless
      SharePoint website!!!                       Browser!!!         of what technology
                                                                     it is!!!




  Solution Architect                          Developer            Business User
                                                                                            6
Where can I Find Apps in SharePoint 2013?
 Independent, Self-contained, Scenario-based Applications

Everything in SharePoint 2013 are Apps including SharePoint Lists & Libraries (Kind of!!)




                                                                                            7
Demo
Quick walkthrough of SharePoint Apps




                                       8
Why SharePoint 2013 Apps?
It’s a fundamental shift from the traditional SharePoint customization and deployment model

 All about End-Users – Consumerization through Apps Catalogs
   Allows end-users to extend their sites without going through IT Channels

 All about IT Pro - Stabilize the SharePoint Environment
   Keep custom code away from Servers, Improved Outage & Upgrade stories

   Orgs with At least 1 version upgrade with highly customized environment would appreciate Apps

 All about Developers - Pieces to Packages
   Apps trying to focus back on fully packaged and ready to use assembled custom solutions

 All about Cross-Platform - Use Existing Skills to extend SharePoint
   Rather than reinventing wheels in SharePoint, use existing technologies & skills to build new apps e.g. Bing Apps


 Apps are here to stay.. Embrace It with Caution.. 

                                                                                                                        9
Understanding SharePoint 2013 Custom Development Landscape
Journey from SharePoint 2007 to SharePoint 2013




                                                             10
Revisit SharePoint Farm Level Solutions
 SharePoint’s First Generation Code Execution Model

 What are they?
   Supports Full Trust Code Model
   Supports Full Server Side Object Model and Client Side Object Model APIs
   Requires Solutions Run on the Server

 Major limitations
   Supported in On-Premises only, Not supported in SharePoint Online
   No Marketplace
   Requires big server touch, customizations deployed on servers
   Root cause of most of SharePoint outages – Performance and Stability Concerns
   Huge concerns for SharePoint Upgrade strategy




                                                                                    11
Revisit SharePoint Sandbox Solutions
SharePoint’s Second Generation Code Execution Model
Microsoft’s first attempt to get away from Farm Level Solutions
 What are they?
    Available in both SharePoint Online & On-Premises
    Requires Partial Trust Code Model

 Major Benefits over Farm Solutions
    Code runs on sandbox, Doesn’t require Access to Server
    Can’t harm the SharePoint server, ideal for hosted environments

 Major limitations
    Just like Farm Solutions, No Marketplace
    Severe restrictions and limited SharePoint APIs – No Database, No File System, No Web Services
    Scoped only at the Site Collection Level, No Cross-Site Collection Access
    Runs only under current user context, Can’t run code with administrative elevated privileges
    Runs under complex resource monitoring system - Outage of Application if Resource Quota is exceeded




                                                                                                           12
Introducing SharePoint App Model – What are they?
SharePoint’s Third Generation Code Execution Model
Microsoft’s second attempt to get away from Farm Level Solutions

 Major Benefits over Solutions Model
    Based on a proven and familiar app model used in Mobile technologies

    SharePoint business logic no longer live in SharePoint

    Apps custom code executes in the client, cloud or on-premises

    Apps can live in Public Marketplace or Private Corporate Marketplace

    Apps have efficient end-user lifecycle – Install, Use, Manage, Upgrade, Remove

    Apps will have better SharePoint Upgrade story – decoupled from SharePoint




                                                                                      13
Apps Primer - Major Discussion Points
Apps Building Blocks - Basics


 App Models – What kind of Apps can be developed?
 App User Experience
    App Shapes – How does App integrated or consumed with SharePoint?

    App Scopes – Where does App runs? Can App access data from other sites?

    App Branding – How does App looks like when integrated with SharePoint – UX, Navigation, Seamless Experience?

 App Interaction with SharePoint
    App Integration – How does App access with SharePoint Data?

    App Rights – How does App granted rights to consume SharePoint data?




                                                                                                                     14
App Primer – App Hosting Models
  Three different approaches

 SharePoint Hosted Apps
    Apps hosted in SharePoint as isolated App web,
     SharePoint acts as file store to host Apps components
     like HTML, CSS, or JavaScript
    No Server side code, business logic runs on JavaScript

 Provider Hosted Apps
    Apps hosted outside of SharePoint in IIS, Windows
     Azure, or other dedicated self-hosted Infrastructure
    Apps can be built using ASP.NET or any other
     technologies like Java or PHP

 Azure Auto Hosted Apps
    Supported only in Office 365 at this moment, Azure
     subscription tied to Office 365
    Auto provisions Azure web site and SQL Azure during
     Apps installation process
Note - Diagram from MSDN




                                                              15
App Primer – App Experience via Shapes
 Three different ways to interact with Apps

Immersive App                          Part App                              Custom Action App
• Takes entire browser & UI screen      • Behave in SharePoint just like     • Action menu on Ribbon or ECB
                                          Web Parts e.g. Stocks App,           to trigger App interaction
• Stand-alone business solution e.g.      Weather App, Maps App
  Office Web Apps, SharePoint Search                                         • Same as SharePoint 2010
  Site, My Site etc.                    • Surfaced in SharePoint as Iframe




                                                                                                              16
App Primer – App Experience (Continued ..)
 Seamless UI integration is key for successful App implementation

 App Scopes                                           App Branding and UI Integration
  Apps are isolated and can’t                           App Templates
   communicate directly with each other
                                                           Default option when creating apps in VS
  Web Scope
                                                           App page pulls CSS from hosting SharePoint
    Apps resources live in App Web, can be
     deployed at Site or Site Collection level           Chrome Control

    Can use or register resources at Site or Site         Ideal for Cloud hosted Apps
     Collection Level
                                                           JavaScript based control that allows custom apps
  Tenant Scope                                             to consume the CSS and styling of the parent App
                                                            Web
    Only supported in cloud-hosted
                                                         Custom Branding
    Supports multi-tenancy and interaction with
     multiple site collections                             Full control over unique branding, Like SharePoint
                                                            Search and My Site



                                                                                                                 17
App Primer – App Interaction with SharePoint
 Secure interaction with SharePoint

 App Interaction
  Apps can communicate with SharePoint
   using CSOM and REST based APIs

  REST/CSOM supports now Taxonomy,
   Search, Publishing, User Profile, and many
   more APIs

 App Rights
  Apps can authenticate into SharePoint using
   OAuth or STS

  SharePoint 2013 has new authentication
   model to authenticate SharePoint apps

  App Permission request
   read/write/manage/full control maps to
   SharePoint permission levels
   read/contribute/design/full control


                                                 18
Demo
Quick Experience of SharePoint Hosted Apps




                                             19
Apps vs. Solutions – Decision Time
Multi-faceted in-depth comparison


 Comparing Apps with Solutions from 6 different perspective
   Architectural level
   Custom Development Level
   Deployment, Packaging, and Maintenance Level
   Infrastructure Level
   Business Strategy and Direction
   Usability Perspective



No clear winner.. It depends!!!!.. 
Apps Model is Not Magic Pill
                                                               20
Apps vs. Solutions – Architecture Decisions

                          Farm Level                                     SharePoint          Provider
                                              Sandbox Solutions                                                Azure Hosted Apps
                           Solution                                     Hosted Apps        Hosted Apps

                       On-Premises Only,
                                                                                           SharePoint
    Supported            No SharePoint       SharePoint Online and    SharePoint Online
                                                                                          Online and On-     SharePoint Online Only
   Environment         Online (Supported         On-Premises          and On-Premises
                                                                                            Premises
                       in Dedicated SPO)

  Code Execution
                           Full Trust            Partial Trust        Isolated Domain     Isolated Domain        Isolated Domain
      Model


                                                                                          Browser or Non-
Business Logic Runs       Browser or         Browser or SharePoint      Only Browser        SharePoint      Browser or Non-SharePoint
Under what Context?    SharePoint Context          Context                Context         Hosted Platform    Hosted Platform Context
                                                                                              Context



   Architectural
                        Not Much (Only                                                    Yes, Very Much
   Complexity -                                 Not Much (Only          Yes, Little Bit                     Yes, Very Much (Requires
                       Service Application                                                (Configure both
Requires Additional                           Service Application      (Configure App                        Windows Azure Skills as
                          needs to be                                                       IIS and App
Configuration to run                         needs to be activated)       Domain)                                     well)
                           activated)                                                         Domain)
      code?


                                                                                                                                        21
Apps vs. Solutions – Architecture Decisions (Continued …)

                        Farm Level                                      SharePoint          Provider Hosted
                                           Sandbox Solutions                                                        Azure Hosted Apps
                         Solution                                      Hosted Apps               Apps

                                                                                              App Web (only
                                            Site Collection (Can't                              web or site       App Web (only web or site
                                            cross site collection,   App Web (only web         collection) or     collection) or Tenant (can
   Code Scope               Farm
                                          limited APIs within Site    or site collection)   Tenant (can cross-     cross-site collection in
                                             Collection as well)                             site collection in          same tenant)
                                                                                               same tenant)


                      No Authentication
 Authentication &                           No Authentication        No Authentication        OAuth or STS
                      Required, Can run                                                                            OAuth authentication is
 Interaction with                         Required, can run only     Required, can run        Authentication
                      on User or Admin                                                                                   required
 SharePoint APIs                             in User Context          in App Context            required
                          context



Malicious Attack or                                                   May be (May be         May be (May be
                                                                                                                  May be (May be too early
harm of SharePoint    Yes (runs in same    No (runs in isolated       too early to say       too early to say
                                                                                                                   to say how OAuth will
environment due to        process)           safe process)            how OAuth will         how OAuth will
                                                                                                                           work)
     bad code                                                              work)                  work)




                                                                                                                                               22
Apps vs. Solutions – Architecture Decisions (Continued …)
                            Farm Level                                   SharePoint         Provider Hosted
                                                 Sandbox Solutions                                                  Azure Hosted Apps
                             Solution                                   Hosted Apps              Apps

                                                                          Medium-Low            Medium-Low
                                                                                                                  Medium-Low (Network &
 Performance for        High - Very efficient,   Medium - Runs in      (Network & cloud      (Network & cloud
                                                                                                                  cloud latency, Requires
 SharePoint Data            runs in main         dedicated isolated    latency, Requires     latency, Requires
                                                                                                                      CSOM or REST
     Access             application process      Sandbox Process        CSOM or REST          CSOM or REST
                                                                                                                    connection points )
                                                                      connection points )   connection points )

   Supports deep
  integration with                                                    Partially (with web   Partially (with web
                                                                                                                   Partially (with web parts
 SharePoint UI and              Yes                     Yes           parts and chrome      parts and chrome
                                                                                                                    and chrome controls)
    Look & Feel                                                            controls)             controls)
    Components

    Supports deep
   integration with
      SharePoint                                                                              Not Advisable
                                                                        Not Advisable
    Components &                                                                            (CSOM and REST        Not Advisable (CSOM and
                                Yes                     Yes           (CSOM and REST
    Content (Lists,                                                                          APIs be limited)      REST APIs be limited)
                                                                       APIs be limited)
   Content Types,
fields, page layouts,
      pages etc.)



                                                                                                                                               23
Apps vs. Solutions – Custom Development Support
                            Farm Level      Sandbox          SharePoint Hosted   Provider Hosted
                                                                                                   Azure Hosted Apps
                             Solution       Solutions              Apps               Apps


Requires code running on
                               Yes             Yes                  No                 No                 No
         Server


  SharePoint Farm level
                               Yes             No                   No                 No                 No
   Administrative API


 Supported APIs - Server                 Partial - Subset
                               Full                                 No                 No                 No
   Side Object Model                     of Full Trust API


Supported APIs - Managed
                               Yes             Yes                  No                Yes                Yes
 Client Side Object Model


    Supported APIs -
  JavaScript Client Side       Yes             Yes                 Yes                Yes                Yes
Object Model & REST APIs

  Server Side Code - C#        Yes             Yes                  No                Yes                Yes


                                                                                                                       24
Apps vs. Solutions – Custom Development Support (Continued…)
                                  Farm Level   Sandbox     SharePoint Hosted   Provider Hosted
                                                                                                  Azure Hosted Apps
                                   Solution    Solutions         Apps               Apps


   Security - Run code with                                  Yes (New App       Yes (New App
                                     Yes          No                                             Yes (New App Rights)
   administrative privileges                                    Rights)            Rights)


   Apart from .NET, any Non-
                                                                                                 Limited (Azure supports
     Microsoft Server Side
                                     No           No             N/A                Yes          only .NET Framework,
 technologies Supported (e.g.
                                                                                                  Java, PHP & Node.js)
    Java, PHP, LAMP etc.)

 Allows you to take benefits on
     latest/future Sever Side
                                     No           No              No                Yes                   Yes
technologies - newer version of
      ASP.NET MVC or .NET


 Allows you to take benefits on
     latest/future Client Side
                                     Yes         Yes             Yes                Yes                   Yes
technologies - newer version of
      ASP.NET MVC or .NET




                                                                                                                           25
Apps vs. Solutions – Custom Development Support (Continued…)
                           Farm Level                        SharePoint   Provider Hosted
                                        Sandbox Solutions                                     Azure Hosted Apps
                            Solution                        Hosted Apps        Apps


 Requires Local Farm or
Development Environment       Yes             Yes               No              No                    No
     for Developers


Remote deployment and
 debugging from Visual        No               No              Yes             Yes                   Yes
        Studio


 Developer Productivity,                                                   Medium (New
                                                            Medium (New                     Medium (New Technology)
  less complex moving         High            High                         Technology)
                                                            Technology)
          parts




 Custom Timer Jobs or
                              Yes              No               No              No                    No
   Farm Integration




                                                                                                                      26
Apps vs. Solutions – Deployment, Packaging, and Maintenance
                                                                                     SharePoint         Provider Hosted
                            Farm Level Solution        Sandbox Solutions                                                       Azure Hosted Apps
                                                                                    Hosted Apps              Apps

Requires Server Access
                                    Yes                         No                       No                    No                      No
  for customizations

  Requires outage of
                              Yes, requires IIS                                    Partially, During     Partially, During       Partially, During
  Application during                                Partially, During Upgrade
                                   Reset                                              Upgrade               Upgrade                 Upgrade
     deployment

  Upgrade Concerns                  Yes                         No                       No                    No                      No

                                                    OK (Better than farm level
  Maintenance Story -          Good (Requires
                                                     but requires discipline for        Great                 Great                   Great
Install/Upgrade/Uninstall   disciplined approach)
                                                    large # of Site Collections)


                            Yes (code runs under    Yes (site collection locks         No (Only
Terminates the Process                                                                                       No (Only                No (Only
                              same IIS worker        down if resource quota          functionality
   in case of failure                                                                                  functionality outage)   functionality outage)
                                  process)                 exceeded)                   outage)


                            High (farm solutions       Medium (can't affect                              Low (Hosted on        Low (Hosted on Non-
                                                                                   Low (No Server
   IT Pros Concerns         may cause damage        server resources, depends                            Non-SharePoint            SharePoint
                                                                                     Side code)
                             and server touch)          on resource quota)                                environment)            environment

                                                                                                                                                       27
Apps vs. Solutions – Infrastructure
                            Farm Level         Sandbox        SharePoint Hosted
                                                                                       Provider Hosted Apps       Azure Hosted Apps
                             Solution          Solutions            Apps

 Additional Hardware,                                             No (hosted in         Yes (App Domain on        Yes (Windows Azure
                                 No               No
Software, and Licensing                                           SharePoint)            dedicated server)           Subscription)

                                                              Yes (But stored in the
  Additional Capacity                                                                   Yes (Additional data      Yes (Additional data
                                 No               No           same site collection
       Planning                                                                              storage)                  storage)
                                                                content database)

                            SP Backup &
 Business Continuity -                                                                   Requires Additional      Requires Additional
                           File System for   SP Backup Only     SP Backup Only
 DR, Backup-Restore                                                                        Consideration            Consideration
                           Customizations

   Load-balancing &          SharePoint        SharePoint                                Requires Additional      Requires Additional
                                                                SP Backup Only
     Redundancy                Farm              Farm                                      Consideration            Consideration

                                                                                       Yes (only for OAuth for
Additional Subscription                                                                                           Yes (tied with Office
                                 No               No                   No              ACS integration, not for
         Fees                                                                                                      365 subscription)
                                                                                        STS or High-Trusted)

Apart from IIS, any Non-
                                                                  No (hosted in                                   Yes, only Windows
 Microsoft Server Side           No               No                                      Yes (Any stack)
                                                                  SharePoint)                                           Azure
technologies Supported


                                                                                                                                          28
Apps vs. Solutions – Business Direction

                          Farm Level                        SharePoint   Provider Hosted
                                       Sandbox Solutions                                   Azure Hosted Apps
                           Solution                        Hosted Apps        Apps

    Distribution via
                             No               No              Yes             Yes                Yes
     Marketplace


  Supports Business
 Strategy - No Custom        No               No              Yes             Yes                Yes
  Code on SharePoint


  Supports Business
    Strategy - Less
  Hardware, Software,        Yes             Yes              Yes              No                 No
  Licensing Budget &
Architecture Complexity



 Decoupling business
    solutions from           No               No              Yes             Yes                Yes
     SharePoint




                                                                                                               29
Apps vs. Solutions – Usability Perspective

                          Farm Level                              SharePoint            Provider Hosted
                                       Sandbox Solutions                                                          Azure Hosted Apps
                           Solution                              Hosted Apps                 Apps

                                                                    End-Users                End-Users                  End-Users
   Who Installs and
                          Farm Admin   Site Collection Admin   (IT still required for   (IT still required for     (IT still required for
     Uninstalls
                                                                 Administration)          Administration)            Administration)


                                                                                          Yes (requires
   Search Farm/App                                              No (Search can’t                                 Yes (requires additional
                             Yes               Yes                                          additional
    Solutions Data                                              crawl App Web)                                       consideration)
                                                                                          consideration)


Collaborative Solutions
(Side by Side existence
                             Yes               Yes                      No                       No                         No
  of Applications and
         Data)



 Seamless Experience
 while browsing Apps         Yes               Yes                      No                       No                         No
   and SharePoint




                                                                                                                                            30
Prescriptive Guidance of when to use SharePoint Solutions vs. Apps
 Golden rules when to use which APIs
 Use Apps whenever you can – Requires philosophical change architecting SharePoint Applications
   Keep in mind - Apps are limited to what CSOM and REST API Supports

 Use Apps for decoupling independent business applications (e.g. scenario based applications)
   Use SharePoint Hosted Apps for small, reusable standalone applications (e.g. stocks, maps, RSS feeds, social integrators etc.)

   Use Provider Hosted Apps for large corporate business applications (e.g. Time sheet system, budget tracking application)

   Use Azure Auto Hosted Apps for wide-reach, public market place, scalable solutions

 Avoid Apps & Use Farm Level or Sandbox solutions for tight UI and features integration
   Use Farm or Sandbox Solutions for SharePoint Deep Integrated Applications (e.g. Collaborative Applications)

 Use Apps or Sandbox Solutions to take away code from server & minimize risk to the farm for
  better upgrade stories in future
 Use Farm Level solutions for administrative interfaces to extend SharePoint functionalities



                                                                                                                                     31
Additional Apps Resources
 Microsoft
  Developer Ignite Training Videos - http://msdn.microsoft.com/en-US/office/apps/fp123626
  Build Apps for Office and SharePoint - http://msdn.microsoft.com/en-us/office/apps/fp160950.aspx
  3 Parts Series of Inside apps for Office and SharePoint - http://channel9.msdn.com/Series/Inside-apps-for-Office-and-
   SharePoint

 Community
  Andrew Connell's Understanding SharePoint 2013 Apps -
   http://www.andrewconnell.com/blog/archive/2012/07/16/understanding-sharepoint-2013-apps-aka-apps-101.aspx
  Ted Pattison's Apps Series - http://blog.tedpattison.net/Lists/Posts/Post.aspx?ID=14
  Chris O' Brien's Series - SharePoint apps: working with the app web, and why you should -
   http://www.sharepointnutsandbolts.com/2012/09/sharepoint-apps-working-with-app-web.html
  Analben Mehta’s 30 Articles series for Apps development for SharePoint -
   http://aanuwizard.wordpress.com/2012/09/16/30-articles-series-for-apps-development-for-sharepoint/




                                                                                                                           32
•   Thanks for attending the session!!
•   Follow SharePoint Fest Chicago
     •   Twitter - @SharePointFest - https://twitter.com/sharepointfest
     •   Website - http://www.sharepointfest.com/Chicago/




                                                                          33
© 2011 Slalom Corporation. All rights reserved. The information herein is for informational purposes only and represents the current view of Slalom Corporation as of the date of this presentation.
                            SLALOM MAKES NO WARRANTIES, EXPRESS, IMPLIED, OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related Content

What's hot

SPCAdriatics - Search Administration and Troubleshooting in SharePoint 2013
SPCAdriatics - Search Administration and Troubleshooting in SharePoint 2013SPCAdriatics - Search Administration and Troubleshooting in SharePoint 2013
SPCAdriatics - Search Administration and Troubleshooting in SharePoint 2013Agnes Molnar
 
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
 
Building Search Driven Applications in SharePoint 2010 - SharePoint Fest 2012
Building Search Driven Applications in SharePoint 2010 - SharePoint Fest 2012Building Search Driven Applications in SharePoint 2010 - SharePoint Fest 2012
Building Search Driven Applications in SharePoint 2010 - SharePoint Fest 2012Nik Patel
 
Developer’s Independence Day: Introducing the SharePoint App Model
Developer’s Independence Day:Introducing the SharePoint App ModelDeveloper’s Independence Day:Introducing the SharePoint App Model
Developer’s Independence Day: Introducing the SharePoint App Modelbgerman
 
Deep dive into SharePoint 2013 hosted apps - Chris OBrien
Deep dive into SharePoint 2013 hosted apps - Chris OBrienDeep dive into SharePoint 2013 hosted apps - Chris OBrien
Deep dive into SharePoint 2013 hosted apps - Chris OBrienChris O'Brien
 
Oauth and SharePoint 2013 Provider Hosted apps
Oauth and SharePoint 2013 Provider Hosted appsOauth and SharePoint 2013 Provider Hosted apps
Oauth and SharePoint 2013 Provider Hosted appsJames Tramel
 
Sp2013 overview biwug
Sp2013 overview biwugSp2013 overview biwug
Sp2013 overview biwugBIWUG
 
Building Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechConBuilding Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechConSPTechCon
 
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 2013 - What's new for Devs - Belgian IT Bootcamp 2012
SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012
SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012Joris Poelmans
 
SharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSPC Adriatics
 
Sviluppare App per Office 2013 e SharePoint 2013
Sviluppare App per Office 2013 e SharePoint 2013Sviluppare App per Office 2013 e SharePoint 2013
Sviluppare App per Office 2013 e SharePoint 2013Giuseppe Marchi
 
Getting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online developmentGetting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online developmentJeremy Thake
 
Developing a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint appDeveloping a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint appTalbott Crowell
 
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
 
Visio Services in SharePoint 2010
Visio Services in SharePoint 2010Visio Services in SharePoint 2010
Visio Services in SharePoint 2010Alexander Meijers
 

What's hot (20)

SPCAdriatics - Search Administration and Troubleshooting in SharePoint 2013
SPCAdriatics - Search Administration and Troubleshooting in SharePoint 2013SPCAdriatics - Search Administration and Troubleshooting in SharePoint 2013
SPCAdriatics - Search Administration and Troubleshooting in SharePoint 2013
 
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
 
SharePoint 2013 apps overview
SharePoint 2013 apps overviewSharePoint 2013 apps overview
SharePoint 2013 apps overview
 
Building Search Driven Applications in SharePoint 2010 - SharePoint Fest 2012
Building Search Driven Applications in SharePoint 2010 - SharePoint Fest 2012Building Search Driven Applications in SharePoint 2010 - SharePoint Fest 2012
Building Search Driven Applications in SharePoint 2010 - SharePoint Fest 2012
 
Developer’s Independence Day: Introducing the SharePoint App Model
Developer’s Independence Day:Introducing the SharePoint App ModelDeveloper’s Independence Day:Introducing the SharePoint App Model
Developer’s Independence Day: Introducing the SharePoint App Model
 
What's new for Developers in SharePoint 2013
What's new for Developers in SharePoint 2013What's new for Developers in SharePoint 2013
What's new for Developers in SharePoint 2013
 
Deep dive into SharePoint 2013 hosted apps - Chris OBrien
Deep dive into SharePoint 2013 hosted apps - Chris OBrienDeep dive into SharePoint 2013 hosted apps - Chris OBrien
Deep dive into SharePoint 2013 hosted apps - Chris OBrien
 
Oauth and SharePoint 2013 Provider Hosted apps
Oauth and SharePoint 2013 Provider Hosted appsOauth and SharePoint 2013 Provider Hosted apps
Oauth and SharePoint 2013 Provider Hosted apps
 
OAuth in SharePoint 2013
OAuth in SharePoint 2013OAuth in SharePoint 2013
OAuth in SharePoint 2013
 
Sp2013 overview biwug
Sp2013 overview biwugSp2013 overview biwug
Sp2013 overview biwug
 
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?
 
Building Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechConBuilding Apps for SharePoint 2013 by Andrew Connell - SPTechCon
Building Apps for SharePoint 2013 by Andrew Connell - SPTechCon
 
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 2013 - What's new for Devs - Belgian IT Bootcamp 2012
SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012
SharePoint 2013 - What's new for Devs - Belgian IT Bootcamp 2012
 
SharePoint 2013 APIs demystified
SharePoint 2013 APIs demystifiedSharePoint 2013 APIs demystified
SharePoint 2013 APIs demystified
 
Sviluppare App per Office 2013 e SharePoint 2013
Sviluppare App per Office 2013 e SharePoint 2013Sviluppare App per Office 2013 e SharePoint 2013
Sviluppare App per Office 2013 e SharePoint 2013
 
Getting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online developmentGetting started with SharePoint 2013 online development
Getting started with SharePoint 2013 online development
 
Developing a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint appDeveloping a Provider Hosted SharePoint app
Developing a Provider Hosted SharePoint app
 
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...
 
Visio Services in SharePoint 2010
Visio Services in SharePoint 2010Visio Services in SharePoint 2010
Visio Services in SharePoint 2010
 

Viewers also liked

SharePoint 2013 Content search web part - Get it all in one place and style it!
SharePoint 2013 Content search web part - Get it all in one place and style it!SharePoint 2013 Content search web part - Get it all in one place and style it!
SharePoint 2013 Content search web part - Get it all in one place and style it!Benjamin Niaulin
 
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 apps
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 appsChris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 apps
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 appsChris O'Brien
 
Professional SharePoint Solution Deployment with PowerShell
Professional SharePoint Solution Deployment with PowerShellProfessional SharePoint Solution Deployment with PowerShell
Professional SharePoint Solution Deployment with PowerShellMatthias Einig
 
SPSD SharePoint Solution Deployer
SPSD SharePoint Solution DeployerSPSD SharePoint Solution Deployer
SPSD SharePoint Solution DeployerMatthias Einig
 
Top 10 sharepoint interview questions with answers
Top 10 sharepoint interview questions with answersTop 10 sharepoint interview questions with answers
Top 10 sharepoint interview questions with answerswillhoward459
 
Top 7 solution architect interview questions answers
Top 7 solution architect interview questions answersTop 7 solution architect interview questions answers
Top 7 solution architect interview questions answerstomhandsome70
 

Viewers also liked (7)

SharePoint 2013 Content search web part - Get it all in one place and style it!
SharePoint 2013 Content search web part - Get it all in one place and style it!SharePoint 2013 Content search web part - Get it all in one place and style it!
SharePoint 2013 Content search web part - Get it all in one place and style it!
 
EPiServer Web Parts
EPiServer Web PartsEPiServer Web Parts
EPiServer Web Parts
 
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 apps
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 appsChris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 apps
Chris O'Brien - Comparing SharePoint add-ins (apps) with Office 365 apps
 
Professional SharePoint Solution Deployment with PowerShell
Professional SharePoint Solution Deployment with PowerShellProfessional SharePoint Solution Deployment with PowerShell
Professional SharePoint Solution Deployment with PowerShell
 
SPSD SharePoint Solution Deployer
SPSD SharePoint Solution DeployerSPSD SharePoint Solution Deployer
SPSD SharePoint Solution Deployer
 
Top 10 sharepoint interview questions with answers
Top 10 sharepoint interview questions with answersTop 10 sharepoint interview questions with answers
Top 10 sharepoint interview questions with answers
 
Top 7 solution architect interview questions answers
Top 7 solution architect interview questions answersTop 7 solution architect interview questions answers
Top 7 solution architect interview questions answers
 

Similar to Understanding SharePoint 2013 Code Deployment Models - Apps vs Solutions - SharePoint Fest 2012

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
 
Introduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsIntroduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsRushi Waghmare
 
SharePoint Apps - SharePoint Day 2013
SharePoint Apps - SharePoint Day 2013SharePoint Apps - SharePoint Day 2013
SharePoint Apps - SharePoint Day 2013Raona
 
The app of the possible Shailen Sukul MBUG gets Modern Apps and Modern User ...
The app of the possible Shailen Sukul MBUG  gets Modern Apps and Modern User ...The app of the possible Shailen Sukul MBUG  gets Modern Apps and Modern User ...
The app of the possible Shailen Sukul MBUG gets Modern Apps and Modern User ...CSIRO National AI Centre
 
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
 
SharePoint 2013 Sneak Peek
SharePoint 2013 Sneak PeekSharePoint 2013 Sneak Peek
SharePoint 2013 Sneak PeekK.Mohamed Faizal
 
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
 
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...SPTechCon
 
SP2013 What's New for Developers : SPSSTL
SP2013 What's New for Developers : SPSSTLSP2013 What's New for Developers : SPSSTL
SP2013 What's New for Developers : SPSSTLKenneth Maglio
 
SharePoint 2013: What's New For Legal?
SharePoint 2013: What's New For Legal?SharePoint 2013: What's New For Legal?
SharePoint 2013: What's New For Legal?Evan Hodges
 
Introduktion til SharePoint apps
Introduktion til SharePoint appsIntroduktion til SharePoint apps
Introduktion til SharePoint appsSonja Madsen
 
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
 
Relearning SharePoint Development
Relearning SharePoint DevelopmentRelearning SharePoint Development
Relearning SharePoint Developmentbgerman
 
SharePoint Online App Model Guidance
SharePoint Online App Model GuidanceSharePoint Online App Model Guidance
SharePoint Online App Model GuidanceRyan Berg
 
SharePoint Online App Model Guidance
SharePoint Online App Model GuidanceSharePoint Online App Model Guidance
SharePoint Online App Model GuidanceRyan Berg
 
SharePoint 2013 Features & Differences between SP 2013 and SP 2010
SharePoint 2013 Features & Differences between SP 2013 and SP 2010SharePoint 2013 Features & Differences between SP 2013 and SP 2010
SharePoint 2013 Features & Differences between SP 2013 and SP 2010Pavan Kumar. Etta
 
SharePoint 2013 overview jeremy thake
SharePoint 2013 overview   jeremy thakeSharePoint 2013 overview   jeremy thake
SharePoint 2013 overview jeremy thakeJeremy Thake
 
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
 
Intro: SharePoint 2013 Apps for IT Pros
Intro: SharePoint 2013 Apps for IT ProsIntro: SharePoint 2013 Apps for IT Pros
Intro: SharePoint 2013 Apps for IT ProsRene Modery
 

Similar to Understanding SharePoint 2013 Code Deployment Models - Apps vs Solutions - SharePoint Fest 2012 (20)

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
 
Introduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 AppsIntroduction to SharePoint 2013 Apps
Introduction to SharePoint 2013 Apps
 
SharePoint Apps - SharePoint Day 2013
SharePoint Apps - SharePoint Day 2013SharePoint Apps - SharePoint Day 2013
SharePoint Apps - SharePoint Day 2013
 
The app of the possible Shailen Sukul MBUG gets Modern Apps and Modern User ...
The app of the possible Shailen Sukul MBUG  gets Modern Apps and Modern User ...The app of the possible Shailen Sukul MBUG  gets Modern Apps and Modern User ...
The app of the possible Shailen Sukul MBUG gets Modern Apps and Modern User ...
 
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
 
Share point 2013 cop v4
Share point 2013 cop v4Share point 2013 cop v4
Share point 2013 cop v4
 
SharePoint 2013 Sneak Peek
SharePoint 2013 Sneak PeekSharePoint 2013 Sneak Peek
SharePoint 2013 Sneak Peek
 
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
 
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 1: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
 
SP2013 What's New for Developers : SPSSTL
SP2013 What's New for Developers : SPSSTLSP2013 What's New for Developers : SPSSTL
SP2013 What's New for Developers : SPSSTL
 
SharePoint 2013: What's New For Legal?
SharePoint 2013: What's New For Legal?SharePoint 2013: What's New For Legal?
SharePoint 2013: What's New For Legal?
 
Introduktion til SharePoint apps
Introduktion til SharePoint appsIntroduktion til SharePoint apps
Introduktion til SharePoint apps
 
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)
 
Relearning SharePoint Development
Relearning SharePoint DevelopmentRelearning SharePoint Development
Relearning SharePoint Development
 
SharePoint Online App Model Guidance
SharePoint Online App Model GuidanceSharePoint Online App Model Guidance
SharePoint Online App Model Guidance
 
SharePoint Online App Model Guidance
SharePoint Online App Model GuidanceSharePoint Online App Model Guidance
SharePoint Online App Model Guidance
 
SharePoint 2013 Features & Differences between SP 2013 and SP 2010
SharePoint 2013 Features & Differences between SP 2013 and SP 2010SharePoint 2013 Features & Differences between SP 2013 and SP 2010
SharePoint 2013 Features & Differences between SP 2013 and SP 2010
 
SharePoint 2013 overview jeremy thake
SharePoint 2013 overview   jeremy thakeSharePoint 2013 overview   jeremy thake
SharePoint 2013 overview jeremy thake
 
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
 
Intro: SharePoint 2013 Apps for IT Pros
Intro: SharePoint 2013 Apps for IT ProsIntro: SharePoint 2013 Apps for IT Pros
Intro: SharePoint 2013 Apps for IT Pros
 

More from Nik Patel

Chicago Office 365 User Group 2018 - Better Together SharePoint and OneDrive...
Chicago Office 365 User Group 2018 -  Better Together SharePoint and OneDrive...Chicago Office 365 User Group 2018 -  Better Together SharePoint and OneDrive...
Chicago Office 365 User Group 2018 - Better Together SharePoint and OneDrive...Nik Patel
 
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...Nik Patel
 
SharePoint Saturday Chicago Suburbs 2016 - Modern Intranet Development Best P...
SharePoint Saturday Chicago Suburbs 2016 - Modern Intranet Development Best P...SharePoint Saturday Chicago Suburbs 2016 - Modern Intranet Development Best P...
SharePoint Saturday Chicago Suburbs 2016 - Modern Intranet Development Best P...Nik Patel
 
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...Nik Patel
 
SharePoint Fest Chicago 2014 - Anatomy of SharePoint and Office 365 Hybrid De...
SharePoint Fest Chicago 2014 - Anatomy of SharePoint and Office 365 Hybrid De...SharePoint Fest Chicago 2014 - Anatomy of SharePoint and Office 365 Hybrid De...
SharePoint Fest Chicago 2014 - Anatomy of SharePoint and Office 365 Hybrid De...Nik Patel
 
Office 365 and share point online ramp up in 60 minutes for on-premises share...
Office 365 and share point online ramp up in 60 minutes for on-premises share...Office 365 and share point online ramp up in 60 minutes for on-premises share...
Office 365 and share point online ramp up in 60 minutes for on-premises share...Nik Patel
 
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...Designing Corporate News Application Using SharePoint 2013 Web Content Manage...
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...Nik Patel
 
Real World InfoPath with SharePoint 2010 - List vs Library Forms
Real World InfoPath with SharePoint 2010 - List vs Library FormsReal World InfoPath with SharePoint 2010 - List vs Library Forms
Real World InfoPath with SharePoint 2010 - List vs Library FormsNik Patel
 
Access Services in SharePoint 2010 - All You Need to Know
Access Services in SharePoint 2010 - All You Need to KnowAccess Services in SharePoint 2010 - All You Need to Know
Access Services in SharePoint 2010 - All You Need to KnowNik Patel
 

More from Nik Patel (9)

Chicago Office 365 User Group 2018 - Better Together SharePoint and OneDrive...
Chicago Office 365 User Group 2018 -  Better Together SharePoint and OneDrive...Chicago Office 365 User Group 2018 -  Better Together SharePoint and OneDrive...
Chicago Office 365 User Group 2018 - Better Together SharePoint and OneDrive...
 
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
Cloud Saturday Chicago 2016 - Modern Intranet Development Best Practices on S...
 
SharePoint Saturday Chicago Suburbs 2016 - Modern Intranet Development Best P...
SharePoint Saturday Chicago Suburbs 2016 - Modern Intranet Development Best P...SharePoint Saturday Chicago Suburbs 2016 - Modern Intranet Development Best P...
SharePoint Saturday Chicago Suburbs 2016 - Modern Intranet Development Best P...
 
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...SharePoint Fest Chicago 2015  - Anatomy of configuring provider hosted add-in...
SharePoint Fest Chicago 2015 - Anatomy of configuring provider hosted add-in...
 
SharePoint Fest Chicago 2014 - Anatomy of SharePoint and Office 365 Hybrid De...
SharePoint Fest Chicago 2014 - Anatomy of SharePoint and Office 365 Hybrid De...SharePoint Fest Chicago 2014 - Anatomy of SharePoint and Office 365 Hybrid De...
SharePoint Fest Chicago 2014 - Anatomy of SharePoint and Office 365 Hybrid De...
 
Office 365 and share point online ramp up in 60 minutes for on-premises share...
Office 365 and share point online ramp up in 60 minutes for on-premises share...Office 365 and share point online ramp up in 60 minutes for on-premises share...
Office 365 and share point online ramp up in 60 minutes for on-premises share...
 
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...Designing Corporate News Application Using SharePoint 2013 Web Content Manage...
Designing Corporate News Application Using SharePoint 2013 Web Content Manage...
 
Real World InfoPath with SharePoint 2010 - List vs Library Forms
Real World InfoPath with SharePoint 2010 - List vs Library FormsReal World InfoPath with SharePoint 2010 - List vs Library Forms
Real World InfoPath with SharePoint 2010 - List vs Library Forms
 
Access Services in SharePoint 2010 - All You Need to Know
Access Services in SharePoint 2010 - All You Need to KnowAccess Services in SharePoint 2010 - All You Need to Know
Access Services in SharePoint 2010 - All You Need to Know
 

Understanding SharePoint 2013 Code Deployment Models - Apps vs Solutions - SharePoint Fest 2012

  • 1. Understanding SharePoint 2013 Code Deployment Models - Apps vs. Solutions Nik Patel Lead Solutions Architect, Slalom Consulting, Chicago Practice
  • 2. Session Goals  Session Level - 200  Audience – SharePoint Architects and SharePoint Developers  Simple Goal – Understanding where Apps fits in SharePoint 2013 Development Landscape 2
  • 3. About Me Nik Patel • Lead Solutions Architect, Slalom Consulting • Working with SharePoint 2010 since Summer 2009 TAP • Master in Computer Science from IIT, Chicago Contact Info • Email – patenik2@yahoo.com • Blog – Nik Patel’s SharePoint World - http://nikspatel.wordpress.com/ • Twitter - @nikxpatel • LinkedIn - linkedin.com/in/nikspatel • Slideshare - slideshare.net/patenik2 3
  • 4. Session Agenda  Why New Code Deployment Model – SharePoint 2013 Apps?  Revisit Farm Solutions and Sandbox Solutions Models  Introducing SharePoint Apps as Code Deployment Model  Quick walkthrough of SharePoint Hosted Apps  In-depth Comparison of Solutions vs. Apps  Prescriptive Guidance of when to use SharePoint Solutions vs. Apps  Questions and Answers 4
  • 5. SharePoint 2013 Apps – Rumors, Humors, Opinions, and Level Set It’s too early to say how organization will adopt Apps Model  Apps are Crapps  Apps are not magic button  Both solutions and Apps are valid options  Apps supports No Server side code, Lots of Client side scripting  Don’t be confused with Server Side Code with SharePoint Server Side APIs  This is true for SharePoint Hosted Apps but you can have server side code in Cloud hosted Apps  Sandbox Solutions are deprecated  Microsoft’s meaning for deprecated is – Not preferred  Apps are preferred option over Sandbox Solutions Don’t listen to early opinions, Try it by yourself to decide..  5
  • 6. What are SharePoint 2013 Apps? Independent, Self-contained, Scenario-based Applications It’s an application whose interface is Yeah..It’s a widget surfaced through or application I can Hmmm.. It’s self- SharePoint but code contained piece of acquire to perform runs somewhere functionality that extend my work or run elsewhere away the capabilities of a from Servers or business regardless SharePoint website!!! Browser!!! of what technology it is!!! Solution Architect Developer Business User 6
  • 7. Where can I Find Apps in SharePoint 2013? Independent, Self-contained, Scenario-based Applications Everything in SharePoint 2013 are Apps including SharePoint Lists & Libraries (Kind of!!) 7
  • 8. Demo Quick walkthrough of SharePoint Apps 8
  • 9. Why SharePoint 2013 Apps? It’s a fundamental shift from the traditional SharePoint customization and deployment model  All about End-Users – Consumerization through Apps Catalogs  Allows end-users to extend their sites without going through IT Channels  All about IT Pro - Stabilize the SharePoint Environment  Keep custom code away from Servers, Improved Outage & Upgrade stories  Orgs with At least 1 version upgrade with highly customized environment would appreciate Apps  All about Developers - Pieces to Packages  Apps trying to focus back on fully packaged and ready to use assembled custom solutions  All about Cross-Platform - Use Existing Skills to extend SharePoint  Rather than reinventing wheels in SharePoint, use existing technologies & skills to build new apps e.g. Bing Apps Apps are here to stay.. Embrace It with Caution..  9
  • 10. Understanding SharePoint 2013 Custom Development Landscape Journey from SharePoint 2007 to SharePoint 2013 10
  • 11. Revisit SharePoint Farm Level Solutions SharePoint’s First Generation Code Execution Model  What are they?  Supports Full Trust Code Model  Supports Full Server Side Object Model and Client Side Object Model APIs  Requires Solutions Run on the Server  Major limitations  Supported in On-Premises only, Not supported in SharePoint Online  No Marketplace  Requires big server touch, customizations deployed on servers  Root cause of most of SharePoint outages – Performance and Stability Concerns  Huge concerns for SharePoint Upgrade strategy 11
  • 12. Revisit SharePoint Sandbox Solutions SharePoint’s Second Generation Code Execution Model Microsoft’s first attempt to get away from Farm Level Solutions  What are they?  Available in both SharePoint Online & On-Premises  Requires Partial Trust Code Model  Major Benefits over Farm Solutions  Code runs on sandbox, Doesn’t require Access to Server  Can’t harm the SharePoint server, ideal for hosted environments  Major limitations  Just like Farm Solutions, No Marketplace  Severe restrictions and limited SharePoint APIs – No Database, No File System, No Web Services  Scoped only at the Site Collection Level, No Cross-Site Collection Access  Runs only under current user context, Can’t run code with administrative elevated privileges  Runs under complex resource monitoring system - Outage of Application if Resource Quota is exceeded 12
  • 13. Introducing SharePoint App Model – What are they? SharePoint’s Third Generation Code Execution Model Microsoft’s second attempt to get away from Farm Level Solutions  Major Benefits over Solutions Model  Based on a proven and familiar app model used in Mobile technologies  SharePoint business logic no longer live in SharePoint  Apps custom code executes in the client, cloud or on-premises  Apps can live in Public Marketplace or Private Corporate Marketplace  Apps have efficient end-user lifecycle – Install, Use, Manage, Upgrade, Remove  Apps will have better SharePoint Upgrade story – decoupled from SharePoint 13
  • 14. Apps Primer - Major Discussion Points Apps Building Blocks - Basics  App Models – What kind of Apps can be developed?  App User Experience  App Shapes – How does App integrated or consumed with SharePoint?  App Scopes – Where does App runs? Can App access data from other sites?  App Branding – How does App looks like when integrated with SharePoint – UX, Navigation, Seamless Experience?  App Interaction with SharePoint  App Integration – How does App access with SharePoint Data?  App Rights – How does App granted rights to consume SharePoint data? 14
  • 15. App Primer – App Hosting Models Three different approaches  SharePoint Hosted Apps  Apps hosted in SharePoint as isolated App web, SharePoint acts as file store to host Apps components like HTML, CSS, or JavaScript  No Server side code, business logic runs on JavaScript  Provider Hosted Apps  Apps hosted outside of SharePoint in IIS, Windows Azure, or other dedicated self-hosted Infrastructure  Apps can be built using ASP.NET or any other technologies like Java or PHP  Azure Auto Hosted Apps  Supported only in Office 365 at this moment, Azure subscription tied to Office 365  Auto provisions Azure web site and SQL Azure during Apps installation process Note - Diagram from MSDN 15
  • 16. App Primer – App Experience via Shapes Three different ways to interact with Apps Immersive App Part App Custom Action App • Takes entire browser & UI screen • Behave in SharePoint just like • Action menu on Ribbon or ECB Web Parts e.g. Stocks App, to trigger App interaction • Stand-alone business solution e.g. Weather App, Maps App Office Web Apps, SharePoint Search • Same as SharePoint 2010 Site, My Site etc. • Surfaced in SharePoint as Iframe 16
  • 17. App Primer – App Experience (Continued ..) Seamless UI integration is key for successful App implementation  App Scopes  App Branding and UI Integration  Apps are isolated and can’t  App Templates communicate directly with each other  Default option when creating apps in VS  Web Scope  App page pulls CSS from hosting SharePoint  Apps resources live in App Web, can be deployed at Site or Site Collection level  Chrome Control  Can use or register resources at Site or Site  Ideal for Cloud hosted Apps Collection Level  JavaScript based control that allows custom apps  Tenant Scope to consume the CSS and styling of the parent App Web  Only supported in cloud-hosted  Custom Branding  Supports multi-tenancy and interaction with multiple site collections  Full control over unique branding, Like SharePoint Search and My Site 17
  • 18. App Primer – App Interaction with SharePoint Secure interaction with SharePoint  App Interaction  Apps can communicate with SharePoint using CSOM and REST based APIs  REST/CSOM supports now Taxonomy, Search, Publishing, User Profile, and many more APIs  App Rights  Apps can authenticate into SharePoint using OAuth or STS  SharePoint 2013 has new authentication model to authenticate SharePoint apps  App Permission request read/write/manage/full control maps to SharePoint permission levels read/contribute/design/full control 18
  • 19. Demo Quick Experience of SharePoint Hosted Apps 19
  • 20. Apps vs. Solutions – Decision Time Multi-faceted in-depth comparison  Comparing Apps with Solutions from 6 different perspective  Architectural level  Custom Development Level  Deployment, Packaging, and Maintenance Level  Infrastructure Level  Business Strategy and Direction  Usability Perspective No clear winner.. It depends!!!!..  Apps Model is Not Magic Pill 20
  • 21. Apps vs. Solutions – Architecture Decisions Farm Level SharePoint Provider Sandbox Solutions Azure Hosted Apps Solution Hosted Apps Hosted Apps On-Premises Only, SharePoint Supported No SharePoint SharePoint Online and SharePoint Online Online and On- SharePoint Online Only Environment Online (Supported On-Premises and On-Premises Premises in Dedicated SPO) Code Execution Full Trust Partial Trust Isolated Domain Isolated Domain Isolated Domain Model Browser or Non- Business Logic Runs Browser or Browser or SharePoint Only Browser SharePoint Browser or Non-SharePoint Under what Context? SharePoint Context Context Context Hosted Platform Hosted Platform Context Context Architectural Not Much (Only Yes, Very Much Complexity - Not Much (Only Yes, Little Bit Yes, Very Much (Requires Service Application (Configure both Requires Additional Service Application (Configure App Windows Azure Skills as needs to be IIS and App Configuration to run needs to be activated) Domain) well) activated) Domain) code? 21
  • 22. Apps vs. Solutions – Architecture Decisions (Continued …) Farm Level SharePoint Provider Hosted Sandbox Solutions Azure Hosted Apps Solution Hosted Apps Apps App Web (only Site Collection (Can't web or site App Web (only web or site cross site collection, App Web (only web collection) or collection) or Tenant (can Code Scope Farm limited APIs within Site or site collection) Tenant (can cross- cross-site collection in Collection as well) site collection in same tenant) same tenant) No Authentication Authentication & No Authentication No Authentication OAuth or STS Required, Can run OAuth authentication is Interaction with Required, can run only Required, can run Authentication on User or Admin required SharePoint APIs in User Context in App Context required context Malicious Attack or May be (May be May be (May be May be (May be too early harm of SharePoint Yes (runs in same No (runs in isolated too early to say too early to say to say how OAuth will environment due to process) safe process) how OAuth will how OAuth will work) bad code work) work) 22
  • 23. Apps vs. Solutions – Architecture Decisions (Continued …) Farm Level SharePoint Provider Hosted Sandbox Solutions Azure Hosted Apps Solution Hosted Apps Apps Medium-Low Medium-Low Medium-Low (Network & Performance for High - Very efficient, Medium - Runs in (Network & cloud (Network & cloud cloud latency, Requires SharePoint Data runs in main dedicated isolated latency, Requires latency, Requires CSOM or REST Access application process Sandbox Process CSOM or REST CSOM or REST connection points ) connection points ) connection points ) Supports deep integration with Partially (with web Partially (with web Partially (with web parts SharePoint UI and Yes Yes parts and chrome parts and chrome and chrome controls) Look & Feel controls) controls) Components Supports deep integration with SharePoint Not Advisable Not Advisable Components & (CSOM and REST Not Advisable (CSOM and Yes Yes (CSOM and REST Content (Lists, APIs be limited) REST APIs be limited) APIs be limited) Content Types, fields, page layouts, pages etc.) 23
  • 24. Apps vs. Solutions – Custom Development Support Farm Level Sandbox SharePoint Hosted Provider Hosted Azure Hosted Apps Solution Solutions Apps Apps Requires code running on Yes Yes No No No Server SharePoint Farm level Yes No No No No Administrative API Supported APIs - Server Partial - Subset Full No No No Side Object Model of Full Trust API Supported APIs - Managed Yes Yes No Yes Yes Client Side Object Model Supported APIs - JavaScript Client Side Yes Yes Yes Yes Yes Object Model & REST APIs Server Side Code - C# Yes Yes No Yes Yes 24
  • 25. Apps vs. Solutions – Custom Development Support (Continued…) Farm Level Sandbox SharePoint Hosted Provider Hosted Azure Hosted Apps Solution Solutions Apps Apps Security - Run code with Yes (New App Yes (New App Yes No Yes (New App Rights) administrative privileges Rights) Rights) Apart from .NET, any Non- Limited (Azure supports Microsoft Server Side No No N/A Yes only .NET Framework, technologies Supported (e.g. Java, PHP & Node.js) Java, PHP, LAMP etc.) Allows you to take benefits on latest/future Sever Side No No No Yes Yes technologies - newer version of ASP.NET MVC or .NET Allows you to take benefits on latest/future Client Side Yes Yes Yes Yes Yes technologies - newer version of ASP.NET MVC or .NET 25
  • 26. Apps vs. Solutions – Custom Development Support (Continued…) Farm Level SharePoint Provider Hosted Sandbox Solutions Azure Hosted Apps Solution Hosted Apps Apps Requires Local Farm or Development Environment Yes Yes No No No for Developers Remote deployment and debugging from Visual No No Yes Yes Yes Studio Developer Productivity, Medium (New Medium (New Medium (New Technology) less complex moving High High Technology) Technology) parts Custom Timer Jobs or Yes No No No No Farm Integration 26
  • 27. Apps vs. Solutions – Deployment, Packaging, and Maintenance SharePoint Provider Hosted Farm Level Solution Sandbox Solutions Azure Hosted Apps Hosted Apps Apps Requires Server Access Yes No No No No for customizations Requires outage of Yes, requires IIS Partially, During Partially, During Partially, During Application during Partially, During Upgrade Reset Upgrade Upgrade Upgrade deployment Upgrade Concerns Yes No No No No OK (Better than farm level Maintenance Story - Good (Requires but requires discipline for Great Great Great Install/Upgrade/Uninstall disciplined approach) large # of Site Collections) Yes (code runs under Yes (site collection locks No (Only Terminates the Process No (Only No (Only same IIS worker down if resource quota functionality in case of failure functionality outage) functionality outage) process) exceeded) outage) High (farm solutions Medium (can't affect Low (Hosted on Low (Hosted on Non- Low (No Server IT Pros Concerns may cause damage server resources, depends Non-SharePoint SharePoint Side code) and server touch) on resource quota) environment) environment 27
  • 28. Apps vs. Solutions – Infrastructure Farm Level Sandbox SharePoint Hosted Provider Hosted Apps Azure Hosted Apps Solution Solutions Apps Additional Hardware, No (hosted in Yes (App Domain on Yes (Windows Azure No No Software, and Licensing SharePoint) dedicated server) Subscription) Yes (But stored in the Additional Capacity Yes (Additional data Yes (Additional data No No same site collection Planning storage) storage) content database) SP Backup & Business Continuity - Requires Additional Requires Additional File System for SP Backup Only SP Backup Only DR, Backup-Restore Consideration Consideration Customizations Load-balancing & SharePoint SharePoint Requires Additional Requires Additional SP Backup Only Redundancy Farm Farm Consideration Consideration Yes (only for OAuth for Additional Subscription Yes (tied with Office No No No ACS integration, not for Fees 365 subscription) STS or High-Trusted) Apart from IIS, any Non- No (hosted in Yes, only Windows Microsoft Server Side No No Yes (Any stack) SharePoint) Azure technologies Supported 28
  • 29. Apps vs. Solutions – Business Direction Farm Level SharePoint Provider Hosted Sandbox Solutions Azure Hosted Apps Solution Hosted Apps Apps Distribution via No No Yes Yes Yes Marketplace Supports Business Strategy - No Custom No No Yes Yes Yes Code on SharePoint Supports Business Strategy - Less Hardware, Software, Yes Yes Yes No No Licensing Budget & Architecture Complexity Decoupling business solutions from No No Yes Yes Yes SharePoint 29
  • 30. Apps vs. Solutions – Usability Perspective Farm Level SharePoint Provider Hosted Sandbox Solutions Azure Hosted Apps Solution Hosted Apps Apps End-Users End-Users End-Users Who Installs and Farm Admin Site Collection Admin (IT still required for (IT still required for (IT still required for Uninstalls Administration) Administration) Administration) Yes (requires Search Farm/App No (Search can’t Yes (requires additional Yes Yes additional Solutions Data crawl App Web) consideration) consideration) Collaborative Solutions (Side by Side existence Yes Yes No No No of Applications and Data) Seamless Experience while browsing Apps Yes Yes No No No and SharePoint 30
  • 31. Prescriptive Guidance of when to use SharePoint Solutions vs. Apps Golden rules when to use which APIs  Use Apps whenever you can – Requires philosophical change architecting SharePoint Applications  Keep in mind - Apps are limited to what CSOM and REST API Supports  Use Apps for decoupling independent business applications (e.g. scenario based applications)  Use SharePoint Hosted Apps for small, reusable standalone applications (e.g. stocks, maps, RSS feeds, social integrators etc.)  Use Provider Hosted Apps for large corporate business applications (e.g. Time sheet system, budget tracking application)  Use Azure Auto Hosted Apps for wide-reach, public market place, scalable solutions  Avoid Apps & Use Farm Level or Sandbox solutions for tight UI and features integration  Use Farm or Sandbox Solutions for SharePoint Deep Integrated Applications (e.g. Collaborative Applications)  Use Apps or Sandbox Solutions to take away code from server & minimize risk to the farm for better upgrade stories in future  Use Farm Level solutions for administrative interfaces to extend SharePoint functionalities 31
  • 32. Additional Apps Resources  Microsoft  Developer Ignite Training Videos - http://msdn.microsoft.com/en-US/office/apps/fp123626  Build Apps for Office and SharePoint - http://msdn.microsoft.com/en-us/office/apps/fp160950.aspx  3 Parts Series of Inside apps for Office and SharePoint - http://channel9.msdn.com/Series/Inside-apps-for-Office-and- SharePoint  Community  Andrew Connell's Understanding SharePoint 2013 Apps - http://www.andrewconnell.com/blog/archive/2012/07/16/understanding-sharepoint-2013-apps-aka-apps-101.aspx  Ted Pattison's Apps Series - http://blog.tedpattison.net/Lists/Posts/Post.aspx?ID=14  Chris O' Brien's Series - SharePoint apps: working with the app web, and why you should - http://www.sharepointnutsandbolts.com/2012/09/sharepoint-apps-working-with-app-web.html  Analben Mehta’s 30 Articles series for Apps development for SharePoint - http://aanuwizard.wordpress.com/2012/09/16/30-articles-series-for-apps-development-for-sharepoint/ 32
  • 33. Thanks for attending the session!! • Follow SharePoint Fest Chicago • Twitter - @SharePointFest - https://twitter.com/sharepointfest • Website - http://www.sharepointfest.com/Chicago/ 33
  • 34. © 2011 Slalom Corporation. All rights reserved. The information herein is for informational purposes only and represents the current view of Slalom Corporation as of the date of this presentation. SLALOM MAKES NO WARRANTIES, EXPRESS, IMPLIED, OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.