Vous êtes sur la page 1sur 53

m 


  m 

| 

› Partie « Développement dǯun SI »


› Objectif : savoir appliquer une méthode de développement dǯun SI

› Partie « Base de Données »


› Objectif : savoir concevoir un modèle de BDD et lǯimplanter avec un
langage de manipulation de données
› Outils : modèle E-A, relationnel, UML, SQL,
Õ   
   
  

Õ Õ

!"#$"%

Le Modèle Entité-Association

Le modèle relationnel


|   

› Qu'appelle-t-on SI
› Rôle du SI
› Importance du SI
›
&%'(
› )*%'
Un système d'information (noté SI) représente
l'ensemble des éléments participant à la gestion, au
stockage, au traitement, au transport et à la diffusion
de l'information au sein d'une organisation.
Système = ensemble auto-réglable et interagissant avec
lǯenvironnement qui fonctionne en vue dǯun objectif
précis

Information = donnée enrichie dǯun modèle


dǯinterprétation
Un SI a deux fonctions principales [Dumoulin]
La production dǯinformation
Collecter des informations
Traiter et transmettre des informations
Mémoriser des informations
La mise en œuvre dǯoutils de gestion
Fonction technologiques (matériels, logiciels,
méthodes, savoir-faire, ǥ)6
Fonction économique
Fonction sociale
Importance qui s'est largement accrue dans les 20
dernières années
De plus en plus le DSI est au moins aussi important que la
DRH ou le marketing
Dépendante de l'activité mais pas seulement importante
pour le secteur des sciences et informations
Société de l'information
Économie du savoir
Collecter les informations
Stocker les informations
Traiter les informations
Diffuser les informations
r   
›But du stockage
› conserver l'information (archivage des
données)6
› rendre l'information disponible
(publication des données)6
› réutiliser l'information (traitement des
données)6
Lǯinformatisation du SI nécessite la mise en place de
supports matériels et logiciels de stockage des données.

Lǯinformation est numérisée et conservée sous la forme de


fichiers.

Le moyen dǯorganiser, dǯaccéder à et de manipuler ces


fichiers est à définir
 
›Sauvegardes
› des serveurs
› des postes
› des bases de données

›Services de stockages externes /


internes
›Multi-localisation des sauvegardes
Système utilisé pour gérer les données dǯun disque
(disquette, disque dur, CD-Rom, ǥ)6
Un fichier = une suite ordonnée de données
2 types dǯaccès aux données dǯun fichier
Séquentiel (depuis lǯadresse de début du fichier)6
Accès direct (selon un décalage par rapport à lǯadresse de début)6
Système de Gestion de Fichiers (SGF) : gère les accès aux
fichiers.
Inconvénient :
Structure trop simple (applications indépendantes)6
Redondance dǯinformation
Une Base de Données (BDD) est un ensemble
structuré de données accessibles par lǯordinateur pour
satisfaire simultanément plusieurs utilisateurs

La structure de la BDD dépend du modèle choisi


Hiérarchique ou réseaux (ύ 1960)6
Relationnel (ύ 1970/1980)6
Objet (ύ 1990)6
Õ Õ
9 
   
 ë+,+m%(-
Une BD [Base de Données] est un ensemble
volumineux, structuré et minimalement redondant de
données, reliées entre elles, stockées sur supports
numériques centralisés ou distribués, servant pour les
besoins d'une ou plusieurs applications, interrogeables
et modifiables par un ou plusieurs utilisateurs
travaillant potentiellement en parallèle.
Ú
|    
Une BD de gestion de l'activité d'une compagnie
aérienne concernant les voyageurs, les vols, les avions,
le personnel, les réservations, etc. Une telle BD
pourrait permettre la gestion des réservations, des
disponibilités des avions en fonction des vols à
effectuer, des affectation des personnels volants, etc.

     
  
 ë+,+
.m/-
Un SGBD [
!"  .  m% 
/(] est un logiciel qui prend en charge la
structuration, le stockage, la mise à jour et la
maintenance d'une base de données. Il est l'unique
interface entre les informaticiens et les données
(définition des schémas, programmation des
applications), ainsi qu'entre les utilisateurs et les
données (consultation et mise à jour).
Un Système de Gestion de Bases de Données (SGBD)
est un ensemble dǯoutils logiciels permettant la
manipulation de BDD
Facilite la manipulation des données pour des non-
informaticiens
Fournit des fonctionnalités dǯadministration de la
base
Ú
 r 
› †Oracle est un SGBD relationnel (et Relationnel-Objet dans ses
dernières
versions) très reconnu pour les applications professionnelles.
› †MySQL est un SGBD relationnel libre (licence GPL et commerciale),
simple d'accès et très utilisé pour la réalisation de sites Web
dynamiques. Depuis la version 4 MySQL implémente la plupart des
fonctions attendues d'un SGBD relationnel.
› †PosgreSQL est un SGBD relationnel et relationnel-objet très puissant
qui offre une alternative open-source aux solutions commerciales
comme Oracle ou IBM.
› †Access est un SGBD relationnel Microsoft, qui offre une interface
conviviale permettant de concevoir rapidement des applications de
petite envergure ou de réaliser des prototypes à moindre frais.
9 r 
› ´ 
Avant l'avènement des SGBD, chaque application
informatique dans l'entreprise impliquait sa propre
équipe de développement, ses propres supports
physiques, ses propres fichiers, ses propres normes, ses
propres langages, etc.
9 r 
 | 
L'existence conjointe et croissante de ces applications
indépendantes a des effets négatifs, tels que :
†La multiplication des tâches de saisie, de développement et
de support informatique
†La redondance anarchique des informations dans les fichiers
†L'incohérence des versions simultanées de fichiers
†La non-portabilité des traitements en raison des différences
dans les formats et langages.
†La multiplication des coûts de développement et de
maintenance des applications.
9 r 
 9 
Les conséquences précédemment citées se répercutent sur
l'entreprise en générant des problèmes humains et matériels.
Coûts en personnels qualifiés et en formations
l †Remise des pouvoirs de décision entre les mains de
spécialistes informatiques
l †Tout changement matériel ou logiciel a un impact sur les
applications
l †Tout changement de la structure des données nécessite de
modifier les programmes
ë 
En réalité les applications ne sont jamais totalement disjointes,
des données similaires (le cœur de l'information d'entreprise)
sont toujours à la base des traitements.
9 r 
0 0,"1
 †Les données comptables
 †Les données clients et fournisseurs
 †Les données relatives à la gestion des stocks
 †Les données relatives aux livraisons
 †Les données marketing et commerciales
 †Les données relatives au personnel
 †etc.
Fidélité
image fidèle de la réalité qu'elle modélise
Unicité
pas de redondance d'information dans la BD
Indépendance
indépendant du modèle de stockage
Concurrence
Gestion dǯaccès simultanés à une même donnée.
Performance
temps dǯexécution raisonnable
9      
 
6
r 
› Confidentialité
› Accessibilité des données dépendant de lǯutilisateur
› Intégrité
› garanties de fiabilité et de cohérence.
› Robustesse
› tolérant aux problèmes matériels, logiciels ou humains
|    
c  c 
c 6  
  

     

 
 6 6  
 
‘    
    

| 
  
c
 



   ë 
  w   
 
c
   c 
 

  
  
Origine du modèle Entité-Association

 Proposé par Chen en 1976


 Modèle sémantique pour comprendre et visualiser
lǯorganisation des données
 Également appelé modèle EAR (Entité-Attribut-
Relation)6
 Objectif : concevoir un Modèle Conceptuel de
Données (MCD)6
 
66 6 


c 

6 6
 
 c 6
 






66 6
  6
 c 6

( : type d'objet abstrait ou concret provenant de
l'observation du monde réel et pour lequel nous
souhaitons enregistrer et connaître des informations

w6    66


 66


Ú 
 
    
 



   ! 
"#$%   

2: caractéristique d'une entité (ou d'une
association) que le concepteur juge nécessaire de
répertorier

‘6
Ê 6 
 6  6 
w6
6

6 6 
 6 66 
w6 6  66 66 6 

(:  


   

   
 


 
 
   
 



 9 66 66 


6 66!6
 

66 66
 6"

 9 66 669 

6 66!6 #6 6 6 6
6
66 6 6"

%:          
   

     
   
   
Une association peut :
relier plus de 2 entités
bénéficier dǯattributs
/($$"%"
Les cardinalités sont des couples de valeur que l'on
trouve entre chaque entité et ses associations liées.

Donc, pour une association de 2 entités, il y a 4


cardinalités à indiquer (2 de chaque côté).
Il y a trois valeurs typiques : 0, 1 et N (plusieurs).
Les cardinalités traduisent des !''. Ce
sont des règles propres à l'organisation étudiée, qui
sont décidées par les gestionnaires et décideurs. Ces
règles expriment des contraintes sur le modèle.
3"0
Pour la cardinalité minimale entre client et commander, • 
 
  • :
Pour un client donné, combien de fois au minimum il
commande ?
ou encore mieux
42'%qu'un client effectue une commande de
produit ?
Cela dépend des .
/.
de l'entreprise.
Si la règle de gestion est « tout client doit passer au moins
une commande sinon ce nǯest pas un client » on met la
cardinalité mini à 1
En fait, dans la grande majorité des cas, on nǯutilise que
4 combinaisons de valeurs pour les cardinalités.

5%0676
56767676
5670
58(0
La cardinalité d'une association indique le nombre
d'occurrences de chaque entité qui peuvent être
impliquées dans une même association
Expliquez les cardinalités.
Cardinalité Client - 0,N - Correspondre : A un client correspond 0 ou n factures.
Cardinalité Facture - 1,1 - Client : A une facture correspond un client et un seul.
Cardinalité Facture - 1,N - Comprendre : Une facture comprend 1 ou plusieurs produits.
Cardinalité Produit - 0,N - Comprendre : A un produit peut correspondre 0 ou n factures.
Le besoin de gestion des contrats des clients dǯune
société est modélise avec ce schéma Entité/Association :
V  66  66 66
 6
 
6
6
 6   6$

%  6
6 66
66
 6
6
 6 66   6$

& 9  6  
6
 6

 6  66!6   6$

' 9  6   6 6!6


6
  6
 6   6$
Le besoin de gestion des contrats des clients dǯune
société est modélise avec ce schéma Entité/Association :
V  66  66 66
 6
 
6
6
 6   6$
r
  36  6  
6 
6
666  ‘ 
%  6
6 66
66
 6
6
 6 66   6$
( 
636  6  
6  
6
666  ‘ 
& 9  6  
6
 6

 6  666   6$
( 
636  6 
6 
6
66 ‘ 6 ‘r  
' 9  6   6 66
6
  6
 6   6$
( 
636  6 
6 
6
66‘r  6  ‘ 
On souhaite concevoir le SI correspondant à la gestion de
la scolarité de lǯINTTIC. La scolarité fonctionne de la
manière suivante :
Un étudiant appartient à une promotion (1A, 2A ou 3A).
Les étudiants dǯune promotion suivent plusieurs groupes
pédagogiques (GP). Chaque groupe pédagogique est
constitué dǯunités pédagogiques (UP).
A chaque GP et UP est affecté un enseignant responsable.
Un étudiant obtient une note par UP et par GP quǯil suit.
On représente les entités suivantes :
 %
'%
9"
.09(%'',
(9(%'',
On représente les associations suivantes :
Un étudiant %00% à une promotion
Une promotion %!à certains groupes
pédagogiques
Un étudiant  plusieurs groupes pédagogiques et y
obtient une note
Un étudiant  plusieurs unités pédagogiques et y
obtient une note
Les GP et UP sont '( par un enseignant
  
 + 69 * *


V3
 ) 
 36
 V3V  36 
*
 36 
*  636
V3 V3
 36 
* V
V3 

*
V3V
 6  3
 
 

 
* 
 636
 36 
*
3 V3 V3  36 
*
9 
 w
69 * *
V 3
V3
 36 
*  36 
* V
 
*
Origine du modèle relationnel

 Proposé par Codd en 1970


 Application de la théorie des relations à la gestion de
fichiers informatiques
 Le modèle relationnel fournit un support mathématique
cohérent à la manipulation de données : lǯalgèbre relationnelle
 Modèle dominant dans les offres commerciales de SGBD
Oracle, DB2, Sybase, Ingres, Postgres, MySQL, ǥ
Organisation des données en tables 2D
Une table 2D = une relation
Une colonne dǯune table = un attribut
Une ligne dǯune table = un tuple
Manipulation des données par des opérateurs
Lǯalgèbre relationnelle
Cohérence des données gérée par des règles et normes
Dépendances fonctionnelles
Théorie de la normalisation
La construction dǯun schéma conceptuel peut se réaliser de la manière suivante :
1. Déterminer la liste des entités.
2. Pour chaque entité :
a) établir la liste de ses attributs ;
b) parmi ceux-ci, déterminer un identifiant.
3. Déterminer les relations entre les entités.
4. Pour chaque relation :
a) dresser la liste des attributs propres à la relation ;
b) vérifier la dimension (binaire, ternaire, etc.) ;
c) définir les cardinalités.
5. Vérifier le schéma obtenu, notamment :
a) supprimer les transitivités ;
b) sǯassurer que le schéma est connexe ;
c) sǯassurer quǯil répons aux demandes.
6. Valider avec les utilisateurs.