Developing for SP2013


Published on

My slides from the SharePoint Day in Stockholm, the 28th of January 2013, arranged together of Steria, AvePoint and Microsoft.

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Developing for SP2013

  1. 1. Developing for SharePoint 2013  www.steria.se101101010001010100100101110111000101110100010101000110101001010100001011110001010101000101010100101010100101010101000000111110010110101110111011111000010010
  2. 2. Who is that guy?  Matthias Einig SharePoint developer since 2005 SharePoint Architect MCP MCSA, MCPD, MCITP MCTS , , Steria AB Stockholm, Sweden SCRUM Master and Product Owner Contact: Main Focus: @mattein • Solution Architecture, • Solution Development, • SharePoint ALM, • Solution Quality Assurance
  3. 3. What’s in the box?  Cross-Site PerformancePoint Credit & AwardBlogs Publishing Standard Layout Notifications Services System MobileWikis Multi-lingual UI Office Integration Connectivity Visio Services Infopath Forms InformationStandard Rights ContentBranding Management PowerPivot Workflows WebParts Organizer Permission MetadataUsage Analytics Search MySites Management Management FollowWeb Content Business Claims basedManagement Excel Services Intelligence Microblogging One Click Sharing authentication List/LibrarySite Mailbox Templates Newsfeed SkyDrive Pro eDiscovery Word Automation Business ConnectivityCommunities Auditing Services Site Templates Shredded Storage and much more…
  4. 4. Great, so why do I have to develop?  Configuring/using the standard components- Having different or more complex requirements- Migrating legacy applications to SharePoint- Changing Look & Feel- Integrating into the corporate infrastructure- Integrating external systems- Automating business processes SharePoint is just a big Toolbox
  5. 5. What can I do with it?  www.steria.seTypes of Customization Exploit standard functionality Create/Change functionality Integrate external functionality 28/01/2013 5
  6. 6. How?  www.steria.seSharePoint Server 2013 Developer ScenariosDeployment Options Development Options Development ToolsOn-Premise Farm Installation Farm-Trust Solution Web BrowserOffice 365 &SharePoint Online Sandbox Solution SharePoint Designer 2013Hosted Installation SharePoint-Hosted App Visual Studio 2012 Provider-Hosted App Eclipse, LAMP, Etc. Azure Auto-Hosted App
  7. 7. So what’s App?  www.steria.seApps are a new very different way to extend SharePoint Self Contained More scenario-focused  Event Tracking  Ticket Management System Robust  Built-in robust semantics for install, upgrade & uninstall Apps are for End Users Cloud & Web-Oriented
  8. 8. Why Apps???   More stable/secure SharePoint environment  No custom code on server  Better maintainability/upgradeability Consume Apps from the store  Customize SharePoint without going through IT Quicker time to delivery   Develop packages instead of artefacts  Technology independent (.net, HTML, JS, PHP etc. )  Integrate external services better (i.e. Twitter)
  9. 9. Three Flavors of App-hosting  www.steria.seSharePoint-Hosted App SharePointApps hosted in SharePoint in isolated web • Reuse web elements SharePoint SharePoint (lists, files, out-of-box web parts) Web App Web • No server code allowed Use one HTML, CSS, JavaScript CloudAuto-Hosted App• Only supported in Office 365 Windows SharePoint• Windows Azure + SQL Azure provisioned Azure Web invisibly WebsiteProvider-Hosted App• “Bring your own server hosting infrastructure” SharePoint Self hosted• Apps can use any technology (i.e. Java, PHP) Web Site
  10. 10. What Apps can do…  Shape Description Example Immersive Full • Entire browser & UI Resource Tracking, Page App • App that implements a Budgeting new scenario App Part • Surfaces as an iFrame Weather, • Similar to a WebPart Stocks Maps Extension App • Extend Ribbon and item Display Document menu actions Print to Print • Similar in SP2010 Service Vendor
  11. 11. …and what not?  www.steria.seSharePoint apps do not “live” on the SharePoint server Cannot run server-side code in SharePoint environment Custom code executes in the client, cloud or on-premise Cannot access SharePoint server-side object model Cannot change SharePoint standard artefacts (like site definitions, list definitions etc.) or other Apps Cannot use some SharePoint components and services Cannot provide administrative tasks for SharePoint
  12. 12. Where can I get them?  SharePoint Store  Similar to Windows Phone Marketplace or Apple App Store  Subject to submission process & approval Corporate App Catalog  Apps developed internally  Apps acquired and approved for internal use Custom Deployment Process  Developers can use remote / local SharePoint & Windows Azure APIs to deploy apps with custom code  These APIs are restricted to the developer site for tooling scenarios
  13. 13.  www.steria.seDemo  www.steria.seApps, Apps, Apps…
  14. 14. Cut the crapp, give me the facts?  www.steria.sePros Cons Limitations when modifying/usingNo custom Code on the server SharePoint functionality Support can get messy when accessReduced ramp-up time to build apps to SharePoint Store is not restrictedUse hosting platform features Corporate data in the cloud You get what you buy,Buy instead of make no more no lessRe-finance the development costs byreselling to internaly
  15. 15. So, what about SharePoint solutions? Solutions run on the SharePoint farmCode runs in the same processes as SharePointNot supported in SharePoint Online (only sandboxed)Deployment more complex, needs direct farm accessNo marketplace
  16. 16. Who cares?   Hard to manage and maintain  Cause of most SharePoint outages / issues  Requires a big server touch Less compromises Richer interface integrated in SharePoint  Longer, more expensive projects  Almost no limitations in customization  Full access to all parts of a SharePoint farm  Development approach hasn’t changed to SP2010
  17. 17. Can’t be that hard, what has changed? Sandboxed solutions deprecated (not recommended)Farm solutions run by default in Full TrustSharePoint 2010 and SharePoint 2013 are both installedDevelopment works mostly like in SP2010Only minor additions to Visual Studio 2012
  18. 18.  www.steria.seDemo  www.steria.seGood old farm solution development…
  19. 19. The good the bad and the ugly…  www.steria.sePros ConsCode has full access to SharePoint Higher security risks if solution hasserver-side object model bugsAllows maximum amount ofcustomization Higher development costsRisks can be controlled with good Higher complexity in deployment,Application Lifecycle Management maintenance and operationsEstablished path to customization Skilled developers are rareNot many changes to SP2010, oldsolutions can be migrated
  20. 20. When do we use what?  www.steria.seExamples: SharePoint Solution App for SharePoint (*.wsp) (*.app) Sandbox Workflow automating business Azure Auto- Product defect tracking Solution process available to entire site Hosted App database Custom site, list, & library templates Provider- Event registration Hosted App managementFarm Solution Major customizations which affects the whole farm Help desk support Implement custom branding & UX SharePoint-Hosted App Expense calculator Custom administration tools Holiday request
  21. 21. So, left or right? Apps or Solutions?  “It depends”!Prefer SharePoint App Model for building app scenarios: Provides most flexibility in development technologies, capabilities & infrastructure choices Provides highest level of process, user & data isolationFull-trust solutions ideal for: Deep customizations of SharePoint, i.e. Custom MasterPages, PageLayouts, Branding Site/List Definitions, ContentTypes Administration scenarios
  22. 22.  www.steria.seHappy SharePointing!  Gold Collaboration and Content Silver Application Development