lundi 15 mai 2017

28 Questions Business Intelligence



Cet article est destiné aux étudiants qui travaillent sur Business Intelligence, Informatique Décisionnelle, OLAP, Tableaux de bord, Reporting, DataWarehouse ......

Ci-dessous 27 questions posées par les membres du jury durant les soutenances de projets décisionnels pour l'année 2014/2015.
Mon binôme Dihia LANASRI et moi essayons de répondre à ces questions et nous vous souhaitons bonne lecture.



1.     Quel est l’intérêt d’un Entrepôt de données (Data Warehouse) dans votre solution ? 

Un entrepôt de données est considéré comme une zone ou on met uniquement les données pertinentes, agrégées, traitées et nécessaires pour l’analyse décisionnelle.
On sait très bien que les données d’un système de production (Système opérationnel ou la source) sont généralement non renseignées, pleins de valeurs NULL… et de plus parfois on procède à la suppression d’un lot de données après un certain temps.

Alors qu’un Data Warehouse contient tous l’historique (suppression interdite), de plus ses données sont correctes et bien nettoyés.

C’est une solution recommandée si nous avons plusieurs sources de données qui n’ont pas la même structure chose qu’on peut assurer si on insert ces données dans un entrepôt après avoir appliqué un traitement ETL (Extraction, Transformation et Loading)

Le temps de traitement lors de l’exécution d’une requête via un entrepôt est vraiment négligeable par rapport un une exécution via une base de production (quand le volume de la base est vraiment important)
De plus, un data warehouse est donné en lecture, donc on ne risque pas de modifier les données sauf par intervention d’ingénieurs BI.

2.     Est-ce que on peut régler le problème sans passer par un entrepôt de données ?

Oui, c’est possible. Mais il faut s’assurer que les données de la source ont un format correct et qu’elles sont bien renseignées. De plus, cette solution est recommandée dans le cas où on a une seule source de données centralisée (ainsi dans le cas où la base de données est de volume moyen ou petit, car si le volume est important avec les nombreuses jointures des requêtes, le temps d’exécution va considérablement augmenter). Dans ce cas, la source sera liée directement à l’outil de reporting ce qui nous permet d’éliminer l’étape de l’ETL et surtout optimiser les efforts et les ressources.

3.     Est-ce que le système décisionnel conçu supporte des nouvelles sources de données ?

Un système décisionnel lorsqu’il est conçu, il doit être à caractère évolutif ce que veut dire que par la suite il doit supporter l’intégration de données provenant d’autres sources (BDD, Fichiers, Pages web…). Un vrai système décisionnel doit être extensible à long terme.
Donc si on vous demande, votre réponse devrait être OUI.

4.     Quelles est votre approche pour concevoir un entrepôt de données ? et Pourquoi ?
On distingue deux types Top-Down et Bottom-up :



Dans le cadre d’un PFE, on se base sur les entretiens pour définir les besoins de l’utilisateur et les sources de données pour vérifier si on peut répondre à ses besoins.

Pour plus de détails, veuillez consulter notre Rapport PFE page 21.

5.     Quelle est la modélisation conceptuelle utilisé : Schéma en étoile ? en flocon de neige ? et Pourquoi ?

Dans un schéma en étoile, les informations associées à une hiérarchie de dimension, sont représentées dans une seule table de dimension. Conception consommatrice de l’espace.

Dans un schéma en flocon de neige, les informations associées à une hiérarchie sont décomposées sur plusieurs tables de dimensions. Conception consommatrice en espace. Conception consommatrice de ressource lorsqu’on applique des requêtes faisant appel à des   jointures.

Le schéma en étoile est plus recommandé car dans un entrepôt de données le temps de réponse est plus prioritaire que le volume de données.

Il y a également le schéma en constellation qui mettent plusieurs schémas en étoile avec des dimensions communes dans le cas où on a différents sujets d’analyses avec des dimensions communes (pour gagner en espace de stockage et éviter les redondances d’informations)
Pour plus de détails, veuillez consulter notre Rapport PFE page 18.

6.     Est-ce qu’il y a un lien entre le Processus métier et le sujet d’analyse ?

Oui, il y a une forte relation entre ces deux.
Après l’étude de l’existant, il faut déterminer les processus métiers de l’organisation. Par la suite, chaque processus métier donne naissance à un ou plusieurs sujets d’analyses qui seront par la suite interprétés par des schémas conceptuels d’un Data Warehouse (Schéma en étoile ou Schéma en flocon de neige pour chaque sujet qui pourra être regroupé sous un schéma en constellation).

7.     Quelle est la source des valeurs NULL dans les sources de données ? Par quoi vous les avez remplacés ?

Généralement, la source des valeurs NULL sont des champs non renseignés et ceci dans le cas où le champ dans l’application n’est pas obligatoire, du coup, les utilisateurs s’en passent. 

Pour régler ce problème au niveau du Data Warehouse, il suffit de les remplacer par des valeurs par défaut selon le type de la donnée. Exemple : Si Chaine de caractèreà mettre ‘INDEFINI’. Si Entier à mettre (-1)…

L’essentiel qu’on ne trouve pas des NULL dans un Data Warehouse (Strictement interdit)

8.     Pourquoi passer par un Staging Area ?

On passe par un Staging Area, dans le cas où l’extraction de données à partir de la source se fait au moment où le système de production est en cours d’utilisation. 

Donc pour décharger le système de production, on récupère les données en VRAC dans une base intermédiaire (Staging) et par la suite on lace l’ETL sur cette dernière.

D’où l’ETL fonctionne tranquillement et il prend le temps nécessaire pour le traitement de données indépendamment de la source.

9.     Comment vous avez traité les mises à jour de donnée dans l’Entrepôt quand il s’agit de mises à jour dans les sources de données ? comment vous avez traité « Dimensions à évolution lente » ?
Le processus d’ETL permet de faire un chargement initial et incrémental.
Le chargement initial du DW se fait une seule fois au début, lorsqu’on alimente le système pour la première fois. Par la suite, on ne fait que des chargements incrémentaux.

Lorsqu’on lance le chargement, on commence d’abord par les tables de dimensions, si elles sont bien chargées on passe au chargement des tables des faits pour respecter les contraintes de clés étrangères dans les tables des faits.

La particularité du chargement incrémental réside dans le fait qu’on ne charge que les lignes modifiées ou rajoutées dans la source.

Pour comprendre comment nous l’avion fait, veuillez consulter notre Rapport PFE page 79.

10.Quel est votre modèle multi dimensionnelle R-OLAP ? M-OLAP ? Ou H-OLAP ?et pourquoi ?

Pour plus de détails, veuillez consulter notre Rapport PFE page 20.

11.Comment vous avez procédé pour la collecte des besoins ?

Les entretiens, La documentation et L’étude des sources de données. Pour plus de détails, veuillez consulter le paragraphe Démarche de collecte des besoins de notre Rapport PFE page 58.

12.Comment vous avez défini les attributs de dimensions ?

Pour définir les attributs de dimension, il faut d’abord définir les sujets d’analyses et les axes d’analyse de chaque sujet.

Ces axes sont les dimensions associées à des tables de fait .Selon les besoins des utilisateurs finaux et la disponibilité de données dans les sources, on définit les attributs d’une dimension, qui sont des chaines de caractères ou des valeurs non abrégeables et non additives.

13.Combien de personnes avez-vous interviewés ?

Pour notre cas c’était 9. Ce sont des dirigeants qui nous ont aidées à la collecte de besoins analytiques.

14.Qu’est-ce que vous voulez dire par source hétérogène de données ?

Plusieurs sources de données qui n’ont pas la même structure. Ou même différentes technologies (BDD sous Oracle, sous MySQL…, des fichiers Excel, pages web…).

15.Que ce que vous voulez dire par complexité de source de données ?

On peut parler de la complexité de la source de données en reposant sur ces indicateurs : le schéma de la BDD est compliqué ou pas, le schéma est grand ou petit, les noms des tables et des colonnes sont significatifs ou à déchiffrer, les requêtes d’extraction sont complexes ou non, le temps de réponse d’une requête exécutée sur la BDD est rapide ou pas…

16.Quelle est la différence entre nettoyage de données et qualité de données ?

Le nettoyage de donnée est une opération pour obtenir des données de qualité.
D’après le livre blanc « Des Données de Qualité. Exploitez le capital de votre organisation » de JEMM research. Publié Janvier 2008, la qualité de données est un terme générique décrivant à la fois les caractéristiques des données : complètes, fiables, pertinentes, à jour, cohérentes, mais aussi l’ensemble des processus qui permet de garantir ses caractéristiques.

Les outils assurant la qualité de données fournissent ces fonctionnalités en générales :

Ø  Profilage (profiling) : analysé la qualité des données dans les sources en se basant sur des statistiques, pour déterminer les domaines d’amélioration.

Ø  Standardisation : moteur de règles qui s’assure que les données sont conformes à des règles de qualité. En vérifiant l’orthographe, le format des données et valide leurs valeurs.

Ø  Nettoyage (cleansing) : détection et correction des données corrompues ou inexactes.

Ø  Rapprochement (matching) : comparaison et rapprochement des données des différentes sources pour supprimer les duplications éventuelles.

Ø  Enrichissement : utilisation des sources externes pour améliorer la complétude des données internes.

Ø  Décomposition (parsing) : identification et vérification et décomposition un par un des zones de saisie libres.

Ø  Surveillance (monitoring) : suivi de la qualité des données dans le temps et production de rapports de qualité (étape de réaction avant la dégradation de la qualité de données).

17.Est-ce que vous utilisez des alertes par Email pour notifier l’administrateur sur l’état de l’ETL?  

Oui, c’est bien de les utiliser afin de notifier l’administrateur sur l’état d’exécution des ETL, se sont des bonnes pratiques.

18.Est-ce que votre solution réduit le temps de reporting ?si oui combien vous estimez cette réduction ?

Ça dépend de votre cas. Exemple : temps de reporting réduit de 1 mois à une semaine ou d’une semaine à un jour.

19.Comment avez-vous choisi les indicateurs de tableau de bord ? Quelle approches vous avez suivi (exemple : GIMSI) ? Pourquoi ?

Le choix des indicateurs se fait par les utilisateurs finaux, c’est eux qui doivent dire quel indicateur dans quel Tableau de Bord.
I
l existe plusieurs méthodes pour la mise en place d’un tableau de bord, la plus connue est celle l’Allein FERNANDEZ, GIMSI . Comme il y a sa version allégée (GIMSI Lite)

Vous pouvez étudier les différentes méthodes et comparer pour pouvoir justifier celle que vous avez utilisée.

20.Quelle est la différence entre le Reporting et tableaux de bord ?

Tableaux de bord : est un suivi en temps réel, Intervention et réaction immédiate .exactement comme le cas d’un tableau de bord d’une voiture. On réagit suite aux indicateurs. 

Reporting : est suivi périodique + Intervention à long terme. L’objectif de Reporting est d’avoir l’information, de plus il y a des rapports statiques qui sont fournis par les développeurs, des rapports dynamiques qui comprennent des paramètres pour une personnalisation par les utilisateurs. De plus, il y a des rapports Ad-Hoc qui sont conçus par les utilisateurs)

21.Comment vous sécurisez vos tableaux de bord ?

La sécurité d’un tableau de bord est donnée par la définition des droits d’accès de chaque utilisateur. Il faut bien indiquer que chaque utilisateur peut voir quel tableau de bord, et dans chaque tableau de bord, à quelle données il peut y accéder, donc son périmètre doit être très bien défini.

22.Comment vous calculez le taux X ou l’indicateur Y ?
 Veuillez donner la formule de calcul utilisée

23.Est-ce que vous avez déployez la solution ?
 C.-à-d. votre solution est opérationnelle à l’entreprise ou pas.

24.Comment procédez si un décideur ne trouve pas son besoin l’heure de déploiement de solution décisionnelle ?
Ça dépend de votre cas, serait-il possible d’ajouter ce qu’il a demandé ?

Si son besoin figure dans la source de données .oui, vous pouvez le faire.

Sinon vous ne pouvez pas et vous devriez lui justifier pourquoi sa requête est impossible.

Dans un projet SID, il faut toujours s’attendre à des besoins changeants.

25.Est-ce que vous avez formé les utilisateurs ?

A la fin de chaque projet informatique, les utilisateurs finaux doivent être formés sur l’utilisation du système.

 Et c’est pareil pour un projet décisionnel, il faut les former sur le fonctionnement des différents outils de restituions de données (Tableaux de bord, Analyse OLAP…).

 La meilleure manière de former les utilisateurs est de les intégrer dès le premier jour de la conception, ils doivent voir l’évolution du projet à fur et à mesure pour qu’ils l’acceptent et ils se familiarisent avec. 


26. Quelle est la technologie de développement et pourquoi ?
 ça peut être une technologie exigée par l'entreprise .
Veuillez ,justifier votre choix en utilisant des paramètres comme le cout (payante ou open source) , les performances , la disponibilité de documentations ...
 
27.Existe-il des solutions BI qu’on peut intégrer ? Pour ne pas réinventer la roue et développer ce qui existe ?

Oui, bien-sûr il a des éditeurs de solutions BI payants ou Open source. Le choix revient à vous et à l’entreprise. 


28. Quelle est la valeur ajoutée de votre solution ?

Pourquoi votre solution est meilleure, quelles sont ses performances, qu’est-ce que vous optimisez le délai, le cout, les deux ? Il est préférable que cette valeur soit mesurable.



Ça reste un essai que vous pouvez améliorer
Si vous avez des questions, nous vous invitons à les partager

Nous tenons à remercier Reda MOUFFOK
   d’avoir contribué par son feedback

Nous vous souhaitons bon courage

Vous pouvez consulter cet article sur le blog de Dihia

Shared Knowledge





1 commentaire:

  1. Slm, Peut-on avoir des vidéos comme des sources de données ? Si oui, comment le processus ETL les traite ?

    RépondreSupprimer