32
w: rencore.com | e: [email protected] | t: @rencoreab SharePoint Customizations The most overlooked road block to your migration

Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

  • Upload
    rencore

  • View
    941

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

w: rencore.com | e: [email protected] | t: @rencoreab

SharePoint Customizations

The most overlooked road blockto your migration

Page 2: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

Erwin van HunenProduct Owner - TransformationMVP Office Servers and ServicesMicrosoft Certified Master

[email protected]/blog@erwinvanhunen

Page 3: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Basics

Page 4: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Full Trust Code vs. „App“ „Addin“

Package/Application/Code that uses • Server Side Object Model• Declarative Code• Infrastructure specific

components (e.g. HTTP Handlers)

• (Too?) High level of trust

Package/Application/Code that uses • Client Side Object Model / REST• Runs with Office365• Runs outside the SharePoint

box• Configurable, but complex

level of trust

Page 5: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Full Trust Code vs. SharePoint Framework

Package/Application/Code that uses • Server Side Object Model• Declarative Code• Infrastructure specific

components (e.g. HTTP Handlers)

• (Too?) High level of trust

Package/Application/Code that uses • Client Side Object Model / REST• Based on JavaScript /

TypeScript• Not yet available for SP 2016• Has the same rights as the

user running it

Page 6: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

“Will you ever support farm solutions in Office 365?”

Farm solutions are deployed cross SharePoint farm and they’d impact multiple customers…

No.Vesa Juvonen, Microsoft

Page 7: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

What is „Transformation“

Page 8: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Page 9: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Magic

Page 10: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Page 11: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

What does Transformation mean?• Look at what you have, then• Implement from scratch, while• Re-using concepts, patterns and data

Page 12: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Why would you Transform?• Moving from on-prem to Office365 or Hybrid• SharePoint version update• To be 'future proof'• Changed / New Requirements• Cannot start on a greenfield (time, money,

complexity)• Maintenance problems caused by customizations

Page 13: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

How would you Transform your Code?• Replace / gradually update

existing FTC components • Re-use

code / data structures / solution concepts/ integrations

Page 14: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Major Changes

Page 15: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Major Changes• No SSOM, use CSOM/REST/Graph• Do not use the Feature Framework• Avoid Declarative artifacts / CAML where possible

(WebTemplates, Content Types, etc.)• Do not use MasterPages• Minimize Branding• Approach SharePoint/Office365 as a service• ”Modern” web development technologies (SPFx) instead of .NET

Page 16: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

CAML == BAD

Time

Team SiteCustom Web

Template

onet.xmlX feature activations

onet.xmlX feature activations

onet.xmlX feature activations

+2

onet.xmlX feature activations

+4

onet.xmlX feature activations

onet.xmlX feature activations

<< Copy >>

Significant differences on the outcome unless web template onet.xml has been updated cross site collections with the changes which were also done for out of the box team site.

Web Template onet.xml is created by copying team site onet.xml and by adding stapled features to the onet.xml

Service updates for introducing new capabilities to team sites also using feature stapling

Source: TEE2015 DEV-B308http://matte.in/TTE2015Transform

Page 17: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Reimagine!

Page 18: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Transformation != CTRL + V• Is SharePoint/Office365 providing already the

functionality?• Does your solution benefit from the SharePoint UI?• Are you relying on 3rd party systems? • Does it have to be SharePoint?• Are the business requirements still valid?

Page 19: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

The Transformation Process

Learn Plan & Track TransformAssess

Page 20: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Readiness• Add-in Model techniques

• App Part • Full Immersive app• UI Custom Actions• Remote Provisioning• Client Parts / SPFx

• Hosting• on-prem/Office365, • Provider/SharePoint hosted

• Authentication• On-prem AD or Azure AD?

Page 21: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

„New“ Provisioning Approaches

Provider Hosted App

using CSOM/REST

.NET Console App

using CSOM/REST

PowerShell using

CSOM/REST

”Mechanical Turk”

PnP Provisioning

Engine

Stand alone site using

Graph

Page 22: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Code Assessment• Understand which customizations you have• Understand what they do• Understand why you have them and if they are still

relevant• Understand the impact they make on the

environment• Understand the involved effort to transform

Page 23: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Consider Authentication Carefully• If you transform your solution to SharePoint Online:

• Do you have an on-prem AD?• Do you use ADFS?• Are you moving to Azure AD?• Will you use Hybrid?• Will you use explicit or implicit grant flow for

authentication?

Page 24: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Consider Authentication Carefully• If you transform your solution to SharePoint Online:

• Do you have an on-prem AD?• Do you use ADFS?• Are you moving to Azure AD?• Will you use Hybrid?• Will you use explicit or implicit grant flow for

authentication?

Page 25: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Development: Add-In Model• Complex security

• Add-in security vs User security• Limited ability to specify what the add-in wants to do• Powerful: full access to C# / .NET ecosystem• Rich APIs

• CSOM• REST• Microsoft Graph

Page 26: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Development: SharePoint Framework• Not a replacement for Add-Ins but rather another option• Simple security

• The solution users has the same rights as the user using it• Powerful: access to the full JavaScript ecosystem• Rich APIs

• JSOM• REST• Microsoft Graph

Page 27: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Deployment

FULL TRUST•WSP files•Full control over server•Flexible•With great power comes great responsibility

SANDBOX•WSP files•No control over server•Less flexible•With less power comes great frustration

APPS / ADD-INs•Still new to many people•Separate hosting model•Complex authentication model

SPFx•Still in preview•Separate hosting model•Potentially very new development model to 'traditional' SP Devs

Page 28: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Move to Remote Provisioning• 'Roll your own'

• Complex, high maintenance• Flexible and potentially build for the task

• Use the PnP Provisioning Engine• Tested, pre-built• Template approach• Code approach• Extensible

• Use the PnP Partner Pack• Based upon the PnP Provisioning Engine

Page 29: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

ResourcesOffice Pattern & Practices• https://dev.office.com/pnp

• Community project lead by Microsoft• Core Library, PowerShell cmdlets,

samples, reference implementations• Endorsed by SharePoint product group

SharePoint Framework (SPFx)• https://dev.office.com/sharepoint • Additional development model

• Still in preview

Page 30: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Rencore SP Transformatorwww.sptransformator.com

Page 31: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

rencore.com

Questions?

Page 32: Rencore Webinar: SharePoint Customizations - the most overlooked road block to your migration

THANK [email protected]

www.sptransformator.com/trial

@sptransformator