i
suivant: Spécifications détaillées du système monter: Document de conception du précédent: Architecture globale
du système Table des matières
Sous-sections
Choix entre Merise et UML
Dictionnaire de données
Codification des champs en arabe
Codification des clefs 'étrangères'
Modèle Conceptuel des Données (MCD)
MCD domaine architecture pédagogique
Description des entités
Description des relations
MCD domaine inscription
Description des entités
Description des relations
MCD domaine Emploi du temps
Description des entités non décrites dans le mcd précédent
Description des relations
MCD domaine absences et notes
Description des entités non décrites dans les mcd précédents
Description des relations
Liste des tables de la base de données
Liste des index, vues, ou procédures stockées
Base de données distribuée
Documents de conception
Choix entre Merise et UML
Le choix adopté pour spécifier ce projet est le formalisme MERISE. Cela n'empêchera pas que l'on puisse utiliser
UML pour spécifier certaines parties du projet.
Dictionnaire de données
Le dictionnaire initial n'a pas été respecté et a été corrigé à plusieurs niveaux. Il faudrait maintenant extraire à partir
du schéma de la base de données le nouveau dictionnaire de données et le transcrire ici. L'avantage d'un dictionnaire
est d'uniformiser les appellations de champs dans une base de données et leur donner une sémantique universelle.
Codification des champs en arabe
L'encodage utilisé pour les champs en arabe est Unicode UTF-8. Le nom du champ contenant le texte en arabe est
codé avec le même nom que le champ correspondant en français avec en plus un suffixe '_ar'. Par exemple
'prenom_ar' signifie que le champ contient le prénom en arabe encodé en utf-8.
Codification des clefs 'étrangères'
Il est préférable que les clefs étrangères ait le même nom que leur correspondant dans les tables associés. Ceci afin
de faciliter l'écriture des requêtes de jointure.
Modèle Conceptuel des Données (MCD)
MCD domaine architecture pédagogique
Description des entités
Etablissement
Cette entité stocke les informations relative à l'établissement faculté ou école supérieure.
Université
Contient les informations relatives à l'université.
Filière
C'est l'entité qui stocke le code et le libellé des filières types ou propres à un établissement.
Module
C'est l'entité décrivant un module d'enseignement.
Matiere
c'est l'entité incluant les matières enseignées dans un module.
Professeur
est l'entité incluant les informations sur les enseignants.
Cycle
décrit les cycles d'enseignement possibles : DEUG/DEUP, LF/LP, etc.
Description des relations
relève
chaque établissement relève d'une université.
organisé
chaque établissement est organisé en départements.
dispose
chaque établissement dispose d'un certrain nombre de filières.
domicilié
chaque module est domicilié au niveau d'un département.
contient
chaque module contient des matières.
comprend
une filière contient des modules déterminés en fonction du cycle d'enseignement, de la filière et du niveau. Un
module est inclu dans un cycle soit en tant que module majeur, complémentaire ou transversal.
coordone
une filière est coordonnée par un professeur.
responsable
un module a pour responsable un professeur.
MCD domaine inscription
Description des entités
Etudiant
Inclut toutes les informations relatives à un étudiant.
Groupe
Les étudiants peuvent être regroupés dans des groupes de TD, TP, section, etc. Ces types de groupe sont
stockés dans cette entité. On peut créer autant de types de groupes qu'on veut.
pays
Entité contenant les codes/libellés des pays. Nous utiliserons le code téléphonique international comme code
pays.
seriebac
série du baccalauréat : sciences, lettres, mathématiques, etc.
accadémie
liste les accadémies du royaume où la session du bac de l'étudiant est passée.
serie
c'est la série du baccalauréat de l'étudiant : sciences, lettres, etc.
province
code/libellé de la province du royaume.
csp
catégorie socio-professionnelle des parents.
sport
sports pratiqués.
art
activités artistiques préatiquées.
Description des relations
inscrit
L'inscription d'un étudiant s'effectue dans des modules pour une filière dans un cycle donné. Elle est effective
pour une année universitaire, un semestre et un niveau donnés.
appartient
Un étudiant peut appartenir à plusieurs groupes de manière tout à fait dynamique. Cette appartenance est
valable pour une année universitaire, un semestre, un niveau et un numéro de groupe donnés.
nationalité
bien qu'il puisse y avoir des personnes avec plusieurs nationalités, pour des raisons de simplicité nous
supposons que chaque étudiant à une seule nationalité.
série bac
le bac obtenu par l'étudiant est d'une série donnée.
accadémie bac
accadémie où le bac a été obtenu.
pays bac
relation utile surtout si le baccaluréat est étranger.
né à
province où est né l'étudiant.
prov. bac
la province où le bac a été obtenu.
habite à
province où habite les parents de l'étudiant.
joue
liste des sports pratiqués par l'étudiant.
pratique
liste des activités artisitiques de l'étudiant.
profession père
catégorie socio-professionnelle du père.
profession mère
catégorie socio-professionnelle de la mère.
MCD domaine Emploi du temps
Description des entités non décrites dans le mcd précédent
emploi
est l'entité qui consigne les informations sur les emplois du temps. Un emploi du temps est le plan, par tranche
de temps, d'occupation des salles par les groupes d'étudiants et par les enseignants pour enseigner leurs
matières. Un emploi du temps peut être limité dans le temps, par exemple, on peut créer un emploi spécial
Ramadan.
seance
est l'entité regroupant les séances composants un emploi du temps. Une séance à une heure de début et une
heure de fin, elle a lieu un jour de la semaine.
salle
est la salle où se déroule un cours.
type_salle
c'est soit amphithéatre, salle de td, salle de tp, etc.
Description des relations
relatif
un emploi est défini pour une filière, cycle et un groupe d'étudiants.
contient
chaque emploi est constitué de plusieurs séances.
concerne
une séance d'emploi du temps concerne une salle, une professeur, une matière et un groupe (td, tp, etc.).
de type
une salle est soit un amphithéatre, une salle de tp, td, etc.
MCD domaine absences et notes
Description des entités non décrites dans les mcd précédents
type de note
cela peut être 'note de td', 'note orale', 'note examen final', 'note contrôle continu', etc. Cette entité permet de
prendre en compte le type d'évaluation que le responsable du module veut appliquer dans les matières
relevant de ce module.
absence
cette entité consigne toutes les absences d'un étudiant.
Description des relations
obtient
un étudiant obtient une note par type de note et par matière.
a
un étudiant à zéro ou plusieurs absences.
relative
une absence est relative à une séance d'emploi du temps. Impliquer l'entité 'matière' dans la relation ou stocker
les heures de débuts et fin dans l'entité peut paraître redandant car toutes ces informations sont stockées dans
l'entité 'séance'. En fait l'explication de cette redondance c'est que l'emploi du temps peut évoluer dans le
temps et changer et nous ne gardons par l'historique des changements d'un emploi du temps. Par conséquent
pour garder l'historique des absences, il faut stocker les informations pertinentes dans l'entité absence.
coefficient
chaque matière a un coefficient dépendant du type de note, de la filière, du module, du cycle et du niveau.
Eventuellement, le coefficient peut varier d'une année universitaire ou d'un semestre à l'autre.
capitalise
un étudiant peut avoir capitalisé des modules dans un établissement durant une année universitaire/semestre
dans une filière et cycle donnés.
Liste des tables de la base de données
Les tables issues des entités sont les suivantes : etablissement, filiere, universite, departement, module, matiere, cycle,
professeur, etudiant, accademie, groupe, serie, pays, province, sport, art, csp, emploi, seance, salle, typsalle,
typnote, absence.
Les tables issues des relations sont les suivantes:
inscrit
relation entre etudiant, filière et cycle.
suit
relation entre etudiant et module.
comprend
relation entre filière, cycle et module
appartient
relation entre etudiant, cycle et groupe
joue
relation entre etudiant et sport.
pratique
relation entre etudiant et art.
note
relation entre etudiant, typnote et matière.
capitalise
relation entre etudiant, etablissement, filiere, module et cycle.
coefficient
relation entre matiere, typnote, filiere, module et cycle.
Liste des index, vues, ou procédures stockées
Toutes les clefs des tables donnent lieu automatiquement à un index créé par le SGBD. Toutes les clefs étragères
importées dans une table doivent donner lieu à la création d'un index ayant pour nom 'clef_etrangere_ndx'. Nous
allons présenter ici les index créés automatiquement par un script au moment de la création des tables en dehors des
deux types d'index cités précédemment.
idref_code_etab_ndx
index clef étrangère code établissement dans dépa.
cin_ndx
index de recherche par cin dans la table étudiant
nom_ndx
index de recherche par nom dans la table étudiant
Base de données distribuée
La base de données est créé au niveau du serveur de chaque établissement. Cependant, elle est conçue pour être
distribuée au niveaux de tous les établissements de toutes les universités qui auront adopté SIRIUS. Pour cela nous
distinguons deux types de tables : les tables communes et identiques entre tous les établissements et les tables
propres à chaque établissement :
Tables communes Tables spécifiques
université filiere
etablissement departement
etudiant module
cycle matiere
accademie groupe
service emploi
pays seance
province salle
sport typsalle
art typnote
csp absence
capitalise inscrit
professeur suit
comprend
appartient
joue
pratique
note
coefficient
Les tables communes sont synchronisées automatiquement entre tous les sites hébergeant SIRIUS, tout changement
fait au niveau d'un établissement doit être reflété au niveau de tous les autres. Par exemple, un établissement qui
inscrit un étudiant, ce dernier est automatiquement pris en compte par les systèmes d'information de tous les autres
établissements. Les autres tables, sont spécifiques à un établissement et contiennent des données évoluant
indépendemment des autres établissements. La synchronisation des tables communes entre les établissements
s'effectuera en utilisant des fichiers au format XML et des démons échangeant et intégrant les données au niveau de
chaque base. La fréquence de mise à jour des données ainsi que la procédure exacte d'échange sera décrite dans
une version ultérieure de ce même document.
i
suivant: Spécifications détaillées du système monter: Document de conception du précédent: Architecture globale
du système Table des matières
2003-09-24