next up previous contents
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

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



\resizebox*{1\columnwidth}{!}{\includegraphics{co8v1-0_mcd_arch_peda.eps}}



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

\resizebox*{1\textwidth}{!}{\includegraphics{co5v1-1_mcd_inscription.eps}}

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



\resizebox*{1\textwidth}{!}{\includegraphics{co3v1-0_mcd_emploi.eps}}



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



\resizebox*{1\textwidth}{!}{\includegraphics{co4v1-0_mcd_notabs.eps}}



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.


next up previous contents
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