SlideShare une entreprise Scribd logo
1  sur  30
SharePoint Saturday
Montréal
23 mai 2015
SharePoint Saturday
Montréal
Agilité et SharePoint: Incompatible? On
gage que non!
Franck Cornu
Spécialiste SharePoint
SharePoint Saturday
Montréal
Or
Argent
Bronze
Web
Merci à nos commanditaires !
SharePoint Saturday
Montréal
http://thecollaborationcorner.com/
Réussir son analyse fonctionnelle
SharePoint: Guide méthodologique
@FranckCornu
SharePoint Saturday
Montréal
Plan de la présentation
• Partie 1: L’agilité et SharePoint
• Partie 2: Démarrer un projet agile
• Partie 3: Se donner les moyens d’être agile
SharePoint Saturday
Montréal
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… »
Scrum guide
SharePoint Saturday
Montréal
Comment nous l’appliquons
BACKLOG
GROOMING
DU BACKLOG SPRINT
BACKLOG
USER STORY 5
USER STORY 3
USER STORY 8
2 semaines
SPRINT
REVIEW
SPRINT
BACKLOG
DAILY
SCRUM
SPRINT
PRODUCT
BACKLOG
GROOMING
SPRINT
PLANNING
TESTS
SPRINT
REVIEW
SPRINT
RETRO
SharePoint Saturday
Montréal
• 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.
Idées reçues sur SharePoint et l’agile
SharePoint Saturday
Montréal
L’agilité, d’abord une philosophie
SharePoint Saturday
Montréal
Démarrer un projet agile
Comprendre SCRUM Définir le pourquoi du
projet, sa vision et son
contexte
Évaluer le besoin
global
Analyser les
besoins et définir
le backlog
Définir le plan de
livraison
Estimer les coûts de
développement
Contractualiser Développer la solution
de manière itérative
Livrer les solutions
selon le plan
Livrer la solution
SharePoint Saturday
Montréal
Un démarrage de projet
• 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)
SharePoint Saturday
Montréal
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 »
« Fixed bid » VS « Time & Materials »
MAIS
SharePoint Saturday
Montréal
Recette d’un backlog de projet
Quoi?
SharePoint Saturday
Montréal
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!
• Format « En tant que…je veux + action », pas de justification
• Indépendant de toute technologie
• 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 =
Plan de tests
• Toutes les stories sont soumises à la DoD (« Definition of Done ») et la DoR (« Definition of
Ready »)
• Une story est différente d’un cas d’utilisation (explication juste après)
SharePoint Saturday
Montréal
Définir ses stories
• Gérer le syndrome SharePoint
• Important de distinguer:
• Les tâches des stories
• Les contraintes des stories
• Le besoin du moyen
• La fonctionnalité principale et ses éventuels « add-ons » INVEST  (Indépendant)
• 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
SharePoint Saturday
Montréal
Définir ses stories
• Gérer le syndrome SharePoint
• Orientés rôles et responsabilités : les
profils ≠ groupes de sécurité
SharePoint !
 Raisonnez au niveau métier!
SharePoint Saturday
Montréal
Schéma typique d’une user story
Quid de la granularité?
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
Définir ses stories
SharePoint Saturday
Montréal
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
SharePoint Saturday
Montréal
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
SharePoint Saturday
Montréal
L’estimation: passer de l’abstrait à la réalité
• Les variables fondamentales de calcul des coûts pour un projet agile
• La vélocité
• 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.
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
SharePoint Saturday
Montréal
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
SharePoint Saturday
Montréal
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
DAILY
SCRUM
SPRINT
PRODUCT
TESTS
SPRINT
REVIEW
SPRINT
RETRO
SharePoint Saturday
Montréal
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) DÉMO
› Intégration au serveur de build
SharePoint Saturday
Montréal
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
Faire d’un projet SharePoint agile un
succès
OUI MAIS
Nécessite une volonté à tous les niveaux
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 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 ;)
En résumé…
SharePint !
Ce soir à 18h
Le Trèfle, 3971 Rue Ontario E

Contenu connexe

Tendances

Les Rôles du Scrum Product Owner
Les Rôles du Scrum Product OwnerLes Rôles du Scrum Product Owner
Les Rôles du Scrum Product OwnerFabrice Aimetti
 
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
 
Ecrire de bonnes user stories - en 5 minutes - scrum wine v1.0
Ecrire de bonnes user stories - en 5 minutes -  scrum wine v1.0Ecrire de bonnes user stories - en 5 minutes -  scrum wine v1.0
Ecrire de bonnes user stories - en 5 minutes - scrum wine v1.0Olivier Patou
 
Conférence Gestion de projet digital
Conférence Gestion de projet digitalConférence Gestion de projet digital
Conférence Gestion de projet digitalCore-Techs
 
Oeildecoach scrum roles-et-responsabilites
Oeildecoach scrum roles-et-responsabilitesOeildecoach scrum roles-et-responsabilites
Oeildecoach scrum roles-et-responsabilitesOeil de Coach
 
Oeil user story_bonnes_pratiques_Martial_SEGURA oeildecoach.com
Oeil user story_bonnes_pratiques_Martial_SEGURA oeildecoach.comOeil user story_bonnes_pratiques_Martial_SEGURA oeildecoach.com
Oeil user story_bonnes_pratiques_Martial_SEGURA oeildecoach.comOeil de Coach
 
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
 
AgileTour Toulouse 2012 : Agile pour IT et non IT
AgileTour Toulouse 2012 : Agile pour IT et non ITAgileTour Toulouse 2012 : Agile pour IT et non IT
AgileTour Toulouse 2012 : Agile pour IT et non ITAgile Toulouse
 

Tendances (10)

Les Rôles du Scrum Product Owner
Les Rôles du Scrum Product OwnerLes Rôles du Scrum Product Owner
Les Rôles du Scrum Product Owner
 
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
 
Ecrire de bonnes user stories - en 5 minutes - scrum wine v1.0
Ecrire de bonnes user stories - en 5 minutes -  scrum wine v1.0Ecrire de bonnes user stories - en 5 minutes -  scrum wine v1.0
Ecrire de bonnes user stories - en 5 minutes - scrum wine v1.0
 
Conférence Gestion de projet digital
Conférence Gestion de projet digitalConférence Gestion de projet digital
Conférence Gestion de projet digital
 
Oeildecoach scrum roles-et-responsabilites
Oeildecoach scrum roles-et-responsabilitesOeildecoach scrum roles-et-responsabilites
Oeildecoach scrum roles-et-responsabilites
 
Oeil user story_bonnes_pratiques_Martial_SEGURA oeildecoach.com
Oeil user story_bonnes_pratiques_Martial_SEGURA oeildecoach.comOeil user story_bonnes_pratiques_Martial_SEGURA oeildecoach.com
Oeil user story_bonnes_pratiques_Martial_SEGURA oeildecoach.com
 
Compte-rendu Agile Tour 2014 à Lille
Compte-rendu Agile Tour 2014 à LilleCompte-rendu Agile Tour 2014 à Lille
Compte-rendu Agile Tour 2014 à Lille
 
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
 
Dev opsday case study
Dev opsday   case studyDev opsday   case study
Dev opsday case study
 
AgileTour Toulouse 2012 : Agile pour IT et non IT
AgileTour Toulouse 2012 : Agile pour IT et non ITAgileTour Toulouse 2012 : Agile pour IT et non IT
AgileTour Toulouse 2012 : Agile pour IT et non IT
 

En vedette

Project et SharePoint, une meilleure collaboration pour des projets gagnants
Project et SharePoint, une meilleure collaboration pour des projets gagnantsProject et SharePoint, une meilleure collaboration pour des projets gagnants
Project et SharePoint, une meilleure collaboration pour des projets gagnantsMicrosoft Technet France
 
Práctica de Word - Edilma Castillo
Práctica de Word - Edilma CastilloPráctica de Word - Edilma Castillo
Práctica de Word - Edilma CastilloEdy_Bella
 
141607 confcall usecases wisembly_full
141607 confcall usecases wisembly_full141607 confcall usecases wisembly_full
141607 confcall usecases wisembly_fullWisembly
 
Déjà présent sur internet ? Allez plus loin // Ateliers du numérique par Soci...
Déjà présent sur internet ? Allez plus loin // Ateliers du numérique par Soci...Déjà présent sur internet ? Allez plus loin // Ateliers du numérique par Soci...
Déjà présent sur internet ? Allez plus loin // Ateliers du numérique par Soci...Ateliers-du-Numerique
 
Rapport tarifs de l'électricité
Rapport   tarifs de l'électricitéRapport   tarifs de l'électricité
Rapport tarifs de l'électricitéJulienLagarde
 
Connect emploi - Mission locale de Lille
Connect emploi - Mission locale de LilleConnect emploi - Mission locale de Lille
Connect emploi - Mission locale de LilleLes Interconnectés
 
Entregable dia 3 clase de ebranding y rrss cep
Entregable dia 3 clase de ebranding y rrss cepEntregable dia 3 clase de ebranding y rrss cep
Entregable dia 3 clase de ebranding y rrss cepGonzalo Garre Rodas
 
Coupler assurance-vie et contrat de capitalisation
Coupler assurance-vie et contrat de capitalisationCoupler assurance-vie et contrat de capitalisation
Coupler assurance-vie et contrat de capitalisationFabrice Haehl
 
Ceco2 pres parlementaires2
Ceco2 pres parlementaires2Ceco2 pres parlementaires2
Ceco2 pres parlementaires2Antoine Horellou
 
Biblio grande-guerre-2014-complete
Biblio grande-guerre-2014-completeBiblio grande-guerre-2014-complete
Biblio grande-guerre-2014-completeNicolas Boulesteix
 

En vedette (20)

Project et SharePoint, une meilleure collaboration pour des projets gagnants
Project et SharePoint, une meilleure collaboration pour des projets gagnantsProject et SharePoint, une meilleure collaboration pour des projets gagnants
Project et SharePoint, une meilleure collaboration pour des projets gagnants
 
Práctica de Word - Edilma Castillo
Práctica de Word - Edilma CastilloPráctica de Word - Edilma Castillo
Práctica de Word - Edilma Castillo
 
141607 confcall usecases wisembly_full
141607 confcall usecases wisembly_full141607 confcall usecases wisembly_full
141607 confcall usecases wisembly_full
 
Qui Suis-Je?
Qui Suis-Je?Qui Suis-Je?
Qui Suis-Je?
 
Déjà présent sur internet ? Allez plus loin // Ateliers du numérique par Soci...
Déjà présent sur internet ? Allez plus loin // Ateliers du numérique par Soci...Déjà présent sur internet ? Allez plus loin // Ateliers du numérique par Soci...
Déjà présent sur internet ? Allez plus loin // Ateliers du numérique par Soci...
 
Dossier de Presse Personnel
Dossier de Presse Personnel Dossier de Presse Personnel
Dossier de Presse Personnel
 
Rapport tarifs de l'électricité
Rapport   tarifs de l'électricitéRapport   tarifs de l'électricité
Rapport tarifs de l'électricité
 
Yadira guingla
Yadira guinglaYadira guingla
Yadira guingla
 
Developpement CakePHP
Developpement CakePHPDeveloppement CakePHP
Developpement CakePHP
 
Plancha3 2012
Plancha3 2012Plancha3 2012
Plancha3 2012
 
Connect emploi - Mission locale de Lille
Connect emploi - Mission locale de LilleConnect emploi - Mission locale de Lille
Connect emploi - Mission locale de Lille
 
Entregable dia 3 clase de ebranding y rrss cep
Entregable dia 3 clase de ebranding y rrss cepEntregable dia 3 clase de ebranding y rrss cep
Entregable dia 3 clase de ebranding y rrss cep
 
Coupler assurance-vie et contrat de capitalisation
Coupler assurance-vie et contrat de capitalisationCoupler assurance-vie et contrat de capitalisation
Coupler assurance-vie et contrat de capitalisation
 
Ecuaciones
EcuacionesEcuaciones
Ecuaciones
 
Ppt abel2
Ppt abel2Ppt abel2
Ppt abel2
 
Ceco2 pres parlementaires2
Ceco2 pres parlementaires2Ceco2 pres parlementaires2
Ceco2 pres parlementaires2
 
Grupo omega final
Grupo omega finalGrupo omega final
Grupo omega final
 
Bonheur recherche google
Bonheur   recherche googleBonheur   recherche google
Bonheur recherche google
 
Biblio grande-guerre-2014-complete
Biblio grande-guerre-2014-completeBiblio grande-guerre-2014-complete
Biblio grande-guerre-2014-complete
 
El reciclaje
El reciclajeEl reciclaje
El reciclaje
 

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

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
 
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
 
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
 
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
 
[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
 
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
 
Agilite togo jug_final
Agilite togo jug_finalAgilite togo jug_final
Agilite togo jug_finalagnes_crepet
 
Comment nous avons amélioré notre produit avec ScrumBan
Comment nous avons amélioré notre produit avec ScrumBanComment nous avons amélioré notre produit avec ScrumBan
Comment nous avons amélioré notre produit avec ScrumBanJulien Rairat
 
2011-05-12 Jean-René Rousseau Reddition de compte Agile
2011-05-12 Jean-René Rousseau Reddition de compte Agile2011-05-12 Jean-René Rousseau Reddition de compte Agile
2011-05-12 Jean-René Rousseau Reddition de compte AgilePMI Lévis-Québec
 
Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)Laurent PY
 
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
 
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
 
[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
 
Developement logiciel: comment livrer de la qualite ?
Developement logiciel: comment livrer  de la qualite ?Developement logiciel: comment livrer  de la qualite ?
Developement logiciel: comment livrer de la qualite ?Innobec
 

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

SPS Paris2015 SharePoint, Scrum, Agilité, Frugalité
SPS Paris2015   SharePoint, Scrum, Agilité, FrugalitéSPS Paris2015   SharePoint, Scrum, Agilité, Frugalité
SPS Paris2015 SharePoint, Scrum, Agilité, Frugalité
 
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
 
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
 
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
 
Meetup daikibo 1
Meetup daikibo 1Meetup daikibo 1
Meetup daikibo 1
 
[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
 
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é !
 
Agilite togo jug_final
Agilite togo jug_finalAgilite togo jug_final
Agilite togo jug_final
 
Comment nous avons amélioré notre produit avec ScrumBan
Comment nous avons amélioré notre produit avec ScrumBanComment nous avons amélioré notre produit avec ScrumBan
Comment nous avons amélioré notre produit avec ScrumBan
 
Initiation Scrum
Initiation ScrumInitiation Scrum
Initiation Scrum
 
Procima deck 7 May 2014
Procima deck 7 May 2014Procima deck 7 May 2014
Procima deck 7 May 2014
 
2011-05-12 Jean-René Rousseau Reddition de compte Agile
2011-05-12 Jean-René Rousseau Reddition de compte Agile2011-05-12 Jean-René Rousseau Reddition de compte Agile
2011-05-12 Jean-René Rousseau Reddition de compte Agile
 
Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)Développement d'un grand projet piloté par les tests (BDD)
Développement d'un grand projet piloté par les tests (BDD)
 
Plm lab btb12
Plm lab btb12Plm lab btb12
Plm lab btb12
 
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
 
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
 
[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...
 
Developement logiciel: comment livrer de la qualite ?
Developement logiciel: comment livrer  de la qualite ?Developement logiciel: comment livrer  de la qualite ?
Developement logiciel: comment livrer de la qualite ?
 

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. SharePoint Saturday Montréal 23 mai 2015 SharePoint Saturday Montréal Agilité et SharePoint: Incompatible? On gage que non! Franck Cornu Spécialiste SharePoint
  • 3. SharePoint Saturday Montréal http://thecollaborationcorner.com/ Réussir son analyse fonctionnelle SharePoint: Guide méthodologique @FranckCornu
  • 4. SharePoint Saturday Montréal Plan de la présentation • Partie 1: L’agilité et SharePoint • Partie 2: Démarrer un projet agile • Partie 3: Se donner les moyens d’être agile
  • 5.
  • 6. SharePoint Saturday Montréal 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… » Scrum guide
  • 7. SharePoint Saturday Montréal Comment nous l’appliquons BACKLOG GROOMING DU BACKLOG SPRINT BACKLOG USER STORY 5 USER STORY 3 USER STORY 8 2 semaines SPRINT REVIEW SPRINT BACKLOG DAILY SCRUM SPRINT PRODUCT BACKLOG GROOMING SPRINT PLANNING TESTS SPRINT REVIEW SPRINT RETRO
  • 8. SharePoint Saturday Montréal • 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. Idées reçues sur SharePoint et l’agile
  • 10.
  • 11. SharePoint Saturday Montréal Démarrer un projet agile Comprendre SCRUM Définir le pourquoi du projet, sa vision et son contexte Évaluer le besoin global Analyser les besoins et définir le backlog Définir le plan de livraison Estimer les coûts de développement Contractualiser Développer la solution de manière itérative Livrer les solutions selon le plan Livrer la solution
  • 12. SharePoint Saturday Montréal Un démarrage de projet • 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)
  • 13. SharePoint Saturday Montréal 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 » « Fixed bid » VS « Time & Materials » MAIS
  • 15. SharePoint Saturday Montréal 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! • Format « En tant que…je veux + action », pas de justification • Indépendant de toute technologie • 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 = Plan de tests • Toutes les stories sont soumises à la DoD (« Definition of Done ») et la DoR (« Definition of Ready ») • Une story est différente d’un cas d’utilisation (explication juste après)
  • 16. SharePoint Saturday Montréal Définir ses stories • Gérer le syndrome SharePoint • Important de distinguer: • Les tâches des stories • Les contraintes des stories • Le besoin du moyen • La fonctionnalité principale et ses éventuels « add-ons » INVEST  (Indépendant) • 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
  • 17. SharePoint Saturday Montréal Définir ses stories • Gérer le syndrome SharePoint • Orientés rôles et responsabilités : les profils ≠ groupes de sécurité SharePoint !  Raisonnez au niveau métier!
  • 18. SharePoint Saturday Montréal Schéma typique d’une user story Quid de la granularité?
  • 19. 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 Définir ses stories
  • 20. SharePoint Saturday Montréal 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
  • 21. SharePoint Saturday Montréal 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
  • 22. SharePoint Saturday Montréal L’estimation: passer de l’abstrait à la réalité • Les variables fondamentales de calcul des coûts pour un projet agile • La vélocité • 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. 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
  • 23.
  • 24. SharePoint Saturday Montréal 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
  • 25. SharePoint Saturday Montréal 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 DAILY SCRUM SPRINT PRODUCT TESTS SPRINT REVIEW SPRINT RETRO
  • 26. SharePoint Saturday Montréal 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) DÉMO › Intégration au serveur de build
  • 27. SharePoint Saturday Montréal 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
  • 28. Faire d’un projet SharePoint agile un succès OUI MAIS Nécessite une volonté à tous les niveaux 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 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 ;) En résumé…
  • 29.
  • 30. SharePint ! Ce soir à 18h Le Trèfle, 3971 Rue Ontario E

Notes de l'éditeur

  1. Notez bien que SCRUM n’est pas quelque chose qui s’applique à la lettre mais bel et bien un ensemble de pratiques et outils qui peuvent être adapté à de nombreuses réalités. Concrètement SCRUM c’est: Un cadre de travail qui peut être adapté bien au-delà d’un projet IT Un mode de livraison incrémental qui met l’accent sur la valeur d’affaires Un modèle de projection empirique laissant place aux changements de manière contrôlée et réfléchie.
  2. L’agilité n’est pas seulement une affaire de développeurs. Elle s’applique du tout début d’un projet jusqu’à sa livraison. C’est d’ailleurs un gros facteur de succès. Les échecs peuvent intervener à tout les niveaux, pas forcément que au niveau du développement.
  3. La particularité des projets SharePoint est que l’on sait déjà que cela va se faire en SharePoint donc nous avons tendance à prendre beaucoup de choses pour acquises. Votre pire ennemi: Un backlog porté par les TI ;)
  4. Qui? Idéalement des personnes connaissant le domaine d’affaires de la solution à développer. Pas de développeurs ni de personnes aux profils “technique” L’analyse est faite dans les phases de grooming pour les stories qui suivent et non lors du démarrage de projet! La particularité des projets SharePoint est que l’on sait déjà que cela va se faire en SharePoint
  5. Mode de contractualisation « Fixed bid » + projet agile = Fail assuré
  6. Le product owner ne devrait jamais être quelqu’un de TI…
  7. Tout est une story avant tout pour permettre la repartition du travail dans les sprints. Le plus difficile dans une story, c’est de savoir le moment ou elle se termine vraiment. On définit alors des critères d’acceptation qui sont un contrat entre le PO et l’équipe. Critères INVEST Independant = Correspond au découplage des fonctionnalités. Fortement lié avec la notion de « Valuable ». Avec SharePoint plus ou moins facile (Voir slide suivante pour la méthodologie de définition). Testable = Critères d’acceptation qui décrivent le plan de test Estimable/Small: Selon le pointage par l’équipe de développement.
  8. Tout est une story avant tout pour permettre la repartition du travail dans les sprints. Le plus difficile dans une story, c’est de savoir le moment ou elle se termine vraiment. On définit alors des critères d’acceptation qui sont un contrat entre le PO et l’équipe. Consistance des stories: évitez les stories pas vraiment finie qui seront vraiment complétées une fois une autre terminée (genre il manque le branding qui viendra à la fin…) Critères INVEST Independant = Correspond au découplage des fonctionnalités. Fortement lié avec la notion de « Valuable ». Avec SharePoint plus ou moins facile (Voir slide suivante pour la méthodologie de définition). Testable = Critères d’acceptation qui décrivent le plan de test Estimable/Small: Selon le pointage par l’équipe de développement.
  9. Tout est une story avant tout pour permettre la repartition du travail dans les sprints. Le plus difficile dans une story, c’est de savoir le moment ou elle se termine vraiment. On définit alors des critères d’acceptation qui sont un contrat entre le PO et l’équipe. Consistance des stories: évitez les stories pas vraiment finie qui seront vraiment complétées une fois une autre terminée (genre il manque le branding qui viendra à la fin…) Critères INVEST Independant = Correspond au découplage des fonctionnalités. Fortement lié avec la notion de « Valuable ». Avec SharePoint plus ou moins facile (Voir slide suivante pour la méthodologie de définition). Testable = Critères d’acceptation qui décrivent le plan de test Estimable/Small: Selon le pointage par l’équipe de développement.
  10. Avec SharePoint la difficulté est de découpler les fonctionnalités pour en faire des stories réalistes sans trop rentrer dans le technique… Quid de la granularité? Séparation des opérations de création et de visualisation (mise en valeur des flux d’information). Schéma représentant 90% des stories d’un projet informatique. Création = Types de contenus, Colonnes, Visualisation: Page Layouts, Master pages, Display Templates, ... Une story est différente d’un cas d’utilisation classique. Pour faire le parallèle avec le cas d’utilisation, celui-ci serait un agrégation de toutes les actions possibles sur une information. La story elle est une action parmi le autres.
  11. Exemple: Nous gérons le « Branding » en tant que contrainte sur les stories plutôt que de faire une story technique « Design ».
  12. Compliqué: un avion est compliqué dans sa finalité. En revanche, il peut êre subdivisé en une multitudes de sous systèms jusqu’au plus élémentaire (le boulon) Complexe: qui ne peut être subdivisé en plus petit système (exemple un être humain)
  13. Pas de formule magique pour la vélocité. Variable multi factorielle (compétences, nombre de développeurs, expérience, existant, etc…)
  14. Perdre le moins de temps possible dans considérations qui n’apportent pas de valeur au client: Mise en place des environnements de développement Correction de bugs liés au setup, etc…
  15. Les tests unitaires sont davantage utiles pour valider des algorithmes métier et valider une partie précise de la solution Les tests fonctionnels (boite noire) valide un comportement sans se soucier de la solution en elle-même. Dans le cas d’agile, les tests fonctionnels sont utilisés pour valider une story au complet via ses critères d’acceptations. Ils permettent également de s’assurer de la non régression entre les sprints!
  16. Les tests sont longs à éxécuter car ils interagissent directement avec le produit. Pour une meilleure isolation, il est impératif de reconstruire un nouvel environnement de tests “clean” à chaque fois (Site collection, site, etc).