Vous êtes sur la page 1sur 46

Entrepôts de données et intelligence d'affaires

Le cycle de vie d'un projet en intelligence d'affaires

1
Question
• Quelle est la meilleure approche pour developper une
solution de BI ?
Approche top-down vs bottom-up
Caractéristique Top-down (B. Inmon) Bottom-up (R. Kimball)
Objectifs
Livrer une solution Livrer une solution permettant aux
technologiquement saine basée sur usager d'obtenir facilement et
des methodes et technologies rapidement des reponses a leurs
eprouvées des bases de données requites d'analyse
Complexity de la methode Plutot complexe Plutot simple
Importante Peu importante
Importance de la conception
physique
Orientation du modele Oriente données Orienté processus d'affaires
Accessibility des Faible Forte
utilisateurs
finaux
Outils de conception
Traditionnels (diagrammes entite- Modelisation dimensionnelle
relation et flot de donnees) (schema en etoile)
Auditoire principal Professionnels en Tl Utilisateurs finaux

9
Le cycle de vie d'une solution Bl
Diagramme de flux de travail (DW Lifecycle, Kimball)

• Note: dependance horizontale et verticale entre les activites;

Departement de genie logiciel et des Tl MTI820 Hiver 2011 - © S. Chafki, C. Desrosiers 11


Planification
- Fait interactivement avec la definition des besoins;
- Comprend:
• Definition de la portee;
• Recrutement;

12
Question
Comment determine-t-on la portee d'un projet de BI?

13
La portee preliminaire du projet
• Depend de:
— Le nombre de sujets d'analyse vises (ex: fonctions d'affaires,
regions, etc.)
— Le nombre et le type de sources de donnees brutes;
— L'approche employee pour charger les donnees des sources
dans l'entrepot de donnees;
— Les regles d'affaires appliquees aux donnees sources lors de la
validation;
— Le contenu, le niveau de detail, et l'historique des donnees
sources;
— Les outils frontaux (front-end) d'intelligence d'affaires
employees pour l'analyse;
— La complexite architecturelle de l'environnement.
La portee preliminaire du projet
• Directives pour determiner la portee:
- Definie en fonction de besoins specifiques;
- Doit apporter une valeur d'affaires suffisante a I'entreprise,
tout en restant faisable;
- Doit etre fait conjointement avec les representants
d'affaires et ceux des TI.

• Document de portee du projet:


- Information de base sur le projet;
- Les inclusions et exclusions de la portee;
- Les criteres de succes;
- Les risques et strategies de gestion de risque.

15
Exemple de document de portee
Nom du projet
Information de base
BigCo desire maximiser les revenus provenant de ses activites de promotion. Presentement, elle depense
environ $40 million annuellement en publicite. L'objectif est de reduire les depenses reliees aux activites
promotionnelle de 25% d'ici trois ans.
La prochaine phase du projet de Bl portera sur ^information promotionnelle, complementant le projet
precedent consacre aux donnees de vente. Les equipes de vente et de marketing auront acces a la fois aux
donnees de vente et de promotion, permettant ainsi le developpement de strategic promotionnelles plus
efficaces.
Portee du projet:
• Trois annees de donnees historiques sur les activites internes de promotion;
• Maximum de 25 utilisateurs initialement, avec le plan d'augmenter la capacite a 150 utilisateurs;
• architecture technique sera basee sur...
Exclusions:
• Donnees externes, telles que les information sur les ventes et promotions des principaux competiteurs;
• Support pour des programmes promotionnels non-domestiques;

Criteres de succes:
• Une seule source d'information employee pour les analyses reliees aux activites de promotion;
• Reduction du temps requis pour effectuer une analyse reliees aux activites de promotion;

Risques et strategies de gestion des risques:

Departement de genie logiciel et des Tl MTI820 Hiver 2011 - © S. Chafki, C. Desrosiers 16


Question
• Comment justifie-t-on un projet de TI a la direction et aux
investisseurs de l'entreprise?
• Comment peut-on démontrer la valeur du projet a ceux-ci?
Justification du projet
• Retour sur I'investissement (ROI):
ROI = Benefices - Depenses.

• Investissements et coUts:
- Achat/mise a niveau de composantes materielles:
• Ex: serveurs, reseau, HD, etc.

- Achat/mise a niveau de composantes logicielles:


• Ex: ETL, DBMS, analyse multidimensionnelle, etc.

- Embauches internes:
• Ex: analyste de donnees, DBA, directeur de projet, etc.

- Ressources externes:
• Ex: consultants, support technique de produits achetes, etc.

- Couts de maintenance:
• Ex: frais de maintenance, support et croissance.

18
Justification du projet
• Benefices ($):
- Augmentation des revenus de vente;
- Meilleur taux de reponse aux envois publicitaires;
- Elimination des produits a faible marge de profit;
- Reduction des depenses en marketing;
- Diminution du taux d'attrition;
- Reduction des cas de fraude;
- etc.

• Couts et benefices estimes au stade de planification.


Exemple de ROI
Qui:
- Compagnie IBM, complexe de production de semi-
conducteurs dans l'etat de New-York;
• Defis:
- Satisfaire les besoins en rapports (reporting) des equipes
de production et d'ingenierie;
• Solution:
- SAS Business Intelligence;
- 600 utilisateurs;
- 100 sources;
- 100 Gb;

source: Nucleus Research Inc., 2007


Exemple de ROI
• Couts et benefices:
Direct
0%

Indirect
100%

TOTAL: $12,931,800

• Benefices principaux:
- Reduction du temps de creation de rapports;
- Amelioration de la qualite et la visibilite des donnees;
- Embauche d'employe en TI evitee;

• ROI: 386% (apres 3 ans)


source: Nucleus Research Inc., 2007
Equipe cTun projet de Bl
• Analogie avec une equipe de hockey:

Proprietaire,
President Sponsors

Directeur general Directeur de projet

EntraTneur chef, Chef de projet


EntraTneur adjoint

Analyste d'affaires,
Gardien de but, Architecte de donnees,
Centres, Analyste en QA,
Ailiers, Administrateur de BD,
Defenseurs Architecte/developpeur ETL,
Architecte/developpeur d'applications Bl

Specialiste technique,
Specialiste en securite,
Unites speciales Specialiste en forage de donnees,
Charge des tests,
Educateur

Partisans Utilisateurs

22
Equipe d'un projet de BI
• Sponsor:
- Membre de la haute direction;
- Approuve les budgets;
- Defend le projet en cas de besoin.
• Directeur de projet:
- Sert de liaison entre les sponsors et les autres membres de
I'equipe;
- Responsable du leadership et de la direction du projet;
- Influence les decisions strategiques et architecturelles.

23
Equipe d'un projet de BI
• Chef de projet:
- Gere le projet au jour le jour:
• Coordination des ressources et des activites;
• Planification des taches et des budgets;
• Suivi de I'etat et de I'avancement du projet.
- Doit pouvoir reagir rapidement aux problemes rencontres,
avant que ceux-ci s'intensifient.

• Analyste d'affaires:
- Gere la collecte et la definition des besoins;
- Assure la juste representation des besoins dans les autres
etapes du projet;
- Doit tres bien connaitre les processus d'affaires de l'entreprise.
Equipe d'un projet de BI
• Analyste en QA / intendant des donnees:
- Responsable d'etablir une vue consolidee des definitions
et regies des donnees, a I'echelle de I'entreprise;
- S'assure que les donnees inserees dans l'entrepot sont
valides et completes;
- Peut egalement etre responsable de verifier l'integrite des
applications de BI.
• Architecte de donnees:
- En charge de definir une architecture facilitant la
reutilisabilite, l'integration et l'optimisation des donnees;
- Congoit et developpe le modele dimensionnel des
donnees;
- Participe parfois a la collecte des besoins.

25
Equipe d'un projet de BI
• Administrateur de BD (DBA):
- Responsable de convertir le modele des donnees en
structures physiques de l'entrepot (tables, colonnes, etc.);
- Choisit des parametres physiques maximisant la
performance de l'entrepot (ex: disposition des disques,
partitionnement, indexes, etc.)
- Gere l'integrite, la disponibilite et la performance de
l'entrepot au quotidien.
• Architecte/developpeur ETL:
- Responsable de la conception et developpement du
systeme ETL;
- Architecte est souvent implique dans la collecte des
besoins;

Departement de genie logiciel et des TI MTI820 Hiver 2011 - © S. Chafki, C. Desrosiers 26


Equipe d'un projet de BI
• Architecte/developpeur d'application de BI:
- En charge de concevoir la couche d'interaction aux
donnees;
- Congoit et developpe les applications de BI, souvent a
I'aide de produits commerciaux;
- Configure la couche semantique des outils de BI.
• Note:
- Un projet de BI comporte normalement tous ces roles;
- Grand projets: plusieurs personnes peuvent avoir le meme
role;
- Petits projets: une personne peut jouer plusieurs roles.

Departement de genie logiciel et des TI MTI820 Hiver 2011 - © S. Chafki, C. Desrosiers 27


Definition des besoins
• Etape critique a la reussite du projet;
• Se concentre sur les utilisateurs, et non les donnees;
• Identifie les besoins les plus prioritaires;
• Comprend:
- Entrevue des utilisateurs;

28
Definition des besoins
• Processus d'analyse (Kimball):

29
Moderation des donnees
• Se base sur le document de description des besoins;

• Processus hautement iteratif et dynamique;

• Vise la simplicity et I'efficacite;

• Comprend:
— Identification desfaits et leur granularite;
— Identification desdimensionset leur hierarchie;
— Strategies: denormalisation, gestion des changements, etc.

30
Moderation des donnees

Processus/ Date Clien Prod Plan Cana LigneRelai Repre Emp Appel
Dimension t uit d'utilis tel. loye servic
ation l de senta e Matrice en bus

vente nt
de de donnees

vente
Facturation client X X X X X X

X X X X X X X
Gestion du trafic
d'appels

Inventaire X X X
X X X X X X X
Service a la
clientele Dim : DateFacturation

idDateFacture (PK)

Dim : Client Faits : Facturation


dateFacture

idDateFacture (FK)
mois
idClient (PK)

idLigne (FK)
annee
noClient

idClient (FK)

nomClient

idVendeur (FK)

ville
Dim : LigneTel
idPlan (FK)

province

idLigne (PK)
noFacture (DD)

codePostal

noLigne
nbAppels

datePremierService

codeRegional
total Minutes

dateActivation
minutesLongueDistance

idPlan (PK)

minutesSoir
Dim: RepresentantVente

codePlan

minutesWeekend
idVendeur (PK)

abbreviationPlan

fraisService
noVendeur

descriptionPlan

fraisLongueDistance
nomVendeur
Schema en etoile
minutesSemaine

taxes
idDepartement

minutesSoir
(magasin de donnees)
total
nomDepartement

minutesWeekend

directeurDepartement

31
Conception physique des donnees

• Utilise le modele de donnees;


• Comprend:
— Detail du schema relationnel (ex: cles, types, contraintes, etc.);
— Optimisation de la performance (ex: indexes, partitionnement,
agregation, etc.);
— Gestion de la securite.

32
Conception physique des donnees
Requete analytique
SELECT SUM(Inventaire.quantite)
FROM Inventaire, Produit, Fournisseur
WHERE Inventaire.idProduit = Produit.id AND
Inventare.idFournisseur = Fournisseur.id AND
Produit.categorie='moteur_mazda AND 1

Fournisseur.province= QC' 1

Strategie d'optimisation

(index jointure etoile)

CREATE BITMAP INDEX indexJointure ON

Inventaire(Fournisseur.province, Produit.categorie)

FROM Inventaire, Fournisseur, Produit

WHERE Inventaire.idProduit = Produit.id AND

Inventare.idFournisseur = Fournisseur.id

33
Conception de ('architecture technique

• Definit la vision d'ensemble de la solution et Integration des


technologies du projet;
• Se concentre sur les besoins, pas les aspects techniques;
• Doit considerer:
— Environnementtechniqueactuel;
— Directionsstrategiques prevues.

Comprend:
— Identification des besoins techniques;
— Creation du plan d'architecture.

34
Conception de ('architecture technique

Back Room > 4- Front Room -►

Source Systems

Internal Data
ETL System Bl Applications

ERP
-GL
- Purchasing
Clean, Conform Presentation
Extract - Customer Deliver Application Types
- Distribution
- Directory - SCD2 tracking Server
-Inventory
demog
monitor - Product • Late arriving cust - Direct access queries
-HR - Standard reports
- Payroll
- Demog lookup integration info
- ERP adapter - Store attribute - Fact table pipeline RDBMS - Analytic applications
hist - Aggregate mgmt - Promotion mgmt
>
Club Card ETL Management Services - Atomic <0 - Forecasting
Tracker (CCT) - Job scheduler and monitor - Problem escalation business
2 - Dashboard/scorecard
- Registration - Backup, recovery, restart - Security and compliance process - Bl portal interface
a> - Data mining/models
- Maintenance - Data quality workbench - Dimension manager front dimensional
- Customer end
TO
O)
contacts front end models TO Bl Management Services
O)
- Aggregates _ O) - Usage monitor
<
Subsidiary
- Security mgmt/enforcement
ETL Data Stores
Metadata /
POS
- Compliance enforcement
- ETL process logs - Lookup/decode tables Process metadata:
- Retail sales
- Query management
- Staged data - Hierarchy masters - Database monitoring
- SKU master
- Bl tool administration
- Dimension masters - Audit dimension data system tables
- Enterprise reporting
- ETL tool repository - User managed attributes - Aggregate/OLAP
Subsidiary - Web/portal services Selection de
usage statistics
Archive Technical metadata:
• Store attribute ETL Metadata - Database system produits
history

Primary POS
Process metadata:
- ETL operations
statistics
Technical metadata: Business metadata:
- ETL job logic,
transforms
* Data quality screens
- Business rule logic
tables
- Partition settings
- Stored procs/scripts - Stored reports
Bl Data Stores

X
- Audit results - Retention, backup. - Aggregate definitions
J
• Application server caches
- Retail sales

- SKU master - Quality screen security - User databases

- Store info
results \^~ Security and access data

Bl Metadata
Process metadata:
- Usage statistics
External Data

Modele architecture! Technical metadata:


- Bl tool semantic layer
Demographics
- Standard query/report definitions
- Security groups/assignments
Lookup Service Business metadata:
- Conformed attribute list
- User documentation
Conception et developpement du systeme ETL

• Represente environ 70% des efforts et risques du projet;


• Doit considerer:
— Nombre et type des sources de donnees;
— Outilsdisponibles.

• Comprend:
— Identification et analyse des sources de donnees;
— Developpement des methodes d'extraction,de nettoyageet de
consolidation des donnees (code maison ou outils
commerciaux);
— Developpementdes methodes d'insertion de donnees (ex:
scripts, outils complexes);
- Validation de la qualite des donnees.

36
Conception et developpement du systeme ETL

Matrice de transformation

Champs Table Champs Table Regie de


cible cible source source transformation

Flot de traitements / donnees (SSIS)

1*1 Excd Source


OLE DB Source

a
1

'♦O Data Conversion

3Z
Sort Excel Sort DB

it

Merge Join
*

A Conditional Split

ExistingRow
NewRow

OLE DB Command
r OLE DB Destination

a
Conception et developpement des applications Bl

• Se fait en parallele avec la modelisation des donnees et la


conception du plan d'architecture;
• Necessite une interaction importante avec les utilisateurs;
• Comprend:
— Modelisation des tableaux de bord, rapports, indices de
performances (KPI) adaptes aux utilisateurs;
— Definition des modeles de prediction, classification et clustering;
— Configuration desoutilset des metadonnees;
— Implementation du portail de navigation;
— Validation des applications.

Definition des Conception des Developpement des


besoins d'affaires application Bl applications Bl
Conception et developpement des applications Bl

Requetes a acces

direct, reporting,
Besoins analytiques

data mining
et techniques

CO
Rapports standards
O)

T3

Modele physique 'cu

> +->

o
Applications
Q_ analytiques

Architecture

Tableaux de bords

et scorecards

Bl operationnel

Departement de genie logiciel et des Tl MTI820 Hiver 2011 - © S. Chafki, C. Desrosiers 39


Gestion du projet

• Assure la coordination des activites du projet;

• Comprend:

- Suivi de l'avancement et de l'etat du projet;

- Suivi des problemes;

- Controle des changements (ex: portee du projet);

- Developpement du plan de communication (affaires et TI).

40
Plan de projet
• Definit pour chaque activite:
- Ressources responsables;
- Les dates de debut et de fin estimees (ne doivent pas etre
modifiees);
- L'etat courant (ex: future, en cours ou completee);
- Les dates de debut et de fin mises a jour;
- Le nombre de jours de retard;
- Le % complete;
- Les dependances (autres taches).
Plan de projet

last ttetrrt: Resources Original Original Original Status Updated Updatea Effort to Late % Depen¬
estimated estimated estimated start date com¬ finish days Com¬ dencies
effort start date completion pletion pleted
date date

b Project planning 15 days Tue 1/1/OS Tue 1.22*08 Future Task NA HA15 days 0 days 0%
1
2 Establish project identty PM/Proj Lead 0.5 days Tue 1/1/08 Tue 1/1A08 Future Task NA NA0 5 days! Odays 0%
i
3 0 Identify project resources 3 days Wed 1.2/08 Fri 1/4<08 Future Task NA NA 3 days 0 days 0%
4 Determine required roles PM 0.5 days Wfcd 1/2/08 Wed1/2J08 Future Task NA NA0.5 days Odays 0% 2
5 Determine resources PM/Proj Lead 2 days Wed 1/2/08 Fri 1 /4/08 Future Task NA NA 2 days Odays 0% 4

e Assign rotes to resources PM 0.5 days Fri 1/4/08 Fri 1/4/08 Future Task NA NA0.5 days- 0 days 0% 5
7 Develop project communication plan PM 1 day Mon 1/7/08 Mon 1/7/08 Future Task NA NA 1 day 0 days 0% 6
8 Prepare draft skeleton project plan PM 3 days Tue 1/8/08 Thu 1 *10.08 Future Task NA NA 3 days! 0 days 0% 7
9 El Establish project management procedures 1.5 days Fri 1/11/03 Mon 1.14/08 Future Task NA NA 1.5 days 0 days 0% 8
10 Establish change man^gernant proc^cc PM 0.5 day? Fri 1/11/OS Fr«1M1/08 Future T NA NA 0 5 d*ycji 0 days 09C

11 Create issue resolution process PM 0.5 days Fri 1/11/08 Fri1f11/08 Future Task NA NA 0 5 days Odays 0% 10
12 Establish enhancement treckhg process PM 0.5 days Mon 1/14/08 Mon 1 <14/08 Future Task NA NA 0 5 days 0 days 0% 11
13 Conduct project team kick-off PM 1 day Mon 1/14/08 Tue 1 <15/08 Future Task NA NA 1 day Odays 0% 9
14 Revise project plan PM/Team 5 days Tue 1/15/08 Tue 1 <22/08 Future Task NA NA 5 days! 0 days 0% 13
Deploiement
• Point de convergence des activites de developpement;

• Ne doit pas etre fait avant d'avoir:


- Materiel de formation des utilisateurs;
- Mecanismes de gestion et de suivi d'erreurs;
- Documentation complete;
- Validation des donnees et outils;
- Processus efficace de communication.

43
Maintenance et croissance

• Assure le fonctionnement optimal du systeme et prevoit

I'ajout de nouvelles fonctionnalites;

• Comprend:

- Suivi de l'utilisation et reglages de performance (tuning);

- Sauvegarde et recuperation des donnees;

- Support aux utilisateurs;

- Preparation de nouveaux cycles de developpement.


Questions

• Quels les risques potentiels d'un projet de BI?


Risques selon Kimball
• Ne pas pouvoir recruter un sponsor influent et visionnaire
provenant de la haute direction;
• En faire trop en meme temps, au lieu d'employer une
approche de developpement iterative centree sur un sujet a la
fois;
• Etre seduit par la technologie, au lieu de se concentrer sur les
objectifs et les besoins de l'entreprise;
• Supposer qu'il est possible de developper le projet sans
l'apport des membres d'affaires;
Risques selon Kimball (suite)

• Aller de I'avant avec le projet, meme si les donnees source


sont de pietre qualite ou n'ont pas ete validees;
• Faire la conception d'un entrepot de donnees comme s'il
s'agissait d'une BD transactionnelle (ex: normalisation);
• Sous-estimer la quantite de travail reliee au nettoyage et la
consolidation des donnees;
• Accorder trop d'importance au systeme ETL, au detriment de
la performance et la qualite des applications de BI (et vice-
versa).
Questions
• A quoi correspond le developpement Agile?
• Quels sont les avantages/inconvenients de ce mode de
developpement?
Le developpement en mode agile [1/2]

• Philosophie Agile:
« Si un projet doit se solder par un echec, mieux vaut le
savoir apres 1 seul mois, qu'apres 15 mois »
- Jeffries, Anderson et Hendrickson (2000). Extreme Programming Installed.

• Principes de base des methodes agile:


- Se concentrer sur les besoins prioritaires;
- Developper en iterations/prototype;
- Petites equipes;
- Collaboration soutenue entre l'equipe de developpement
et les clients;
- La livraison est plus importante que le processus;
- Documentation : seulement le necessaire.
Le developpement en mode agile [2/2]
Agile vs Developpement en cascade:

Agile vs. Waterfall Development

Success Rates

Agile
w.it. •!. '

58%

i Successful

t 16%

1 Soutor Tb*SU*d*li OfOM


Les entrepots de donnees en mode agile [1/3]
• Exemple d'iterations de developpement agile
ITERATION 1: ITERATION 2: ITERATION 3: ITERATION 4:
Definition des besoins Definition de la portee Developement de la Integration de la
solution solution

Duree 1-2 mois 1-2 mois 4-8 mois 1-2 mois

Livrable Prototype Solution Bl Solution complete Solution complete livree

75% Besoins 25% Besoins 5% Besoins 5% Besoins


25% Conception 50% Conception 10% Conception 10% Conception
Processus
0% Developpement 15% Developpement 50% Developpement 50% Developpement
0% Test 10% Test 35% Test 35% Test
50% Utilisateur 50% Utilisateur 100% Utilisateur
25% Utilisateur
100% Architect 100%Architecte 100%Architecte
100%Architecte
25% Lead technique 100%Lead technique 100%Lead technique
100% Lead technique
0% Sp. modelisation 50% Sp. modelisation 50% Sp. modelisation
Ressources 100% Sp. modelisation
0% Developpeur ETL 0% Developpeur ETL 50% Developpeur ETL
100% Developpeur ETL
0% Developpeur Bl 50% Developpeur Bl 50% Developpeur Bl
100% Developpeur Bl 100% Sp. tests
100% Sp. tests 100% Chef livraison

Acces utilisateurs Acces utilisateurs


Acces utilisateurs
Donnees d'analyse Donnees d'analyse
Technologie Acces utilisateurs Donnees d'analyse
Nettoyage et transfert Nettoyage et transfert
Donnees source
Donnees source Donnees source
Les entrepots de donnees en mode agile [2/3]

• Avantages vs inconvenients:

Avantages Inconvenients

• Livraison plus rapide de la • Peut developper des silos de


solution; donnees;
• Reduction des couts; • Potentiel de reduire:
o Qualite de donnees;
• Evite d'avoir des besoins
o Stabilite du systeme;
obsoletes.
o Partage d'information.
Les entrepots de donnees en mode agile [3/3]

• Solution: Integrated Sandboxing*:


- Creer un environnement de prototype (Sand box);
- Administration de donnees flexible et allegee;
- Copie de production / federation des donnees;
- Ramener les donnees rapidement sans trop de
formalisme;
- Gouvernance;
- Deploiement en production;

*: S. Brobst, M. Mclntire et E. Rado (2008). Agile Data Warehousing with Integrated Sandboxing,
Business Intelligence Journal, vol. 13, no. 1.

Vous aimerez peut-être aussi