SlideShare a Scribd company logo
1 of 19
Developing for
SharePoint Online
    Ari Bakker
    @aribakker
Goals
• Learn how to develop applications for
  SharePoint Online deployments
  – Gain a basic understanding of the SharePoint
    Online offering
  – Understand the limitations of developing in
    SharePoint Online
  – Understand techniques for overcoming some of
    these limitations
SharePoint Online Flavours
• Office 365 Public Cloud
  – Professionals and small businesses (P plans)
     • Limited to 50 users
     • Single site collection
     • Can deploy sandboxed solutions
  – Medium businesses and enterprises (E plans)
     • Can deploy sandboxed solutions
• Office 365 Dedicated
  – Dedicated farm, aimed at 30,000+ seat deployments
     • Farm solutions allowed (requires Microsoft approval)
Why SharePoint Online?
•   Handles variable load
•   Flexible cost of ownership
•   Business agility/time to market
•   Stability
What’s In
•   My Sites
•   Office Integration (2007/2010)   •   Excel Services
•   SharePoint Workspace 2010 for    •   Access Services
    Offline Working                  •   Visio Services
•   External Sharing
                                     •   SharePoint Web Services
•   Simple Public-Facing Website
•   Document Libraries               •   Forms Services
•   Slide & Media Libraries          •   Custom Web Parts
•   Business Taxonomies & Tagging    •   Silverlight controls
•   Document Sets & ID’s             •   Sandboxed Solutions
•   Office Web Apps
                                     •   Blogs
•   Cross-site Collection Search
•   Search Refiners                  •   Wikis
•   Indexing Controls                •   Business Connectivity Services
•   People Search
•   Phonetic Search
What’s Out
• Records Center
• Information Rights Management (IRM)
• SharePoint for Internet Sites and WCM workflow
  and approval
• Site Variations
• PerformancePoint Services
• Power Pivot
• Full-Trust Code Solutions
• FAST Search
Development Options
•   Browser based customisations
•   SharePoint designer/InfoPath Forms
•   Sandboxed solutions
•   Windows Azure
Key sandbox limitations
• No access to the file system
• Code restrictions:
  – GAC deployment prohibited
  – Restricted set of allowed assemblies
• No server side external calls
• No Web Application or Farm scoped
  functionality
• No full-trust proxy allowed in SP-O standard
Getting started
• Install Visual Studio 2010 SharePoint Power
  Tools
  – Sandboxed visual web part
  – Compile against allowed assemblies
• Debug using SPUCWorkerProcess locally
• Use FXCop rules to validate solution against
  SPO
  – SPO contains custom solution validator
• Create a test site collection in SPO
Limitation #1 - File system access
• Limited access to the file system
  – Site definitions
  – User controls
  – Application pages
  – Branding resources
  – Web.config
  – ULS logs
Limitation #1 - File system access
• Limited access to the file system
  – Site definitions – Use WebTemplates
  – User controls – Install Visual Studio Power Tools
  – Application pages – Use web parts
  – Branding resources – Use style library
  – Web.config – Use SPWeb property bag or lists
  – ULS logs – Log to lists. Consider resource usage
    e.g. #if DEBUG or a property
Limitation #2 - Accessing external data
• Server side external calls
  – Web service calls
  – Cross site-collection calls
Limitation #2 - Accessing external data
• Server side external calls
  – Web service calls
  – Cross site-collection calls
• Solutions
  – Client side script – Silverlight, JavaScript, Managed
    client OM
  – Business connectivity services
  – Data view web part
Limitation #3 - Code restrictions
• GAC deployment prohibited
  – Custom workflow solution
  – Timer jobs
• Restricted set of allowed assemblies
  – SPSecurity.RunWithElevatedPriviledges
• Execution context in sandbox process
  – Only partial access to the Page and HttpRequest
    objects
Sandboxed Code Architecture
Limitation #3 - Code restrictions
• Consider moving application logic into Azure
  – Supports complex business logic
  – Cheap data storage
  – Pay for what you use
Limitation #4 - Deployment scope
• Web Application or Farm scoped functionality
  – Search managed properties
  – Service applications
  – Authentication providers (uses Windows Live or
    ADFS)
How do I get started?
• Office 365 free 30 day trial
  http://www.office365.com
• Visual Studio 2010 SharePoint Power Tools:
  http://tinyurl.com/spo-vspt
• FxCop Rules for SharePoint Online
  http://o365fxcoprules.codeplex.com
• Microsoft Cloud Essentials Pack
  http://www.microsoftcloudpartner.com
Thanks for listening
• Get in touch
  – ari.bakker@gmail.com
  – @aribakker
  – http://www.sharepointconfig.com

More Related Content

What's hot

SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...
Liam Cleary [MVP]
 
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas EldblomTrendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Thomas Eldblom
 
Sitecore xPlatform - Introduction
Sitecore xPlatform - IntroductionSitecore xPlatform - Introduction
Sitecore xPlatform - Introduction
Thomas Eldblom
 
Custom Development for SharePoint
Custom Development for SharePointCustom Development for SharePoint
Custom Development for SharePoint
Talbott Crowell
 

What's hot (20)

SharePoint 2013 i SharePoint Online
SharePoint 2013i SharePoint OnlineSharePoint 2013i SharePoint Online
SharePoint 2013 i SharePoint Online
 
Alfresco Day Stockholm 2015 - Alfresco One
Alfresco Day Stockholm 2015 - Alfresco OneAlfresco Day Stockholm 2015 - Alfresco One
Alfresco Day Stockholm 2015 - Alfresco One
 
Inside the mind of a SharePoint Solutions Architect
Inside the mind of a SharePoint Solutions ArchitectInside the mind of a SharePoint Solutions Architect
Inside the mind of a SharePoint Solutions Architect
 
SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...SharePoint Saturday The Conference DC - How the client object model saved the...
SharePoint Saturday The Conference DC - How the client object model saved the...
 
SharePoint 2013 Admin in the Hybrid World
SharePoint 2013 Admin in the Hybrid WorldSharePoint 2013 Admin in the Hybrid World
SharePoint 2013 Admin in the Hybrid World
 
SharePoint Saturday Paris 2015 Validating SharePoint 2013 Farm Before Go-Live
SharePoint Saturday Paris 2015   Validating SharePoint 2013 Farm Before Go-LiveSharePoint Saturday Paris 2015   Validating SharePoint 2013 Farm Before Go-Live
SharePoint Saturday Paris 2015 Validating SharePoint 2013 Farm Before Go-Live
 
ECS2019 - Managing Content Types in the Modern World
ECS2019 - Managing Content Types in the Modern WorldECS2019 - Managing Content Types in the Modern World
ECS2019 - Managing Content Types in the Modern World
 
SPS Twin Cities - Congratulations You Inherited a SharePoint Site
SPS Twin Cities - Congratulations You Inherited a SharePoint SiteSPS Twin Cities - Congratulations You Inherited a SharePoint Site
SPS Twin Cities - Congratulations You Inherited a SharePoint Site
 
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
ECS19 - Laura Kokkarinen - Everything you need to know about SharePoint site ...
 
European SharePoint Conference Training Week - Installing SharePoint 2013
European SharePoint Conference Training Week - Installing SharePoint 2013European SharePoint Conference Training Week - Installing SharePoint 2013
European SharePoint Conference Training Week - Installing SharePoint 2013
 
Oracle Webcenter Suite Overview
Oracle Webcenter Suite OverviewOracle Webcenter Suite Overview
Oracle Webcenter Suite Overview
 
The Cireson Sessions: Cireson Portal
The Cireson Sessions: Cireson Portal The Cireson Sessions: Cireson Portal
The Cireson Sessions: Cireson Portal
 
Manage how people use your SharePoint Online
Manage how people use your SharePoint OnlineManage how people use your SharePoint Online
Manage how people use your SharePoint Online
 
ECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint Sites
ECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint SitesECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint Sites
ECS19 - Rodrigo Pinto - Modernize Your Classic SharePoint Sites
 
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas EldblomTrendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
Trendspot ANZ 2014 - Federated Experience Manager - Thomas Eldblom
 
Sitecore xPlatform - Introduction
Sitecore xPlatform - IntroductionSitecore xPlatform - Introduction
Sitecore xPlatform - Introduction
 
Webcenter Portlal training...
Webcenter Portlal training...Webcenter Portlal training...
Webcenter Portlal training...
 
ECS19 - Katja Jokisalo - Modernize your Intranet
ECS19 - Katja Jokisalo - Modernize your IntranetECS19 - Katja Jokisalo - Modernize your Intranet
ECS19 - Katja Jokisalo - Modernize your Intranet
 
SQL Saturday Columbus 2014 Exposing SQL Data with SharePoint
SQL Saturday Columbus 2014 Exposing SQL Data with SharePointSQL Saturday Columbus 2014 Exposing SQL Data with SharePoint
SQL Saturday Columbus 2014 Exposing SQL Data with SharePoint
 
Custom Development for SharePoint
Custom Development for SharePointCustom Development for SharePoint
Custom Development for SharePoint
 

Viewers also liked

Handling Cross-Domain calls & authentication in SharePoint 2013
Handling Cross-Domain calls & authentication in SharePoint 2013Handling Cross-Domain calls & authentication in SharePoint 2013
Handling Cross-Domain calls & authentication in SharePoint 2013
BIWUG
 
A Kiss For You
A Kiss For YouA Kiss For You
A Kiss For You
Renny
 
Same but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTLSame but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTL
John Ferringer
 
The 2016 Pirelli Calendar
The 2016 Pirelli CalendarThe 2016 Pirelli Calendar
The 2016 Pirelli Calendar
guimera
 
Lovely Planet Earth 6
Lovely Planet Earth 6Lovely Planet Earth 6
Lovely Planet Earth 6
guimera
 

Viewers also liked (16)

Handling Cross-Domain calls & authentication in SharePoint 2013
Handling Cross-Domain calls & authentication in SharePoint 2013Handling Cross-Domain calls & authentication in SharePoint 2013
Handling Cross-Domain calls & authentication in SharePoint 2013
 
Spsbe buildinganfaqforendusers-150422122027-conversion-gate02
Spsbe buildinganfaqforendusers-150422122027-conversion-gate02Spsbe buildinganfaqforendusers-150422122027-conversion-gate02
Spsbe buildinganfaqforendusers-150422122027-conversion-gate02
 
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
Unity Connect Haarlem 2016 - The Lay of the Land of Client-Side Development c...
 
A Kiss For You
A Kiss For YouA Kiss For You
A Kiss For You
 
WBS PROJECT
WBS PROJECTWBS PROJECT
WBS PROJECT
 
Same but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTLSame but Different - Developing for SharePoint Online -- SPSSTL
Same but Different - Developing for SharePoint Online -- SPSSTL
 
The 2016 Pirelli Calendar
The 2016 Pirelli CalendarThe 2016 Pirelli Calendar
The 2016 Pirelli Calendar
 
Lovely Planet Earth 6
Lovely Planet Earth 6Lovely Planet Earth 6
Lovely Planet Earth 6
 
Work Breakdown Structure Use This
Work Breakdown Structure Use ThisWork Breakdown Structure Use This
Work Breakdown Structure Use This
 
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...
 
Work Breakdown Structure
Work Breakdown StructureWork Breakdown Structure
Work Breakdown Structure
 
10 Things Many IT Professionals Don’t Know About Office 365
10 Things Many IT Professionals Don’t Know About Office 36510 Things Many IT Professionals Don’t Know About Office 365
10 Things Many IT Professionals Don’t Know About Office 365
 
WBS presentation
WBS presentationWBS presentation
WBS presentation
 
What is Office 365? A Simple Answer
What is Office 365? A Simple AnswerWhat is Office 365? A Simple Answer
What is Office 365? A Simple Answer
 
Get started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePointGet started with building native mobile apps interacting with SharePoint
Get started with building native mobile apps interacting with SharePoint
 
CANOVA: EROS I PSIQUE
CANOVA: EROS I PSIQUECANOVA: EROS I PSIQUE
CANOVA: EROS I PSIQUE
 

Similar to Developing for SharePoint Online

High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013
C5 Insight
 
SPConnections - Search Administration in SharePoint 2013
SPConnections - Search Administration in SharePoint 2013SPConnections - Search Administration in SharePoint 2013
SPConnections - Search Administration in SharePoint 2013
Agnes Molnar
 

Similar to Developing for SharePoint Online (20)

SharePoint Development
SharePoint DevelopmentSharePoint Development
SharePoint Development
 
What SharePoint is My Ferrari?
What SharePoint is My Ferrari? What SharePoint is My Ferrari?
What SharePoint is My Ferrari?
 
Session 2 Integrating SharePoint 2010 and Windows Azure
Session 2   Integrating SharePoint 2010 and Windows AzureSession 2   Integrating SharePoint 2010 and Windows Azure
Session 2 Integrating SharePoint 2010 and Windows Azure
 
Introduction to SharePoint Framework
Introduction to SharePoint FrameworkIntroduction to SharePoint Framework
Introduction to SharePoint Framework
 
SPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint BeastSPSDenver - Wrapping Your Head Around the SharePoint Beast
SPSDenver - Wrapping Your Head Around the SharePoint Beast
 
The Greatest Introduction to SharePoint Framework (SPFx) on earth!
The Greatest Introduction to SharePoint Framework (SPFx) on earth!The Greatest Introduction to SharePoint Framework (SPFx) on earth!
The Greatest Introduction to SharePoint Framework (SPFx) on earth!
 
What’s New Share Point 2010
What’s New Share Point 2010What’s New Share Point 2010
What’s New Share Point 2010
 
SharePoint Performance: Best Practices from the Field
SharePoint Performance: Best Practices from the FieldSharePoint Performance: Best Practices from the Field
SharePoint Performance: Best Practices from the Field
 
SharePoint Performance - Best Practices from the Field
SharePoint Performance - Best Practices from the Field SharePoint Performance - Best Practices from the Field
SharePoint Performance - Best Practices from the Field
 
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast2/15/2012 - Wrapping Your Head Around the SharePoint Beast
2/15/2012 - Wrapping Your Head Around the SharePoint Beast
 
High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013High-level Guide: Upgrading to SharePoint 2013
High-level Guide: Upgrading to SharePoint 2013
 
Sharepoint
SharepointSharepoint
Sharepoint
 
Penny coventry auto-bp-spsbe31
Penny coventry auto-bp-spsbe31Penny coventry auto-bp-spsbe31
Penny coventry auto-bp-spsbe31
 
Practical Tips for Migrating SharePoint Customizations to Office 365
Practical Tips for Migrating SharePoint Customizations to Office 365Practical Tips for Migrating SharePoint Customizations to Office 365
Practical Tips for Migrating SharePoint Customizations to Office 365
 
Interoperability Ms Sap
Interoperability Ms SapInteroperability Ms Sap
Interoperability Ms Sap
 
Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...
Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...
Replacing your fileshare with SharePoint 2013 Farm - SharePoint User Group UK...
 
SPConnections - Search Administration in SharePoint 2013
SPConnections - Search Administration in SharePoint 2013SPConnections - Search Administration in SharePoint 2013
SPConnections - Search Administration in SharePoint 2013
 
Sharepoint server 2013 training
Sharepoint server  2013 trainingSharepoint server  2013 training
Sharepoint server 2013 training
 
Introduction and What’s new in SharePoint 2013
Introduction and What’s new in SharePoint 2013Introduction and What’s new in SharePoint 2013
Introduction and What’s new in SharePoint 2013
 
Interoperability Ms Sap Part Ii
Interoperability Ms Sap  Part IiInteroperability Ms Sap  Part Ii
Interoperability Ms Sap Part Ii
 

Recently uploaded

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 

Recently uploaded (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 

Developing for SharePoint Online

  • 1. Developing for SharePoint Online Ari Bakker @aribakker
  • 2. Goals • Learn how to develop applications for SharePoint Online deployments – Gain a basic understanding of the SharePoint Online offering – Understand the limitations of developing in SharePoint Online – Understand techniques for overcoming some of these limitations
  • 3. SharePoint Online Flavours • Office 365 Public Cloud – Professionals and small businesses (P plans) • Limited to 50 users • Single site collection • Can deploy sandboxed solutions – Medium businesses and enterprises (E plans) • Can deploy sandboxed solutions • Office 365 Dedicated – Dedicated farm, aimed at 30,000+ seat deployments • Farm solutions allowed (requires Microsoft approval)
  • 4. Why SharePoint Online? • Handles variable load • Flexible cost of ownership • Business agility/time to market • Stability
  • 5. What’s In • My Sites • Office Integration (2007/2010) • Excel Services • SharePoint Workspace 2010 for • Access Services Offline Working • Visio Services • External Sharing • SharePoint Web Services • Simple Public-Facing Website • Document Libraries • Forms Services • Slide & Media Libraries • Custom Web Parts • Business Taxonomies & Tagging • Silverlight controls • Document Sets & ID’s • Sandboxed Solutions • Office Web Apps • Blogs • Cross-site Collection Search • Search Refiners • Wikis • Indexing Controls • Business Connectivity Services • People Search • Phonetic Search
  • 6. What’s Out • Records Center • Information Rights Management (IRM) • SharePoint for Internet Sites and WCM workflow and approval • Site Variations • PerformancePoint Services • Power Pivot • Full-Trust Code Solutions • FAST Search
  • 7. Development Options • Browser based customisations • SharePoint designer/InfoPath Forms • Sandboxed solutions • Windows Azure
  • 8. Key sandbox limitations • No access to the file system • Code restrictions: – GAC deployment prohibited – Restricted set of allowed assemblies • No server side external calls • No Web Application or Farm scoped functionality • No full-trust proxy allowed in SP-O standard
  • 9. Getting started • Install Visual Studio 2010 SharePoint Power Tools – Sandboxed visual web part – Compile against allowed assemblies • Debug using SPUCWorkerProcess locally • Use FXCop rules to validate solution against SPO – SPO contains custom solution validator • Create a test site collection in SPO
  • 10. Limitation #1 - File system access • Limited access to the file system – Site definitions – User controls – Application pages – Branding resources – Web.config – ULS logs
  • 11. Limitation #1 - File system access • Limited access to the file system – Site definitions – Use WebTemplates – User controls – Install Visual Studio Power Tools – Application pages – Use web parts – Branding resources – Use style library – Web.config – Use SPWeb property bag or lists – ULS logs – Log to lists. Consider resource usage e.g. #if DEBUG or a property
  • 12. Limitation #2 - Accessing external data • Server side external calls – Web service calls – Cross site-collection calls
  • 13. Limitation #2 - Accessing external data • Server side external calls – Web service calls – Cross site-collection calls • Solutions – Client side script – Silverlight, JavaScript, Managed client OM – Business connectivity services – Data view web part
  • 14. Limitation #3 - Code restrictions • GAC deployment prohibited – Custom workflow solution – Timer jobs • Restricted set of allowed assemblies – SPSecurity.RunWithElevatedPriviledges • Execution context in sandbox process – Only partial access to the Page and HttpRequest objects
  • 16. Limitation #3 - Code restrictions • Consider moving application logic into Azure – Supports complex business logic – Cheap data storage – Pay for what you use
  • 17. Limitation #4 - Deployment scope • Web Application or Farm scoped functionality – Search managed properties – Service applications – Authentication providers (uses Windows Live or ADFS)
  • 18. How do I get started? • Office 365 free 30 day trial http://www.office365.com • Visual Studio 2010 SharePoint Power Tools: http://tinyurl.com/spo-vspt • FxCop Rules for SharePoint Online http://o365fxcoprules.codeplex.com • Microsoft Cloud Essentials Pack http://www.microsoftcloudpartner.com
  • 19. Thanks for listening • Get in touch – ari.bakker@gmail.com – @aribakker – http://www.sharepointconfig.com

Editor's Notes

  1. Other plans such as education or kiosk worker. Not possible to upgrade from P to E plans.P plans lack content type hub, document sets, managed metadata, no AD sync.