Patterns pour porter son code vers Office 365• #SPSParis D06• Serge Luca• 30 Mai 2015 / May 30th, 2015
Merci aux sponsors!
Platinum
Gold / Or
Silver /
Argent
Organizers /
Organisateur
s
Thanks to our sponsors!
Raffl
e /
Tom
bola
10% de remise avec le code SPSPa15 www.sharepointeurope.com
Serge Luca
Serge Luca
SharePoint MVP, Bruxelles
Consultant, speaker, trainer
Managing partner de www.ShareQL.com
SharePoint depuis 2001
Blog: http://sergeluca.wordpress.com/
@SergeLuca
Serge Luca
Share
QL
• 5
Isabelle Van CampenhoudtMVP SQL ServerTheSQLgrrrl.wordpress.comBruxelles
Serge LucaMVP SharePointSergeluca.wordpress.comBruxelles
ShareQL.com
"The most strategic developer surface area for us is Office 365“ - Satya Nadella
Agenda
Agenda
• Problématique• L’initiative Office 365 Patterns & Practice (PnP)• L’outil SPCAF• Patterns et Démos• Conclusions
Problématique
Les faits• Le FTC (Full Trusted Code) ne fonctionnera jamais
dans Office 365 !• Créer des add-ins au sens large : appels distants à
SP (CAM = Cloud App Model)• Applications console• PowerShell• add-ins au sens strict (SharePoint ou Provider hosted)
• Microsoft n’abandonnera jamais l’API Server !• Utilisé par les API clients
• Le branding via des Custom Master Pages est supporté dans Office 365• Dangereux et non conseillé par Microsoft
• Eviter le feature Framework• Dépendance au file system
Méthodologie
Transformation processReadiness
• Readiness with app model topics
• Hosting decisions• Network impact
analysis• Development model
readiness
Assessment
• Analyze existing solution usage
• Analyze existing code and functionality
• Concentrate on business and functional requirements, not on technology
Planning
• App model solution planning and design
• What patterns and models are used for different solutions
• What solutions can be converted to out of the box capabilities
Implementation
• Detailed technical planning
• Actual app model solution implementation
• Typical development process, including testing
Deployment
• App solution deployment
• Existing content retrofitting
• Farm solution retraction
• Readiness • Se plonger à fond dans Office 365 Patterns & Practice• Se plonger à fond dans l’Office 365 API• Se plonger à fond dans l’Office Graph• Méfiance, tout n’est pas possible dans O365
• Assessment• Utiliser l’outil SPCAF
L’initiative Office 365 Patterns & Practice
https://github.com/OfficeDev/PnP/wiki
SPCAF
Demo : SPCAF
Patterns de migration
Principaux patterns avec les Add-InsFull trust (farm) solution Remote code/apps
Timer job Scheduled process in Azure (CSOM to read/write to SP), or on Prem Console App
Master Page Javascript injection + cssEvent receiver Remote event receiver, scheduled process, workflowCustom field control JSLink or javascript injectionSite definition Remote provisioning solutionRun With Elevated Privileges App-only authenticationCustom web parts/user control App part, or JavaScript injectionFeature receiver, DelegateControl, application page
None – but other approaches possible
Custom Master Page
• Full control on how the site is rendered
• Applied one by one to each site, except for publishing sites
• Any updates to oob master pages are not automatically reflected on the sites
• Use javascript injection instead
Alternate CSS
• Can be used to override whatever CSS settings
• Control to color, fonts and even layout settings
• Configuration applied to each site
• Can be used to provide responsive user experiences
Theme
• Can be used to control branding, fonts and background image of the sites
• Configuration applied to each site
Options
Flexibility
Cost impact (short and long term)
Support
Branding options for SharePoint sites
UnlimitedGoodAverageFair
only
Office 365 Themes
• Can be used to centrally control branding cross all services in the Office 365
• Limited settings currently
• Can be overridden in site level
• Only in Office 365, not in on-premises
http://blog.sharepointexperience.com/
Demo : Alternate CSS
Demo : Responsive Design & CSS
Demo : javascript injection instead of custom master pages
Demo : javascript injection instead of custom controls
Demo : JS links instead of custom fields
Timer jobs
• Extrêmement utiles• Solution 1. Console application On Prem – avec une
tache Windows(Task Scheduler)
• Solution 2.Console Application Azure Webjobs• Danger : ne pas tomber dans l’excès de timer jobs,
penser aux workflows• Remarque : il existe un TimerJob Framework dans PnP
Demo : timer jobs
Site Provisioning
• Un Site Provisioning framework est en cours de développement• Permet de • Télécharger le template d’un site• Créer des sites ou des site collections sur base de ces
templates• D’appliquer les changements par rapport à un site de
référence (deltas)
Le futur: Applications Office 365
• Avec l’Office 365 API• Autorisation par application définie dans Azure AD par
l’Administrateur AD (« Common Consent Framework)• OpenID et OAuth2• Access token compatible avec ceux de SharePoint
Conclusions
Conclusions
• Toujours partir du fonctionnel• Etudier les exemples O365 PnP• Garder les patterns en tête• Le Site Provisionning framework est important• Le CAM est également utile On Prem (stabilité+rapidité
de migration)• Office 365 API et Azure AD
Merci [email protected]@[email protected]@sergeluca
Thank you !
Merci !
Online evaluation formEvaluations en ligne
http://tinyurl.com/SPSParis2015
Top Related