Etude de l’existant :
La grille des données brutes :
Propriété Liste des PV PV PV délibération Résultat Résultat Relevé de Relevé de
stagiaires d’ouvert délibératio des délibération délibération des notes cursus de
incorporés ure de n des évaluations des évaluations formation
Document section évaluations finales évaluations finales
semestriell semestrielles
es
Section X X X
N° d’ordre X
N° inscription X
Nom X X X X X
Prénom X X X X X
Date naissance X X X X X
Lieu naissance X X X X X
Niveau scolaire X
Prénom du
X
père
Nom de la
X
mère
Prénom de la
X
mère
Adresse X
Observation X
N° PV
d’ouverture de X
section
Date PV X
d’ouverture de
section
Spécialité X X X X X
Suite de la grille des données brutes :
Propriété Liste des PV PV PV délibération Résultat Résultat Relevé de Relevé de
stagiaires d’ouvert délibératio des délibération délibération des notes cursus de
incorporés ure de n des évaluations des évaluations formation
Document section évaluations finales évaluations finales
semestriell semestrielles
es
Code section X X X
Niveau de
X X X
qualification
Début de
X X X X
formation
Fin de
X X X X
formation
Nombre
X X X
d’apprenants
Responsable
X
de section
N° PV
délibération
X
des évaluations
semestrielles
N° PV
délibération
X
des évaluations
finales
Semestre n° X X X X
Date de début
X X
de semestre
Date de fin du
X X
semestre
Nombre des X X
stagiaires
admis
Nombre des
stagiaires X X
ajounés
Nombre des
stagiaires X X
exclus
X X
Suite de la grille des données brutes :
Propriété Liste des PV PV PV délibération Résultat Résultat Relevé de Relevé de
stagiaires d’ouvert délibératio des délibération délibération des notes cursus de
incorporés ure de n des évaluations des évaluations formation
Document section évaluations finales évaluations finales
semestriell semestrielles
es
Membres des
X X
jury
Fonctions jury X X
Qualité jury X X
CFPA X X X
Année scolaire X X
Notes module X X
Coefficient X X
Notes
X X
éliminatoire
Total général X X
Moyenne
X X
générale
Decision du X X X
jury
Date
délibération
X
des évaluations
semestrielles
Date
délibération
X
des évaluations
finales
Fonction
membre X X
commission
Référence X
Date relevé du
X
cursus
Suite de la grille des données brutes :
Propriété Liste des PV PV PV délibération Résultat Résultat Relevé de Relevé de
stagiaires d’ouvert délibératio des délibération délibération des notes cursus de
incorporés ure de n des évaluations des évaluations formation
Document section évaluations finales évaluations finales
semestriell semestrielles
es
Diplôme X
Moyenne X
Moyenne de
X X
semestre
Moyenne
générale des X X
semestres
Appréciation X
Note d’un
X
module
Dictionnnaire des données brute :
Propriété Code propriété Type Taille Observation
Code de la section Code_section A/N 5 Exemple :EING1
Section Intitule_section A/N 50
N° ordre Num_ordre N 3
N° inscription Num_insc N
Nom Nom A 30
Prénom Prenom A 25
Date de naissance Date_nais Date 10
Lieu de naissance Lieu_nais A/N 50
Niveau scolaire Niv_scol A/N 7
Adresse Adresse A/N 60
Prénom du père Pren_pere A 25
Nom de la mère Nom_mere A 30
Prénom de la mère Pren_mere A 25
Spécialité Specialite
Spécialité
N° PV d’ouverture de section Num_PV_sec N 2
Date PV d’ouverture de section Date_PV_sec Date 10
Niveau de qualification Niv_qualif N 1
Nombre d’apprenants Nbre_appren N 4
Responsable de section Chef_sec A 25
N° PV délibération des évaluations Num_delib_sem N 2
semestrielles
N° PV délibération des évaluations Num_delib_fin N 2
finales
Semestre n° Num_sem N 1
Début de la formation Debut_formation Date 10 10-02-2013
Date de début de semestre Debut_sem Date 10
Date de fin du semestre Fin_sem Date 10
Nombre des stagiaires admis Nbre_stag_adm N 2
Nombre des stagiaires ajounés Nbre_stag_aj N 2
Nombre des stagiaires exclus Nbre_stag_exc N 2
Nom du jury Nom_jury A 30
Prénom du jury Pren_jury A 25
Fonctions jury Fonct_jury A 20
Qualité jury Qual_jury A/N 6 Exple : PSFP1
Nom du CFPA Nom_cfpa A 30
Année scolaire An_scol A/N 9 Exple : 2013/2014
Notes module Note_mod N 2.2
Coefficient Coef N 1
Notes éliminatoire Note_elim N 2.2
Total général des notes Total_gen_note N 3.2
Moyenne générale Moy_gen N 2.2
Decision du jury Decision_jury A 10 Exple : Rattrapage
Date délibération évaluations Date_delib_sem Date 10
semestrielles
Date délibération des évaluations Date_delib_finale Date 10
finales
Fonction membre commission Fonct_mem_com A 20
Référence du cursus du stagiaire Ref A/N 14 06/cfpa/2014
Date relevé du cursus Date_curs date 10
Dictionnnaire des données brute : (suite)
Diplôme Diplôme A
Moyenne moy N 2.2
Moyenne en semestre moy N 2.2
Moyenne générale modules/ Moy_mod N 2.2
semestres
Appréciation Appriciation A 30
Note d’un module Note_mod N 2.2
Dictionnnaire des données épuré :
Propriété Code propriété Type Taille Observation
Code de la section Code_section A/N 5 Exemple :EING1 « Exploitant
Informatique G1 »
Intitulé de la section Intitule_section A/N 50
Début de la formation Debut_formation Date 10 Exemple: 10-02-2013
Fin de la formation Fin_formation Date 10
Code de la branche Code_branche A/N 3 Exemple: INF
Intitulé de la branche Intitule_branche A 70
Code de la specialite Code_specialite A/N 7 Exemple :INF0702
Intitulé de la spécialité Intitule_specialite A 50
Niveau de qualification Niv_qualif N 1 Exemple: 2,3,4,5
Diplome obtenus Diplôme A 3 Exemple: CMP
Niveau d’accès Niv_acces A/N 40
Mode de formation Mode_format A/N 5 Exemple: FR/FA
Code délibération Code_delib A/N 10 Exemple: 01/INF0702
Intitulé délibération Intitule_delib A/N 70
Numéro du semestre Num_sem N 1
Intitulé du semestre Intitule_sem A/N 9 Exemple: semestre1
Code du stagiaire Code_stag N 6
Nom stagiaire Nom_stag A 30
Prénom stagiaire Pren_stag A 25
Date de naissance Date_nais Date 10
Lieu de naissance Lieu_nais A/N 50
Niveau scolaire Niv_scol A/N 7
Adresse Adresse A/N 60
Prénom du père Pren_pere A 25
Nom de la mère Nom_mere A 30
Code du module Code_mod A/N 14 Exemple : INF-AM-MQ1.7
Intitulé du module Intitule_mod A 70
Les règles de gestion :
Une branche contient une ou plusieurs spécialités
Une spécialité appartiennne à une et une branche
Une spécialité peut avoir un ou plusieurs modules
Un module peut existé dans une ou plusieurs spécialités
Un module peut être étudié par un ou plusieurs stagiaires pour un ou plusieurs semestres
Un stagiaire peut étudier un ou plusieurs modules dans différents semestres
Un semestre concerne une ou plusieurs délibérations
Une délibération concerne un et un seul semestre
Une délibération dépend d’une et une seule sections
Une section peut avoir plusieurs délibérations
Une section appartient à une et une seule spécialité
Une spécialité peut être divisée en plusieurs sections
Un stagiaire est inscrit pour une et une seule spécialité
Dans une spécialité, on trouve plusieurs stagiaires
Le schéma conceptuel des données: Niveau_qualifica
Niv_qualif
1.n diplôme
Avoir
1.1
1.n
App1
app 1.1
1.1 1.n
concernee
1.1
Schéma logique des données :
D’après ce schéma, on conclut le modèle logique suivant :
1- Stagiaire (Code_stag,Nom_stag, Pren_stag, Date_nais, Lieu_nais, Niv_scol, Adresse, Pren_pere,
Nom_mere, Pren_mere, Code_specialite*).
2- Section (Code_section, Intitule_section, Debut_fromation, Fin_formation, Code_specialite*).
3- Specialite (Code_specialite, Intitule_specialite, Niv_qualif, Diplome, Niv_acces, Mode_format,
code_branche*).
4- Branche (Code_branche, Intitule_branche).
5- Module (Code_mod, Intitule_mod).
6- Semestre (Num_sem, Intitule_sem).
7- Deliberation (Code_delib, Intitule_delib ,Date_delib, Num_sem*, Code_section*).
8- Specialite_Module (Code_mod, code_specialite).
9- Notes (Code_mod, Num_sem, Code_stag, Controle1, Control2, Synthese, Coefficient)
Remarque :
- Les propriétés soulignées en gras sont des clés primaires.
- Les propriétés gras-italique avec le caractère astérisque (*) sont des clés secondaires.
Les tables sous SQL Server :
1. La table Branche :
En mode création :
En mode affichage :
2. La table Délibération :
En mode création :
Remarque :
Le champ « Num_sem » est une clé étrangère
En mode affichage :
3. La table Module :
En mode création :
En mode affichage :
4. La table Notes :
En mode création :
Remarque :
En mode affichage :
5. La table Section :
En mode création :
Remarque :
Les champs « Code_specialite» et « Code_delib » sont des clés étrangères
En mode affichage :
6. La table Semestre:
En mode création :
En mode affichage :
7. La table Spécialité:
En mode création :
Remarque :
Le champ « Code_branche » est une clé étrangère
En mode affichage :
8. La table Spécialité et Module:
En mode création :
Remarque :
La table Specilite_Module est une relation entre 02 tables : (Spécialité et Module)
En mode affichage :
9. La table Stagiaire:
En mode création :
Remarque :
Le champ « Code_specialite» est une clé étrangère
En mode affichage :
Création des vues :
1. notes_module_stagiaire_semestre :
2. Délibération par date :
SELECT Code_delib, Date_delib, Num_sem, Code_section
FROM [Link]
WHERE (Date_delib = '30-06-2014')
3. Liste des modules par spécialité:
SELECT [Link].Code_specialite, [Link].Intitule_specialite,
[Link].Mode_format, [Link].Code_branche, [Link].Intitule_mod,
[Link].Code_mod
FROM [Link] INNER JOIN
dbo.Specialite_Module ON [Link].Code_specialite =
dbo.Specialite_Module.Code_specialite INNER JOIN
[Link] ON dbo.Specialite_Module.code_mod = [Link].Code_mod
WHERE ([Link].Code_specialite = 'INF0701')
4. Nombre de sections dans une spécialité :
SELECT [Link].Code_specialite, COUNT([Link].Code_section) AS
nbre_section
FROM [Link] INNER JOIN
[Link] ON [Link].Code_specialite = [Link].Code_specialite
GROUP BY [Link].Code_specialite
5. Liste des spécialités par branche:
SELECT [Link].Code_branche, [Link].Intitule_specialite, [Link].Niv_qualif,
[Link], [Link].Niv_acces,
[Link].Mode_format
FROM [Link] INNER JOIN
[Link] ON [Link].Code_branche = [Link].Code_branche
6. Liste des spécialités par branche informatique:
SELECT [Link].Code_branche, [Link].Intitule_specialite, [Link].Niv_qualif,
[Link], [Link].Niv_acces,
[Link].Mode_format
FROM [Link] INNER JOIN
[Link] ON [Link].Code_branche = [Link].Code_branche
WHERE ([Link].Code_branche = 'INF')
7. Liste des spécialités par niveau :
SELECT TOP (100) PERCENT [Link].Code_branche, [Link].Intitule_specialite,
[Link].Niv_qualif, [Link], [Link].Niv_acces,
[Link].Mode_format
FROM [Link] INNER JOIN
[Link] ON [Link].Code_branche = [Link].Code_branche
ORDER BY [Link].Niv_qualif
8. Liste des spécialités par niveau 4 :
SELECT [Link].Code_branche, [Link].Intitule_specialite, [Link].Niv_qualif,
[Link], [Link].Niv_acces,
[Link].Mode_format
FROM [Link] INNER JOIN
[Link] ON [Link].Code_branche = [Link].Code_branche
WHERE ([Link].Niv_qualif = 4)
9. Nombre de module par spécialité:
SELECT TOP (100) PERCENT dbo.Specialite_Module.Code_specialite, COUNT([Link].Code_mod) AS
Nombre_Module
FROM [Link] INNER JOIN
dbo.Specialite_Module ON [Link].Code_mod = dbo.Specialite_Module.code_mod INNER JOIN
[Link] ON dbo.Specialite_Module.Code_specialite = [Link].Code_specialite
GROUP BY dbo.Specialite_Module.Code_specialite
ORDER BY dbo.Specialite_Module.Code_specialite
10. Les sections de la spécialité:
SELECT [Link].Intitule_specialite, [Link].Code_section, [Link].Intitule_section,
[Link].Debut_formation, [Link].Fin_formation
FROM [Link] INNER JOIN
[Link] ON [Link].Code_specialite = [Link].Code_specialite
GROUP BY [Link].Intitule_specialite, [Link].Code_section, [Link].Intitule_section,
[Link].Debut_formation, [Link].Fin_formation
11. Les notes des stagiaires
SELECT TOP (100) PERCENT [Link].code_stag, [Link].Nom_stag,
[Link].Pren_stag, [Link].Date_nais, [Link].Code_specialite,
[Link].Intitule_section, [Link].Intitule_mod, [Link].Num_sem,
[Link].Controle1, [Link].Controle2, [Link],
[Link],
ROUND([Link], 2) AS Moyenne
FROM [Link] CROSS JOIN
[Link] INNER JOIN
[Link] ON [Link].code_stag = [Link].Code_stag INNER JOIN
[Link] ON [Link].Code_mod = [Link].Code_mod
12. La moyenne générale d’un stagiaire
SELECT code_stag, Nom_stag, Pren_stag, Code_specialite, Intitule_section, Num_sem,
ROUND(SUM(Moyenne) / SUM(Coefficient), 2) AS Moyenne_Gnenerale
FROM dbo.Notes_stagiaires
GROUP BY code_stag, Nom_stag, Pren_stag, Code_specialite, Intitule_section, Num_sem
Les procédures stockées :
13. Liste des stagiaires appartenant à la section ‘EING1’ :
SELECT [Link].Code_stag, [Link].Nom_stag, [Link].Pren_stag,
[Link].Code_specialite, [Link].Code_section,
[Link].Debut_formation
FROM [Link] INNER JOIN
[Link] ON [Link].Code_specialite = [Link].Code_specialite INNER JOIN
[Link] ON [Link].Code_specialite = [Link].Code_specialite
WHERE ([Link].Code_section = 'EING1')
Procedure 01 :
CREATE PROCEDURE Liste_stagiaire(@section varchar(5))
AS
SELECT
[Link].Code_stag,[Link].Nom_stag,[Link].Pren_stag,[Link]
alite.Code_specialite,[Link].Code_section,
[Link].Debut_formation
FROM [Link] INNERJOIN
[Link] ON [Link].Code_specialite=[Link].Code_specialite
INNERJOIN [Link] ON
[Link].Code_specialite=[Link].Code_specialite
WHERE [Link].Code_section=@section
GO
Exécution de la procédure 01 :
Use gestion_stagiaire
Execute Liste_stagiaire'EING1'