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
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.
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.
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.
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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
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.
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
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.
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