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...
WWW.COLLAB365.EVENTS
Plan de la session
• Partie 1: L’agilité et SharePoint
• Partie 2: Démarrer un projet agile
• Partie ...
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
change...
WWW.COLLAB365.EVENTS
Comment nous l’appliquons
BACKLOG
BACKLOG
GROOMING
SPRINT
PLANNING
SPRINT
BACKLOG
DAILY
SCRUM
SPRINT
...
WWW.COLLAB365.EVENTS
Idées reçues sur SharePoint et l’agile
• SCRUM et l’agilité, ce sont des trucs de développeurs ça, no...
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éveloppemen...
WWW.COLLAB365.EVENTS
Exemple de démarrage de projet agile
• Format
– 2 à 3 jours consécutifs en mode « War Room » (5 à 6 p...
WWW.COLLAB365.EVENTS
Quid de la contractualisation agile
• Dans la théorie, le modèle de contractualisation d’un projet ag...
WWW.COLLAB365.EVENTS
Recette d’un bon backlog
• Un backlog comprenant:
– Des rôles ou profils (qui va utiliser l’applicati...
WWW.COLLAB365.EVENTS
Définir ses stories
• Quelques règles générales
– Tout est une story! (technique, documentation, …) =...
WWW.COLLAB365.EVENTS
Définir ses stories
• Gérer le syndrome SharePoint
– Important de distinguer:
• Les tâches des storie...
WWW.COLLAB365.EVENTS
Définir ses stories
• Orientés rôles et responsabilités : les
profils ≠ groupes de sécurité SharePoin...
WWW.COLLAB365.EVENTS
Un exemple de méthode
Story ≠Cas d’utilisation !
Actions fondamentales (relation
de précédence inévit...
WWW.COLLAB365.EVENTS
Définir ses stories
• Comment démarrer?
– Énumérer les actions sous un format libre (existantes et/ou...
WWW.COLLAB365.EVENTS
La gestion des contraintes
• Une contrainte est une particularité à prendre en compte lors de la réal...
WWW.COLLAB365.EVENTS
Estimer une user story
Quel Format?
En points et non en
heures ou jours
Ordre de complexité
relative ...
WWW.COLLAB365.EVENTS
L’estimation: passer de l’abstrait à la
réalité
• Les variables fondamentales de calcul du coût de dé...
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 ...
WWW.COLLAB365.EVENTS
Les prérequis à l’agilité et SharePoint
• La gestion des déploiements
– Objectif: livrer une solution...
WWW.COLLAB365.EVENTS
Les prérequis à l’agilité et SharePoint
• Les tests avec SharePoint
Quoi tester?
• Tests unitaires: F...
WWW.COLLAB365.EVENTS
Les prérequis à l’agilité et SharePoint
• De manière générale, les tests avec SharePoint, c’est…
– Co...
WWW.COLLAB365.EVENTS
En résumé…
Faire d’un projet SharePoint
agile un succès
OUI MAIS
• Nécessite une volonté à tous les n...
WWW.COLLAB365.EVENTS
Stay tuned for more great sessions …
Merci!
Prochain SlideShare
Chargement dans…5
×

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

2 238 vues

Publié le

Mise en place de projets SharePoint en agile

Publié dans : Logiciels
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
2 238
Sur SlideShare
0
Issues des intégrations
0
Intégrations
1 110
Actions
Partages
0
Téléchargements
12
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

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

  1. 1. Online Conference June 17th and 18th 2015 WWW.COLLAB365.EVENTS Agilité et SharePoint: Incompatible? On gage que non!
  2. 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. 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
  4. 4. WWW.COLLAB365.EVENTS L’agilité et SharePoint Idées reçues Processus
  5. 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… »
  6. 6. 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
  7. 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.
  8. 8. WWW.COLLAB365.EVENTS L’agilité, d’abord une philosophie
  9. 9. WWW.COLLAB365.EVENTS Démarrer un projet agile La phase de démarrage L'art de la story Estimation
  10. 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. 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. 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. 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. 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. 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. 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. 17. WWW.COLLAB365.EVENTS Un exemple de méthode Story ≠Cas d’utilisation ! Actions fondamentales (relation de précédence inévitable)
  18. 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. 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. 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. 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. 22. WWW.COLLAB365.EVENTS Se donner les moyens d’être agile Setup Déploiements Tests
  23. 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. 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. 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. 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. 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. 28. WWW.COLLAB365.EVENTS Stay tuned for more great sessions … Merci!

×