Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare une entreprise Scribd logo
Agilité adaptée au BI/DW
Lunch & Learn Procima Experts
5 septembre 2013
PROCIMAEXPERTS.COM
Introduction
Objectifs et mise en contexte
1.  Partager pourquoi l'agile s'arrime bien au BI/DW et ce qu'on
espère obtenir en considérant un tel cadre
2.  Vous offrir une piste de réflexion en adressant les défis
auxquels sont confrontés les projets BI qui sont développés à
l'aide d'un cadre Agile. C'est un survol.
3.  La conférence vous offrira des outils afin de vous permettre
d'appliquer un cadre Agile à vos projets 

BI ou DW
4.  Nous assumons que vous êtes familiers avec Scrum, ses
bénéfices et le cadre de base (terminologie)
Complexité naturelle du BI = défis
1.  Besoins pas clairs au début
2.  Compréhension des besoins
se raffine avec temps
3.  Découverte des sources
4.  Découverte des liens entre les
sources
5.  Découverte de la capacité des
sources et des liens à remplir
les besoins
Beaucoup d'inconnu	

Tendance vers une approche plus
empirique
Nos objectifs avec l'agilité
1.  Le temps au marché
2.  Meilleure qualité
3.  Plus grande satisfaction de la clientèle
4.  Estimation plus précise et fiable
Mais Scrum adapté
au BI n'est pas
facile
Conférence
Planifica/on  des  
Tâches
Développement
Démo
Rétrospec/ve
Modules candidats à être mis en production
Sprint
15 jours
Carnet de commandes
(Besoins du projet)
Les 7 piliers permettant l’agilité
Ces éléments sont
chacun clés afin
d’appliquer Scrum/XP à

un projet DW/BI

avec succès
•  La technologie
•  L’assurance qualité
•  La décomposition de la livraison
•  L’estimation
•  L’adaptation des sprints
•  L’équipe
•  L’interfacte à
l’organisation
Pilier #1
Composition d'équipe et dynamique
Rôles sur une équipe Scrum DW/BI
– Product Owner: à lui le résultat, il décide
– Scrum Master: à lui le processus, pas un PM
– Architecte de projet: gère les besoins et les solutions
– Analyste/Modélisateur de données

Définie tables, profilage, définie modules ETL
– Développeurs: front-end & back-end
– Ingénieur de tests: organisation des tests, automatisation,
gestion des jeux de test
6-9 joueurs
Partir une équipe: degré de maturité
Sprints requis
 Étape dans cycle de maturité

Vite
 Moins vite
 0: Scrum générique
 1
 2
 1: Livraison en pipelines
 1
 2
 2: Estimés fondés sur la taille & plan de
publication (vélocité)
2
 4
 3: Développement mené par les tests
 2
 4
 4: Modèle de référence
 3
 6
5: Gestion des besoins & tests
automatisés
3
 6
Total des sprints
 12
 24
Temps écoulé

24-36
semaines
48-72
semaines
Pilier #2
Adapter le concept du sprint au BI
Les sprints non standards
–  Itérations -1 et 0 permettent :
•  le démarrage du projet et mise en place de la plateforme
•  l'architecture de la solution
•  la modélisation conceptuelle des données
•  visez le 80/20 pour un démarrage rapide des projets
–  Sprint d'architecture
•  permet de travailler sur une architecture réutilisable et de haute qualité
–  Sprint de recherche (Spike)
•  permet de suspendre l'approche time-box pour travailler à la recherche
de solution d'un problème majeur
–  Sprint d'implantation
•  permet de mettre en production une application
Le Pipeline : adaptation Scrum au BI
–  Donne à chaque
métier un sprint
complet pour
exécuter son
travail
–  Les rencontres
quotidiennes et de
planification sont
nécessaires pour
assurer la
continuité de la
livraison d'un
package
Itera/on
 Solu/on  
Architect
Data  Modeler  
/  Sys  Analyst
Coders
 Sys  Test
Solu/on  Reqts
 Technical  Reqts
 Poten/ally  Shippable
 Shippable  Code
-­‐1
0
1
2
3
4
A
B
B
B
B
A
A
A
C
C
C
C
D
D
D
Pilier #3
Meilleures estimations pour ne pas promettre la lune
Le problème avec l'estimation
–  Distribution des estimés traditionnels
–  Pour avoir 95% de certitude, on doit multiplier les estimés des
développeurs par 4

(Étude de 400 projets chez Haliburton)
1x
 2x
 3x
 4x
Ratio des estimés réels
95% degré de confiance
Moyenne
Fréquence
Estimation fondée sur la taille
–  Agile utilise une méthode en
pair fondée sur la taille
comparative
–  L'estimation de ce qui peut
être

livré dans un sprint ne se fait
pas en heures
–  Le cerveau humain compare
très bien
–  Facilité à comparer un
nouveau

module à un déjà livré
Qu'est-ce qui est plus facile à
soulever?
Formes différentes, mais intuitivement nous
savons que la pomme et la banane pèsent
environ la même chose
Carte de base d'estimation (CBE)
–  Consensus d'équipe sur tâches
requises pour chaque objet DW/BI
majeur
–  Estimés pro forma
–  Heures d'efforts
–  Utilisé comme guide
–  Évite de repenser chaque fois
–  Permets la conception et
l'estimation par exception
–  Revisité lors des rétrospectives &
peut-être ajusté
 
 Type 2 Slowly Changing
Dimension
•  High-level design conference 
2hr
•  Low-Level design conference 
3hr
•  Finalize table DDL 
 
3hr
•  Create table & indexes
 
1hr
•  Create view for incremental source
1hr
•  Create incremental load mapping 

-  Row-level meta data columns

6hr
-  Straight through columns 
3hr 
-  Derived columns 
 
?
•  Create view for initial source 
1hr
•  Adapt for initial load mapping 
6hr
•  Create session 
 
3hr
•  Add to workflow 
 
2hr
•  Move to nightly build folder 
2hr
•  Create parm setting script 
2hr
•  Update tar ball & version control 
1hr
•  Code walk through 
 
3hr
•  Document per dept stds 

3hr
Pilier #4
La décomposition de la livraison
50% de ce que les utisateurs veulent d'un
entrepôt de données est l'accès simple aux
données. Simplifiez donc vos livraisons

Comment découper la portée
Comment découper la portée
Pilier #5
L'assurance qualité dans le cadre agile BI
Deux éléments souhaitable
–  Tests automatisés
•  Découverte immédiate d'erreurs de code
•  Plus facile de cibler les erreurs
•  Définition implicite de "complété" (pas d'extras)
•  Démontre au client que le DW est correct
•  Permets de réaliser des tests quotidiennement
•  Moins d'erreurs opérationnelles
–  Référentiel de jeux de données de test
•  On doit vraiment penser aux besoins pour créer ceci
•  Permets de rouvrir le code pour maintenance
Maintenir la vitesse des développeurs
–  Développeurs doivent travailler indépendamment
•  leur procurer un sandbox
–  Ont besoin de tests unitaires rapides et utiles
•  gestion de petits jeux de données statiques
–  Doivent répéter les tests unitaires souvent
•  gestion des jeux de données "attendus" pour comparaison
–  Doivent détecter les modules problèmes rapidement
•  validations automatisées
•  build chaque soir et exécution des chargements staging-marts
–  Doivent simuler les deltas
•  plusieurs échantillons de temps dans les jeux de données
Toute l'équipe a un rôle à jouer
–  Architecte de projet
•  Requêtes-utilisateur pour chaque étoile, sujet
•  Scripts de démo
•  Récupère les tests d'acceptation formels
–  Analyste
•  Cas de tests unitaires source-cible
•  Valide les métadonnées au niveau des rangées
–  Modélisateur de données
•  Cas de tests d'intégration à partir du modèle
•   Assure la cohérence inter-table
–  Ingénieur de Test
•  Compile tous les tests, organise
•  Assure les exécutions tous les soirs
Pilier #6
La technologie
Deux points importants
–  Un environnement technologique complexe freine l'agilité
•  Viser à simplifier
•  Viser à standardiser
–  S'outiller pour mieux tirer avantage de l'agilité
•  Automatisation des tests (Cruise Control, Finesse + DbFit)
•  Communication + collaboration
Pilier #7
Interface à l'organisation
Gestion des besoins agile BI 80/20
Phase initiation
Concept du
système
(Analyste Aff.)
Demande
client
(Analyste Aff.)
Document de
Vision 

(Architecte
projet)
Phase 

de Création
Cas  d’u/l.  de  solu/on  
(Architecte  Projet)
Phase
d’Élaboration
Cas  d’u/l.  applica/f  
(Analyste  BI/TI)
“Comment
nous allons
créer de la
valeur”
“Voici ce qui
ne marche pas
et comment
nous ferions
pour y
remédier”
“Voici les
problèmes que
nous
comprenons et
une ébauche de
solution ”
“Voici un schéma en étoile
que nous allons construire
pour vous”
“Voici un module ETL que
nous allons construire pour
eux”
Besoins
d’affaires
Besoins
fonctionnels
Spécifications
TI
Sprint -1
 Débute avec sprint 0
S'intégrer à l'organisation
Phases typiques

Réponse Agile DW
80/20, 25% du temps

Phase gérée en

Identification ou
Bonne idée

N/A

Traditionnel accéléré

Étude préliminaire ou
faisabilité

Concept & Demande

(2 page)

Traditionnel accéléré

Architecture ou Conception

Document de vision
(10-20 pages)

Sprint -1

Traditionnel accéléré

Réalisation

Cas utilisation solutions

Cas utilisation applicatifs

Scrum

Gouvernance traditionnelle

Transition production

N/A

Traditionnel
Livrables: détails
Concept  du  
système
•  Jus/fica/on
•  Impacts  sur  
l’expérience  client
•  Impacts  sur  les  
secteurs  visés
•  Mesures  de  succès
•  Budgets,  /ming,  
champions
•  Demandes  client
•  Problèmes
•  Contournements  
actuels
•  Votre  vision
•  U/lisateurs
•  Autres  applica/ons  
avec  lesquelles  
u/lisateurs  
interagissent
Vision
•  Énoncés  de  
problèmes
•  Fonc/ons  et  
bénéfices
•  Diagrammes  de  
contexte  (emphase  
données  sources)
•  Modèle  
conceptuel  des  
données
•  Architecture  haut  -­‐
niveau
Cas  U/lisa/on  
Solu/on
•  Descrip/on
•  Acteurs/personas
•  Détails  des  sources
•  Tables  de  faits
•  Dimensions
•  Sous-­‐ensemble  
modèle  conceptuel
•  Requêtes  typiques  
à  répondre
Cas  U/lisa/on  
Applica/f
•  CUS  +
•  Data  flows  (le  
découpage  ETL)
•  Déclencheurs
•  Précondi/ons
•  Ini/al  load
•  Ges/on  erreurs
•  Valeurs  défauts
•  Restart
•  No/fica/ons
Sommaire
Interface à l'organisation
Sommaire des piliers
•  La technologie 
 
 

•  L’assurance qualité 
 
 

•  La décomposition de la livraison 

•  L’estimation 
 

•  L’adaptation des sprints 

•  L’équipe 
 
 

•  L’interfacte à l’organisation 

Doit aider et non freiner l’agilité
Automatisation et jeux de tests
Simplifier portée, découper
livrable

Focus sur valeur au client
Fondée sur la taille, CBE
Sprints non-standards, pipeliine
La maturité agile ne sera pas
immédiate
Scrum s’applique à la réalisation,
gestion des besoins 80/20

Contenu connexe

Lunch learn 5 sep2013

  • 1. Agilité adaptée au BI/DW Lunch & Learn Procima Experts 5 septembre 2013 PROCIMAEXPERTS.COM
  • 3. Objectifs et mise en contexte 1.  Partager pourquoi l'agile s'arrime bien au BI/DW et ce qu'on espère obtenir en considérant un tel cadre 2.  Vous offrir une piste de réflexion en adressant les défis auxquels sont confrontés les projets BI qui sont développés à l'aide d'un cadre Agile. C'est un survol. 3.  La conférence vous offrira des outils afin de vous permettre d'appliquer un cadre Agile à vos projets 
 BI ou DW 4.  Nous assumons que vous êtes familiers avec Scrum, ses bénéfices et le cadre de base (terminologie)
  • 4. Complexité naturelle du BI = défis 1.  Besoins pas clairs au début 2.  Compréhension des besoins se raffine avec temps 3.  Découverte des sources 4.  Découverte des liens entre les sources 5.  Découverte de la capacité des sources et des liens à remplir les besoins Beaucoup d'inconnu Tendance vers une approche plus empirique
  • 5. Nos objectifs avec l'agilité 1.  Le temps au marché 2.  Meilleure qualité 3.  Plus grande satisfaction de la clientèle 4.  Estimation plus précise et fiable Mais Scrum adapté au BI n'est pas facile Conférence Planifica/on  des   Tâches Développement Démo Rétrospec/ve Modules candidats à être mis en production Sprint 15 jours Carnet de commandes (Besoins du projet)
  • 6. Les 7 piliers permettant l’agilité Ces éléments sont chacun clés afin d’appliquer Scrum/XP à
 un projet DW/BI
 avec succès •  La technologie •  L’assurance qualité •  La décomposition de la livraison •  L’estimation •  L’adaptation des sprints •  L’équipe •  L’interfacte à l’organisation
  • 8. Rôles sur une équipe Scrum DW/BI – Product Owner: à lui le résultat, il décide – Scrum Master: à lui le processus, pas un PM – Architecte de projet: gère les besoins et les solutions – Analyste/Modélisateur de données
 Définie tables, profilage, définie modules ETL – Développeurs: front-end & back-end – Ingénieur de tests: organisation des tests, automatisation, gestion des jeux de test 6-9 joueurs
  • 9. Partir une équipe: degré de maturité Sprints requis  Étape dans cycle de maturité Vite Moins vite  0: Scrum générique 1 2  1: Livraison en pipelines 1 2  2: Estimés fondés sur la taille & plan de publication (vélocité) 2 4  3: Développement mené par les tests 2 4  4: Modèle de référence 3 6 5: Gestion des besoins & tests automatisés 3 6 Total des sprints 12 24 Temps écoulé 24-36 semaines 48-72 semaines
  • 10. Pilier #2 Adapter le concept du sprint au BI
  • 11. Les sprints non standards –  Itérations -1 et 0 permettent : •  le démarrage du projet et mise en place de la plateforme •  l'architecture de la solution •  la modélisation conceptuelle des données •  visez le 80/20 pour un démarrage rapide des projets –  Sprint d'architecture •  permet de travailler sur une architecture réutilisable et de haute qualité –  Sprint de recherche (Spike) •  permet de suspendre l'approche time-box pour travailler à la recherche de solution d'un problème majeur –  Sprint d'implantation •  permet de mettre en production une application
  • 12. Le Pipeline : adaptation Scrum au BI –  Donne à chaque métier un sprint complet pour exécuter son travail –  Les rencontres quotidiennes et de planification sont nécessaires pour assurer la continuité de la livraison d'un package Itera/on Solu/on   Architect Data  Modeler   /  Sys  Analyst Coders Sys  Test Solu/on  Reqts Technical  Reqts Poten/ally  Shippable Shippable  Code -­‐1 0 1 2 3 4 A B B B B A A A C C C C D D D
  • 14. Le problème avec l'estimation –  Distribution des estimés traditionnels –  Pour avoir 95% de certitude, on doit multiplier les estimés des développeurs par 4
 (Étude de 400 projets chez Haliburton) 1x 2x 3x 4x Ratio des estimés réels 95% degré de confiance Moyenne Fréquence
  • 15. Estimation fondée sur la taille –  Agile utilise une méthode en pair fondée sur la taille comparative –  L'estimation de ce qui peut être
 livré dans un sprint ne se fait pas en heures –  Le cerveau humain compare très bien –  Facilité à comparer un nouveau
 module à un déjà livré Qu'est-ce qui est plus facile à soulever? Formes différentes, mais intuitivement nous savons que la pomme et la banane pèsent environ la même chose
  • 16. Carte de base d'estimation (CBE) –  Consensus d'équipe sur tâches requises pour chaque objet DW/BI majeur –  Estimés pro forma –  Heures d'efforts –  Utilisé comme guide –  Évite de repenser chaque fois –  Permets la conception et l'estimation par exception –  Revisité lors des rétrospectives & peut-être ajusté   Type 2 Slowly Changing Dimension •  High-level design conference 2hr •  Low-Level design conference 3hr •  Finalize table DDL 3hr •  Create table & indexes 1hr •  Create view for incremental source 1hr •  Create incremental load mapping -  Row-level meta data columns 6hr -  Straight through columns 3hr -  Derived columns ? •  Create view for initial source 1hr •  Adapt for initial load mapping 6hr •  Create session 3hr •  Add to workflow 2hr •  Move to nightly build folder 2hr •  Create parm setting script 2hr •  Update tar ball & version control 1hr •  Code walk through 3hr •  Document per dept stds 3hr
  • 17. Pilier #4 La décomposition de la livraison
  • 18. 50% de ce que les utisateurs veulent d'un entrepôt de données est l'accès simple aux données. Simplifiez donc vos livraisons

  • 21. Pilier #5 L'assurance qualité dans le cadre agile BI
  • 22. Deux éléments souhaitable –  Tests automatisés •  Découverte immédiate d'erreurs de code •  Plus facile de cibler les erreurs •  Définition implicite de "complété" (pas d'extras) •  Démontre au client que le DW est correct •  Permets de réaliser des tests quotidiennement •  Moins d'erreurs opérationnelles –  Référentiel de jeux de données de test •  On doit vraiment penser aux besoins pour créer ceci •  Permets de rouvrir le code pour maintenance
  • 23. Maintenir la vitesse des développeurs –  Développeurs doivent travailler indépendamment •  leur procurer un sandbox –  Ont besoin de tests unitaires rapides et utiles •  gestion de petits jeux de données statiques –  Doivent répéter les tests unitaires souvent •  gestion des jeux de données "attendus" pour comparaison –  Doivent détecter les modules problèmes rapidement •  validations automatisées •  build chaque soir et exécution des chargements staging-marts –  Doivent simuler les deltas •  plusieurs échantillons de temps dans les jeux de données
  • 24. Toute l'équipe a un rôle à jouer –  Architecte de projet •  Requêtes-utilisateur pour chaque étoile, sujet •  Scripts de démo •  Récupère les tests d'acceptation formels –  Analyste •  Cas de tests unitaires source-cible •  Valide les métadonnées au niveau des rangées –  Modélisateur de données •  Cas de tests d'intégration à partir du modèle •   Assure la cohérence inter-table –  Ingénieur de Test •  Compile tous les tests, organise •  Assure les exécutions tous les soirs
  • 26. Deux points importants –  Un environnement technologique complexe freine l'agilité •  Viser à simplifier •  Viser à standardiser –  S'outiller pour mieux tirer avantage de l'agilité •  Automatisation des tests (Cruise Control, Finesse + DbFit) •  Communication + collaboration
  • 27. Pilier #7 Interface à l'organisation
  • 28. Gestion des besoins agile BI 80/20 Phase initiation Concept du système (Analyste Aff.) Demande client (Analyste Aff.) Document de Vision 
 (Architecte projet) Phase 
 de Création Cas  d’u/l.  de  solu/on   (Architecte  Projet) Phase d’Élaboration Cas  d’u/l.  applica/f   (Analyste  BI/TI) “Comment nous allons créer de la valeur” “Voici ce qui ne marche pas et comment nous ferions pour y remédier” “Voici les problèmes que nous comprenons et une ébauche de solution ” “Voici un schéma en étoile que nous allons construire pour vous” “Voici un module ETL que nous allons construire pour eux” Besoins d’affaires Besoins fonctionnels Spécifications TI Sprint -1 Débute avec sprint 0
  • 29. S'intégrer à l'organisation Phases typiques Réponse Agile DW 80/20, 25% du temps Phase gérée en Identification ou Bonne idée N/A Traditionnel accéléré Étude préliminaire ou faisabilité Concept & Demande
 (2 page) Traditionnel accéléré Architecture ou Conception Document de vision (10-20 pages)
 Sprint -1 Traditionnel accéléré Réalisation Cas utilisation solutions
 Cas utilisation applicatifs Scrum
 Gouvernance traditionnelle Transition production N/A Traditionnel
  • 30. Livrables: détails Concept  du   système •  Jus/fica/on •  Impacts  sur   l’expérience  client •  Impacts  sur  les   secteurs  visés •  Mesures  de  succès •  Budgets,  /ming,   champions •  Demandes  client •  Problèmes •  Contournements   actuels •  Votre  vision •  U/lisateurs •  Autres  applica/ons   avec  lesquelles   u/lisateurs   interagissent Vision •  Énoncés  de   problèmes •  Fonc/ons  et   bénéfices •  Diagrammes  de   contexte  (emphase   données  sources) •  Modèle   conceptuel  des   données •  Architecture  haut  -­‐ niveau Cas  U/lisa/on   Solu/on •  Descrip/on •  Acteurs/personas •  Détails  des  sources •  Tables  de  faits •  Dimensions •  Sous-­‐ensemble   modèle  conceptuel •  Requêtes  typiques   à  répondre Cas  U/lisa/on   Applica/f •  CUS  + •  Data  flows  (le   découpage  ETL) •  Déclencheurs •  Précondi/ons •  Ini/al  load •  Ges/on  erreurs •  Valeurs  défauts •  Restart •  No/fica/ons
  • 32. Sommaire des piliers •  La technologie •  L’assurance qualité •  La décomposition de la livraison •  L’estimation •  L’adaptation des sprints •  L’équipe •  L’interfacte à l’organisation Doit aider et non freiner l’agilité Automatisation et jeux de tests Simplifier portée, découper livrable
 Focus sur valeur au client Fondée sur la taille, CBE Sprints non-standards, pipeliine La maturité agile ne sera pas immédiate Scrum s’applique à la réalisation, gestion des besoins 80/20