🏳️🌈♿️👩🎨🌱 En février, je remets 3% de mes ventes à des organismes qui favorisent la diversité, les arts et l'environnement 🏳️🌈♿️👩🎨🌱
Le grimoire informatique
Parcours client et stratégie de données
Dans ce billet, je te partage quelques astuces pour démarrer la création de ta stratégie de données du bon pied ! Pour ce faire, nous allons nous centrer autour du parcours client.
Pour créer une bonne stratégie de données, il faut tout d'abord se mettre dans la peau des clients. On doit faire le parcours d'achat avec elles et eux et noter les informations qui sont générées tout au long.
Ensuite, on doit penser aux entités. Ce sont les parties prenantes ainsi que les transactions. Chaque doit avoir son propre identifiant unique. C'est ce qu'on appelle une clé primaire.
Chacune est reliée entre elles par ces clés. Ce sont les associations (attention, les relations sont les liens entre les clés et les attributs, même si en anglais, la traduction d'association est relation). La combinaison de ces concepts se nomme le modèle entité-association.
Afin de représenter ce modèle de façon normalisée, nous utiliserons ensuite le langage de modélisation unifié. En anglais, on le nomme UML, pour Unified Modeling Language.
Un cas pratique de parcours client
Description du parcours client
Nous allons explorer un cas pratique construit autour d'un commerce de détail qui offre un programme de fidélisation. Cet exemple nous servira de support pour vulgariser le concept de stratégie de données.
Le parcours client se composera ici de 6 étapes:
Étape | Description |
---|---|
1. | L'accueil du client par l'employée |
2. | La création de la facture à partir des items |
3. | L'appel à la fidélisation |
4. | La création du compte client |
5. | Le paiement de la facture |
6. | La production du relevé de transaction |
États et séquences
En informatique, ces étapes sont nommées des états, et ils forment une séquence qui a une entrée et une sortie. Certains
états peuvent être facultatifs, d'autres obligatoires.
Dans ce cas-ci, si le client a déjà la carte de fidélité, l'étape 4 n'aura pas lieu. En informatique, on peut représenter cette séquence avec la notation en chemin de fer (railroad diagram).
Voici une représentation avec le langage Python, construite en utilisant la librairie railroad-diagrams.
Diagram(
Stack(
NonTerminal("Accueil"),
Group(OneOrMore(NonTerminal("Ajout item")),"Facture"),
NonTerminal("Fidelisation"),
Optional("Compte client", "skip"),
NonTerminal("Paiement"),
NonTerminal("Relevé"),
)
)
Ce code permet de générer une image vectorielle comme suit. J'ai utilisé un outil en ligne pour ce faire.
Les données produites par le parcours client
Chaque étape du parcours génère des données ou des identifiants.
-
À l'accueil, on a une employée, une nouvelle interaction ainsi qu'un marqueur de temps qui indique le début de l'interaction.
-
À la création de la facture, nous avons un nouvel identifiant de facture, ainsi que des identifiants pour chacun des items. Ces derniers peuvent avoir une quantité, un prix ainsi qu'une promotion applicable.
-
Puis, on vérifie si le client a une carte de fidélité. Cette carte porte un numéro unique qui permet de reconnaître le client sans avoir à lui demander d'informations personnelles.
-
Si le client n'a pas de carte, car c'est sa première visite dans ce commerce, on va lui en créer une. On relie ainsi ses coordonnées personnelles à la carte. On lui crée aussi un identifiant client interne pour relier ses transactions entre elles.
-
Enfin, on arrive au paiement. Le client acquitte le solde en utilisant une carte de début ou de crédit. La carte a un identifiant, qui est utilisé pour enregistrer la transaction chez l'émetteur. Nous avons aussi le montant du paiement associé.
-
Enfin, on génère le relevé de caisse. Ici, on ne crée aucune nouvelle information. En fait, on génère un rapport complet de l'interaction que le client a eu avec nous aujourd'hui.
Les entités et les attributs
Construire un modèle de données se fait généralement après avoir étudié plusieurs processus d'affaires de l'entreprise. Mais, pour les fins de l'exemple, nous le ferons seulement pour ce parcours client.
Identifions d'abord les entités à représenter et leurs identifiants
- Le client
- L'employée
- L'interaction
- Les produits
- Les promotions
- Les items
- La facture
- La carte de fidélité
- La carte de paiement
Attention: Le relevé n'est pas une entité, c'est un rapport !
Puis, identifions les attributs de chacune de ces entités. Cette liste n'est pas exhaustive et est généralement évolutive. L'important, c'est d'avoir les bonnes entités au début.
Je vais utiliser un tableau structuré comme un modèle de données relationnel. Je vais utiliser la notation suivante :
- PK pour Primary Key (Clé primaire)
- FK pour Foreign Key (Clé étrangère)
Entité | Attribut | Contrainte |
---|---|---|
Client | Numéro_client | PK |
Prénom | ||
Nom | ||
Employé | Numéro_employé | PK |
Prénom | ||
Nom | ||
Interaction | Numéro_interaction | PK |
Temps_début | ||
Temps_fin | ||
Numéro_employé | FK (Employé) | |
Numéro_client | FK (Client) | |
Produit | Code_barre | PK |
Description | ||
Prix | ||
Promotion | Code_promotion | PK |
Code_barre | FK (Produit) | |
Rabais | ||
Date_début | ||
Date_fin | ||
Item | Numéro_item | PK |
Numéro_facture | FK (Facture) | |
Code_barre | FK (Produit) | |
Quantité | ||
Facture | Numéro_facture | PK |
Temps_facture | ||
Taxes | ||
Numéro_interaction | FK (Interaction) | |
ID_carte_paiement | FK (Carte_paiement) | |
Solde | ||
Carte_fidélité | Numéro_carte_fidélité | PK |
Numéro_client | FK (Client) | |
Date_entrée_vigueur | ||
Carte_paiement | ID_carte_paiement | PK |
Type_carte | ||
Numéro_carte | ||
Numéro_client | FK (Client) | |
Date_expiration |
Le modèle de données
Avec cette information, nous pouvons maintenant construire un modèle de données UML. Chaque entité devient une table. Les liens entre les tables représentent la cardinalité des relations.
J'ai ici seulement représenté des relations 1-1, 1-plusieurs et plusieurs-plusieurs, mais il en existe d'autres types et ce modèle pourrait être davantage raffiné. Encore une fois, cela dépend du modèle d'affaires de l'entreprise.
Ce diagramme a été fait avec le logiciel PlantUML. Voici le lien vers le code source.
La stratégie de données
Une fois que nous avons identifié quelles données sont générées par le processus client, nous sommes maintenant en mesure de mettre en place une stratégie de données. Celle-ci comprendra notamment les éléments suivants:
-
Les modèles de données
-
La politique de protection des renseignements personnels
-
Le modèle de gestion des accès utilisateur
-
Une gestion du cycle de vie de la donnée
-
Les mécanismes de qualité des données
-
L'intelligence d'affaires et les indicateurs de performance (KPI)
-
L'intégration de l'intelligence artificielle
-
Et encore plus !
Comme une stratégie de données est intimement liée à la maturité numérique de l'entreprise et à ses objectifs d' affaires, c'est un travail qui doit être effectué de manière personnalisée en collaboration avec les dirigeants et les employés. C'est mon expertise !