SlideShare a Scribd company logo
May 20th, 2017
SharePoint
Saturday Madrid
Transform your full-trust solutions to the
add-in model / SharePoint Framework
Matthias Einig
Matthias Einig
matt@rencore.com
rencore.com/blog
@mattein
CEO of Rencore
BASICS
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
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
“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
WHAT IS "TRANSFORMATION" ?
Transforming your full-trust solutions to the Add-in model / SharePoint Framework
Magic
Transforming your full-trust solutions to the Add-in model / SharePoint Framework
WHAT DOES
TRANSFORMATION MEAN?
•Look at what you have, then
•Implement from scratch, while
•Re-use concepts, patterns and data
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
Replace / gradually update
existing FTC components
Re-use
code / data structures / solution concepts/
integrations
HOW WOULD YOU
TRANSFORM YOUR CODE?
MAJOR CHANGES
MAJOR CHANGES
• No SSOM, use CSOM/REST/Graph
• Do not use the Feature Framework
• Avoid declarative artifacts / CAML
(WebTemplates, Content Types, etc.)
• Do not use MasterPages
• Minimize Branding
• Approach SharePoint/Office365 as a service
• ”Modern” web development technologies (SPFx) instead of .NET
CAML == BAD
Custom Web Template
onet.xml
X feature activations
onet.xml
X feature activations
onet.xml
X feature activations +2
onet.xml
X feature activations +4
onet.xml
X feature activations
onet.xml
X 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-B308
http://matte.in/TTE2015Transform
REIMAGINE!
TRANSFORMATION != Copy & Paste
• 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?
TRANSFORMATION
PROCESS
THE TRANSFORMATION PROCESS
Learn Plan & Track TransformAssess
ASSESS
ASSESS CUSTOMIZATIONS
• Understand which customizations you have
• Understand what they do
• Understand why you have them
• Understand the impact they make on the
environment
• Understand the involved effort to transform
ASSESS USAGE
• Analyze if and where the customizations are
deployed
• Analyze if the deployed customizations are
still used
• Analyze if the used customizations are
still required
ASSESS REQUIREMENTS
• Discuss existing solution with the business.
• Discuss the requirements with the business.
• Learn how the existing customization are used
• Decide what to keep, change and remove.
LEARN
LEARN
• Add-in Model techniques
• App Part
• Full Immersive app
• UI Custom Actions
• PowerShell Scripts / Console applications
• Client Parts / SharePoint Framework (SPFx)
• Hosting
• on-prem/Office365,
• Provider/SharePoint hosted
• Authentication
• On-prem AD or Azure AD?
"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
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
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 auth?
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
Add-in
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
Fx
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
• GA since March 2017
• Separate hosting
model
• Potentially very new
development model to
'traditional' SP Devs
RESOURCES
Office 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
PLAN & TRACK
PLAN & TRACK
• Plan which customization artifacts to transform
or to abandon
• Group depending artifacts to use cases
• Track the progress of the transformation
TRANSFORM
www.sptransformator.com
Develop from scratch yourself
or use
Transforming your full-trust solutions to the Add-in model / SharePoint Framework
Transforming your full-trust solutions to the Add-in model / SharePoint Framework
discovers & analyzes…
ü SharePoint Add-ins
ü Sandboxed Solutions
ü Farm Solutions (WSP)
ü Assemblies
ü Executables
ü JavaScript Files
supports…
ü Office 365
ü SharePoint Online
ü SharePoint 2016
ü SharePoint 2013
ü SharePoint 2010
ü SharePoint 2007
transforms to…
ü Client Side Code (CSOM)
ü JavaScript (JSOM)
ü REST API
ü PowerShell Script (CSOM)
ü SharePoint Framework (SPFx)
ü Office Dev PnP CSOM
ü Office Dev PnP JSOM
ü Office Dev PnP PowerShell
ü PnP Provisioning Engine
SUMMARY
1. ASSESS Understand the existing customizations and
requirements
2. LEARN Understand the target platform and technology
3. PLAN & TRACK Re-imagine and plan the solution
4. TRANSFORM
Please, fill your SPS
Madrid passport if you
want to participate.
You can win one of
these gifts:
Raffle
10
9
8
Odor Odor@winterfell.com
Gold sponsors ______________
Silver sponsors
Bronze sponsors
Collaborate
Platinum sponsor
Thank you!
Questions?
matthias.einig@rencore.com
@MATTEIN
WWW.SPTRANSFORMATOR.COM

More Related Content

PPTX
How to execute SharePoint 2016 upgrade strategy and ensure business continuity
PPTX
SharePoint Saturday Madrid 2016 - SharePoint Upgrade or Migration, or is it b...
PPTX
Transforming your classic team sites in group connected team sites
PDF
SharePoint 2016 Upgrade Planning
PPTX
ECS19 - Robi Voncina - Upgrade to SharePoint 2019
PPTX
Prepare for SharePoint 2016 - IT Pro best practices for managing your SharePo...
PPTX
What's new in SharePoint 2016
PPTX
SharePoint 2016 Search
How to execute SharePoint 2016 upgrade strategy and ensure business continuity
SharePoint Saturday Madrid 2016 - SharePoint Upgrade or Migration, or is it b...
Transforming your classic team sites in group connected team sites
SharePoint 2016 Upgrade Planning
ECS19 - Robi Voncina - Upgrade to SharePoint 2019
Prepare for SharePoint 2016 - IT Pro best practices for managing your SharePo...
What's new in SharePoint 2016
SharePoint 2016 Search

What's hot (20)

PPTX
SharePoint Days Casablanca 2016 - Tout ce que vous devez savoir sur Power BI v2
PPTX
SharePoint 2016 - What's New, What's Not
PPTX
ECS 19 - John White, Jason Himmelstein - Everything You Always Wanted To Know...
PDF
ECS19 - Rodrigo Pinto - Migrating to Teams, real cases and scenarios
PDF
SharePoint 2016: Features Overview
PPTX
ECS19 - Tomislav Lulic - What is changed in product/service licensing with Cl...
PPTX
SPS Reston SharePoint Alwyays On
PDF
What's new in SharePoint Server 2019
PPTX
SharePoint 2013 Dev Features
PPTX
Model Driven PowerApps
PPTX
SharePoint Framework SPS Madrid 2016
PPTX
B6 - Using Office 365 groups in Power Bi - Marco Russo
PPTX
ECS19 - Ahmad Najjar and Serge Luca - Power Platform Tutorial
PPTX
T5 - Mise en place de votre processus DevOps Ofice, Office 365, SharePoint - ...
PPTX
SharePoint 2016 - What’s New and What Matters
PPTX
ECS19 - Mike Ammerlaan - Microsoft Graph Data Connect
PPTX
What's New for the BI workload in SharePoint 2016 and SQL Server 2016
PPTX
SharePoint 2016 Up Close and Personal
PPTX
SharePoint Upgrade or Migration, or is it both? - SPS London 2016
PPTX
Power Users Guide to Office 365 - SharePoint Saturday Belgium 2016 #spsbe
SharePoint Days Casablanca 2016 - Tout ce que vous devez savoir sur Power BI v2
SharePoint 2016 - What's New, What's Not
ECS 19 - John White, Jason Himmelstein - Everything You Always Wanted To Know...
ECS19 - Rodrigo Pinto - Migrating to Teams, real cases and scenarios
SharePoint 2016: Features Overview
ECS19 - Tomislav Lulic - What is changed in product/service licensing with Cl...
SPS Reston SharePoint Alwyays On
What's new in SharePoint Server 2019
SharePoint 2013 Dev Features
Model Driven PowerApps
SharePoint Framework SPS Madrid 2016
B6 - Using Office 365 groups in Power Bi - Marco Russo
ECS19 - Ahmad Najjar and Serge Luca - Power Platform Tutorial
T5 - Mise en place de votre processus DevOps Ofice, Office 365, SharePoint - ...
SharePoint 2016 - What’s New and What Matters
ECS19 - Mike Ammerlaan - Microsoft Graph Data Connect
What's New for the BI workload in SharePoint 2016 and SQL Server 2016
SharePoint 2016 Up Close and Personal
SharePoint Upgrade or Migration, or is it both? - SPS London 2016
Power Users Guide to Office 365 - SharePoint Saturday Belgium 2016 #spsbe
Ad

Similar to Transforming your full-trust solutions to the Add-in model / SharePoint Framework (20)

PDF
Spsnyc transforming share point farm solutions to the add-in model and shar...
PPTX
Rencore Webinar: SharePoint Customizations - the most overlooked road block t...
PPTX
Transforming SharePoint Farm Solutions to the App Model
PPTX
Matthias einig transforming share point farm solutions to the app model
PDF
SPS Helsinki: Transforming SharePoint Farm Solutions to the App Model
PPTX
SPTechCon Austin 2019 - From SharePoint to Office 365 development
PPTX
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
PPTX
Real World Add-in Development for Office365
PPTX
[Pinto] Is my SharePoint Development team properly enlighted?
PPTX
#SPSNYC 2018 Migrate your custom components to the #SharePoint Framework #SPFX
PPTX
SharePoint Fest Seattle 2018 - From SharePoint to Office 365 Development
PPTX
SharePoint Saturday Ottawa - From SharePoint to Office 365 Development
PPTX
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
PPTX
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
PPTX
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
PPTX
SharePoint Fest DC 2019 - From SharePoint to Office 365 Development
PPTX
SharePoint Fest DC 2018 - From SharePoint to Office 365 Development
PPTX
SharePoint Fest Chicago - From SharePoint to Office 365 Development
PPTX
SharePoint Saturday Calgary 2017 - From SharePoint to Office 365 Development
PPTX
aOS Canadian Tour - Quebec - From SharePoint to Office 365 Development
Spsnyc transforming share point farm solutions to the add-in model and shar...
Rencore Webinar: SharePoint Customizations - the most overlooked road block t...
Transforming SharePoint Farm Solutions to the App Model
Matthias einig transforming share point farm solutions to the app model
SPS Helsinki: Transforming SharePoint Farm Solutions to the App Model
SPTechCon Austin 2019 - From SharePoint to Office 365 development
SharePoint Fest Chicago 2019 - From SharePoint to Office 365 Development
Real World Add-in Development for Office365
[Pinto] Is my SharePoint Development team properly enlighted?
#SPSNYC 2018 Migrate your custom components to the #SharePoint Framework #SPFX
SharePoint Fest Seattle 2018 - From SharePoint to Office 365 Development
SharePoint Saturday Ottawa - From SharePoint to Office 365 Development
SharePoint Fest Chicago 2018 - From SharePoint to Office 365 development
ESPC 2016 - From SharePoint to Office 365 Development - The path to your new ...
SharePoint Fest Seattle 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2019 - From SharePoint to Office 365 Development
SharePoint Fest DC 2018 - From SharePoint to Office 365 Development
SharePoint Fest Chicago - From SharePoint to Office 365 Development
SharePoint Saturday Calgary 2017 - From SharePoint to Office 365 Development
aOS Canadian Tour - Quebec - From SharePoint to Office 365 Development
Ad

More from SUGES (SharePoint Users Group España) (18)

PPTX
SharePoint Saturday Madrid 2017 - KeyNote
PPTX
How to use SharePoint PnP assets in real world use cases
PPTX
Domotica #Skype4 b #IoT #Azure #Windows10IoTCore
PDF
Beyond cards: How to get the most out of Delve
PPTX
CDNs para el SharePoint Framework (SPFx)
PPTX
Introducción al SharePoint Framework SPFx
PPTX
Probots: Azure Bots y Project Online
PPTX
Cómo gestionar el ciclo de vida de soluciones SPFx
PPTX
Extending Microsoft Teams
PPTX
Bots & Teams: el poder de Grayskull
PPTX
Análisis de sentimiento con Flow y Text Analytics
PPTX
JS Patterns Applied to a Real World Example
PDF
Text Analytics y Machine Learning como sistema de catalogación
PPTX
Proyecto 360: Combinar lo mejor de Azure y Office 365
PPTX
Empowering SharePoint with search capabilities
PPTX
SharePoint Framework y React
PPTX
PowerApps, Flow y Power BI: Gestiona tus procesos corporativos.
PPTX
Aprovisionamiento remoto de SharePoint con Azure Functions
SharePoint Saturday Madrid 2017 - KeyNote
How to use SharePoint PnP assets in real world use cases
Domotica #Skype4 b #IoT #Azure #Windows10IoTCore
Beyond cards: How to get the most out of Delve
CDNs para el SharePoint Framework (SPFx)
Introducción al SharePoint Framework SPFx
Probots: Azure Bots y Project Online
Cómo gestionar el ciclo de vida de soluciones SPFx
Extending Microsoft Teams
Bots & Teams: el poder de Grayskull
Análisis de sentimiento con Flow y Text Analytics
JS Patterns Applied to a Real World Example
Text Analytics y Machine Learning como sistema de catalogación
Proyecto 360: Combinar lo mejor de Azure y Office 365
Empowering SharePoint with search capabilities
SharePoint Framework y React
PowerApps, Flow y Power BI: Gestiona tus procesos corporativos.
Aprovisionamiento remoto de SharePoint con Azure Functions

Recently uploaded (20)

PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Electronic commerce courselecture one. Pdf
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
PDF
Empathic Computing: Creating Shared Understanding
PDF
Encapsulation theory and applications.pdf
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
cuic standard and advanced reporting.pdf
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Network Security Unit 5.pdf for BCA BBA.
Per capita expenditure prediction using model stacking based on satellite ima...
Electronic commerce courselecture one. Pdf
The AUB Centre for AI in Media Proposal.docx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Review of recent advances in non-invasive hemoglobin estimation
Peak of Data & AI Encore- AI for Metadata and Smarter Workflows
Empathic Computing: Creating Shared Understanding
Encapsulation theory and applications.pdf
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Chapter 3 Spatial Domain Image Processing.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
cuic standard and advanced reporting.pdf
Dropbox Q2 2025 Financial Results & Investor Presentation
Spectral efficient network and resource selection model in 5G networks
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Agricultural_Statistics_at_a_Glance_2022_0.pdf

Transforming your full-trust solutions to the Add-in model / SharePoint Framework

  • 1. May 20th, 2017 SharePoint Saturday Madrid Transform your full-trust solutions to the add-in model / SharePoint Framework Matthias Einig
  • 4. 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
  • 5. 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
  • 6. “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
  • 11. WHAT DOES TRANSFORMATION MEAN? •Look at what you have, then •Implement from scratch, while •Re-use concepts, patterns and data
  • 12. 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
  • 13. Replace / gradually update existing FTC components Re-use code / data structures / solution concepts/ integrations HOW WOULD YOU TRANSFORM YOUR CODE?
  • 15. MAJOR CHANGES • No SSOM, use CSOM/REST/Graph • Do not use the Feature Framework • Avoid declarative artifacts / CAML (WebTemplates, Content Types, etc.) • Do not use MasterPages • Minimize Branding • Approach SharePoint/Office365 as a service • ”Modern” web development technologies (SPFx) instead of .NET
  • 16. CAML == BAD Custom Web Template onet.xml X feature activations onet.xml X feature activations onet.xml X feature activations +2 onet.xml X feature activations +4 onet.xml X feature activations onet.xml X 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-B308 http://matte.in/TTE2015Transform
  • 18. TRANSFORMATION != Copy & Paste • 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?
  • 20. THE TRANSFORMATION PROCESS Learn Plan & Track TransformAssess
  • 22. ASSESS CUSTOMIZATIONS • Understand which customizations you have • Understand what they do • Understand why you have them • Understand the impact they make on the environment • Understand the involved effort to transform
  • 23. ASSESS USAGE • Analyze if and where the customizations are deployed • Analyze if the deployed customizations are still used • Analyze if the used customizations are still required
  • 24. ASSESS REQUIREMENTS • Discuss existing solution with the business. • Discuss the requirements with the business. • Learn how the existing customization are used • Decide what to keep, change and remove.
  • 25. LEARN
  • 26. LEARN • Add-in Model techniques • App Part • Full Immersive app • UI Custom Actions • PowerShell Scripts / Console applications • Client Parts / SharePoint Framework (SPFx) • Hosting • on-prem/Office365, • Provider/SharePoint hosted • Authentication • On-prem AD or Azure AD?
  • 27. "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
  • 28. 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
  • 29. 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 auth?
  • 30. 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 Add-in
  • 31. 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 Fx
  • 32. 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 • GA since March 2017 • Separate hosting model • Potentially very new development model to 'traditional' SP Devs
  • 33. RESOURCES Office 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
  • 35. PLAN & TRACK • Plan which customization artifacts to transform or to abandon • Group depending artifacts to use cases • Track the progress of the transformation
  • 40. discovers & analyzes… ü SharePoint Add-ins ü Sandboxed Solutions ü Farm Solutions (WSP) ü Assemblies ü Executables ü JavaScript Files supports… ü Office 365 ü SharePoint Online ü SharePoint 2016 ü SharePoint 2013 ü SharePoint 2010 ü SharePoint 2007 transforms to… ü Client Side Code (CSOM) ü JavaScript (JSOM) ü REST API ü PowerShell Script (CSOM) ü SharePoint Framework (SPFx) ü Office Dev PnP CSOM ü Office Dev PnP JSOM ü Office Dev PnP PowerShell ü PnP Provisioning Engine
  • 41. SUMMARY 1. ASSESS Understand the existing customizations and requirements 2. LEARN Understand the target platform and technology 3. PLAN & TRACK Re-imagine and plan the solution 4. TRANSFORM
  • 42. Please, fill your SPS Madrid passport if you want to participate. You can win one of these gifts: Raffle 10 9 8 Odor Odor@winterfell.com
  • 43. Gold sponsors ______________ Silver sponsors Bronze sponsors Collaborate Platinum sponsor