Lancer un projet d’entrepôt de données : où commencer ?
Un cycle de vie conceptuel aide à organiser et à planifier le projet de manière efficace. Il fournit une structure pour le projet d’entreposage de données et aide à définir les différentes étapes nécessaires pour atteindre l’objectif final en permettant de suivre l’avancement et le contrôle de son déroulement.
L’approche conceptuelle du cycle de vie de la mise en œuvre d’un entrepôt de données est illustrée dans la figure suivante. Ce diagramme illustre la séquence de tâches de haut niveau requises pour la conception, le développement et le déploiement d’un entrepôt de données. Le diagramme montre la feuille de route globale du projet, dans laquelle chaque boîte peut servir de repère ou de jalon.
Planification de projet
Le cycle de vie commence par la planification de projet. La planification de projet porte sur la définition et la portée du projet d’entrepôt de données, y compris l’évaluation de l’état de préparation et la justification commerciale. Ce sont des tâches critiques en raison de la grande visibilité et des coûts associés à la plupart des projets de BI.
À partir de là, la planification du projet se concentre sur les besoins des ressources (matérielles et personnelles) couplés à la durée et à la séquence des tâches du projet. Il constitue la pierre angulaire de la gestion continue d’un projet d’entrepôt de données. La planification du projet dépend des besoins d’affaires, comme l’indique la flèche bidirectionnelle entre ces activités dans la figure en haut.
Définition des besoins d’affaires
Les utilisateurs et leurs besoins ont un impact sur presque toutes les décisions prises tout au long de la mise en œuvre d’un entrepôt de données. Comme démontré dans la figure en dessous, les exigences d’affaires sont au centre de notre processus de développement de l’entrepôt de données.
La portée de l’initiative d’entrepôt de données doit être déterminée par les besoins d’affaires. Les exigences détermineront quelles données doivent être disponibles dans l’entrepôt de données, comment elles seront organisées et à quelle fréquence elles seront mises à jour. Bien que la conception de l’architecture ressemble à une activité axée sur la technologie, les exigences d’affaires, telles que le nombre d’utilisateurs d’entrepôt et leur emplacement, ont un impact important sur l’architecture. De toute évidence, les modèles d’application de l’utilisateur final sont définis par des exigences. Enfin, les plans de déploiement, de maintenance et de croissance doivent être axés sur l’utilisateur. Nous commençons à formuler des réponses à toutes ces questions sur le cycle de vie en fonction de la compréhension des exigences d’affaires des utilisateurs.
Pour mieux comprendre les besoins d’affaires, nous devons commencer par en parler aux utilisateurs. Nous ne pouvons pas simplement demander aux utilisateurs quelles données ils aimeraient voir dans l’entrepôt de données. Au lieu de cela, nous devons leur parler de leur travail, de leurs objectifs et de leurs défis et essayer de comprendre comment ils prennent des décisions, aujourd’hui et à l’avenir. Au fur et à mesure que nous recueillons les exigences des utilisateurs métier, nous devons également entremêler une partie de la réalité des données dans le processus en interrogeant le personnel clé de TI. Nous devons tenir compte des besoins d’affaires en parallèle avec la disponibilité des données pour répondre à ces exigences.
Nous devons tout d’abord aider à définir le problème d’affaires que le client essaie de résoudre. La compréhension des objectifs du client en matière de BI doit garantir une approche indispensable avant la mise en œuvre de ressources précieuses.
Les variables qui peuvent avoir un impact important sur la durée du projet sont les suivantes:
- Combien de sujets d’affaires (subject area) différents doivent être pris en charge?
- Combien de sources de données différentes seront incluses?
- Les données sont-elles bien définies et bien comprises par l’entreprise?
- Les données sont-elles bien structurées et documentées du point de vue des systèmes?
- Quelles capacités d’analyse voudriez-vous avoir (visualisations ou outputs attendus)?
- Est-il facile d’intégrer les données de ces différentes sources?
- Des experts en la matière (du secteur de l’affaire et de l’informatique) sont-ils disponibles en cas de besoin? Auront-ils le temps de participer activement au projet?
Modélisation de données
Étant donné que nous avons rassemblé les exigences d’affaires et effectué un survol sur les données, nous sommes prêts à commencer la conception logique et physique de l’entrepôt de données. Cette conception transformera les ressources de données existantes en structures d’entrepôt de données finales. À partir de ces conceptions, nous pouvons planifier les étapes d’extraction et de transformation des données. Nous pourrons aussi estimer la taille globale et les besoins d’affaires de la base de données centrale, et nous pourrons planifier et commencer le prototypage des applications finales.
Qu’est-ce qu’un modèle de données?
Un modèle de données est une abstraction de la façon dont les éléments de données individuels sont liés les uns aux autres. Il décrit visuellement comment les données doivent être organisées et stockées dans une base de données. Un modèle de données fournit le mécanisme de documentation et de compréhension de l’organisation des données.
Il existe de nombreux types de modélisation de données, chacun avec un objectif et un but spécifiques. Au fur et à mesure que les organisations modifiaient la structure des données pour prendre en charge la génération de rapports et l’analyse, une nouvelle technique de modélisation des données, désormais appelée modélisation dimensionnelle, est apparue.
Imaginez une dirigeante qui décrit son core-business comme « nous vendons des produits sur divers marchés et mesurons notre performance au fil du temps ». Les concepteurs dimensionnels écoutent attentivement l’accent mis sur le produit, le territoire et le temps. La plupart des gens trouvent intuitif de considérer une telle entreprise comme un cube de données, avec les bords étiquetés produit, marché et temps. On imagine trancher et couper en dés le long de chacune de ces dimensions. Les points à l’intérieur du cube sont où les mesures, telles que le volume des ventes ou le profit, pour cette combinaison de produit, de marché et de temps sont stockées. La capacité de visualiser quelque chose d’aussi abstrait qu’un ensemble de données de manière concrète et tangible est le secret de la compréhensibilité.
Un modèle de données qui commence simple a une chance de rester simple à la fin de la conception. Un modèle qui commence compliqué sera sûrement trop compliqué à la fin, ce qui entraînera des performances de requête lentes et le rejet des utilisateurs professionnels.
Définition du reporting et des outils d’analyse
La conception d’applications BI est susceptible d’être effectuée peu de temps après la fin de la modélisation dimensionnelle. Notre équipe de projet a passé du temps à apprendre et à documenter les besoins d’affaires et le modèle dimensionnel fournit des détails sur les éléments de données qui seront disponibles. Il est maintenant temps pour nous de réfléchir à ce qui doit être livré.
La première étape de ce processus consiste à identifier chaque public cible et le type d’utilisation dont il a besoin. Chaque public différent peut avoir des exigences distinctement différentes pour les résultats qu’il doit voir. Qui a besoin de regarder quelles données? Les données utilisées pour l’analyse par le service marketing pour planifier les promotions pour l’année suivante sont différentes de ce qu’un représentant commercial exécutant un ensemble de rapports pour prendre en charge les besoins de révision d’un compte.
Bien que les développeurs aient souvent beaucoup de connaissances sur ce que l’application BI doit faire, il vaut toujours la peine pour nous d’obtenir les commentaires d’autres membres de la communauté des affaires. Cela permet de renforcer la propriété des groupes qui utiliseront l’application BI.
La conception de rapports et visualisations peut se faire via des sessions de conception, ou des réunions individuelles et/ou de groupe. La conception devrait se concentrer sur les domaines d’activité hautement prioritaires qui ont été identifiés lors de la collecte des exigences initiales, et ils devraient être dans la portée du projet. Sur la base de l’expérience de notre équipe de projet, une grande partie de ce travail peut être effectuée au sein de l’équipe. Cependant, il est important pour nous de continuer à développer le soutien, ce qui peut être fait en partageant des idées avec d’autres représentants du monde des affaires.
Concevoir la structure physique de données
Pour le modèle physique, il faut le garder aussi simple et semblable au modèle logique que possible. Cependant, les différences entre les modèles physiques et logiques sont inévitables. Ils peuvent être nécessaires pour prendre en charge les exigences spécifiques d’accès/sécurité, pour améliorer les performances des requêtes et même pour maintenir le cycle de maintenance dans une fenêtre acceptable.
Conception et développement du système ETL
Dans la conception et le développement du système ETL (extraire, transformer et charger), nous reconnaissons que c’est un travail souvent sous-estimé dans un projet d’entrepôt de données. Nous comprenons que le processus ETL est rarement simple et direct. Nous identifions plusieurs étapes importantes dans le développement d’un ETL :
- Exigences : Nous nous concentrons sur les exigences et les composants de conception du projet qui reflètent la façon dont les données doivent être stockées. Nous définissons également des exigences supplémentaires pour le système ETL, comme des règles de traitement et des directives pour la conformité aux exigences légales.
- Conception : Nous construisons le modèle dimensionnel qui est la cible du système ETL. Nous définissons chaque petit détail, y compris toutes les règles spécifiques pour la construction de la dimension, et nous documentons les tables de faits avant de commencer à construire le système ETL.
- Construction : Nous développons le système lui-même, qui peut inclure l’écriture de programmes ou l’utilisation d’un framework spécifique pour effectuer le travail. Ce travail peut être réparti entre différentes personnes ou même différentes équipes.
- Test : Nous effectuons des tests approfondis et complets de l’ensemble du système. Nous développons une série de cas de test pour fournir des conditions réalistes afin de déterminer si le système fonctionne correctement. Ces cas de test représentent des situations commerciales réelles et sont définis par des représentants du monde des affaires.
Développement du reporting
L’étape de développement du reporting dans notre projet d’entrepôt de données est essentielle, car elle nous permet de transformer les données brutes en informations précieuses pour l’entreprise. Notre objectif est de fournir des rapports qui facilitent la prise de décision basée sur des données et offrent une vision claire de divers aspects de l’entreprise.
Voici les principales tâches que nous prévoyons lors de cette étape :
Comprendre qui utilisera les rapports et quelles informations ils recherchent.
- Identifier et extraire les données pertinentes pour le rapport de l’entrepôt de données.
- Transformer les données brutes en informations utiles grâce à des processus tels que le nettoyage des données, l’intégration des données, la transformation et l’enrichissement des données.
- Présenter les informations de manière visuelle pour faciliter leur compréhension. Cela peut inclure des diagrammes, des graphiques circulaires, des diagrammes en colonnes, etc.
- Mettre en place un système de rétroalimentation pour recueillir les commentaires des utilisateurs sur les rapports. Cela nous permet d’améliorer continuellement la qualité et la pertinence des rapports.
Déploiement et maintenance
La phase de déploiement et de maintenance dans un projet d’entrepôt de données est vitale pour les raisons suivantes :
- Préparation de l’environnement : Cette phase permet aux entreprises et à leurs équipes de mettre en place l’infrastructure nécessaire pour soutenir les différentes applications.
- Mise en œuvre de la solution : Le déploiement est le processus d’introduction d’une nouvelle solution ou d’un service dans une organisation de manière coordonnée. C’est à ce stade que la solution développée est mise en œuvre dans l’environnement de production.
- Maintenance continue : Après le déploiement, la maintenance est nécessaire pour garantir que le système continue de fonctionner correctement et efficacement. Cela comprend la résolution des problèmes, l’ajout de nouvelles fonctionnalités, l’optimisation des performances, la traçabilité, etc.
- Amélioration continue : La phase de maintenance permet également d’améliorer continuellement le système en fonction des commentaires des utilisateurs et des nouvelles exigences d’affaires.
Conclusion
Lancer un projet d’entrepôt de données est une tâche complexe qui nécessite une planification minutieuse et une compréhension approfondie des besoins de l’entreprise. Il est essentiel de commencer par une analyse détaillée des exigences, suivie de l’identification des sources de données pertinentes. Une fois ces étapes réalisées, il est possible de concevoir et de construire l’entrepôt de données en veillant à ce qu’il réponde aux besoins de l’entreprise. Enfin, il est crucial de mettre en place des processus pour maintenir et améliorer l’entrepôt de données au fil du temps. En suivant ces étapes, les entreprises peuvent maximiser la valeur de leurs données et prendre des décisions éclairées basées sur des informations précises et à jour.
Rédaction par Sanzio Castor, Analyste de données/Data Analyst
Références
- A Manager’s Guide to Data Warehousing par Laura L. Reeves
- Agile Data Warehousing for the Enterprise par Ralph Hughes
- Agile Data Warehousing Project Management par Ralph Hughes
- Business Analysis for Business Intelligence par Bert Brijs
- The Data Warehouse ETL Toolkit par Ralph Kimball et Joe Caserta
- The Data Warehouse Lifecycle Toolkit par Ralph Kimball, Margy Ross et al.