Introduction aux systèmes d'information
Ce que ce chapitre apporte 6 points
- Nommer les cinq fonctions d'un système d'information, et dire qui assure chacune
- Expliquer pourquoi un fichier partagé par courriel finit en versions qui se contredisent
- Dire ce qu'une licence opendata permet, et ce qu'elle exige en retour
- Distinguer un livrable d'une activité dans un WBS, et vérifier qu'une matrice RACI n'a qu'un A par ligne
- Rédiger un dictionnaire de données, et classer chaque donnée en référence, transactionnelle ou méta-donnée
- Réfuter une dépendance fonctionnelle sur des lignes, et choisir une clé d'après ce que représente une ligne
Une base de données ne vit jamais seule : elle est un morceau d'un système d'information, c'est-à-dire de la façon dont une organisation fait circuler ce qu'elle sait. Le parcours d'administration système part du même constat et en tire l'autre conséquence : cartographier ce qu'on administre avant de prétendre l'administrer. Ce chapitre prend de la hauteur avant de redescendre dans la technique : à quoi sert un SI, pourquoi le tableur finit toujours par craquer, et comment on organise les données pour qu'elles restent exploitables.
Pourquoi un Système d'Information ?
Toute organisation (une entreprise, un hôpital, une mairie, une école) manipule en permanence de l'information : des noms, des dates, des stocks, des résultats, des transactions. À petite échelle, un tableau Excel ou un classeur papier peut suffire. Mais dès que les volumes augmentent, que plusieurs personnes travaillent simultanément ou que des décisions stratégiques doivent s'appuyer sur des données fiables, il faut un système structuré : le Système d'Information.
Ce chapitre pose les bases conceptuelles qui justifient l'existence des bases de données : pourquoi on en a besoin, comment on les organise, et comment on structure les données qu'elles contiennent.
Définition d'un Système d'Information
Définition : Un Système d'Information (SI) est un ensemble structuré de moyens humains, matériels et logiciels permettant de collecter, stocker, traiter et diffuser l'information nécessaire au fonctionnement et au pilotage d'une organisation.
Le mot-clé ici est structuré : un SI n'est pas un simple tas de données, c'est un ensemble cohérent où chaque information a une place, un format et un rôle défini.
Le SI vise à :
- Assurer la bonne circulation de l'information entre les acteurs.
- Garantir la fiabilité, la sécurité, la disponibilité et la pertinence des données.
- Servir d'outil d'aide à la décision stratégique.
Ces trois objectifs se voient mieux sur un cas. Dans une PME de distribution, une commande saisie par un commercial décrémente le stock de l'entrepôt. Elle déclenche aussi une facture en comptabilité et apparaît le soir même dans le tableau de bord du directeur. C'est cela, le SI. Supprimer le SI ne supprime aucun de ces trois besoins : cela oblige seulement trois personnes à se transmettre la même information à la main, trois fois.
On peut comparer le SI d'une entreprise à son système nerveux : il transmet les informations entre les différentes parties (services, employés, outils), coordonne les actions, et permet à la direction de prendre des décisions éclairées. Sans SI, l'organisation « perd ses repères », comme un corps sans système nerveux.
Les cinq fonctions du SI
Un système d'information repose sur cinq fonctions principales, qui forment un cycle de vie de la donnée :
- Collecte des données : saisie manuelle, capteurs, formulaires, API...
- Stockage : bases relationnelles, entrepôts de données, lacs de données.
- Traitement : calculs, tris, automatisations, croisement de données.
- Diffusion : interfaces utilisateur, tableaux de bord, exports.
- Protection : sécurité, confidentialité, sauvegardes, conformité RGPD.
Ces cinq fonctions sont interdépendantes : une donnée collectée mais mal stockée sera inutilisable ; une donnée bien stockée mais mal diffusée ne servira à personne ; une donnée non protégée peut compromettre toute l'organisation.
Exemple concret : une station de mesure du CO₂ atmosphérique
- Collecte : un analyseur mesure la concentration en CO₂ toutes les heures.
- Stockage : la valeur est enregistrée dans une base de données avec l'horodatage et l'identifiant de la station.
- Traitement : on calcule la moyenne journalière et on détecte les pics anormaux.
- Diffusion : un tableau de bord affiche une alerte quand la moyenne journalière dépasse de plus de 40 ppm le niveau de fond de l'atmosphère, voisin de 425 ppm en 2025.
- Protection : les données sont sauvegardées chaque nuit et l'accès est réservé aux agents habilités.
1.Qu'est-ce qui distingue un système d'information d'un simple ensemble de fichiers ?
2.Les cinq fonctions du SI sont collecte, stockage, traitement, diffusion et protection. Que se passe-t-il si l'une est négligée ?
Limites des moyens traditionnels
Avant les SI modernes, les données étaient souvent gérées par des fichiers plats (.csv, .txt), des tableurs (Excel) ou des documents papier. Ces moyens ont les mêmes défauts, qui reviennent à chaque fois :
- Données redondantes et incohérentes
- Risque d'erreurs élevé lors des saisies manuelles
- Accès difficile ou non partagé entre collaborateurs
- Analyse manuelle, lente et limitée
- Sécurité peu fiable, absence de contrôle des accès
Une agence gère ses relevés de mesures dans un fichier Excel partagé par courriel :
- L'agent A envoie
mesures_v1.xlsxà l'agent B. - L'agent B modifie et renvoie
mesures_v2_modif_final.xlsx. - L'agent A a, entre-temps, continué à remplir sa propre version.
- Résultat : deux fichiers incompatibles, des données perdues, aucune traçabilité.
Une base de données évite ce problème : il n'y a qu'une seule source de vérité, que tous les acteurs autorisés consultent et modifient en même temps, chacun avec ses droits. Elle ne garde pas pour autant la mémoire de ce qui a changé : une modification remplace l'ancienne valeur. Savoir qui a changé quoi demande une trace construite exprès, par exemple une table d'historique remplie à chaque modification.
Deux agents s'échangent par courriel un fichier de relevés et le modifient chacun de leur côté. Quel est le problème de fond ?
L'opendata : des données ouvertes
Définition : L'opendata désigne la mise à disposition de données accessibles à tous, dans des formats ouverts, gratuitement, et réutilisables par chacun pour tout usage, y compris commercial. Les seules conditions admises protègent la provenance et l'ouverture : citer la source, et parfois repartager sous la même licence.
Ouvert ne signifie pas prêt à l'emploi. Ce que la définition garantit, c'est le droit de réutiliser, pas le travail de préparation : un jeu opendata arrive avec ses trous, ses formats de date variables et ses libellés à uniformiser.
L'opendata est produit principalement par des acteurs publics (collectivités, ministères, agences nationales). En France, la loi pour une République numérique (7 octobre 2016) oblige les administrations à publier par défaut leurs principales bases de données. Les plus petites en sont dispensées (moins de 50 agents, et pour les collectivités moins de 3 500 habitants), et les données personnelles comme les secrets protégés restent exclus. Des entreprises ou associations publient aussi en opendata, volontairement.
Intérêts de l'opendata
- Transparence des institutions publiques
- Innovation : permet à des développeurs et chercheurs de créer de nouveaux services
- Développement de services numériques à partir de données réelles
- Participation citoyenne et contrôle démocratique
Exemples de jeux de données disponibles en France
- Mesures des polluants atmosphériques réglementés (dioxyde d'azote, particules, ozone), publiées heure par heure sur data.gouv.fr
- Statistiques de population par commune
- Horaires et tracés des transports en commun
- Résultats électoraux, données météorologiques, dépenses publiques...
Interroger l'opendata depuis un programme
La plupart des plateformes opendata proposent des API (interfaces de programmation), qui permettent d'interroger les données directement depuis un programme. data.gouv.fr décrit chaque jeu de données par une API, et son API tabulaire rend directement en JSON les lignes des fichiers CSV publiés, prêtes à être importées dans une base.
C'est précisément le principe d'une base alimentée par l'extérieur : récupérer des données réelles, les stocker, puis les analyser par des requêtes SQL.
Réutiliser un jeu de données, c'est accepter sa licence. La Licence Ouverte, celle de data.gouv.fr, demande de citer la source et la date de dernière mise à jour ; l'ODbL, autre licence courante, demande en plus de publier sous la même licence une base qui en dérive, si on la diffuse.
L'opendata désigne :
Organisation des projets SI : WBS et OBS
Tout projet SI, aussi petit soit-il, demande une organisation claire. Que faut-il produire ? Qui fait quoi ? Deux outils complémentaires répondent à ces deux questions : le WBS et l'OBS.
WBS (Work Breakdown Structure)
Définition : Le WBS (structure de décomposition du travail) découpe hiérarchiquement tout ce que le travail doit produire, en livrables de plus en plus fins. Il facilite la planification, l'estimation des charges et l'affectation des ressources.
Le WBS répond à la question : « Qu'est-ce qui doit être produit ? » Il ne liste pas des actions, mais des livrables : des éléments concrets et mesurables, dont on peut constater qu'ils sont terminés.
Exemple de WBS, base de suivi de la qualité de l'air
- Niveau 1 : Base de suivi de la qualité de l'air
- Niveau 2 : Modèle de données
- Niveau 3 : Dictionnaire de données
- Niveau 3 : MCD (Modèle Conceptuel de Données)
- Niveau 3 : MLD (Modèle Logique de Données)
- Niveau 2 : Base de données installée
- Niveau 3 : Script SQL de création
- Niveau 3 : Base peuplée des relevés
- Niveau 2 : Requêtes SQL
- Niveau 2 : Guide d'utilisation
- Niveau 2 : Modèle de données
Regarder ce que contient chaque ligne plutôt que la profondeur de l'arbre : aucune ne décrit une action. « Dictionnaire de données » est un livrable, « rédiger le dictionnaire » serait une activité. C'est cette différence qui rend un WBS utilisable : un livrable se constate terminé, une activité s'étire sans qu'on sache jamais où elle en est.
Le premier mot ne suffit pas toujours à trancher. « Insertion des données » ne commence pas par un verbe et décrit pourtant une action. Le test qui tranche est celui du constat : peut-on dire, à une date donnée, que c'est fini ? « Base peuplée des relevés » se constate, « insertion des données » non.
OBS (Organizational Breakdown Structure)
Définition : L'OBS (structure de décomposition organisationnelle) représente les rôles et responsabilités dans un projet, sous forme hiérarchique. Elle permet d'identifier les acteurs et d'établir des matrices de responsabilité (ex : matrice RACI).
L'OBS répond à la question : « Qui est impliqué et à quel titre ? » Elle ne liste pas des personnes par leur nom, mais par leur rôle dans le projet.
| Livrable | Chef de projet | Modélisateur | Développeur SQL |
|---|---|---|---|
| MCD | A | R | C |
| Script SQL | A | I | R |
| Guide d'utilisation | R | R | R |
Légende :
- R (Responsible) : la personne qui réalise la tâche
- A (Accountable) : la personne qui valide et porte la responsabilité finale
- C (Consulted) : la personne qui est consultée pour son expertise
- I (Informed) : la personne qui est simplement informée de l'avancement
Lire cette matrice ligne par ligne, et non colonne par colonne. Sur la ligne MCD, le modélisateur réalise et le chef de projet valide : ce sont deux rôles distincts, et c'est ce découplage qui permet de refuser un livrable sans refaire le travail. La ligne Guide d'utilisation porte en revanche trois R et aucun A : elle signale une tâche que tout le monde réalise et que personne ne valide. La règle d'or ci-dessous dit pourquoi c'est un défaut, et comment le réparer : désigner un seul A.
À retenir. Le WBS décompose ce qui doit être produit (les livrables).
L'OBS définit qui fait quoi (les rôles et responsabilités).
Croisés, ils permettent d'affecter précisément chaque livrable à chaque membre de l'équipe.
Règle d'or de la RACI : chaque tâche doit avoir exactement un seul Accountable. S'il y en a plusieurs, personne n'est vraiment responsable ; s'il n'y en a aucun, personne ne peut déclarer la tâche finie. Plusieurs R sur une même ligne, en revanche, ne posent aucun problème.
Le WBS répond à quelle question ?
Organisation et classification des données
Le dictionnaire de données
Définition : Un dictionnaire de données centralise la description de toutes les données du système : nom, type, taille, signification et contraintes éventuelles. Il garantit une compréhension partagée et une gestion rigoureuse des informations entre tous les membres du projet.
Le dictionnaire de données est le document de référence du projet : avant d'écrire la moindre ligne de SQL, il faut savoir exactement quelles données seront manipulées. C'est aussi un outil de communication entre les différents acteurs (développeurs, métier, direction).
| Nom | Signification | Type | Taille | Contraintes |
|---|---|---|---|---|
id_agent | Identifiant unique de l'agent | Entier | - | PK, NOT NULL, AUTO_INCREMENT |
nom | Nom de famille de l'agent | Texte | 50 car. | NOT NULL |
prenom | Prénom de l'agent | Texte | 50 car. | NOT NULL |
date_embauche | Date d'entrée dans l'agence | Date | - | NOT NULL |
concentration_ppm | Concentration du gaz mesurée | Décimal | 10,4 | CHECK ≥ 0 |
date_mesure | Date de la mesure | Date | - | NOT NULL |
Lire la colonne Contraintes en premier : c'est elle qui porte les règles du métier, les autres ne décrivant que du stockage. Le CHECK ≥ 0 de concentration_ppm dit qu'une concentration négative n'a aucun sens physique, et cette case deviendra telle quelle une contrainte SQL. Une case Contraintes vide est presque toujours un oubli, rarement une absence de règle.
Bonnes pratiques pour le dictionnaire de données
- Utiliser des noms explicites, sans accents ni espaces (ex :
date_embaucheplutôt queDateE). Deux conventions coexistent : les mots séparés par un tiret bas (date_embauche) ou collés avec une majuscule (dateNaissance, que le parcours emploie aussi). L'essentiel est d'en choisir une et de s'y tenir dans toute la base. - Documenter toujours les contraintes métier (une concentration ne peut pas être négative, un code postal a 5 chiffres...).
- Identifier clairement les clés primaires (PK) : ce sont les colonnes qui identifient de manière unique chaque ligne.
- Mettre à jour le dictionnaire au fur et à mesure du projet : un dictionnaire obsolète est pire qu'aucun dictionnaire.
Catégorisation des données
Toutes les données ne jouent pas le même rôle dans un SI. On distingue trois grandes catégories :
| Type de données | Description | Exemple |
|---|---|---|
| Données de référence | Stables, peu modifiées. Servent de référentiel commun. | Liste des régions, types de gaz, codes INSEE |
| Données transactionnelles | Résultent d'actions métier, volumineuses et dynamiques. | Mesures de pollution, commandes, rapports produits |
| Méta-données | Décrivent d'autres données (contexte, provenance, format). | Auteur d'un rapport, date de création, source du jeu de données |
Dans la PME de distribution évoquée plus haut, la liste des fournisseurs est une donnée de référence, chaque bon de livraison une donnée transactionnelle, et la date d'import du catalogue fournisseur une méta-donnée. Les trois ne se mettent pas à jour au même rythme, ne se sauvegardent pas de la même façon, et ne se suppriment pas dans les mêmes conditions.
Cette distinction commande la conception de la base : les données de référence iront dans des tables séparées, partagées par toutes les autres via des clés étrangères.
Ce que coûte une donnée de référence recopiée se chiffre avant d'avoir à le payer, et le volume des données transactionnelles se prévoit de la même façon.
Ce que coûte une donnée de référence recopiée
- 1.
Une régie des eaux relève ses 12 000 compteurs une fois par mois. Combien de lignes sa table des relevés compte-t-elle au bout de dix ans ?
- 2.
Chaque relevé recopie le nom de la commune du compteur. Une commune de 400 compteurs change de nom : combien de lignes de relevés faut-il réécrire, pour dix ans d'historique ?
- 3.
Combien de lignes changent si le nom n'est écrit qu'une fois, dans une table des communes que les autres tables désignent par une clé étrangère ?
- 4.
La régie passe au relevé à distance, une mesure par compteur et par heure. Combien de lignes la table des relevés reçoit-elle désormais en une année de 365 jours ?
Dépendances fonctionnelles
Les dépendances fonctionnelles sont la notion la plus abstraite de ce chapitre, mais aussi l'une des plus fondamentales : elles sont à la base de toute modélisation relationnelle correcte.
Définition : Une dépendance fonctionnelle relie deux attributs, ou deux groupes d'attributs : A détermine B si à chaque valeur de A correspond une et une seule valeur de B. Notation : A → B (« A détermine B »)
Autrement dit : connaître la valeur de A suffit à en déduire celle de B, de façon certaine et unique.
Exemples de dépendances fonctionnelles
| Expression | Interprétation | Valide ? |
|---|---|---|
NumEtudiant → Nom | Chaque numéro d'étudiant correspond à un nom unique | ✅ Oui |
codeInsee → commune | Le code officiel de l'INSEE désigne une seule commune | ✅ Oui |
CodePostal → Ville | Un même code postal dessert souvent plusieurs communes (01400 en couvre dix, dans l'Ain) | ❌ Non |
Ville → CodePostal | Une ville peut avoir plusieurs codes postaux | ❌ Non |
id_mesure → concentration_ppm | Chaque mesure a une seule valeur de concentration | ✅ Oui |
Nom → NumEtudiant | Deux étudiants peuvent avoir le même nom | ❌ Non |
Ce tableau se lit vite, et c'est son défaut : il demande de croire sur parole. Une dépendance fonctionnelle ne se décrète pas, et des lignes ne suffisent pas à la prouver : elles peuvent seulement la réfuter. Le geste qui la met à l'épreuve tient pourtant en un mouvement : regrouper les lignes par la partie gauche, puis regarder si la partie droite reste constante dans chaque groupe.
Cliquer sur une dépendance pour regrouper le tableau par sa partie gauche.
Vérifiée sur les 4 lignes : chaque valeur de la partie gauche ne s'y rencontre qu'avec une seule valeur de la partie droite.
| idClient | nom | ville | codeInsee | |
|---|---|---|---|---|
| 1 | 1 | Durand | Saint-Denis | 93066 |
| 2 | 2 | Leroy | Lyon | 69123 |
| 3 | 3 | Moreau | Saint-Denis | 97411 |
| 4 | 4 | Fontaine | Bordeaux | 33063 |
Les lignes sont regroupées par codeInsee (4 groupes). Dans chacun, ville garde la même valeur : la dépendance tient.
Les deux boutons portent la même paire d'attributs, dans les deux sens, et un seul tient. ville → codeInsee est réfutée, et ce ne sont pas des mots : Saint-Denis est une commune de Seine-Saint-Denis et une commune de La Réunion. Une seule contradiction suffit. codeInsee → ville tient sur ces lignes, mais ce ne sont pas elles qui la rendent vraie : c'est la règle de l'INSEE, qui donne un code à chaque commune, et à une seule.
Le code postal, qui ressemble tant au code INSEE, ne détermine pas la commune : 33650 dessert La Brède, Martillac et cinq autres communes. Quatre lignes où il semblerait tenir n'auraient rien prouvé.
A → B et B → A sont deux affirmations distinctes, et l'une peut être vraie sans l'autre. C'est l'erreur la plus fréquente sur cette notion, et elle a des conséquences directes : c'est la partie gauche d'une dépendance qui est candidate à devenir une clé (de cette table, ou d'une table qu'on en extrait), jamais la droite.
Comment identifier une dépendance fonctionnelle ?
Le test tient en trois temps : formuler la question, la confronter au métier, conclure.
Est-ce que id_station → nom_ville ?
- Formulation : « Connaître l'identifiant d'une station permet-il de savoir dans quelle ville elle se trouve ? »
- Vérification : oui, une station est physiquement installée à un seul endroit, et elle n'en change pas.
- Conclusion : la dépendance
id_station → nom_villeest valide.
La deuxième étape est la seule qui décide, et elle ne se tranche pas sur les données : elle se tranche avec le métier. Si l'agence déplaçait ses stations d'une ville à l'autre, la même dépendance deviendrait fausse sans qu'aucune ligne du tableau n'ait changé.
Dépendances fonctionnelles composées
Parfois, une seule colonne ne suffit pas à déterminer une autre. Il faut alors une combinaison de colonnes :
Dans un relevé journalier d'un seul gaz, la concentration n'est déterminée ni par la seule station, ni par la seule date, mais par les deux ensemble :
(id_station, date_mesure) → concentration_ppm
Ce qui se lit : « pour une station donnée à une date donnée, la concentration est unique ». C'est ce couple qui forme la clé primaire de la table des mesures.
Avec une mesure par heure et plusieurs gaz, la clé deviendrait (id_station, horodatage, id_gaz) : la clé suit ce que représente une ligne, et c'est la première question à se poser.
La figure suivante le montre sur des relevés. Trois dépendances sont déclarées : deux fausses, une vraie.
Cliquer sur une dépendance pour regrouper le tableau par sa partie gauche.
Réfutée. Les lignes 1 et 2 partagent la même partie gauche mais donnent 436 et 461 pour concentration_ppm. Une seule contradiction suffit à faire tomber une dépendance.
| id_station | date_mesure | nom_ville | concentration_ppm | |
|---|---|---|---|---|
| 1 | S1 | 2025-03-01 | Montpellier | 436 |
| 2 | S1 | 2025-03-02 | Montpellier | 461 |
| 3 | S2 | 2025-03-01 | Nimes | 429 |
| 4 | S2 | 2025-03-02 | Nimes | 433 |
Les lignes sont regroupées par id_station (2 groupes). Le groupe teinté en rouge contient deux valeurs différentes à droite : la dépendance ne tient pas.
Ligne d'essai : la remplir pour mettre les dépendances à l'épreuve. Une seule ligne suffit à en faire tomber une.
La station seule ne suffit pas, la date seule non plus. Le couple, lui, n'est contredit par aucune ligne, mais sur quatre lignes il ne pouvait guère l'être : chaque couple n'y apparaît qu'une fois. Ce qui en fait la clé primaire, c'est la règle du relevé, une seule mesure par station et par jour.
Noter au passage la troisième colonne, nom_ville. Elle dépend bien du couple, mais une partie du couple suffit : la station seule la détermine. Cette dépendance à une partie de la clé annonce la deuxième forme normale du chapitre sur la normalisation.
À retenir. Pour vérifier une dépendance fonctionnelle A → B, se poser la question :
« Est-ce que connaître A permet de déterminer B de façon unique et certaine ? »
C'est le métier qui répond. Les données, elles, ne peuvent que réfuter : une seule ligne contraire suffit, et aucun nombre de lignes conformes ne prouve rien.
La clé suit ce que représente une ligne, et c'est quand ce sens change que l'erreur se glisse.
Une clé qui tenait sur un relevé par jour
Une seule étape est fausse. Désigner laquelle.
Une agence relevait la concentration de CO₂ une fois par jour dans chacune de ses stations, et la clé de sa table de mesures était le couple (id_station, date_mesure). Elle passe à relevés par jour et par station, toujours pour un seul gaz, et ajoute une colonne heure_mesure. Elle revoit sa clé.
1.codeInsee → commune est une dépendance fonctionnelle, mais pas commune → codeInsee. Pourquoi ?
2.Sur un échantillon de quatre adresses, codePostal → ville tient. Qu'en conclure ?
3.Dans un relevé journalier, quelle écriture dit que la concentration est déterminée par la station et la date prises ensemble ?
Ressources complémentaires
Chapitre révisé en octobre 2026 · Une erreur dans ce chapitre ?
Mettre en pratique
Les cinq fonctions du SI, un livrable ou une activité, le dictionnaire et le classement des données, puis les dépendances, la clé qu'elles désignent, et la requête qui en réfute une.
- La fonction que personne n'assureNiveau 2
- Un livrable, ou une activitéNiveau 2
- Le code postal qui perd son zéroNiveau 3
- Référence, activité ou descriptionNiveau 2
- Réfuter une dépendanceNiveau 2
- La clé d'un relevé à plusieurs gazNiveau 3
- La requête qui réfuteNiveau 3