SlideShare une entreprise Scribd logo
1  sur  28
Online Conference
June 17th and 18th 2015
WWW.COLLAB365.EVENTS
Agilité et SharePoint: Incompatible?
On gage que non!
WWW.COLLAB365.EVENTS
Franck Cornu
Email : franck.cornu@gsoft.com
Twitter : @FranckCornu
5 ans d’expérience avec SharePoint
Spécialisation en intranet/portail d’entreprise
Analyse/Architecture/Développement
Blog: http://thecollaborationcorner.com/
Publication: « Réussir son analyse fonctionnelle SharePoint: Guide
méthodologique » (http://bit.ly/1GsrJwd)
Contact
Montréal, QC, Canada
WWW.COLLAB365.EVENTS
Plan de la session
• Partie 1: L’agilité et SharePoint
• Partie 2: Démarrer un projet agile
• Partie 3: Se donner les moyens d’être agile
WWW.COLLAB365.EVENTS
L’agilité et SharePoint
Idées reçues
Processus
WWW.COLLAB365.EVENTS
Petits rappels SCRUM
• « …cadre de travail permettant de répondre à des problèmes complexes et
changeants tout en livrant de manière productive et créative des produits de
la plus grande valeur possible… »
WWW.COLLAB365.EVENTS
Comment nous l’appliquons
BACKLOG
BACKLOG
GROOMING
SPRINT
PLANNING
SPRINT
BACKLOG
DAILY
SCRUM
SPRINT
SPRINT
REVIEW
SPRINT
RETRO PRODUCT
TESTS
2 semaines
USER STORY 5
USER STORY
USER STORY
3
8
WWW.COLLAB365.EVENTS
Idées reçues sur SharePoint et l’agile
• SCRUM et l’agilité, ce sont des trucs de développeurs ça, nous on parle business!
• SCRUM n’est pas une méthode de gestion de projet rigoureuse permettant un contrôle précis des
coûts. En gros, SCRUM = anarchie!
• Être agile, c’est tester souvent, or avec SharePoint ce n’est pas possible ou beaucoup trop coûteux.
L'investissement n’en vaut donc pas la peine.
• La plupart des fonctionnalités sont déjà "OOTB", c'est juste de la configuration et pas du
développement, pas la peine de découper ça en « story » car les besoins sont déjà comblés par
l’outil.
• Les projets SharePoint sont trop liés à l'infrastructure et fait intervenir une multitude d’équipes. La
mise en place de l’agile est d’autant plus complexe.
• SCRUM n’est pas adapté à mon projet, car mon projet n’est pas un projet « classique » de
développement logiciel.
– Projet de migration, gouvernance, sites de collaboration etc.
WWW.COLLAB365.EVENTS
L’agilité, d’abord une philosophie
WWW.COLLAB365.EVENTS
Démarrer un projet agile
La phase de démarrage
L'art de la story
Estimation
WWW.COLLAB365.EVENTS
Démarrer un projet agile
Analyser les
besoins et définir
le backlog
Estimer les coûts de
développement
Contractualiser Développer la
solution de manière
itérative
Livrer la solutionComprendre SCRUM Évaluer le besoin
global
Définir le pourquoi du
projet, sa vision et son
contexte
Définir le plan de
livraison
Livrer la solutions selon le
plan
WWW.COLLAB365.EVENTS
Exemple de démarrage de projet agile
• Format
– 2 à 3 jours consécutifs en mode « War Room » (5 à 6 personnes)
– Ateliers interactifs successifs
• En sortie
– Backlog priorisé selon un plan de livraison
• Information minimale nécessaire pour permettre une estimation réaliste
– Charte de projet
• Nom de projet
• Vision
• Objectifs d’affaires (S.M.A.R.T)
• Équipe
• Variables d’ajustements
• Événements probables
• Wireframes et maquettes
• Estimation selon la technologie cible (ici SharePoint)
WWW.COLLAB365.EVENTS
Quid de la contractualisation agile
• Dans la théorie, le modèle de contractualisation d’un projet agile serait
plutôt du type « paiement à l’utilisation » mais dans la pratique, les
entreprises doivent débloquer des budgets avant la réalisation de leurs
projets…
« Fixed bid » VS « Time & Materials »
WWW.COLLAB365.EVENTS
Recette d’un bon backlog
• Un backlog comprenant:
– Des rôles ou profils (qui va utiliser l’application?)
– Des user stories (que vont-ils faire avec?)
– Des epics (quelles sont les grandes fonctionnalités du sytème?)
– Des contraintes (il y-a t-il des contraintes particulières à respecter?)
• Les bonnes personnes
– Un product owner (pas TI)
– Des conseillers
– Un « Coach agile » ou analyste
WWW.COLLAB365.EVENTS
Définir ses stories
• Quelques règles générales
– Tout est une story! (technique, documentation, …) = Avant tout, on cherche une répartition optimale de la
charge de travail = Unité de découpage du travail
– Format « En tant que…je veux + action », pas de justification
– Indépendant de toute technologie (particulièrement difficile à faire comprendre avec SharePoint)
– Critères I (Independant) N (Negotiable) V (Valuable) E (Estimable) S (Small) T (Testable)
– Obligation de critères d’acceptations = contrat entre le PO et l’équipe = Périmètre fonctionnel =
Détermination de la fin d’un story = Plan de tests
• « Lorsque je fait ça je m’attend à ça »
• « La fonctionnalité doit être disponible sur mobile »
– Toutes les stories sont soumises à la DoD (« Definition of Done ») et/ou la DoR (« Definition of Ready »)
– Une story est différente d’un cas d’utilisation (explication juste après)
WWW.COLLAB365.EVENTS
Définir ses stories
• Gérer le syndrome SharePoint
– Important de distinguer:
• Les tâches des stories (Exemple: « Créer une bibliothèque »)
• Les contraintes des stories (Exemple: « Implémenter l’interface mobile »)
• Le besoin du moyen («Exemple: « En tant qu’utilisateur je voudrais une bibliothèque pour stocker mes
documents »)
• La fonctionnalité principale et ses éventuels « add-ons » INVEST  (Indépendant)
– Voir une liste de nouvelles
– Add-ons:
» Voir une liste de nouvelles sous forme carroussel
» Voir une liste de nouvelle en 3D sur une carte interactive (?!?!)
– Actions métier VS actions SharePoint: pas la peine de lister toutes les actions de bases de l’outil!
• « Créer une version de document », « Check-In », « Check-Out », etc..
• Se gère en critères d’acceptations. Si trop gros, en faire une story à part (« Archiver un document »)
– Savoir faire des compromis
WWW.COLLAB365.EVENTS
Définir ses stories
• Orientés rôles et responsabilités : les
profils ≠ groupes de sécurité SharePoint !
 Raisonnez au niveau métier!
WWW.COLLAB365.EVENTS
Un exemple de méthode
Story ≠Cas d’utilisation !
Actions fondamentales (relation
de précédence inévitable)
WWW.COLLAB365.EVENTS
Définir ses stories
• Comment démarrer?
– Énumérer les actions sous un format libre (existantes et/ou
souhaitées)
– Identifier les profils/personnes/rôles réalisant ces actions
– Faire des regroupements en « Epics » (thématiques
fonctionnelles ou métiers)
– Appliquer le schéma typique précédent pour déduire les stories
• Avec quel outil?
– User Story Mapping
WWW.COLLAB365.EVENTS
La gestion des contraintes
• Une contrainte est une particularité à prendre en compte lors de la réalisation
d’une story pour livrer une fonctionnalité finale.
• Savoir si une contrainte s’applique
réellement sur une story: « est-ce que il y a
une tâche particulière à faire pour répondre
cette contrainte dans le cadre de la story? »
• S’entendre sur la définition et la portée
d’une contrainte = critère d’acceptation
pour chaque contrainte
WWW.COLLAB365.EVENTS
Estimer une user story
Quel Format?
En points et non en
heures ou jours
Ordre de complexité
relative entre les
stories
Comment? Quand? Qu’estime t-on? Quelques Règles
WWW.COLLAB365.EVENTS
L’estimation: passer de l’abstrait à la
réalité
• Les variables fondamentales de calcul du coût de développement pour un projet agile
– La vélocité (Évolue tout au long du projet!)
– La durée d’un sprint
– Le taux horaire des différents intervenants
• Formule (très) théorique
• Toujours un sprint supplémentaire pour la correction et l’ajustement du dernier sprint de
développement.
• Distinguer le coût de développement des coûts fixes ou semi fixes (maquettes, gestion de projet,
déploiement, etc.)
Nombre de sprints = Nombre de points / Vélocité estimée par sprint
Effort de développement (heures ou jours) = (Nombre de sprints * Durée d'un sprint)
Coût de développement = Taux horaire * Durée de développement * Nombre d’intervenants
WWW.COLLAB365.EVENTS
Se donner les moyens
d’être agile
Setup
Déploiements
Tests
WWW.COLLAB365.EVENTS
Les prérequis à l’agilité et SharePoint
• La livraison de « valeur » comme leitmotiv
– Environnement technique approprié: avoir un setup de développement qui roule…!
Machines de développement SharePoint identiques (version SP et Visual Studio,
configuration, etc...)
Gestionnaire de code source (Git, TFS) + Outils de gestion de projet agile (JIRA, TFS)
Serveur de build (TeamCity): contrôle des versions et intégration du code + outils de
qualité (FxCop / StyleCop)
Versionning du code mutualisé (Nuget)
Déploiement entièrement automatisé de la solution (PowerShell) (tous
environnements confondus)
Nightly builds: Déploiement QA (Remote PS) Tests unitaires +Tests fonctionnels de
non régression
WWW.COLLAB365.EVENTS
Les prérequis à l’agilité et SharePoint
• La gestion des déploiements
– Objectif: livrer une solution fonctionnelle à la fin de chaque sprint
– Gestion des différentiels en SharePoint (XML vs Code)  ALM
(SharePoint Online avec PnP)
DAILY
SCRUM
SPRINT
PRODUCT
TESTS
SPRINT
REVIEW
SPRINT
RETRO
WWW.COLLAB365.EVENTS
Les prérequis à l’agilité et SharePoint
• Les tests avec SharePoint
Quoi tester?
• Tests unitaires: Framework, code
mutualisé, algorithmes métiers
• Tests fonctionnels: validation des
comportements à travers les critères
d’acceptations de la story
• Aucune valeur a simuler un contexte
SharePoint pour un test!
Comment?
• C#: Microsoft Fakes
• PowerShell: Pester (Lien)
• Intégration au serveur de build
WWW.COLLAB365.EVENTS
Les prérequis à l’agilité et SharePoint
• De manière générale, les tests avec SharePoint, c’est…
– Couteux en temps et en apprentissage des outils
– Plus efficace lorsque c’est réalisé via l’approche TDD
– Long à s’exécuter (distinction « Slow/Fast »)
– Impossible de couvrir tous les cas
WWW.COLLAB365.EVENTS
En résumé…
Faire d’un projet SharePoint
agile un succès
OUI MAIS
• Nécessite une volonté à tous les niveaux, pas qu’au
niveau des développeurs.
• Nécessite une discipline d’abstraction des possibilités
de l’outil en lui-même pour se concentrer sur les
besoins réels.
• Nécessite de la rigueur dans la définition des user
stories et de leurs critères d’acceptations
• Nécessite de savoir faire des compromis.
• Nécessite un setup et des processus de
développement (très) bien rodés.
• Impose un modèle de contractualisation adapté.
• Sans Product Owner TI ;)
Faire d’un projet SharePoint agile un
succès
OUI MAIS
WWW.COLLAB365.EVENTS
Stay tuned for more great sessions …
Merci!

Contenu connexe

Tendances

Oeildecoach scrum roles-et-responsabilites
Oeildecoach scrum roles-et-responsabilitesOeildecoach scrum roles-et-responsabilites
Oeildecoach scrum roles-et-responsabilitesOeil de Coach
 
Evaluer sa maturité produit - Agile France 2015
Evaluer sa maturité produit - Agile France 2015Evaluer sa maturité produit - Agile France 2015
Evaluer sa maturité produit - Agile France 2015Thiga
 
Trucs & astuces drupal
Trucs & astuces drupalTrucs & astuces drupal
Trucs & astuces drupalCore-Techs
 
Méthodes agiles, frameworks javascript: optimisez votre time to market
Méthodes agiles, frameworks javascript: optimisez votre time to marketMéthodes agiles, frameworks javascript: optimisez votre time to market
Méthodes agiles, frameworks javascript: optimisez votre time to marketmichael_bailly
 
L'art du maniement des exigences agiles
L'art du maniement des exigences agilesL'art du maniement des exigences agiles
L'art du maniement des exigences agilesAlexandre Boutin
 
Le métier de Product Owner
Le métier de Product OwnerLe métier de Product Owner
Le métier de Product OwnerFlorent Boyer
 
Agile - Les stories INVEST, 3C et SMART
Agile - Les stories INVEST, 3C et SMARTAgile - Les stories INVEST, 3C et SMART
Agile - Les stories INVEST, 3C et SMARTSébastien GAUDIN
 
BAFS 2015 Genève : Frédéric Tremeau - Comment réconcilier l'IT et le métier g...
BAFS 2015 Genève : Frédéric Tremeau - Comment réconcilier l'IT et le métier g...BAFS 2015 Genève : Frédéric Tremeau - Comment réconcilier l'IT et le métier g...
BAFS 2015 Genève : Frédéric Tremeau - Comment réconcilier l'IT et le métier g...BAFS
 
Drupal un projet comme les autres ? Drupalcamp Paris 2013
Drupal un projet comme les autres ? Drupalcamp Paris 2013Drupal un projet comme les autres ? Drupalcamp Paris 2013
Drupal un projet comme les autres ? Drupalcamp Paris 2013Artusamak
 
Conférence Gestion de projet digital
Conférence Gestion de projet digitalConférence Gestion de projet digital
Conférence Gestion de projet digitalCore-Techs
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...ENSIBS
 
La gestion de projet d'un cours digital
La gestion de projet d'un cours digitalLa gestion de projet d'un cours digital
La gestion de projet d'un cours digitalGuillaume LAURIE
 
Les 10 erreurs d'un projet web déc 2014
Les 10 erreurs d'un projet web   déc 2014Les 10 erreurs d'un projet web   déc 2014
Les 10 erreurs d'un projet web déc 2014Core-Techs
 
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam Cranford
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam CranfordAgile Tour Paris 2014 : Travailler Avec L'Existant, Sam Cranford
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam CranfordENSIBS
 

Tendances (20)

Oeildecoach scrum roles-et-responsabilites
Oeildecoach scrum roles-et-responsabilitesOeildecoach scrum roles-et-responsabilites
Oeildecoach scrum roles-et-responsabilites
 
Evaluer sa maturité produit - Agile France 2015
Evaluer sa maturité produit - Agile France 2015Evaluer sa maturité produit - Agile France 2015
Evaluer sa maturité produit - Agile France 2015
 
Trucs & astuces drupal
Trucs & astuces drupalTrucs & astuces drupal
Trucs & astuces drupal
 
La gestion des produits innovants
La gestion des produits innovantsLa gestion des produits innovants
La gestion des produits innovants
 
Comment définir une Story MAP ?
Comment définir une Story MAP ? Comment définir une Story MAP ?
Comment définir une Story MAP ?
 
Méthodes agiles, frameworks javascript: optimisez votre time to market
Méthodes agiles, frameworks javascript: optimisez votre time to marketMéthodes agiles, frameworks javascript: optimisez votre time to market
Méthodes agiles, frameworks javascript: optimisez votre time to market
 
L'art du maniement des exigences agiles
L'art du maniement des exigences agilesL'art du maniement des exigences agiles
L'art du maniement des exigences agiles
 
Les pratiques Scrum
Les pratiques ScrumLes pratiques Scrum
Les pratiques Scrum
 
Le métier de Product Owner
Le métier de Product OwnerLe métier de Product Owner
Le métier de Product Owner
 
AGILE SCRUM BI NODYA
AGILE SCRUM BI NODYAAGILE SCRUM BI NODYA
AGILE SCRUM BI NODYA
 
Agile - Les stories INVEST, 3C et SMART
Agile - Les stories INVEST, 3C et SMARTAgile - Les stories INVEST, 3C et SMART
Agile - Les stories INVEST, 3C et SMART
 
BAFS 2015 Genève : Frédéric Tremeau - Comment réconcilier l'IT et le métier g...
BAFS 2015 Genève : Frédéric Tremeau - Comment réconcilier l'IT et le métier g...BAFS 2015 Genève : Frédéric Tremeau - Comment réconcilier l'IT et le métier g...
BAFS 2015 Genève : Frédéric Tremeau - Comment réconcilier l'IT et le métier g...
 
Drupal un projet comme les autres ? Drupalcamp Paris 2013
Drupal un projet comme les autres ? Drupalcamp Paris 2013Drupal un projet comme les autres ? Drupalcamp Paris 2013
Drupal un projet comme les autres ? Drupalcamp Paris 2013
 
Conférence Gestion de projet digital
Conférence Gestion de projet digitalConférence Gestion de projet digital
Conférence Gestion de projet digital
 
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
Agile Tour Paris 2014 : Ma stack d'outils Agiles, tout un programme !, Cedric...
 
Initiation Scrum
Initiation ScrumInitiation Scrum
Initiation Scrum
 
La gestion de projet d'un cours digital
La gestion de projet d'un cours digitalLa gestion de projet d'un cours digital
La gestion de projet d'un cours digital
 
Rôles product-owner
Rôles product-ownerRôles product-owner
Rôles product-owner
 
Les 10 erreurs d'un projet web déc 2014
Les 10 erreurs d'un projet web   déc 2014Les 10 erreurs d'un projet web   déc 2014
Les 10 erreurs d'un projet web déc 2014
 
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam Cranford
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam CranfordAgile Tour Paris 2014 : Travailler Avec L'Existant, Sam Cranford
Agile Tour Paris 2014 : Travailler Avec L'Existant, Sam Cranford
 

Similaire à Agilité et SharePoint: Incompatible? On gage que non!

Agile Data Warehousing - 7 pillars - Procima Experts
Agile Data Warehousing - 7 pillars - Procima ExpertsAgile Data Warehousing - 7 pillars - Procima Experts
Agile Data Warehousing - 7 pillars - Procima ExpertsMarc-Eric LaRocque
 
Low code, lean et agilité sur les projets SHarePoint - SPS Dakar
Low code, lean et agilité sur les projets SHarePoint - SPS DakarLow code, lean et agilité sur les projets SHarePoint - SPS Dakar
Low code, lean et agilité sur les projets SHarePoint - SPS DakarSébastien Paulet
 
SPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien PauletSPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien PauletaOS Community
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement MicrosoftChristophe HERAL
 
SPS Paris2015 SharePoint, Scrum, Agilité, Frugalité
SPS Paris2015   SharePoint, Scrum, Agilité, FrugalitéSPS Paris2015   SharePoint, Scrum, Agilité, Frugalité
SPS Paris2015 SharePoint, Scrum, Agilité, FrugalitéSébastien Paulet
 
Agilite togo jug_final
Agilite togo jug_finalAgilite togo jug_final
Agilite togo jug_finalagnes_crepet
 
Intégrer un progiciel en mode agile à la RATP ? Défi relevé !
Intégrer un progiciel en mode agile à la RATP ? Défi relevé !Intégrer un progiciel en mode agile à la RATP ? Défi relevé !
Intégrer un progiciel en mode agile à la RATP ? Défi relevé !Agile En Seine
 
soft-shake.ch - Le terrain Agile
soft-shake.ch - Le terrain Agilesoft-shake.ch - Le terrain Agile
soft-shake.ch - Le terrain Agilesoft-shake.ch
 
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...Niji
 
Agile Tour 2010 - Mise en place d'un projet agile
Agile Tour 2010 - Mise en place d'un projet agileAgile Tour 2010 - Mise en place d'un projet agile
Agile Tour 2010 - Mise en place d'un projet agileLaurent Deséchalliers
 
AT2010 Mise place d'un projet Agile
AT2010 Mise place d'un projet AgileAT2010 Mise place d'un projet Agile
AT2010 Mise place d'un projet AgileNormandy JUG
 
Introduction à Scrum et aux méthodes agiles (v1.0)
Introduction à Scrum et aux méthodes agiles (v1.0)Introduction à Scrum et aux méthodes agiles (v1.0)
Introduction à Scrum et aux méthodes agiles (v1.0)Blackbird
 
5 bonnes raisons pour des projets analytiques en agile
5 bonnes raisons pour des projets analytiques en agile5 bonnes raisons pour des projets analytiques en agile
5 bonnes raisons pour des projets analytiques en agileagileDSS
 

Similaire à Agilité et SharePoint: Incompatible? On gage que non! (20)

Agile Data Warehousing - 7 pillars - Procima Experts
Agile Data Warehousing - 7 pillars - Procima ExpertsAgile Data Warehousing - 7 pillars - Procima Experts
Agile Data Warehousing - 7 pillars - Procima Experts
 
Lunch learn 5 sep2013
Lunch learn 5 sep2013Lunch learn 5 sep2013
Lunch learn 5 sep2013
 
Low code, lean et agilité sur les projets SHarePoint - SPS Dakar
Low code, lean et agilité sur les projets SHarePoint - SPS DakarLow code, lean et agilité sur les projets SHarePoint - SPS Dakar
Low code, lean et agilité sur les projets SHarePoint - SPS Dakar
 
SPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien PauletSPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
SPS Dakar 2018 - Low code, lean et agilité - Sébastien Paulet
 
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
[Scrum Day 2011] Outillage Agile dans un environnement Microsoft
 
SPS Paris2015 SharePoint, Scrum, Agilité, Frugalité
SPS Paris2015   SharePoint, Scrum, Agilité, FrugalitéSPS Paris2015   SharePoint, Scrum, Agilité, Frugalité
SPS Paris2015 SharePoint, Scrum, Agilité, Frugalité
 
Agilite togo jug_final
Agilite togo jug_finalAgilite togo jug_final
Agilite togo jug_final
 
Meetup daikibo 1
Meetup daikibo 1Meetup daikibo 1
Meetup daikibo 1
 
Intégrer un progiciel en mode agile à la RATP ? Défi relevé !
Intégrer un progiciel en mode agile à la RATP ? Défi relevé !Intégrer un progiciel en mode agile à la RATP ? Défi relevé !
Intégrer un progiciel en mode agile à la RATP ? Défi relevé !
 
soft-shake.ch - Le terrain Agile
soft-shake.ch - Le terrain Agilesoft-shake.ch - Le terrain Agile
soft-shake.ch - Le terrain Agile
 
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
[Webinar Niji] Clés de succès et partage d’expériences pour mettre en œuvre e...
 
Agile Tour 2010 - Mise en place d'un projet agile
Agile Tour 2010 - Mise en place d'un projet agileAgile Tour 2010 - Mise en place d'un projet agile
Agile Tour 2010 - Mise en place d'un projet agile
 
AT2010 Mise place d'un projet Agile
AT2010 Mise place d'un projet AgileAT2010 Mise place d'un projet Agile
AT2010 Mise place d'un projet Agile
 
Introduction à Scrum et aux méthodes agiles (v1.0)
Introduction à Scrum et aux méthodes agiles (v1.0)Introduction à Scrum et aux méthodes agiles (v1.0)
Introduction à Scrum et aux méthodes agiles (v1.0)
 
Procima deck 7 May 2014
Procima deck 7 May 2014Procima deck 7 May 2014
Procima deck 7 May 2014
 
Dev opsday case study
Dev opsday   case studyDev opsday   case study
Dev opsday case study
 
PresentationMéthodologie SCRUM-2021.pptx
PresentationMéthodologie SCRUM-2021.pptxPresentationMéthodologie SCRUM-2021.pptx
PresentationMéthodologie SCRUM-2021.pptx
 
5 bonnes raisons pour des projets analytiques en agile
5 bonnes raisons pour des projets analytiques en agile5 bonnes raisons pour des projets analytiques en agile
5 bonnes raisons pour des projets analytiques en agile
 
Sp summit2014 session 10-2
Sp summit2014   session 10-2Sp summit2014   session 10-2
Sp summit2014 session 10-2
 
Methodologies agiles
Methodologies agilesMethodologies agiles
Methodologies agiles
 

Plus de Franck Cornu

Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...Franck Cornu
 
Boostez votre recherche SharePoint grâce aux Microsoft Cognitive Services!
Boostez votre recherche SharePoint grâce aux Microsoft Cognitive Services!Boostez votre recherche SharePoint grâce aux Microsoft Cognitive Services!
Boostez votre recherche SharePoint grâce aux Microsoft Cognitive Services!Franck Cornu
 
Implémentez votre prochain assistant personnel d'intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d'intranet SharePoint grâce au...Implémentez votre prochain assistant personnel d'intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d'intranet SharePoint grâce au...Franck Cornu
 
SPS Québec - Votre intranet "Client-Side" en SharePoint Online/O365 avec PnP,...
SPS Québec - Votre intranet "Client-Side" en SharePoint Online/O365 avec PnP,...SPS Québec - Votre intranet "Client-Side" en SharePoint Online/O365 avec PnP,...
SPS Québec - Votre intranet "Client-Side" en SharePoint Online/O365 avec PnP,...Franck Cornu
 
Evolution de l’Intranet d’entreprise avec Office 365 : quelles approches ?
Evolution de l’Intranet d’entreprise avec Office 365 : quelles approches ?Evolution de l’Intranet d’entreprise avec Office 365 : quelles approches ?
Evolution de l’Intranet d’entreprise avec Office 365 : quelles approches ?Franck Cornu
 
Intranets et sites web en SharePoint 2013 avec le Cross Site Publishing
Intranets et sites web en SharePoint 2013 avec le Cross Site PublishingIntranets et sites web en SharePoint 2013 avec le Cross Site Publishing
Intranets et sites web en SharePoint 2013 avec le Cross Site PublishingFranck Cornu
 
Mettre en place un intranet ou un site web public en SharePoint 2013 autour d...
Mettre en place un intranet ou un site web public en SharePoint 2013 autour d...Mettre en place un intranet ou un site web public en SharePoint 2013 autour d...
Mettre en place un intranet ou un site web public en SharePoint 2013 autour d...Franck Cornu
 
Mise en place d'un intranet ou d'un site web en SharePoint 2013 grâce au Cros...
Mise en place d'un intranet ou d'un site web en SharePoint 2013 grâce au Cros...Mise en place d'un intranet ou d'un site web en SharePoint 2013 grâce au Cros...
Mise en place d'un intranet ou d'un site web en SharePoint 2013 grâce au Cros...Franck Cornu
 
Cross Site Publishing Solution for corporate news in SP 2013
Cross Site Publishing Solution for corporate news in SP 2013Cross Site Publishing Solution for corporate news in SP 2013
Cross Site Publishing Solution for corporate news in SP 2013Franck Cornu
 
Concevoir des applications SharePoint basées sur la recherche
Concevoir des applications SharePoint basées sur la rechercheConcevoir des applications SharePoint basées sur la recherche
Concevoir des applications SharePoint basées sur la rechercheFranck Cornu
 
Réussir son analyse fonctionnelle SharePoint
Réussir son analyse fonctionnelle SharePointRéussir son analyse fonctionnelle SharePoint
Réussir son analyse fonctionnelle SharePointFranck Cornu
 
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...Franck Cornu
 

Plus de Franck Cornu (12)

Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d’intranet SharePoint grâce au...
 
Boostez votre recherche SharePoint grâce aux Microsoft Cognitive Services!
Boostez votre recherche SharePoint grâce aux Microsoft Cognitive Services!Boostez votre recherche SharePoint grâce aux Microsoft Cognitive Services!
Boostez votre recherche SharePoint grâce aux Microsoft Cognitive Services!
 
Implémentez votre prochain assistant personnel d'intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d'intranet SharePoint grâce au...Implémentez votre prochain assistant personnel d'intranet SharePoint grâce au...
Implémentez votre prochain assistant personnel d'intranet SharePoint grâce au...
 
SPS Québec - Votre intranet "Client-Side" en SharePoint Online/O365 avec PnP,...
SPS Québec - Votre intranet "Client-Side" en SharePoint Online/O365 avec PnP,...SPS Québec - Votre intranet "Client-Side" en SharePoint Online/O365 avec PnP,...
SPS Québec - Votre intranet "Client-Side" en SharePoint Online/O365 avec PnP,...
 
Evolution de l’Intranet d’entreprise avec Office 365 : quelles approches ?
Evolution de l’Intranet d’entreprise avec Office 365 : quelles approches ?Evolution de l’Intranet d’entreprise avec Office 365 : quelles approches ?
Evolution de l’Intranet d’entreprise avec Office 365 : quelles approches ?
 
Intranets et sites web en SharePoint 2013 avec le Cross Site Publishing
Intranets et sites web en SharePoint 2013 avec le Cross Site PublishingIntranets et sites web en SharePoint 2013 avec le Cross Site Publishing
Intranets et sites web en SharePoint 2013 avec le Cross Site Publishing
 
Mettre en place un intranet ou un site web public en SharePoint 2013 autour d...
Mettre en place un intranet ou un site web public en SharePoint 2013 autour d...Mettre en place un intranet ou un site web public en SharePoint 2013 autour d...
Mettre en place un intranet ou un site web public en SharePoint 2013 autour d...
 
Mise en place d'un intranet ou d'un site web en SharePoint 2013 grâce au Cros...
Mise en place d'un intranet ou d'un site web en SharePoint 2013 grâce au Cros...Mise en place d'un intranet ou d'un site web en SharePoint 2013 grâce au Cros...
Mise en place d'un intranet ou d'un site web en SharePoint 2013 grâce au Cros...
 
Cross Site Publishing Solution for corporate news in SP 2013
Cross Site Publishing Solution for corporate news in SP 2013Cross Site Publishing Solution for corporate news in SP 2013
Cross Site Publishing Solution for corporate news in SP 2013
 
Concevoir des applications SharePoint basées sur la recherche
Concevoir des applications SharePoint basées sur la rechercheConcevoir des applications SharePoint basées sur la recherche
Concevoir des applications SharePoint basées sur la recherche
 
Réussir son analyse fonctionnelle SharePoint
Réussir son analyse fonctionnelle SharePointRéussir son analyse fonctionnelle SharePoint
Réussir son analyse fonctionnelle SharePoint
 
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...
Automatiser le déploiement d'environnements SharePoint 2010/2013 grâce à Powe...
 

Agilité et SharePoint: Incompatible? On gage que non!

  • 1. Online Conference June 17th and 18th 2015 WWW.COLLAB365.EVENTS Agilité et SharePoint: Incompatible? On gage que non!
  • 2. WWW.COLLAB365.EVENTS Franck Cornu Email : franck.cornu@gsoft.com Twitter : @FranckCornu 5 ans d’expérience avec SharePoint Spécialisation en intranet/portail d’entreprise Analyse/Architecture/Développement Blog: http://thecollaborationcorner.com/ Publication: « Réussir son analyse fonctionnelle SharePoint: Guide méthodologique » (http://bit.ly/1GsrJwd) Contact Montréal, QC, Canada
  • 3. WWW.COLLAB365.EVENTS Plan de la session • Partie 1: L’agilité et SharePoint • Partie 2: Démarrer un projet agile • Partie 3: Se donner les moyens d’être agile
  • 5. WWW.COLLAB365.EVENTS Petits rappels SCRUM • « …cadre de travail permettant de répondre à des problèmes complexes et changeants tout en livrant de manière productive et créative des produits de la plus grande valeur possible… »
  • 7. WWW.COLLAB365.EVENTS Idées reçues sur SharePoint et l’agile • SCRUM et l’agilité, ce sont des trucs de développeurs ça, nous on parle business! • SCRUM n’est pas une méthode de gestion de projet rigoureuse permettant un contrôle précis des coûts. En gros, SCRUM = anarchie! • Être agile, c’est tester souvent, or avec SharePoint ce n’est pas possible ou beaucoup trop coûteux. L'investissement n’en vaut donc pas la peine. • La plupart des fonctionnalités sont déjà "OOTB", c'est juste de la configuration et pas du développement, pas la peine de découper ça en « story » car les besoins sont déjà comblés par l’outil. • Les projets SharePoint sont trop liés à l'infrastructure et fait intervenir une multitude d’équipes. La mise en place de l’agile est d’autant plus complexe. • SCRUM n’est pas adapté à mon projet, car mon projet n’est pas un projet « classique » de développement logiciel. – Projet de migration, gouvernance, sites de collaboration etc.
  • 9. WWW.COLLAB365.EVENTS Démarrer un projet agile La phase de démarrage L'art de la story Estimation
  • 10. WWW.COLLAB365.EVENTS Démarrer un projet agile Analyser les besoins et définir le backlog Estimer les coûts de développement Contractualiser Développer la solution de manière itérative Livrer la solutionComprendre SCRUM Évaluer le besoin global Définir le pourquoi du projet, sa vision et son contexte Définir le plan de livraison Livrer la solutions selon le plan
  • 11. WWW.COLLAB365.EVENTS Exemple de démarrage de projet agile • Format – 2 à 3 jours consécutifs en mode « War Room » (5 à 6 personnes) – Ateliers interactifs successifs • En sortie – Backlog priorisé selon un plan de livraison • Information minimale nécessaire pour permettre une estimation réaliste – Charte de projet • Nom de projet • Vision • Objectifs d’affaires (S.M.A.R.T) • Équipe • Variables d’ajustements • Événements probables • Wireframes et maquettes • Estimation selon la technologie cible (ici SharePoint)
  • 12. WWW.COLLAB365.EVENTS Quid de la contractualisation agile • Dans la théorie, le modèle de contractualisation d’un projet agile serait plutôt du type « paiement à l’utilisation » mais dans la pratique, les entreprises doivent débloquer des budgets avant la réalisation de leurs projets… « Fixed bid » VS « Time & Materials »
  • 13. WWW.COLLAB365.EVENTS Recette d’un bon backlog • Un backlog comprenant: – Des rôles ou profils (qui va utiliser l’application?) – Des user stories (que vont-ils faire avec?) – Des epics (quelles sont les grandes fonctionnalités du sytème?) – Des contraintes (il y-a t-il des contraintes particulières à respecter?) • Les bonnes personnes – Un product owner (pas TI) – Des conseillers – Un « Coach agile » ou analyste
  • 14. WWW.COLLAB365.EVENTS Définir ses stories • Quelques règles générales – Tout est une story! (technique, documentation, …) = Avant tout, on cherche une répartition optimale de la charge de travail = Unité de découpage du travail – Format « En tant que…je veux + action », pas de justification – Indépendant de toute technologie (particulièrement difficile à faire comprendre avec SharePoint) – Critères I (Independant) N (Negotiable) V (Valuable) E (Estimable) S (Small) T (Testable) – Obligation de critères d’acceptations = contrat entre le PO et l’équipe = Périmètre fonctionnel = Détermination de la fin d’un story = Plan de tests • « Lorsque je fait ça je m’attend à ça » • « La fonctionnalité doit être disponible sur mobile » – Toutes les stories sont soumises à la DoD (« Definition of Done ») et/ou la DoR (« Definition of Ready ») – Une story est différente d’un cas d’utilisation (explication juste après)
  • 15. WWW.COLLAB365.EVENTS Définir ses stories • Gérer le syndrome SharePoint – Important de distinguer: • Les tâches des stories (Exemple: « Créer une bibliothèque ») • Les contraintes des stories (Exemple: « Implémenter l’interface mobile ») • Le besoin du moyen («Exemple: « En tant qu’utilisateur je voudrais une bibliothèque pour stocker mes documents ») • La fonctionnalité principale et ses éventuels « add-ons » INVEST  (Indépendant) – Voir une liste de nouvelles – Add-ons: » Voir une liste de nouvelles sous forme carroussel » Voir une liste de nouvelle en 3D sur une carte interactive (?!?!) – Actions métier VS actions SharePoint: pas la peine de lister toutes les actions de bases de l’outil! • « Créer une version de document », « Check-In », « Check-Out », etc.. • Se gère en critères d’acceptations. Si trop gros, en faire une story à part (« Archiver un document ») – Savoir faire des compromis
  • 16. WWW.COLLAB365.EVENTS Définir ses stories • Orientés rôles et responsabilités : les profils ≠ groupes de sécurité SharePoint !  Raisonnez au niveau métier!
  • 17. WWW.COLLAB365.EVENTS Un exemple de méthode Story ≠Cas d’utilisation ! Actions fondamentales (relation de précédence inévitable)
  • 18. WWW.COLLAB365.EVENTS Définir ses stories • Comment démarrer? – Énumérer les actions sous un format libre (existantes et/ou souhaitées) – Identifier les profils/personnes/rôles réalisant ces actions – Faire des regroupements en « Epics » (thématiques fonctionnelles ou métiers) – Appliquer le schéma typique précédent pour déduire les stories • Avec quel outil? – User Story Mapping
  • 19. WWW.COLLAB365.EVENTS La gestion des contraintes • Une contrainte est une particularité à prendre en compte lors de la réalisation d’une story pour livrer une fonctionnalité finale. • Savoir si une contrainte s’applique réellement sur une story: « est-ce que il y a une tâche particulière à faire pour répondre cette contrainte dans le cadre de la story? » • S’entendre sur la définition et la portée d’une contrainte = critère d’acceptation pour chaque contrainte
  • 20. WWW.COLLAB365.EVENTS Estimer une user story Quel Format? En points et non en heures ou jours Ordre de complexité relative entre les stories Comment? Quand? Qu’estime t-on? Quelques Règles
  • 21. WWW.COLLAB365.EVENTS L’estimation: passer de l’abstrait à la réalité • Les variables fondamentales de calcul du coût de développement pour un projet agile – La vélocité (Évolue tout au long du projet!) – La durée d’un sprint – Le taux horaire des différents intervenants • Formule (très) théorique • Toujours un sprint supplémentaire pour la correction et l’ajustement du dernier sprint de développement. • Distinguer le coût de développement des coûts fixes ou semi fixes (maquettes, gestion de projet, déploiement, etc.) Nombre de sprints = Nombre de points / Vélocité estimée par sprint Effort de développement (heures ou jours) = (Nombre de sprints * Durée d'un sprint) Coût de développement = Taux horaire * Durée de développement * Nombre d’intervenants
  • 22. WWW.COLLAB365.EVENTS Se donner les moyens d’être agile Setup Déploiements Tests
  • 23. WWW.COLLAB365.EVENTS Les prérequis à l’agilité et SharePoint • La livraison de « valeur » comme leitmotiv – Environnement technique approprié: avoir un setup de développement qui roule…! Machines de développement SharePoint identiques (version SP et Visual Studio, configuration, etc...) Gestionnaire de code source (Git, TFS) + Outils de gestion de projet agile (JIRA, TFS) Serveur de build (TeamCity): contrôle des versions et intégration du code + outils de qualité (FxCop / StyleCop) Versionning du code mutualisé (Nuget) Déploiement entièrement automatisé de la solution (PowerShell) (tous environnements confondus) Nightly builds: Déploiement QA (Remote PS) Tests unitaires +Tests fonctionnels de non régression
  • 24. WWW.COLLAB365.EVENTS Les prérequis à l’agilité et SharePoint • La gestion des déploiements – Objectif: livrer une solution fonctionnelle à la fin de chaque sprint – Gestion des différentiels en SharePoint (XML vs Code)  ALM (SharePoint Online avec PnP) DAILY SCRUM SPRINT PRODUCT TESTS SPRINT REVIEW SPRINT RETRO
  • 25. WWW.COLLAB365.EVENTS Les prérequis à l’agilité et SharePoint • Les tests avec SharePoint Quoi tester? • Tests unitaires: Framework, code mutualisé, algorithmes métiers • Tests fonctionnels: validation des comportements à travers les critères d’acceptations de la story • Aucune valeur a simuler un contexte SharePoint pour un test! Comment? • C#: Microsoft Fakes • PowerShell: Pester (Lien) • Intégration au serveur de build
  • 26. WWW.COLLAB365.EVENTS Les prérequis à l’agilité et SharePoint • De manière générale, les tests avec SharePoint, c’est… – Couteux en temps et en apprentissage des outils – Plus efficace lorsque c’est réalisé via l’approche TDD – Long à s’exécuter (distinction « Slow/Fast ») – Impossible de couvrir tous les cas
  • 27. WWW.COLLAB365.EVENTS En résumé… Faire d’un projet SharePoint agile un succès OUI MAIS • Nécessite une volonté à tous les niveaux, pas qu’au niveau des développeurs. • Nécessite une discipline d’abstraction des possibilités de l’outil en lui-même pour se concentrer sur les besoins réels. • Nécessite de la rigueur dans la définition des user stories et de leurs critères d’acceptations • Nécessite de savoir faire des compromis. • Nécessite un setup et des processus de développement (très) bien rodés. • Impose un modèle de contractualisation adapté. • Sans Product Owner TI ;) Faire d’un projet SharePoint agile un succès OUI MAIS
  • 28. WWW.COLLAB365.EVENTS Stay tuned for more great sessions … Merci!