Systèmes d’information et bases de données Introduction au module SI3 BTS SIO 1 Plan du cours • Qu’est ce qu’un SI ? • Partir d’un exemple Définir les termes Contexte informatique • Pourquoi les bases de données ? • • • SGF vs. SGBD Principe et architecture de référence Modèles de bases de données SGBD relationnel et standard SQL • Conclusion et objectifs du module • • • 2 S.I. : partir d’un exemple « L’information, c’est essentiel ! » Mailing de proposition commerciale Examen de dépistages sur des « personnes à risques » Une multinationale répartition des données chez Danone Un petit restaurant avec deux personnes Quelles tâches ? Quels besoins d’information ? 3 Information • En opposition à données et à connaissances • Données : les faits bruts, contrôlables : tickets de caisse • • Informations : • • • les faits traduits en réponse à une préoccupation métier L’évolution des achats d’une personne Connaissances : • • L’analyse (validité?) d’une information Bon client, client à risque 4 Système • Ensemble d’éléments en interaction dynamique, organisé en fonction d’un but • Un système se caractérise par • • • • Sa frontière (limite avec l’environnement) Sa finalité (intention d’atteindre un but) Son évolution (passé, présent, avenir) Son organisation • Sa structure (constituants et leurs relations) • Ses processus (activités et interactions) 5 Entreprise et information Soit le système « entreprise », son organisation reflète les circuits d’échange d’informations • Évolution de l’organisation • • Organisation taylorienne : objectif produit mais pas de prise en compte plus globale de la qualité Organisation fondée sur les processus (BPR) : objectif satisfaction client liée à la qualité de la chaîne • Le S.I. doit répondre aux besoins d’information de l’organisation 6 Système d’information (1/2) « Système constitué des ressources humaines, des ressources matérielles et des procédures permettant d'acquérir, de stocker, de traiter et de diffuser les éléments d'information pertinents au fonctionnement d'une entreprise ou d'une organisation » A ne pas confondre avec un système informatique 7 Système d’information (2/2) 8 Système d’information... informatisé Ce n’est pas une obligation, juste un fait ! • L’informatique s’est imposée dans l’entreprise Mettre en œuvre des applications adaptées aux « besoins » Attention : Ces besoins changent continuellement La maintenance logicielle est une des tâches les plus difficiles du développement logiciel • • • Les méthodes de conception sont d’une aide limitée pour la maintenance (documentation) Rendu plus complexe par la multiplicité des applications 9 Faciliter la maintenance Trouver des parties stables dans le SI ? Les données, parce qu’elle reflètent le monde qui nous entoure • Souvent, évolution plus lente que les besoins des utilisateurs • Exemple pratique • Les entreprises gèrent des volumes de données très grands • Giga, Terra, Péta –octets • Numériques, Textuelles, Multi-média (images, films,...) un carnet d’adresses • Les données sont structurées et identifiées • Données élémentaires ex: Votre salaire, Votre note en BD • Données composées ex: Votre CV, vos résultats de l'année • Identifiant humain ex: NSS ou machine: P26215 10 Plan du cours • Qu’est ce qu’un SI ? • Partir d’un exemple Définir les termes Contexte informatique • Pourquoi les bases de données ? • • • SGF vers SGBD Principe et architecture de référence Modèles de bases de données SGBD relationnel et standard SQL • Conclusion et objectifs du module • • • 11 Applis au dessus d’un SGF (1/2) Risques : • Structure des données intégrée dans l’application (donc dépendance données /traitements) • Si modification stockage ou structure données Ré écriture de toutes les applications • Si nouvelle application Ré organisation des données Création de nouveaux fichiers de données mieux adaptés Duplication des données 12 Applis au dessus d’un SGF (2/2) Problèmes : • • • Gestion difficile des accès multi utilisateurs Absence de contrôle pour l’accès et la manipulation des données Mauvaise résistance aux pannes Impacts • • Lourdeur des applications Augmentation des coûts de maintenance et de développement 13 Systèmes de fichiers Comptabilité Caractéristiques Chirurgie Problèmes Consultations Psychiatrie 14 Format des fichiers Caractéristiques Plusieurs applications Dupont Symptomes : y Turlututu : sqj Symptomes : y Turlututu : sdd Analyses : xxx Dupond plusieurs formats plusieurs langages Turlututusqjsk Symptom: yyyy Analyses xxxx Turlututudhjsd Analyses :xx Problèmes Difficultés de gestion Duhpon Duipont Symptomes : yy Analyses : xxxx Symptomyyyy Analysesxxxx Symptomes : yy Turlututudhjsd Turlututu : sq 15 Redondance (données) Caractéristiques Plusieurs applications Dupont Symptomes : y Turlututu : sqj Symptomes : y Turlututu : sdd Analyses : xxx Dupond Turlututusqjsk Symptom: yyyy Analyses xxxx Turlututudhjsd Analyses :xx plusieurs formats plusieurs langages Redondance de données Problèmes Difficultés de gestion Incohérence des données Duhpon Duipont Turlututu : sq Symptomes : yy Analyses : xxxx Symptomyyyy Analysesxxxx Symptomes : yy Turlututudhjsd 16 Interrogations Caractéristiques ComptaSoft Dupont Symptomes : y Turlututu : sqj Symptomes : y Turlututu : sdd Analyses : xxx Dupond Turlututusqjsk Symptom: yyyy Analyses xxxx Turlututudhjsd Analyses :xx ChiruSoft Plusieurs applications plusieurs formats plusieurs langages Redondance de données Pas de facilité d’interrogation Question développement Redondance de code Problèmes ConsultSoft Duhpon Duipont Turlututu : sq Symptomes : yy Analyses : xxxx Symptomyyyy Analysesxxxx Symptomes : yy Turlututudhjsd PsychiaSoft Difficultés de gestion Incohérence des données Coûts élevés Maintenance difficile 17 Pannes ??? Caractéristiques ComptaSoft Dupont Symptomes : y Turlututu : sqj Symptomes : y Turlututu : sdd Analyses : xxx Dupond Turlututusqjsk Symptom: yyyy Analyses xxxx Turlututudhjsd Analyses :xx ChiruSoft Plusieurs applications plusieurs formats plusieurs langages Redondance de données Pas de facilité d’interrogation Question développement Redondance de code ConsultSoft Duhpon Duipont Symptomes : yy Analyses : xxxx Symptomyyyy Analysesxxxx Symptomes : yy Turlututudhjsd Turlututu : sq PsychiaSoft Problèmes Difficultés de gestion Incohérence des données Coûts élevés Maintenance difficile 18 Gestion de pannes ??? Partage de données Caractéristiques ComptaSoft Dupont Symptomes : y Turlututu : sqj Symptomes : y Turlututu : sdd Analyses : xxx Dupond Turlututusqjsk Symptom: yyyy Analyses xxxx Turlututudhjsd Analyses :xx ChiruSoft Plusieurs applications plusieurs formats plusieurs langages Redondance de données Pas de facilité d’interrogation Question développement Redondance de code ConsultSoft Duhpon Duipont Symptomes : yy Analyses : xxxx Symptomyyyy Analysesxxxx Symptomes : yy Turlututudhjsd Turlututu : sq PsychiaSoft Problèmes Difficultés de gestion Incohérence des données Coûts élevés Maintenance difficile 19 Gestion de pannes ??? Partage des données ??? Confidentialité Caractéristiques ComptaSoft Dupont Symptomes : y Turlututu : sqj Symptomes : y Turlututu : sdd Analyses : xxx Dupond Turlututusqjsk Symptom: yyyy Analyses xxxx Turlututudhjsd Analyses :xx ChiruSoft Plusieurs applications plusieurs formats plusieurs langages Redondance de données Pas de facilité d’interrogation Question développement Redondance de code ConsultSoft Duhpon Duipont Symptomes : yy Analyses : xxxx Symptomyyyy Analysesxxxx Symptomes : yy Turlututudhjsd Turlututu : sq PsychiaSoft Problèmes Difficultés de gestion Incohérence des données Coûts élevés Maintenance difficile 20 Gestion de pannes ??? Partage des données ??? Confidentialité ??? L’approche ‘‘Bases de données’’ • Modélisation des données Eliminer la redondance de données Centraliser et organiser correctement les données Plusieurs niveaux de modélisation Outils de conception • Logiciel «Système de Gestion de Bases de Données» Factorisation des modules de contrôle des applications - Interrogation, cohérence, partage, gestion de pannes, etc… Administration facilitées des données 21 Des fichiers aux BDD 22 Un peu d'histoire • Années 60 : • Récipients logique de données fichiers sur disque • Accès séquentiel puis sur clé • Lire (Nomf, Article), Ecrire (Nomf, Article) • Lire (Nomf, Article, Clé), Ecrire (Nomf, article, Clé) • Années 70 : • Avènement des Bases de Données Réseaux (BD) • Ensemble de fichiers reliés par des pointeurs • Langage d'interrogation par navigation • Années 80 : • Avènement des Bases de Données Relationnelles (BDR) • Relations entre ensemble de données • Langage d'interrogation par assertion logique 23 1ère approche d’un SGBD • Qui enseigne le cours de BD ? • Select nom from Enseignant where Module = ‘SI3’; • • • • • Nom Prénom Module Revy Marie SI1 Accary Tiphaine SI2 Granotier Fred SI3 Ressouche Gilles SI4 24 Définitions intuitives d’une BD Une base de données est un ensemble structuré de données (1) enregistrées sur des supports accessibles par l’ordinateur (2) pour satisfaire simultanément plusieurs utilisateurs (3) de manière sélective (4) en un temps opportun (5). Une base de données est un ensemble de données reliées entre-elles de manière logique 25 Définition intuitive d’un SGBD 26 SGBD : Principe fondateur Indépendance des données • • • Objectifs : Adaptation aux utilisateurs / applications Garantie des performances Architecture standardisée ANSI/X3/SPARC (76) 27 SGBD : Concept fondateur Exigence d’un modèle de données • Ensemble de structures permettant de représenter la réalité telle qu’on la perçoit : c’est le schéma Il existe différents modèles de données • Des modèles conceptuels Entité-association, UML … • Des modèles logiques Modèle relationnel • Des modèles physiques Il faut donc distinguer modèles conceptuels, à priori indépendants des SGBD, et modèles logiques, caractéristiques d'une génération de SGBD. 28 Modélisation du réel Réel Modèle conceptuel Modèle logique Modèle Physique • Indépendant du modèle de données • Indépendant du SGBD • Dépendant du modèle de données • Indépendant du SGBD Médecin Codasyl effectue Relationnel Visite Objet • Dépendant du modèle de données • Organisation physique des données • Dépendant du SGBD • Structures accélératrices (index) • Structures de stockage des données XML 29 Modèle Entité Association L’entité : concept pourvu d’une existence propre • Renvoie à une notion concrète ou abstraite L’association : lien sémantique non orienté entre 2 ou plusieurs entités • Cardinalité La propriété : donnée élémentaire permettant de décrire une entité 30 Modèle relationnel 31 Importance du modèle de données • Il est à la base des méthodes de description de données • Créer et faire évoluer un schéma de données • Il supporte le langage d’interrogation des données • Objectifs de facilité et de performances • Il aide au support de l’intégrité pendant les mises à jour • Expression des contraintes 32 Objectifs des SGBD I- Indépendance Physique X - Standards II- Indépendance Logique III – Langage de manipulation IX - Gestion de la confidentialité VIII - Concurrence d’accès BD IV - Gestion des vues V - Optimisation des questions VII - Gestion des pannes VI - Gestion de la cohérence 33 Avantages de l’indépendance physique Indépendance des programmes d'applications vis à vis du modèle physique : • Possibilité de modifier les structures de stockage (fichiers, index, chemins d'accès, …) sans modifier les programmes; • Ecriture des applications par des non-spécialistes des fichiers et des structures de stockage; • Meilleure portabilité des applications et indépendance vis à vis du matériel. 34 Avantages de l’indépendance logique • Possibilité pour chaque application d'ignorer les besoins des autres (bien que partageant la même BD). • Possibilité d'évolution de la base de données sans réécriture des applications : • ajout de champs, ajout de relation, renommage de champs. • Possibilité d'intégrer des applications existantes sans modifier les autres. • Possibilité de limiter les conséquences du partage : Données confidentielles. 35 Qualités du modèle relationnel Description de données • • Support de l’architecture ANSI Méthode formelle de modélisation des données • • Minimise la redondance d’information Limite les problèmes d’incohérence Langages d’interrogation • • Langages déclaratifs : le standard SQL Langage procédural : algèbre relationnelle • Exploite l’organisation physique des données Mises à jour • • • Spécification de contraintes d’intégrité Ex : clef primaire – contraintes de clefs référentielles Support des transactions Résistance aux pannes Support multi utilisateurs 36 Manipulation aisée • La manipulation se fait via un langage déclaratif • La question déclare l’objectif sans décrire la méthode • Le langage suit une norme commune à tous les SGBD • SQL : Structured Query Langage • Sémantique • Logique du 1er ordre ++ • Syntaxe (aperçu !) • SELECT <structure des résultats> • FROM <relations> • WHERE <conditions> 37 Isolation et Cohérence BD • Le SGBD gère les accès concurrents Chacun à l’impression d’être seul (Isolation) Cohérence conservée (Pas de maj conflictuelles) 38 Confidentialité • Objectif : Protéger les données de la BD contre des accès non autorisés • Deux niveaux : • Connexion restreinte aux usagers répertoriés (mot de passe) • Privilèges d'accès aux objets de la base • Usagers : Usager ou groupe d’usagers • Objets : Relation, Vue, autres objets (procédures, etc.) 39 Standardisation • L’approche bases de données est basée sur plusieurs standards • Langage SQL (SQL1, SQL2, SQL3) • Communication SQL CLI (ODBC / JDBC) • Transactions (X/Open DTP, OSI-TP) • Force des standards • Portabilité • Interopérabilté • Applications multisources… 40 Conclusion Les SGBD au cœur des systèmes d’information • • Permettent de réduire les coûts d’évolution des S. I. Architecture de référence (ANSI) Module sur les SGBD relationnels • Systèmes incontournables • Standard SQL • Interrogation, mise à jour, modélisation, développement d’applications • Intégration aux processus de conception et de maintenance du SI 41 Objectifs du module SI3 (1 semestre) • Extraire et modifier les données d’une base de données • Implémenter une base de données à partir d’un schéma existant • Configurer les droits d’accès à une base de données • Caractériser une solution d’implémentation de données 42 Sources du diaporama Systèmes d’information et utilisation de bases de données • S. Huchet (ITG) - P. Picouet (ENST Bretagne) Bases de données : Introduction et Objectifs • G. Gardarin et L. Bouganim Systèmes d’information et management des organisation • R. Reix, Ed. Vuibert, collection Gestion, 2002. Conception et architecture des bases de données • R. Elmasri & S. Navathe, 4° édition, Pearson education France, 2004. 43