SlideShare une entreprise Scribd logo
1  sur  78
Période du stage : du 01/04/2010 au 31/05/2010
ETABLI PAR : Mlle ALOZADE Ghizlane
ENCADRE PAR : Mme ELALAMI Naima
2
I. Partie introductive :
a. Fiche de stage
b. Remerciement
c. Avant propos
d. Introduction
II. Partie présentative:
a. Présentation du groupe Scolaire AHMED CHAOUKI
b.Outils de travail
III. Partie thématique :
a. Cahier des charges
b. Modélisation
c. Réalisation
d. Conclusion
IV. Annexe :
3
4
NOM : ALOZADE
PRENOM : Ghizlane
ETABLISSEMENT : ISTA Ntic Sidi Maarouf
OPTION : technicienne spécialisée en
Développement informatique
Lieu de stage : G.S AHMED CHAOUKI
PERIODE DE STAGE : 01/04/2010 – 31/05/2010
5
Dans un premier temps je tiens à remercier
généralement toute personne qui a contribué de
prés ou de loin à l'élaboration de ce document et
à ma formation en me fournissant l'occasion de
passer un stage pour mettre en application mes
connaissances acquises durant cette période.
Je remercie également Madame ELALAMI Naima
pour son aide et ses conseils concernant les
missions évoquées dans ce rapport, qu’elle m'a
apporté lors de différentes séances d'encadrement.
J'adresse particulièrement mes remerciements
aux personnes suivantes, pour l'expérience
enrichissante et pleine d'intérêt qu'elles m'ont
fait vivre durant ces deux mois au sein du Groupe
scolaire AHMED CHAOUKI:
 Messieurs Slaoui, Tazi Fondateurs du groupe
scolaire AHMED CHAOUKI pour leur accueil et
la confiance qu'ils m'ont accordé dés mon
arrivée.
 Madame Sarhane Directrice de l'école AHMED
Chaouki2 pour m’avoir accordé toute sa
confiance ; pour le temps qu’elle m’a
consacré tout au long de cette période,
sachant répondre à toutes mes interrogations
; sans oublier sa participation au
cheminement de ce rapport.
 Messieurs Fnouni, ElHouassli, Nourlile ainsi
que l’ensemble du personnel des écoles
ALMANHAL, OUADNILE, AHMED Chaouki1, AHMED
6
Chaouki3 pour leur accueil sympathique et
leur coopération professionnelle tout au long
de ces deux mois.
Finalement, je voudrai bien exprimer mes
remerciements à mes parents pour leur confiance,
leur aide et leur soutient précieux et à mes
collègues pour les bons moments qu'on a passé
ensemble durant ces deux dernières années
scolaires.
7
A LA FIN DE LA 2EME ANNEE DE FORMATION ET
POUR QUE CELLE CI SOIT ENRICHIE L’OFPPT NOUS OBLIGE
DE PASSER UN STAGE PRATIQUE QUANT A MOI J’AI
EFFECTUE UN STAGE AU SEIN DU GROUPE SCOLAIRE
AHMED CHAOUKI DURANT LA PERIODE 02/04/07 AU
26/05/07 POUR AVOIR UNE EXPERIENCE PRATIQUE ET FAIRE
UNE COMPARAISON ENTRE CE QUE J’AI APPRIS DURANT MA
FORMATION (EN 1ERE ET EN 2EME ANNEE FILIERE TDI) ET
CE QUE J’AI PRATIQUE EN TANT QUE STAGIAIRE.
8
J’ai été accueilli du 01 Avril au 31 Mai 2010 au sein du Groupe
Scolaire Ahmed CHOUKI.
Pendant ce stage, j’ai conçu puis réalisé une application permettant la
gestion scolaire.
Tout d’abord, je vais présenter dans la partie présentative le groupe
scolaire Ahmed Chaouki dans lequel j’ai effectué mon stage, ainsi que
les outils du travail.
J’exposerais ensuite dans la partie thématique le cahier des
charges, les différentes étapes de la modélisation, pour terminer, je
détaillerais les différentes étapes de la réalisation de l’interface.
Cette étude sera suivie d’une annexe.
.
9
10
Le Groupe Scolaire Ahmed Chaouki constitué de cinq
établissements : OuadNil, Ahmed CHOUKI 1, Ahmed
CHOUKI 2, Ahmed CHOUKI 3, ElManhal.
A la capitale économique, Casablanca est une ville portuaire
située à l’Ouest du Maroc.
Le Groupe Scolaire Ahmed Chaouki (le poète arabe des
temps modernes et le prince des poètes), grâce à une
pédagogie novatrice capable de former des citoyens
solidaires, respectueux de l’environnement, scolarise les
enfants marocains, français et d’autres nationalités de la
Maternelle à la Troisième. Les programmes sont conformes
aux programmes français et aux accords franco-marocains.
 1980 : Ouverture de l’école OuadNil.
 1985 : Ouverture de l’école Ahmed CHOUKI 1.
 1989 : Ouverture de l’école Ahmed CHOUKI 2.
 1991 : Ouverture de l’école Ahmed CHOUKI 3.
 2000 : Ouverture de l’école ElManhal.
Enseignement des langues :
 Arabe dès la Moyenne Section
 Français
 Espagnol dès la 4ième de Collège
11
 Anglais dès la Grande Section
Structure :
 Ahmed Chaouki 3
 6 salles de classes maternelles
 10 salles de classes élémentaires
 1 salle de repos pour les Petites Sections
 2 salles de psychomotricité
 1 BCD (bibliothèque)
 1 salle d’informatique *
 1 salle des maîtres
 1 cour de récréation
 ElManhal
 24 salles de classes
 3 salles d’Histoire-Géographie
 1 salle d’Arts Plastiques
 2 salles d’informatique*
 2 laboratoires de langues
 4 laboratoires de Physique
 3 laboratoires de S.V.T
 1 salle de Technologie
 1 cour de récréation
*L’entretien et la gestion du parc informatique est assuré
par un technicien spécialisé.
Equipe pédagogique :
12
Les enseignants du Groupe Scolaire Ahmed Chaouki sont des
professeurs détachés du Ministère marocain de l’Éducation
nationale. Chaque professeur de l’école maternelle est
accompagné d’une assistante.
Pour le Secondaire (Collège), la Vie Scolaire est animée par
un Conseiller Principal d’Éducation, aidé par des Assistants
d’Éducation. L’équipe pédagogique du Primaire est animée par
un Directeur, Chef d’établissement.
Planning horaire :
Aide personnalisée : lundi, mardi, jeudi et vendredi de 13h45
à 14h15 Le mercredi de 11h45 à 12h15
 Maternelle et CP
Lundi, mardi, jeudi, vendredi
8h15 – 12h15
14h15 – 16h15
le mercredi de 8h15 à 11h45
 Du CE1 au CM2
Lundi, mardi, jeudi, vendredi
8h15 – 12h15
14h15 – 16h15
Le mercredi de 8h15 à 11h45
13
 Collège
Lundi, mardi, jeudi, vendredi
8h – 12h
14h00 – 17h ou 18h
Le mercredi de 8h à 12h
Inscriptions :
Admission SANS TEST en Maternelle
Pour l’Élémentaire et le Secondaire, une évaluation de
niveau est obligatoire.
Le projet d’établissement :
Le projet d’établissement du Groupe Scolaire Ahmed
Chaouki se donne pour mission de former , grâce à un
enseignement solide et diversifié , des élèves qui seront des
citoyens de demain disposant des atouts indispensables pour
respecter et s’impliquer pleinement dans les environnements
sociaux , économiques , culturels et écologiques de leur pays
ou d’ailleurs .
Les axes prioritaires de ce projet sont :
La maîtrise des langues
L’éducation à la citoyenneté
14
L’acquisition d’une culture par l’observation et
l’expérimentation scientifique et technologique de la
communication et de l’information.
Le développement de l'établissement s'est naturellement
accompagné d'un accroissement des effectifs:
 1991: 180 élèves
 1995: 247 élèves
 1998: 283 élèves
 2003: 310 élèves
15
Voici les logiciels utilisés dans le cadre de ce stage:
 Adobe Photoshop pour l'édition graphique et la
retouche d'images.
 NetBeans 6.0.1 pour le développement en java.
Pour le développement voici les langages que j'ai utilisés:
 UML
 Oracle
 JAVA
16
17
Objectif du projet:
Depuis ses débuts, le Groupe Scolaire Ahmed Chaouki
accueille des élèves, marocains et étrangers. La gestion de
ces élèves implique de nombreux documents papier circulant
entre beaucoup de personnes. Enfin, il n'y a aucune
cohérence entre toutes les données qui circulent. Le but de
ce projet est donc de limiter les documents papier et
d'assurer une certaine cohérence des données.
Fonctionnalités requises:
Cette application devra permettre au directeur :
 La gestion et la consultation des employés
 La mise à jour et l’affichage des comptes
Cette application devra permettre aux secrétaires:
 La gestion du calendrier scolaire (année scolaire,
semestres, les jours et les demi-journées non ouvrés,
les jours fériés).
 L’affichage et la maintenance des fiches d’élèves(les
informations personnelles, la vie scolaire(les absences
et les sanctions) et le suivi(les notes et la décision de la
fin d’année).
 La gestion des emplois du temps.
 La mise à jour du paiement des frais scolaire.
 La consultation des archives.
18
Diagramme de cas d’utilisation :
19
D’après ce diagramme de cas d’utilisation on conclut qu’il y a
deux acteurs dans notre système de gestion de scolarité :
 Secrétaire:
Une secrétaire peut consulter et gérer la liste des
enseignants, des unités, des matières, des salles, des
niveaux, des groupes et en plus créer une année scolaires et
ses semestres, maintenir la liste des paiements des frais
scolaires, gérer les jours et les demi-journées non ouvrés et
afficher l’archive des employés et des élèves et elle a aussi
la possibilité de maintenir et visualiser les coordonnées, la
vie scolaire et le suivi d’un élève.
Toute opération doit être précédée d’une authentification.
 Directeur:
Un directeur peut effectuer toutes les taches d’une
secrétaire et aussi gérer et consulter la liste des employés
et des comptes.
Toutes ces taches doivent être précédées d’une
authentification lors de laquelle un directeur précise un
login et un password.
20
 Scenario nominal:
Acteur principal :
Secrétaire.
Résumé :
Secrétaire ajoute un nouvel élève.
Déroulement de l’interaction :
1. Secrétaire accède à l’application.
2. Le système demande à l’utilisateur de s’identifier.
3. Secrétaire saisie son identifiant et son mot de passe.
4. Le Système affiche une fiche à remplir.
5. Secrétaire remplie la fiche et choisit un niveau
6. Le système affiche la liste des groupes disponibles
concernant le niveau choisi par l’utilisateur.
7. Secrétaire choisit un groupe.
8. Le système affiche la confirmation de l’ajout de cet
élève.
Exception:
• Si l’utilisateur saisie un login ou un mot de passe
invalides le système lui redemande de s’identifier.
Ajouter un nouvel élève :
21
 Diagramme de séquence :
22
 Scenario nominal:
Acteur principal :
Secrétaire.
Résumé :
Secrétaire crée une nouvelle séance.
Déroulement de l’interaction :
1. Secrétaire accède à l’application.
2. Le système demande à l’utilisateur de s’identifier.
3. Secrétaire saisie son identifiant et son mot de passe.
4. Le système affiche une fiche à remplir.
5. Secrétaire remplie la fiche en saisissant les
coordonnées concernant la séance.
6. Le système enregistre la séance et affiche une
confirmation.
Exception:
• Si l’utilisateur saisie un login ou un mot de passe
invalides le système lui redemande de s’identifier.
• Si l’horaire de la séance saisie par le secrétaire est
invalide le système lui redemande de choisir un nouveau
horaire.
• Si la séance déjà existe c'est-à-dire l’enseignant, la
salle ou le groupe choisis sont indisponibles, le système
demande au secrétaire de remplir la fiche ou de
remplacer l’ancienne séance.
Ajouter une nouvelle séance :
23
 Diagramme de séquence :
24
Diagramme de classe :
Ce diagramme de classe a pour but de schématiser les
différentes règles de gestion, il contient en général 26
classes qui sont liés entre eux par des relations.
25
26
Page d’identification :
L’identification de l’utilisateur se fait à travers la fenêtre
d’identification, l’utilisateur est invité à saisir l’identifiant et le mot
de passe et choisir un mode parmi « Mode Administratif
>> et « Mode Secrétaire>> selon sa fonction ou son intention.
27
Si l’utilisateur a cliqué sur le boutton « Se Connecter>> avant
de cocher un mode un message d’erreur s’affiche dans lequel le
systeme lui invite de choisir un mode.
28
Si l’identifiant ou le mot de passe saisies par l’utilisateur sont
invalides un message d’erreur s’affiche dans la fenêtre
d’identification, sinon la page principale s’affiche selon le mode
choisi.
29
Mode Secrétaire :
La fenêtre principale est composée de trois objets, le premier objet
contenant les différents services offrant par le système par
exemple « Emploi du temps», « Notes» et« Archives»…
La sélection de l’un des services permet la visualisation des sous-
services, le contenu de la fenêtre principale varie selon le sous-
service sélectionné du deuxième objet.
Le sous-service <<Calendrier>> contient quatre parties :
 la première partie permet l’ajout d’une année scolaire en
choisissant un nom, une date de début et une date de fin.
30
 La seconde partie permet l’ajout des semestres en choisissant
un nom, une date de début et une date de fin *.
 La troisième partie permet la création des jours et des demi-
journées non ouvrés de l’établissement à partir des cases à
cocher *.
 La dernière partie permet l’ajout des jours fériés en
choisissant un nom, une date de début et une date de fin, la
modification et la suppression se fait à partir de la table *.
*le système affecte les semestres, les jours et les demi-
journées non ouvrés et les jours fériés automatiquement à
l’année scolaire courante.
31
Le sous-service <<Matière & Unité>> offre la possibilité de maintenir
la liste des matière et des unités.
La mise à jour se fait à partir de la table.
32
Le sous-service <<niveau>> permet la gestion de la liste des niveaux.
Toute opération de mise à jour se fait à partir de la table par
exemple pour ajouter un nouveau niveau il faut remplir la dernière
ligne vide en saisissant le nom, les frais de scolarité, les frais de
transport, les frais de la cantine et les frais d’assurance avant de
cliquer sur « ajouter>>.
33
Le sous-service <<groupe>> permet de maintenir la liste des groupes.
Toute opération de mise à jour se fait à partir de la table par
exemple pour supprimer un groupe il suffit de sélectionner sa ligne
avant de cliquer sur « supprimer>>.
34
Le service offre la possibilité de consulter et gérer la liste des
enseignants de l’établissement à partir de la table.
L’utilisateur a aussi la possibilité de filtrer cette liste en saisissant
une chaine de caractère dans la zone de texte, la liste se varie selon
la chaine saisie dans la zone.
35
Le sous-service « salle>> permet la visualisation et la gestion de la
liste des salles, la fenêtre contient aussi des boutons de navigation.
36
La fenêtre ci-dessus permet de visualiser la liste des séances.
Elle permet aussi l’ajout d’une nouvelle séance en choisissant un
professeur, un niveau, un groupe, une unité, une salle, un horaire et un
jour avant de cliquer sur le bouton « vérifier la disponibilité>>.
37
Si le professeur, le groupe ou la salle sont indisponibles, le
système demande à l’utilisateur de remplacer la séance à partir d’une
boite de dialogue.
38
Si l’horaire de nouvelle séance est invalide c’est-à-dire l’horaire
appartient aux jours ou demi-journées non ouvrés de l’établissement,
le système affiche un message d’erreur.
39
L’utilisateur a la possibilité de supprimer une séance à partir d’une
liste qui contient toutes les séances de l’établissement en affichant
le numéro de la séance, le professeur, la salle, l’unité, le groupe, le
jour, l’heure de début et l’heure de fin.
40
La fenêtre ci-dessus permet la visualisation dans une table
l’agenda d’un groupe choisi à partir d’une liste déroulante.
Le contenu de la deuxième liste déroulante se varie à partir du niveau
sélectionné dans la première liste déroulante.
41
La fenêtre ci-dessus offre la possibilité de consulter dans une
table l’agenda d’un enseignant choisi à partir d’une liste déroulante.
La fenêtre possède aussi un calendrier.
42
La fenêtre ci-dessus possède une table contient la liste des
élèves de l’établissement, l’utilisateur a la possibilité de filtrer cette
liste par niveau ou groupe à partir des listes déroulantes ou bien par
nom à partir d’une zone de texte, la fenêtre a aussi des boutons de
navigation et des liens vers les fenêtres de la création ,la
modification, la vie scolaire et le suivi des élèves.
Cette interface permet aussi la suppression d’un élève en
sélectionnant sa ligne, le système ajoute automatiquement cet élève à
l’archive des élèves.
43
Pour ajouter un élève il faut saisir ses coordonnées, les informations
concernant son responsable, lui affecter à un niveau et à un groupe(le
système affiche seulement la liste des groupes disponibles c’est-à-
dire dont le nombre des élèves est inferieur à la capacité) et ajouter
son image.
44
45
En cliquant sur le bouton Parcourir une nouvelle fenêtre s’affiche
contient la liste des dossiers permettant à l’utilisateur de choisir une
image, l’image choisie dans la nouvelle fenêtre s’affiche
automatiquement dans la fenêtre de l’ajout.
Le bouton <<annuler>> permet de fermer cette fenêtre.
46
La fenêtre de modification contient les informations courantes de
l’élève sélectionné dans la page principale, l’utilisateur a la possibilité
de modifier ces coordonnées.
Le bouton <<annuler>> permet de fermer cette fenêtre.
47
Pour modifier l’image d’un élève il suffit de choisir une autre image à
partir de la liste des dossiers.
48
En cliquant sur <<vie scolaire >> une nouvelle fenêtre s’affiche
contenant les informations concernant les absences et les sanctions
de l’élève sélectionné.
49
La fenêtre de la vie scolaire contient une liste des sanctions et
des absences et les informations personnelles d’un élève choisi.
La fenêtre permet aussi la gestion des sanctions et la mise à jour et
la justification des absences.
Le bouton « annuler>> permet la fermeture de la fenêtre.
50
L’utilisateur peut ajouter, modifier ou supprimer une justification
pour une absence choisi à partir de la fenêtre principale.
51
Une absence ne doit avoir qu’une seule justification, si ce n’est pas le
cas le système demande à l’utilisateur de remplacer l’ancienne
justification.
52
En cliquant sur <<suivi élève >> une nouvelle fenêtre s’affiche
contenant les informations concernant les notes et les bulletins de
l’élève sélectionné.
53
L’utilisateur a la possibilité de visualiser les notes d’un élève choisi
et les filtrer par matière, année scolaire ou semestre.
Les lignes contenant les notes qui sont inferieurs à 5 sont en rouge.
Les lignes contenant les notes entre 5 et 6 sont en orange.
Les lignes contenant les notes qui sont supérieurs à 6 sont en vert.
54
L’utilisateur a la possibilité de visualiser les bulletins d’un élève
choisi, si la note est inferieure à 5 le système affecte
«Non Admis>> à sa décision, si la note entre 5 et 6 l’utilisateur à la
possibilité d’affecter une décision, si la note est supérieure à 6 le
système affecte «Admis>> à sa décision.
Les lignes dans lesquels la décision est « non Admis>> sont en rouge.
Les lignes dans lesquels la décision est « Admis>> sont en vert.
55
La fenêtre ci-dessus permet la consultation la gestion et la filtration
par matière, niveau et date des devoirs et elle permet aussi la
gestion des notes d’un devoir sélectionné.
56
Pour créer un nouveau devoir il faut choisir sa matière, son niveau,
son type, son horaire et sa date.
La fenêtre contient aussi un bouton permet de revenir à la sélection
des devoirs.
57
Cette interface permet l’affectation des notes d’un devoir choisi à un
groupe choisi à partir d’une liste déroulante contient les groupes
concernant le niveau de ce devoir
Les lignes contenant les notes qui sont inferieurs à 5 sont en rouge.
Les lignes contenant les notes entre 5 et 6 sont en orange.
Les lignes contenant les notes qui sont supérieurs à 6 sont en vert.
58
L’interface ci-dessous permet la visualisation et le paiement des
frais scolaires pour le mois courant, le système supprime
automatiquement les élèves qui n’ont pas payé les frais scolaires du
mois précédent.
59
L’utilisateur visualise la liste des élèves archivés et il a aussi
la possibilité de filtrer cette liste par le nom saisie dans une zone de
texte.
60
L’utilisateur visualise la liste des employés archivés et il a aussi
la possibilité de filtrer cette liste par le nom saisie dans une zone de
texte.
La fenêtre principale contient un menu qui permet de quitter ou de se
déconnecter.
61
Mode administratif :
Pour accéder au mode administratif l’utilisateur doit saisir son
identifiant et son mot de passe.
62
L’utilisateur visualise, gère la liste des employés et il a aussi la
possibilité de filtrer cette liste par le nom saisie dans une zone de
texte.
63
L’utilisateur visualise, gère la liste des comptes et il a aussi la
possibilité de filtrer cette liste par le nom saisie dans une zone de
texte.
La fenêtre principale contient un menu qui permet de quitter
l’application, se déconnecter ou passer au mode secrétaire.
64
Un stage de fin de formation est pour moi la première
expérience professionnelle dans le domaine de
l'informatique, c’est pour cela ce projet était une étape très
importante dans mon cycle de formation vu qu'il était une
occasion très intéressante et bénéfique pour savoir
comment appliquer, sur le plan pratique, des connaissances
théoriques déjà acquises.
Grâce à un environnement favorable pour le travail et avec
un encadrement encourageant et permanent, j’ai pu réaliser
mon projet de fin de formation suivant un plan organisé.
Cependant mon stage ne se termine pas avec la soutenance,
il me reste en effet encore deux mois à effectuer qui vont
me permettre de voir non seulement la finalisation du
projet, mais également de pouvoir diversifier ma fonction.
Quoiqu'il en soit ce stage aura été une aventure
enrichissante, que cela soit du point de vue technique que de
l'humain.
65
66
Les requêtes SQL
i. Create table employee(id_emp number primary key, nom varchar2(50),
prenom varchar2(50),datenaissance date, adresse varchar2(50), sexe
varchar2(20),salaire number,tel varchar2(50),email varchar2(50), date_debut
date,fonction varchar2(20) ) ;
ii. Create table compte(login varchar2(20) primary key,password varchar2(20)
,idemp number ,foreign key (idemp) references employee(id_emp) on delete
cascade);
iii. Create table annscol (id_ann varchar2(50) primary key ,date_debut
date,date_fin date);
iv. Create table semestre (id_semestre number primary key ,date_debut
date,date_fin date,libelle varchar2(20), id_ann varchar2(20), foreign key
(id_ann) references annscol(id_ann) on delete cascade);
v. Create table responsable(id_resp number primary key ,nom varchar2(50),
prenom varchar2(50), adresse varchar2(50),sexe varchar2(20),tel
varchar2(50),email varchar2(50)) ;
vi. Create table niveau(id_niveau varchar2(20) primary key,frais_scolarite
number,frais_transport number,frais_cantine number,assurance number);
vii. Create table groupe(id_grp varchar2(20) primary key , id_niveau
varchar2(20),foreign key(id_niveau) references niveau(id_niveau) on delete
cascade,max_elve number);
viii. Create table eleve(id_eleve number primary key ,nom varchar2(50), prenom
varchar2(50),datenaissance date, adresse varchar2(50),lieunaiss
varchar2(20),sexe varchar2(20), date_scolarite date ,date_affiliation
date,id_resp number,transport varchar2(20),restaurant varchar2(20),image
blob,id_grp varchar2(20),foreign key (id_resp) references responsable
(id_resp) on delete cascade, foreign key (id_grp) references groupe (id_grp) on
delete cascade) ;
ix. Create table frais (id_frais number primary key,id_eleve number,mois
number,id_ann varchar2(50), foreign key (id_ann) references annscol(id_ann) on
delete cascade, foreign key (id_eleve) references eleve (id_eleve) on delete
cascade);
x. Create table decision(id_decision number primary key,id_eleve number,id_ann
varchar2(50), decision varchar2(20),foreign key (id_ann) references
annscol(id_ann) on delete cascade, foreign key (id_eleve) references eleve
(id_eleve) on delete cascade);
67
xi. Create table prof(id_prof number primary key ,nom varchar2(50), prenom
varchar2(50), datenaissance date, adresse varchar2(50), sexe varchar2(20),
salaire number,tel varchar2(50),email varchar2(50)) ;
xii. Create table arch_employee(id_emp number primary key, nom varchar2(50),
prenom varchar2(50),datenaissance date, adresse varchar2(50), sexe
varchar2(20),tel varchar2(50),email varchar2(50), date_debut date,date_fin
date,fonction varchar2(20) ) ;
xiii. Create table arch_eleve(id_eleve number primary key ,nom varchar2(50),
prenom varchar2(50),datenaissance date, adresse varchar2(50),sexe
varchar2(20) , date_debut date,date_fin date ) ;
xiv. Create table sall(id_sall number primary key,libelle varchar2(20),nbre_place
number);
xv. Create table unite(id_unit number primary key,libelle varchar2(20));
xvi. Create table matiere(id_mat number primary key,id_unit number,libelle
varchar2(20),foreign key(id_unit) references unite(id_unit) on delete cascade);
xvii. Create table devoir(id_devoir number primary key,id_mat number,id_smstr
number, type varchar2(20),date_dev date,id_niveau varchar2(20),h_deb
varchar2(5) , h_fin varchar2(5) ,foreign key(id_mat) references
matiere(id_mat) on delete cascade,foreign key(id_smstr) references
semestre(id_semestre) on delete cascade,foreign key(id_niveau) references
niveau(id_niveau) on delete cascade);
xviii. Create table note(id_devoir number,id_eleve number,note number,primary
key(id_devoir,id_eleve),foreign key(id_devoir) references devoir(id_devoir) on
delete cascade,foreign key(id_eleve) references eleve(id_eleve) on delete
cascade);
xix. Create table seance (id_seance number primary key,id_prof number,id_sall
number,id_mat number,id_grp varchar2(20) , jour varchar2(20), h_deb
varchar2(5) , h_fin varchar2(5) ,foreign key (id_prof) references prof
(id_prof) on delete cascade, foreign key (id_sall) references sall (id_sall) on
delete cascade, foreign key (id_mat) references matiere (id_mat) on delete
cascade, foreign key (id_grp) references groupe (id_grp) on delete cascade);
xx. Create table abscent (id_abt number primary key,id_eleve number,date_debut
date,h_debut varchar2(5),date_fin date, h_fin varchar2(5) ,foreign
key(id_eleve) references eleve(id_eleve) on delete cascade);
xxi. Create table sanction (id_sanct number primary key ,id_eleve number,date_sanct
date,sanction varchar2(50),motif varchar2(50),commentaire varchar2(50)
,foreign key(id_eleve) references eleve(id_eleve) on delete cascade);
68
xxii. Create table justification_abt (id_just number primary key,id_abt number,motif
varchar2(200),moyen varchar2(200) ,commentaire varchar2(50) ,foreign
key(id_abt) references abscent(id_abt) on delete cascade);
xxiii. Create table joursFerie(id number primary key,date_debut date,date_fin
date,libelle varchar2(20),id_ann varchar2(50), foreign key (id_ann) references
annscol(id_ann) on delete cascade);
xxiv. Create table joursNonOuvert(id number primary key,Jour varchar2(20),d_h
varchar2(20) ,d_f varchar2(20),id_ann varchar2(50), foreign key (id_ann)
references annscol(id_ann) on delete cascade);
xxv. Create sequence semp start with 1 increment by 1;
xxvi. Create sequence ss start with 1 increment by 1;
xxvii. Create sequence sj start with 1 increment by 1;
xxviii. Create sequence sv start with 1 increment by 1;
xxix. Create sequence sm start with 1 increment by 1;
xxx. Create sequence su start with 1 increment by 1;
xxxi. Create sequence sp start with 1 increment by 1;
xxxii. Create sequence ssall start with 1 increment by 1;
xxxiii. Create sequence sse start with 1 increment by 1;
xxxiv. Create sequence se start with 1 increment by 1;
xxxv. Create sequence sabt start with 1 increment by 1;
xxxvi. Create sequence ssan start with 1 increment by 1;
xxxvii. Create sequence sjust start with 1 increment by 1;
xxxviii. Create sequence sr start with 1 increment by 1;
xxxix. Create sequence s_frais start with 1 increment by 1;
xl. Create sequence s16 start with 1 increment by 1;
xli. Create sequence s17 start with 1 increment by 1;
xlii. Create sequence s18 start with 1 increment by 1;
xliii. Create sequence s19 start with 1 increment by 1;
xliv. Create sequence s20 start with 1 increment by 1;
xlv. Create sequence s21 start with 1 increment by 1;
xlvi. Create sequence s22 start with 1 increment by 1;
xlvii. Create sequence s23 start with 1 increment by 1;
xlviii. Create sequence s24 start with 1 increment by 1;
xlix.
l. create or replace trigger archelv before delete on eleve for each row
begin
insert into arch_eleve values(:old.id_eleve ,:old.nom , :old.prenom
,:old.datenaissance ,:old.adresse ,:old.sexe , :old.date_scolarite ,sysdate ) ;
end;
69
/
li. create or replace trigger arch_emp before delete on employee for each row
begin
insert into arch_employee values ( :old.id_emp , :old.nom , :old.prenom ,
:old.datenaissance , :old.adresse , :old.sexe , :old.tel , :old.email ,
:old.date_debut ,sysdate , :old.fonction ) ;
end;
/
lii. create or replace trigger arch_prof before delete on prof for each row
begin
insert into arch_employee values ( :old.id_prof , :old.nom , :old.prenom ,
:old.datenaissance , :old.adresse , :old.sexe , :old.tel , :old.email ,’’ ,sysdate
,’Enseignant’) ;
end;
/
70
UML :
UML (Unified Modeling Language, que l'on peut traduire par "langage de
modélisation unifié) est une notation permettant de modéliser un problème de
façon standard. Ce langage est né de la fusion de plusieurs méthodes existant
auparavant, et est devenu désormais la référence en terme de modélisation
objet, à un tel point que sa connaissance est souvent nécessaire pour obtenir un
poste de développeur objet.
 La notion d'objet
La programmation orientée objet consiste à modéliser informatiquement un
ensemble d'éléments d'une partie du monde réel (que l'on appelle domaine) en un
ensemble d'entités informatiques. Ces entités informatiques sont appelées
objets. Il s'agit de données informatiques regroupant les principales
caractéristiques des éléments du monde réel (taille, la couleur, ...).
La difficulté de cette modélisation consiste à créer une représentation
abstraite, sous forme d'objets, d'entités ayant une existence matérielle (chien,
voiture, ampoule, ...) ou bien virtuelle (sécurité sociale, temps, ...).
 Les méthodes objets
La modélisation objet consiste à créer une représentation informatique des
éléments du monde réel auxquels on s'intéresse, sans se préoccuper de
l'implémentation, ce qui signifie indépendamment d'un langage de programmation.
Il s'agit donc de déterminer les objets présents et d'isoler leurs données et les
fonctions qui les utilisent. Pour cela des méthodes ont été mises au point. Entre
1970 et 1990, de nombreux analystes ont mis au point des approches orientées
objets, si bien qu'en 1994 il existait plus de 50 méthodes objet. Toutefois seules
3 méthodes ont véritablement émergé :
 La méthode OMT de Rumbaugh
 La méthode BOOCH'93 de Booch
 La méthode OOSE de Jacobson (Object Oriented Software Engineering)
A partir de 1994, Rumbaugh et Booch (rejoints en 1995 par Jacobson) ont unis
leurs efforts pour mettre au point la méthode unifiée (unified method 0.8),
incorporant les avantages de chacunes des méthodes précédentes.
La méthode unifiée à partir de la version 1.0 devient UML (Unified Modeling
Language), une notation universelle pour la modélisation objet.
71
UML n'est pas une méthode dans la mesure où elle ne présente aucune
démarche. A ce titre UML est un formalisme de modélisation objet. Le
mot méthode parfois utilisé par abus de langage dans les pages suivantes
ne doit donc pas être entendu comme une "démarche".
UML 1.0 est soumise à l'OMG (Object Management Group) en janvier 1997, mais
elle ne sera acceptée qu'en novembre 1997 dans sa version 1.1, date à partir de
laquelle UML devient un standard international.
Voici le récapitulatif des évolutions de ce langage de modélisation :
 En 1995: Méthode unifiée 0.8 (intègrant les méthodes Booch'93 et OMT)
 En 1995: UML 0.9 (intègrant la méthode OOSE)
 En 1996: UML 1.0 (proposée à l'OMG)
 En 1997: UML 1.1 (standardisée par l'OMG)
 En 1998: UML 1.2
 En 1999: UML 1.3
 En 2000: UML 1.4
 En 2003: UML 1.5
Cette méthode représente un moyen de spécifier, représenter et construire les
composantes d’un système informatique.
Avec la méthode UML, un objet est par exemple représenté de la façon
suivante :
 Intérêt d'une méthode objet
Les langages orientés objet constituent chacun une manière spécifique
d'implémenter le paradigme objet. Ainsi, une méthode objet permet de définir le
problème à haut niveau sans rentrer dans les spécificités d'un langage. Il
72
représente ainsi un outil permettant de définir un problème de façon graphique,
afin par exemple de le présenter à tous les acteurs d'un projet (n'étant pas
forcément des experts en un langage de programmation).
De plus, le fait de programmer à l'aide d'un langage orienté objet ne fait pas
d'un programmeur un concepteur objet. En effet il est tout à fait possible de
produire un code syntaxiquement juste sans pour autant adopter une approche
objet. Ainsi la programmation orientée objet implique
 en premier lieu une conception abstraite d'un modèle objet (c'est le rôle
de la méthode objet)
 en second plan l'implémentation à l'aide d'un langage orienté objet (tel
que C++/Java/...)
Une méthode objet est donc d'une part une méthode d'analyse du problème (afin
de couvrir toutes les facettes du problème), d'autre part un langage permettant
une représentation standard stricte des concepts abstraits (la modélisation) afin
de constituer un langage commun.
 Qu'est-ce qu'un modèle ?
La modélisation consiste à créer une représentation simplifiée d'un problème: le
modèle.
Grâce au modèle il est possible de représenter simplement un problème, un
concept et le simuler. La modélisation comporte deux composantes :
 L'analyse, c'est-à-dire l'étude du problème
 la conception, soit la mise au point d'une solution au problème
Le modèle constitue ainsi une représentation possible du système pour un point
de vue donné.
 La modélisation UML
Le méta modèle UML fournit une panoplie d'outils permettant de représenter
l'ensemble des éléments du monde objet (classes, objets, ...) ainsi que les liens
qui les relie.
Toutefois, étant donné qu'une seule représentation est trop subjective, UML
fournit un moyen astucieux permettant de représenter diverses projections
d'une même représentation grâce aux vues.
73
Une vue est constituée d'un ou plusieurs diagrammes. On distingue deux types
de vues :
 Les vues statiques, c'est-à-dire représentant le système physiquement
o diagrammes d'objets
o diagrammes de classes
o diagrammes de cas d'utilisation
o diagrammes de composants
o diagrammes de déploiement
 Les vues dynamiques, montrant le fonctionnement du système
o diagrammes de séquence
o diagrammes de collaboration
o diagrammes d'états-transitions
o diagrammes d'activités
 Les cas d'utilisation
Les cas d'utilisation (en anglais use cases) permettent de représenter le
fonctionnement du système vis-à-vis de l'utilisateur, c'est donc une vue du
système dans son environnement extérieur.
Oracle :
Oracle est un SGBD (système de gestion de bases de données) édité par la
société du même nom (Oracle Corporation - http://www.oracle.com), leader
mondial des bases de données.
La société Oracle Corporation a été créée en 1977 par Lawrence Ellison, Bob
Miner, et Ed Oates. Elle s'appelle alors Relational Software Incorporated (RSI)
et commercialise un Système de Gestion de Bases de données relationnelles
(SGBDR ou RDBMS pour Relational Database Management System) nommé
Oracle.
En 1979, le premier prototype (RDBMS - RSI1) intégrant la séparation des
espaces d'adressage entre les programmes utilisateurs et le noyau Oracle est
commercialisé. Cette version est entièrement développée en langage assembleur.
La seconde version (RDBMS - RSI2) est un portage de l'application sur d'autres
plates-formes.
En 1983 la troisième version apporte des améliorations au niveau des
performances et une meilleure prise en charge du SQL. Cette version est
74
entièrement codée en langage C. A la même époque RSI change de raison sociale
et devient Oracle.
En 1984 la première version d'Oracle (Oracle 4) est commercialisée sur les
machines IBM.
En 1985 Oracle 5 permet une utilisation client-serveur grâce au middleware
SQL*Net.
En 1986 Oracle a été porté sur la plateforme 8086.
En 1988 Oracle 6 est disponible sur un grand nombre de plates-formes et
apporte de nombreuses nouvelles fonctionnalités ainsi qu'une amélioration
notable des performances.
En 1991, Oracle 6.1 propose une option Parallel Server (dans un premier temps
sur la DEC VAX, puis rapidement sur de nombreuses autres plates-formes).
En 1992, Oracle 7 sort sur les plates-formes UNIX (elle ne sortira sur les
plates-formes Windows qu'à partir de 1995). Cette version permet une meilleure
gestion de la mémoire, du CPU et des entrées-sorties. La base de données est
accompagnée d'outils d'administration (SQL*DBA) permettant une exploitation
plus aisée de la base. En 1997, la version Oracle 7.3 (baptisée Oracle Universal
Server) apparaît, suivie de la version 8 offrant des capacités objet à la base de
données
Oracle est écrit en langage C et est disponible sur de nombreuses plates-formes
matérielles (plus d'une centaine) dont :
 AIX (IBM)
 Solaris (Sun)
 HP/UX (Hewlett Packard)
 Windows NT (Microsoft)
Oracle depuis la version 8.0.5 est disponible sous Linux
 Les versions d'Oracle
Oracle se décline en plusieurs versions
 Oracle Server Standard, une version comprenant les outils les plus
courants de la solution Oracle. Il ne s'agit pas pour autant d'une version
bridée...
75
 Oracle Server Enterprise Edition
 Les fonctionnalités d'Oracle
Oracle est un SGBD permettant d'assurer :
 La définition et la manipulation des données
 La cohérence des données
 La confidentialité des données
 L'intégrité des données
 La sauvegarde et la restauration des données
 La gestion des accès concurrents
 Les composants d'Oracle
Outre la base de données, la solution Oracle est un véritable environnement de
travail constitué de nombreux logiciels permettant notamment une
administration graphique d'Oracle, de s'interfacer avec des produits divers et
d'assistants de création de bases de données et de configuration de celles-ci.
On peut classer les outils d'Oracle selon diverses catégories :
 Les outils d'administration
 Les outils de développement
 Les outils de communication
 Les outils de génie logiciel
 Les outils d'aide à la décision
 Les outils d'administration d'Oracle
Oracle est fourni avec de nombreux outils permettant de simplifier
l'administration de la base de données. Parmi ces outils, les plus connus sont :
 Oracle Manager (SQL*DBA)
 NetWork Manager
 Oracle Enterprise Manager
76
 Import/Export : un outil permettant d'échanger des données entre deux
bases Oracle
 Outils de développement d'Oracle
Oracle propose également de nombreux outils de développement permettant
d'automatiser la création d'applications s'interfaçant avec la base de données.
Ces outils de développement sont :
 Oracle Designer
 Oracle Developer
 SQL*Plus : une interface interactive permettant d'envoyer des requêtes
SQL et PL/SQL à la base de données. SQL*Plus permet notamment de
paramétrer l'environnement de travail (formatage des résultats, longueur
d'une ligne, nombre de lignes par page, ...)
 Oracle Developper : il s'agit d'une suite de produits destinés à la
conception et à la création d'applications client-serveur. Il est composé de
4 applications :
o Oracle Forms (anciennement SQL*Forms) : un outil permettant
d'interroger la base de données de façon graphique sans
connaissances préalables du langage SQL. SQL*Forms permet ainsi
de développer des applications graphiques (fenêtres, formulaires,
...) permettant de sélectionner, modifier et supprimer des données
dans la base.
o Oracle Reports (SQL*ReportWriter) : un outil permettant de
réaliser des états
o Oracle Graphics : un outil de génération automatique de graphiques
dynamiques pour présenter graphiquement des statistiques
réalisées à partir des données de la base
o Procedure Builder : un outil permettant de développer des
procédures, des fonctions et des packages
JAVA
Java est un langage objet ressemblant au langage C++. Il a été mis au point en
1991 par la firme Sun Microsystems. Le but de Java à l'époque était de
constituer un langage de programmation pouvant être intégré dans les appareils
électroménagers, afin de pouvoir les contrôler, de les rendre interactifs, et
surtout de permettre une communication entre les appareils. Ce programme de
77
développement se situait dans un projet appelé Green, visant à créer une
télécommande universelle (Star 7) comprenant un système d'exploitation capable
de gérer l'ensemble des appareils électroménagers de la maison. Etant donné que
le langage C++ comportait trop de difficultés, James Gosling, un des acteurs du
projet (considéré désormais comme le père de Java) décida de créer un langage
orienté objet reprenant les caractéristiques principales du C++, en éliminant ses
points difficiles, et en le rendant moins encombrant et plus portable (il devait
pouvoir être intégré dans n'importe quel appareil...). Ainsi, ce langage fut baptisé
dans un premier temps Oak (Oak signifiant chêne). Toutefois, puisque ce nom
était déjà utilisé, il fut rebaptisé Java en l'honneur de la boisson préférée des
programmeurs, c'est-à-dire le café, dont une partie de la production provient de
l'île Java.
A la même époque, le Web faisait son apparition, or Java possédait toutes les
caractéristiques faisant de lui un langage approprié pour le Web :
 Le réseau des réseaux rassemblant sur une même structure des machines
différentes, il fallait un langage capable de fonctionner sur chacune
d'entre-elles: Java était conçu pour être portable
 Le web était limité en bande passante: Java était conçu pour être petit
Ainsi, en 1994, l'équipe décida de mettre au point un navigateur (baptisé
HotJava) intégrant Java et capable de faire fonctionner des applets (des
petites applications fonctionnant dans un navigateur). C'est ainsi que fin 1995
Java eut un terrible essor avec le soutien de Netscape, qui ne tarda pas à inclure
Java dans son navigateur...
 Comparaison de Java et de C++
Java est très proche du langage C++ étant donné qu'il a quasiment la même
syntaxe. Toutefois Java est plus simple que le langage C++ bien qu'il s'en inspire,
car les caractéristiques critiques du langage C++ (celles qui sont à l'origine des
principales erreurs) ont été supprimées. Cela comprend :
 Les pointeurs
 La surcharge d'opérateurs
 L'héritage multiple
 La libération de mémoire est transparente pour l'utilisateur (il n'est plus
nécessaire de créer de destructeurs)
 Une meilleure gestion des erreurs
 Les chaines et les tableaux sont désormais des objets faisant partie
intégrante du langage
78
Toutefois Java est beaucoup moins rapide que le langage C++, il perd en rapidité
ce qu'il gagne en portabilité

Contenu connexe

Tendances

Plateforme de gestion des projets de fin d'études
Plateforme de gestion des projets de fin d'étudesPlateforme de gestion des projets de fin d'études
Plateforme de gestion des projets de fin d'étudesMajdi SAIBI
 
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...Mohamed Amine Mahmoudi
 
Rapport stage pfe
Rapport stage  pfe Rapport stage  pfe
Rapport stage pfe rimeh moussi
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Sofien Benrhouma
 
Rapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbachRapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbachAyoub Mkharbach
 
Rapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application AndroidRapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application AndroidBadrElattaoui
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Riadh K.
 
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineRapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineMohamed Amine Mahmoudi
 
Pfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEEPfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEEOussama Djerba
 
Rapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learningRapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learningRouâa Ben Hammouda
 
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...
Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...Hajer Dahech
 
Rapport Projet de fin d'etude sur le parc informatique
Rapport Projet  de fin d'etude sur le parc informatiqueRapport Projet  de fin d'etude sur le parc informatique
Rapport Projet de fin d'etude sur le parc informatiqueHicham Ben
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATSiwar GUEMRI
 
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...tayebbousfiha1
 
Projet Fin D'étude Application Mobile
Projet Fin D'étude Application MobileProjet Fin D'étude Application Mobile
Projet Fin D'étude Application MobileRim ENNOUR
 
Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...Ahmed Makni
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.pptMohamed Ben Bouzid
 

Tendances (20)

Rapport Projet Fin d'Études PFE
Rapport Projet Fin d'Études PFERapport Projet Fin d'Études PFE
Rapport Projet Fin d'Études PFE
 
Plateforme de gestion des projets de fin d'études
Plateforme de gestion des projets de fin d'étudesPlateforme de gestion des projets de fin d'études
Plateforme de gestion des projets de fin d'études
 
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...Rapport (Mémoire de Master) de stage PFE pour  l’obtention du Diplôme Nationa...
Rapport (Mémoire de Master) de stage PFE pour l’obtention du Diplôme Nationa...
 
Rapport stage pfe
Rapport stage  pfe Rapport stage  pfe
Rapport stage pfe
 
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
Rapport Projet De Fin D'étude Développent d'une application web avec Symfony2
 
Rapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbachRapport pfe-ayoub mkharbach
Rapport pfe-ayoub mkharbach
 
Rapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application AndroidRapport de stage PFE - Mémoire master: Développement d'une application Android
Rapport de stage PFE - Mémoire master: Développement d'une application Android
 
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
Rapport PFE : Développement D'une application de gestion des cartes de fidéli...
 
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed AmineRapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
Rapport de stage d'initiation 2015 Mahmoudi Mohamed Amine
 
Pfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEEPfe conception et développement d'une application web GMAO JEE
Pfe conception et développement d'une application web GMAO JEE
 
Rapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learningRapport- Conception et réalisation d'une plateforme social learning
Rapport- Conception et réalisation d'une plateforme social learning
 
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...
Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...Rapport  PFE  "Conception et développement d'un Portail web pour le Smart Met...
Rapport PFE "Conception et développement d'un Portail web pour le Smart Met...
 
Rapport Projet de fin d'etude sur le parc informatique
Rapport Projet  de fin d'etude sur le parc informatiqueRapport Projet  de fin d'etude sur le parc informatique
Rapport Projet de fin d'etude sur le parc informatique
 
rapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSATrapport PFE ingénieur génie logiciel INSAT
rapport PFE ingénieur génie logiciel INSAT
 
Présentation du pfa
Présentation du pfaPrésentation du pfa
Présentation du pfa
 
Rapport stage
Rapport stageRapport stage
Rapport stage
 
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
Rapport de Stage PFE - Développement d'un Projet ALTEN MAROC Concernant le Sy...
 
Projet Fin D'étude Application Mobile
Projet Fin D'étude Application MobileProjet Fin D'étude Application Mobile
Projet Fin D'étude Application Mobile
 
Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...Pfe conception et réalisation d'une application de gestion des processus d'ac...
Pfe conception et réalisation d'une application de gestion des processus d'ac...
 
présentation soutenance PFE.ppt
présentation soutenance PFE.pptprésentation soutenance PFE.ppt
présentation soutenance PFE.ppt
 

En vedette

Dossier du débat national sur la transition énergétique
Dossier du débat national sur la transition énergétiqueDossier du débat national sur la transition énergétique
Dossier du débat national sur la transition énergétiqueDNTE
 
150507 cateura olivier smart grids cities energie tenerrdis grenoble em
150507 cateura olivier smart grids cities energie tenerrdis grenoble em150507 cateura olivier smart grids cities energie tenerrdis grenoble em
150507 cateura olivier smart grids cities energie tenerrdis grenoble emOlivier CATEURA, PhD
 
Rapport final : la Transition énergétique (2013)
Rapport final : la Transition énergétique (2013)Rapport final : la Transition énergétique (2013)
Rapport final : la Transition énergétique (2013)Energy 3.0
 
Consultant(e) AMOA BancAssurance
Consultant(e) AMOA BancAssuranceConsultant(e) AMOA BancAssurance
Consultant(e) AMOA BancAssuranceBEIJAFLORE
 
MESSIKA : stratégie de distribution (e-shop)
MESSIKA : stratégie de distribution (e-shop)MESSIKA : stratégie de distribution (e-shop)
MESSIKA : stratégie de distribution (e-shop)Blandine Darrieutort
 
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeEcole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeMehdi Hamime
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école - Di...
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école - Di...Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école - Di...
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école - Di...Mehdi Hamime
 
LA BANCASSURANCE
LA  BANCASSURANCELA  BANCASSURANCE
LA BANCASSURANCEbouchra89
 
Analyse comparateur assurance
Analyse comparateur assuranceAnalyse comparateur assurance
Analyse comparateur assuranceUX_Claurent
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Ilyas CHAOUA
 
Le b a ba de l'assurance n 02
Le b a ba de l'assurance n 02Le b a ba de l'assurance n 02
Le b a ba de l'assurance n 02amrane azzar
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiqueOussama Yoshiki
 
Retraite CompléMentaire Au Maroc
Retraite CompléMentaire Au MarocRetraite CompléMentaire Au Maroc
Retraite CompléMentaire Au MarocMaroua Bouaouad
 
Realisation d une application de gestion d-un -tablissement priv-e 26-04_08
Realisation d une application de gestion d-un -tablissement priv-e 26-04_08Realisation d une application de gestion d-un -tablissement priv-e 26-04_08
Realisation d une application de gestion d-un -tablissement priv-e 26-04_08bouzidi26
 

En vedette (15)

Dossier du débat national sur la transition énergétique
Dossier du débat national sur la transition énergétiqueDossier du débat national sur la transition énergétique
Dossier du débat national sur la transition énergétique
 
150507 cateura olivier smart grids cities energie tenerrdis grenoble em
150507 cateura olivier smart grids cities energie tenerrdis grenoble em150507 cateura olivier smart grids cities energie tenerrdis grenoble em
150507 cateura olivier smart grids cities energie tenerrdis grenoble em
 
Rapport final : la Transition énergétique (2013)
Rapport final : la Transition énergétique (2013)Rapport final : la Transition énergétique (2013)
Rapport final : la Transition énergétique (2013)
 
Consultant(e) AMOA BancAssurance
Consultant(e) AMOA BancAssuranceConsultant(e) AMOA BancAssurance
Consultant(e) AMOA BancAssurance
 
MESSIKA : stratégie de distribution (e-shop)
MESSIKA : stratégie de distribution (e-shop)MESSIKA : stratégie de distribution (e-shop)
MESSIKA : stratégie de distribution (e-shop)
 
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliothequeEcole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
Ecole ESMA : Rapport de projet - Application de gestion d'une bibliotheque
 
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école - Di...
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école - Di...Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école - Di...
Ecole ESMA : Projet Fin de semestre - Application de gestion d'une école - Di...
 
LA BANCASSURANCE
LA  BANCASSURANCELA  BANCASSURANCE
LA BANCASSURANCE
 
Analyse comparateur assurance
Analyse comparateur assuranceAnalyse comparateur assurance
Analyse comparateur assurance
 
Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...Conception et réalisation d’un Système d’information des étudiants du départe...
Conception et réalisation d’un Système d’information des étudiants du départe...
 
Le b a ba de l'assurance n 02
Le b a ba de l'assurance n 02Le b a ba de l'assurance n 02
Le b a ba de l'assurance n 02
 
Atlanta
AtlantaAtlanta
Atlanta
 
gestion de magasin vente matériels informatique
gestion de magasin vente matériels informatiquegestion de magasin vente matériels informatique
gestion de magasin vente matériels informatique
 
Retraite CompléMentaire Au Maroc
Retraite CompléMentaire Au MarocRetraite CompléMentaire Au Maroc
Retraite CompléMentaire Au Maroc
 
Realisation d une application de gestion d-un -tablissement priv-e 26-04_08
Realisation d une application de gestion d-un -tablissement priv-e 26-04_08Realisation d une application de gestion d-un -tablissement priv-e 26-04_08
Realisation d une application de gestion d-un -tablissement priv-e 26-04_08
 

Similaire à Rapport pfa

Guide de production des cours en ligne
Guide de production des cours en ligneGuide de production des cours en ligne
Guide de production des cours en ligneSALMABOUTERRAKA
 
Bulletin octobre2013
Bulletin octobre2013Bulletin octobre2013
Bulletin octobre2013CAHM
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-SéquencesLilia Sfaxi
 

Similaire à Rapport pfa (20)

Bulletin du CAHM d'octobre 2010
Bulletin du CAHM d'octobre 2010Bulletin du CAHM d'octobre 2010
Bulletin du CAHM d'octobre 2010
 
Agenda scolaire 2011 12 pour le CAHM
Agenda scolaire 2011 12 pour le CAHMAgenda scolaire 2011 12 pour le CAHM
Agenda scolaire 2011 12 pour le CAHM
 
Profil 2009-2010 du CAHM
Profil 2009-2010 du CAHMProfil 2009-2010 du CAHM
Profil 2009-2010 du CAHM
 
Le Profil de l'école 2010-2011 du CAHM
Le Profil de l'école 2010-2011 du CAHMLe Profil de l'école 2010-2011 du CAHM
Le Profil de l'école 2010-2011 du CAHM
 
Guide de production des cours en ligne
Guide de production des cours en ligneGuide de production des cours en ligne
Guide de production des cours en ligne
 
Le CAHMlot, mars 2018
Le CAHMlot, mars 2018Le CAHMlot, mars 2018
Le CAHMlot, mars 2018
 
Le CAHMlot, septembre 2017
Le CAHMlot, septembre 2017Le CAHMlot, septembre 2017
Le CAHMlot, septembre 2017
 
Bulletin octobre2013
Bulletin octobre2013Bulletin octobre2013
Bulletin octobre2013
 
Bulletin du CAHM, septembre 2010
Bulletin du CAHM, septembre 2010Bulletin du CAHM, septembre 2010
Bulletin du CAHM, septembre 2010
 
2019 04 les echos de la pedagogie avril 2019
2019 04 les echos de la pedagogie avril 20192019 04 les echos de la pedagogie avril 2019
2019 04 les echos de la pedagogie avril 2019
 
2019 04 les echos de la pedagogie avril 2019
2019 04 les echos de la pedagogie avril 20192019 04 les echos de la pedagogie avril 2019
2019 04 les echos de la pedagogie avril 2019
 
Agenda scolaire 2013-14 du CAHM
Agenda scolaire 2013-14  du CAHMAgenda scolaire 2013-14  du CAHM
Agenda scolaire 2013-14 du CAHM
 
Rapport de rendement du CAHM, juin2010
Rapport de rendement  du CAHM, juin2010Rapport de rendement  du CAHM, juin2010
Rapport de rendement du CAHM, juin2010
 
Le "Bulletin du CAHM" de janvier2011
Le "Bulletin du CAHM" de janvier2011Le "Bulletin du CAHM" de janvier2011
Le "Bulletin du CAHM" de janvier2011
 
Le "Bulletin du CAHM" de janvier2011
Le "Bulletin du CAHM" de janvier2011Le "Bulletin du CAHM" de janvier2011
Le "Bulletin du CAHM" de janvier2011
 
TD3-UML-Séquences
TD3-UML-SéquencesTD3-UML-Séquences
TD3-UML-Séquences
 
2017 04 lettre_de_la_pedagogie_entpe
2017 04 lettre_de_la_pedagogie_entpe2017 04 lettre_de_la_pedagogie_entpe
2017 04 lettre_de_la_pedagogie_entpe
 
Ecole college-2014 qe
Ecole college-2014 qeEcole college-2014 qe
Ecole college-2014 qe
 
Tice secondaire
Tice secondaireTice secondaire
Tice secondaire
 
Le Bulletin du Centre d'apprentissage du Haut-Madawaska, novembre 2010
Le Bulletin du Centre d'apprentissage du Haut-Madawaska, novembre 2010Le Bulletin du Centre d'apprentissage du Haut-Madawaska, novembre 2010
Le Bulletin du Centre d'apprentissage du Haut-Madawaska, novembre 2010
 

Rapport pfa

  • 1. Période du stage : du 01/04/2010 au 31/05/2010 ETABLI PAR : Mlle ALOZADE Ghizlane ENCADRE PAR : Mme ELALAMI Naima
  • 2. 2 I. Partie introductive : a. Fiche de stage b. Remerciement c. Avant propos d. Introduction II. Partie présentative: a. Présentation du groupe Scolaire AHMED CHAOUKI b.Outils de travail III. Partie thématique : a. Cahier des charges b. Modélisation c. Réalisation d. Conclusion IV. Annexe :
  • 3. 3
  • 4. 4 NOM : ALOZADE PRENOM : Ghizlane ETABLISSEMENT : ISTA Ntic Sidi Maarouf OPTION : technicienne spécialisée en Développement informatique Lieu de stage : G.S AHMED CHAOUKI PERIODE DE STAGE : 01/04/2010 – 31/05/2010
  • 5. 5 Dans un premier temps je tiens à remercier généralement toute personne qui a contribué de prés ou de loin à l'élaboration de ce document et à ma formation en me fournissant l'occasion de passer un stage pour mettre en application mes connaissances acquises durant cette période. Je remercie également Madame ELALAMI Naima pour son aide et ses conseils concernant les missions évoquées dans ce rapport, qu’elle m'a apporté lors de différentes séances d'encadrement. J'adresse particulièrement mes remerciements aux personnes suivantes, pour l'expérience enrichissante et pleine d'intérêt qu'elles m'ont fait vivre durant ces deux mois au sein du Groupe scolaire AHMED CHAOUKI:  Messieurs Slaoui, Tazi Fondateurs du groupe scolaire AHMED CHAOUKI pour leur accueil et la confiance qu'ils m'ont accordé dés mon arrivée.  Madame Sarhane Directrice de l'école AHMED Chaouki2 pour m’avoir accordé toute sa confiance ; pour le temps qu’elle m’a consacré tout au long de cette période, sachant répondre à toutes mes interrogations ; sans oublier sa participation au cheminement de ce rapport.  Messieurs Fnouni, ElHouassli, Nourlile ainsi que l’ensemble du personnel des écoles ALMANHAL, OUADNILE, AHMED Chaouki1, AHMED
  • 6. 6 Chaouki3 pour leur accueil sympathique et leur coopération professionnelle tout au long de ces deux mois. Finalement, je voudrai bien exprimer mes remerciements à mes parents pour leur confiance, leur aide et leur soutient précieux et à mes collègues pour les bons moments qu'on a passé ensemble durant ces deux dernières années scolaires.
  • 7. 7 A LA FIN DE LA 2EME ANNEE DE FORMATION ET POUR QUE CELLE CI SOIT ENRICHIE L’OFPPT NOUS OBLIGE DE PASSER UN STAGE PRATIQUE QUANT A MOI J’AI EFFECTUE UN STAGE AU SEIN DU GROUPE SCOLAIRE AHMED CHAOUKI DURANT LA PERIODE 02/04/07 AU 26/05/07 POUR AVOIR UNE EXPERIENCE PRATIQUE ET FAIRE UNE COMPARAISON ENTRE CE QUE J’AI APPRIS DURANT MA FORMATION (EN 1ERE ET EN 2EME ANNEE FILIERE TDI) ET CE QUE J’AI PRATIQUE EN TANT QUE STAGIAIRE.
  • 8. 8 J’ai été accueilli du 01 Avril au 31 Mai 2010 au sein du Groupe Scolaire Ahmed CHOUKI. Pendant ce stage, j’ai conçu puis réalisé une application permettant la gestion scolaire. Tout d’abord, je vais présenter dans la partie présentative le groupe scolaire Ahmed Chaouki dans lequel j’ai effectué mon stage, ainsi que les outils du travail. J’exposerais ensuite dans la partie thématique le cahier des charges, les différentes étapes de la modélisation, pour terminer, je détaillerais les différentes étapes de la réalisation de l’interface. Cette étude sera suivie d’une annexe. .
  • 9. 9
  • 10. 10 Le Groupe Scolaire Ahmed Chaouki constitué de cinq établissements : OuadNil, Ahmed CHOUKI 1, Ahmed CHOUKI 2, Ahmed CHOUKI 3, ElManhal. A la capitale économique, Casablanca est une ville portuaire située à l’Ouest du Maroc. Le Groupe Scolaire Ahmed Chaouki (le poète arabe des temps modernes et le prince des poètes), grâce à une pédagogie novatrice capable de former des citoyens solidaires, respectueux de l’environnement, scolarise les enfants marocains, français et d’autres nationalités de la Maternelle à la Troisième. Les programmes sont conformes aux programmes français et aux accords franco-marocains.  1980 : Ouverture de l’école OuadNil.  1985 : Ouverture de l’école Ahmed CHOUKI 1.  1989 : Ouverture de l’école Ahmed CHOUKI 2.  1991 : Ouverture de l’école Ahmed CHOUKI 3.  2000 : Ouverture de l’école ElManhal. Enseignement des langues :  Arabe dès la Moyenne Section  Français  Espagnol dès la 4ième de Collège
  • 11. 11  Anglais dès la Grande Section Structure :  Ahmed Chaouki 3  6 salles de classes maternelles  10 salles de classes élémentaires  1 salle de repos pour les Petites Sections  2 salles de psychomotricité  1 BCD (bibliothèque)  1 salle d’informatique *  1 salle des maîtres  1 cour de récréation  ElManhal  24 salles de classes  3 salles d’Histoire-Géographie  1 salle d’Arts Plastiques  2 salles d’informatique*  2 laboratoires de langues  4 laboratoires de Physique  3 laboratoires de S.V.T  1 salle de Technologie  1 cour de récréation *L’entretien et la gestion du parc informatique est assuré par un technicien spécialisé. Equipe pédagogique :
  • 12. 12 Les enseignants du Groupe Scolaire Ahmed Chaouki sont des professeurs détachés du Ministère marocain de l’Éducation nationale. Chaque professeur de l’école maternelle est accompagné d’une assistante. Pour le Secondaire (Collège), la Vie Scolaire est animée par un Conseiller Principal d’Éducation, aidé par des Assistants d’Éducation. L’équipe pédagogique du Primaire est animée par un Directeur, Chef d’établissement. Planning horaire : Aide personnalisée : lundi, mardi, jeudi et vendredi de 13h45 à 14h15 Le mercredi de 11h45 à 12h15  Maternelle et CP Lundi, mardi, jeudi, vendredi 8h15 – 12h15 14h15 – 16h15 le mercredi de 8h15 à 11h45  Du CE1 au CM2 Lundi, mardi, jeudi, vendredi 8h15 – 12h15 14h15 – 16h15 Le mercredi de 8h15 à 11h45
  • 13. 13  Collège Lundi, mardi, jeudi, vendredi 8h – 12h 14h00 – 17h ou 18h Le mercredi de 8h à 12h Inscriptions : Admission SANS TEST en Maternelle Pour l’Élémentaire et le Secondaire, une évaluation de niveau est obligatoire. Le projet d’établissement : Le projet d’établissement du Groupe Scolaire Ahmed Chaouki se donne pour mission de former , grâce à un enseignement solide et diversifié , des élèves qui seront des citoyens de demain disposant des atouts indispensables pour respecter et s’impliquer pleinement dans les environnements sociaux , économiques , culturels et écologiques de leur pays ou d’ailleurs . Les axes prioritaires de ce projet sont : La maîtrise des langues L’éducation à la citoyenneté
  • 14. 14 L’acquisition d’une culture par l’observation et l’expérimentation scientifique et technologique de la communication et de l’information. Le développement de l'établissement s'est naturellement accompagné d'un accroissement des effectifs:  1991: 180 élèves  1995: 247 élèves  1998: 283 élèves  2003: 310 élèves
  • 15. 15 Voici les logiciels utilisés dans le cadre de ce stage:  Adobe Photoshop pour l'édition graphique et la retouche d'images.  NetBeans 6.0.1 pour le développement en java. Pour le développement voici les langages que j'ai utilisés:  UML  Oracle  JAVA
  • 16. 16
  • 17. 17 Objectif du projet: Depuis ses débuts, le Groupe Scolaire Ahmed Chaouki accueille des élèves, marocains et étrangers. La gestion de ces élèves implique de nombreux documents papier circulant entre beaucoup de personnes. Enfin, il n'y a aucune cohérence entre toutes les données qui circulent. Le but de ce projet est donc de limiter les documents papier et d'assurer une certaine cohérence des données. Fonctionnalités requises: Cette application devra permettre au directeur :  La gestion et la consultation des employés  La mise à jour et l’affichage des comptes Cette application devra permettre aux secrétaires:  La gestion du calendrier scolaire (année scolaire, semestres, les jours et les demi-journées non ouvrés, les jours fériés).  L’affichage et la maintenance des fiches d’élèves(les informations personnelles, la vie scolaire(les absences et les sanctions) et le suivi(les notes et la décision de la fin d’année).  La gestion des emplois du temps.  La mise à jour du paiement des frais scolaire.  La consultation des archives.
  • 18. 18 Diagramme de cas d’utilisation :
  • 19. 19 D’après ce diagramme de cas d’utilisation on conclut qu’il y a deux acteurs dans notre système de gestion de scolarité :  Secrétaire: Une secrétaire peut consulter et gérer la liste des enseignants, des unités, des matières, des salles, des niveaux, des groupes et en plus créer une année scolaires et ses semestres, maintenir la liste des paiements des frais scolaires, gérer les jours et les demi-journées non ouvrés et afficher l’archive des employés et des élèves et elle a aussi la possibilité de maintenir et visualiser les coordonnées, la vie scolaire et le suivi d’un élève. Toute opération doit être précédée d’une authentification.  Directeur: Un directeur peut effectuer toutes les taches d’une secrétaire et aussi gérer et consulter la liste des employés et des comptes. Toutes ces taches doivent être précédées d’une authentification lors de laquelle un directeur précise un login et un password.
  • 20. 20  Scenario nominal: Acteur principal : Secrétaire. Résumé : Secrétaire ajoute un nouvel élève. Déroulement de l’interaction : 1. Secrétaire accède à l’application. 2. Le système demande à l’utilisateur de s’identifier. 3. Secrétaire saisie son identifiant et son mot de passe. 4. Le Système affiche une fiche à remplir. 5. Secrétaire remplie la fiche et choisit un niveau 6. Le système affiche la liste des groupes disponibles concernant le niveau choisi par l’utilisateur. 7. Secrétaire choisit un groupe. 8. Le système affiche la confirmation de l’ajout de cet élève. Exception: • Si l’utilisateur saisie un login ou un mot de passe invalides le système lui redemande de s’identifier. Ajouter un nouvel élève :
  • 21. 21  Diagramme de séquence :
  • 22. 22  Scenario nominal: Acteur principal : Secrétaire. Résumé : Secrétaire crée une nouvelle séance. Déroulement de l’interaction : 1. Secrétaire accède à l’application. 2. Le système demande à l’utilisateur de s’identifier. 3. Secrétaire saisie son identifiant et son mot de passe. 4. Le système affiche une fiche à remplir. 5. Secrétaire remplie la fiche en saisissant les coordonnées concernant la séance. 6. Le système enregistre la séance et affiche une confirmation. Exception: • Si l’utilisateur saisie un login ou un mot de passe invalides le système lui redemande de s’identifier. • Si l’horaire de la séance saisie par le secrétaire est invalide le système lui redemande de choisir un nouveau horaire. • Si la séance déjà existe c'est-à-dire l’enseignant, la salle ou le groupe choisis sont indisponibles, le système demande au secrétaire de remplir la fiche ou de remplacer l’ancienne séance. Ajouter une nouvelle séance :
  • 23. 23  Diagramme de séquence :
  • 24. 24 Diagramme de classe : Ce diagramme de classe a pour but de schématiser les différentes règles de gestion, il contient en général 26 classes qui sont liés entre eux par des relations.
  • 25. 25
  • 26. 26 Page d’identification : L’identification de l’utilisateur se fait à travers la fenêtre d’identification, l’utilisateur est invité à saisir l’identifiant et le mot de passe et choisir un mode parmi « Mode Administratif >> et « Mode Secrétaire>> selon sa fonction ou son intention.
  • 27. 27 Si l’utilisateur a cliqué sur le boutton « Se Connecter>> avant de cocher un mode un message d’erreur s’affiche dans lequel le systeme lui invite de choisir un mode.
  • 28. 28 Si l’identifiant ou le mot de passe saisies par l’utilisateur sont invalides un message d’erreur s’affiche dans la fenêtre d’identification, sinon la page principale s’affiche selon le mode choisi.
  • 29. 29 Mode Secrétaire : La fenêtre principale est composée de trois objets, le premier objet contenant les différents services offrant par le système par exemple « Emploi du temps», « Notes» et« Archives»… La sélection de l’un des services permet la visualisation des sous- services, le contenu de la fenêtre principale varie selon le sous- service sélectionné du deuxième objet. Le sous-service <<Calendrier>> contient quatre parties :  la première partie permet l’ajout d’une année scolaire en choisissant un nom, une date de début et une date de fin.
  • 30. 30  La seconde partie permet l’ajout des semestres en choisissant un nom, une date de début et une date de fin *.  La troisième partie permet la création des jours et des demi- journées non ouvrés de l’établissement à partir des cases à cocher *.  La dernière partie permet l’ajout des jours fériés en choisissant un nom, une date de début et une date de fin, la modification et la suppression se fait à partir de la table *. *le système affecte les semestres, les jours et les demi- journées non ouvrés et les jours fériés automatiquement à l’année scolaire courante.
  • 31. 31 Le sous-service <<Matière & Unité>> offre la possibilité de maintenir la liste des matière et des unités. La mise à jour se fait à partir de la table.
  • 32. 32 Le sous-service <<niveau>> permet la gestion de la liste des niveaux. Toute opération de mise à jour se fait à partir de la table par exemple pour ajouter un nouveau niveau il faut remplir la dernière ligne vide en saisissant le nom, les frais de scolarité, les frais de transport, les frais de la cantine et les frais d’assurance avant de cliquer sur « ajouter>>.
  • 33. 33 Le sous-service <<groupe>> permet de maintenir la liste des groupes. Toute opération de mise à jour se fait à partir de la table par exemple pour supprimer un groupe il suffit de sélectionner sa ligne avant de cliquer sur « supprimer>>.
  • 34. 34 Le service offre la possibilité de consulter et gérer la liste des enseignants de l’établissement à partir de la table. L’utilisateur a aussi la possibilité de filtrer cette liste en saisissant une chaine de caractère dans la zone de texte, la liste se varie selon la chaine saisie dans la zone.
  • 35. 35 Le sous-service « salle>> permet la visualisation et la gestion de la liste des salles, la fenêtre contient aussi des boutons de navigation.
  • 36. 36 La fenêtre ci-dessus permet de visualiser la liste des séances. Elle permet aussi l’ajout d’une nouvelle séance en choisissant un professeur, un niveau, un groupe, une unité, une salle, un horaire et un jour avant de cliquer sur le bouton « vérifier la disponibilité>>.
  • 37. 37 Si le professeur, le groupe ou la salle sont indisponibles, le système demande à l’utilisateur de remplacer la séance à partir d’une boite de dialogue.
  • 38. 38 Si l’horaire de nouvelle séance est invalide c’est-à-dire l’horaire appartient aux jours ou demi-journées non ouvrés de l’établissement, le système affiche un message d’erreur.
  • 39. 39 L’utilisateur a la possibilité de supprimer une séance à partir d’une liste qui contient toutes les séances de l’établissement en affichant le numéro de la séance, le professeur, la salle, l’unité, le groupe, le jour, l’heure de début et l’heure de fin.
  • 40. 40 La fenêtre ci-dessus permet la visualisation dans une table l’agenda d’un groupe choisi à partir d’une liste déroulante. Le contenu de la deuxième liste déroulante se varie à partir du niveau sélectionné dans la première liste déroulante.
  • 41. 41 La fenêtre ci-dessus offre la possibilité de consulter dans une table l’agenda d’un enseignant choisi à partir d’une liste déroulante. La fenêtre possède aussi un calendrier.
  • 42. 42 La fenêtre ci-dessus possède une table contient la liste des élèves de l’établissement, l’utilisateur a la possibilité de filtrer cette liste par niveau ou groupe à partir des listes déroulantes ou bien par nom à partir d’une zone de texte, la fenêtre a aussi des boutons de navigation et des liens vers les fenêtres de la création ,la modification, la vie scolaire et le suivi des élèves. Cette interface permet aussi la suppression d’un élève en sélectionnant sa ligne, le système ajoute automatiquement cet élève à l’archive des élèves.
  • 43. 43 Pour ajouter un élève il faut saisir ses coordonnées, les informations concernant son responsable, lui affecter à un niveau et à un groupe(le système affiche seulement la liste des groupes disponibles c’est-à- dire dont le nombre des élèves est inferieur à la capacité) et ajouter son image.
  • 44. 44
  • 45. 45 En cliquant sur le bouton Parcourir une nouvelle fenêtre s’affiche contient la liste des dossiers permettant à l’utilisateur de choisir une image, l’image choisie dans la nouvelle fenêtre s’affiche automatiquement dans la fenêtre de l’ajout. Le bouton <<annuler>> permet de fermer cette fenêtre.
  • 46. 46 La fenêtre de modification contient les informations courantes de l’élève sélectionné dans la page principale, l’utilisateur a la possibilité de modifier ces coordonnées. Le bouton <<annuler>> permet de fermer cette fenêtre.
  • 47. 47 Pour modifier l’image d’un élève il suffit de choisir une autre image à partir de la liste des dossiers.
  • 48. 48 En cliquant sur <<vie scolaire >> une nouvelle fenêtre s’affiche contenant les informations concernant les absences et les sanctions de l’élève sélectionné.
  • 49. 49 La fenêtre de la vie scolaire contient une liste des sanctions et des absences et les informations personnelles d’un élève choisi. La fenêtre permet aussi la gestion des sanctions et la mise à jour et la justification des absences. Le bouton « annuler>> permet la fermeture de la fenêtre.
  • 50. 50 L’utilisateur peut ajouter, modifier ou supprimer une justification pour une absence choisi à partir de la fenêtre principale.
  • 51. 51 Une absence ne doit avoir qu’une seule justification, si ce n’est pas le cas le système demande à l’utilisateur de remplacer l’ancienne justification.
  • 52. 52 En cliquant sur <<suivi élève >> une nouvelle fenêtre s’affiche contenant les informations concernant les notes et les bulletins de l’élève sélectionné.
  • 53. 53 L’utilisateur a la possibilité de visualiser les notes d’un élève choisi et les filtrer par matière, année scolaire ou semestre. Les lignes contenant les notes qui sont inferieurs à 5 sont en rouge. Les lignes contenant les notes entre 5 et 6 sont en orange. Les lignes contenant les notes qui sont supérieurs à 6 sont en vert.
  • 54. 54 L’utilisateur a la possibilité de visualiser les bulletins d’un élève choisi, si la note est inferieure à 5 le système affecte «Non Admis>> à sa décision, si la note entre 5 et 6 l’utilisateur à la possibilité d’affecter une décision, si la note est supérieure à 6 le système affecte «Admis>> à sa décision. Les lignes dans lesquels la décision est « non Admis>> sont en rouge. Les lignes dans lesquels la décision est « Admis>> sont en vert.
  • 55. 55 La fenêtre ci-dessus permet la consultation la gestion et la filtration par matière, niveau et date des devoirs et elle permet aussi la gestion des notes d’un devoir sélectionné.
  • 56. 56 Pour créer un nouveau devoir il faut choisir sa matière, son niveau, son type, son horaire et sa date. La fenêtre contient aussi un bouton permet de revenir à la sélection des devoirs.
  • 57. 57 Cette interface permet l’affectation des notes d’un devoir choisi à un groupe choisi à partir d’une liste déroulante contient les groupes concernant le niveau de ce devoir Les lignes contenant les notes qui sont inferieurs à 5 sont en rouge. Les lignes contenant les notes entre 5 et 6 sont en orange. Les lignes contenant les notes qui sont supérieurs à 6 sont en vert.
  • 58. 58 L’interface ci-dessous permet la visualisation et le paiement des frais scolaires pour le mois courant, le système supprime automatiquement les élèves qui n’ont pas payé les frais scolaires du mois précédent.
  • 59. 59 L’utilisateur visualise la liste des élèves archivés et il a aussi la possibilité de filtrer cette liste par le nom saisie dans une zone de texte.
  • 60. 60 L’utilisateur visualise la liste des employés archivés et il a aussi la possibilité de filtrer cette liste par le nom saisie dans une zone de texte. La fenêtre principale contient un menu qui permet de quitter ou de se déconnecter.
  • 61. 61 Mode administratif : Pour accéder au mode administratif l’utilisateur doit saisir son identifiant et son mot de passe.
  • 62. 62 L’utilisateur visualise, gère la liste des employés et il a aussi la possibilité de filtrer cette liste par le nom saisie dans une zone de texte.
  • 63. 63 L’utilisateur visualise, gère la liste des comptes et il a aussi la possibilité de filtrer cette liste par le nom saisie dans une zone de texte. La fenêtre principale contient un menu qui permet de quitter l’application, se déconnecter ou passer au mode secrétaire.
  • 64. 64 Un stage de fin de formation est pour moi la première expérience professionnelle dans le domaine de l'informatique, c’est pour cela ce projet était une étape très importante dans mon cycle de formation vu qu'il était une occasion très intéressante et bénéfique pour savoir comment appliquer, sur le plan pratique, des connaissances théoriques déjà acquises. Grâce à un environnement favorable pour le travail et avec un encadrement encourageant et permanent, j’ai pu réaliser mon projet de fin de formation suivant un plan organisé. Cependant mon stage ne se termine pas avec la soutenance, il me reste en effet encore deux mois à effectuer qui vont me permettre de voir non seulement la finalisation du projet, mais également de pouvoir diversifier ma fonction. Quoiqu'il en soit ce stage aura été une aventure enrichissante, que cela soit du point de vue technique que de l'humain.
  • 65. 65
  • 66. 66 Les requêtes SQL i. Create table employee(id_emp number primary key, nom varchar2(50), prenom varchar2(50),datenaissance date, adresse varchar2(50), sexe varchar2(20),salaire number,tel varchar2(50),email varchar2(50), date_debut date,fonction varchar2(20) ) ; ii. Create table compte(login varchar2(20) primary key,password varchar2(20) ,idemp number ,foreign key (idemp) references employee(id_emp) on delete cascade); iii. Create table annscol (id_ann varchar2(50) primary key ,date_debut date,date_fin date); iv. Create table semestre (id_semestre number primary key ,date_debut date,date_fin date,libelle varchar2(20), id_ann varchar2(20), foreign key (id_ann) references annscol(id_ann) on delete cascade); v. Create table responsable(id_resp number primary key ,nom varchar2(50), prenom varchar2(50), adresse varchar2(50),sexe varchar2(20),tel varchar2(50),email varchar2(50)) ; vi. Create table niveau(id_niveau varchar2(20) primary key,frais_scolarite number,frais_transport number,frais_cantine number,assurance number); vii. Create table groupe(id_grp varchar2(20) primary key , id_niveau varchar2(20),foreign key(id_niveau) references niveau(id_niveau) on delete cascade,max_elve number); viii. Create table eleve(id_eleve number primary key ,nom varchar2(50), prenom varchar2(50),datenaissance date, adresse varchar2(50),lieunaiss varchar2(20),sexe varchar2(20), date_scolarite date ,date_affiliation date,id_resp number,transport varchar2(20),restaurant varchar2(20),image blob,id_grp varchar2(20),foreign key (id_resp) references responsable (id_resp) on delete cascade, foreign key (id_grp) references groupe (id_grp) on delete cascade) ; ix. Create table frais (id_frais number primary key,id_eleve number,mois number,id_ann varchar2(50), foreign key (id_ann) references annscol(id_ann) on delete cascade, foreign key (id_eleve) references eleve (id_eleve) on delete cascade); x. Create table decision(id_decision number primary key,id_eleve number,id_ann varchar2(50), decision varchar2(20),foreign key (id_ann) references annscol(id_ann) on delete cascade, foreign key (id_eleve) references eleve (id_eleve) on delete cascade);
  • 67. 67 xi. Create table prof(id_prof number primary key ,nom varchar2(50), prenom varchar2(50), datenaissance date, adresse varchar2(50), sexe varchar2(20), salaire number,tel varchar2(50),email varchar2(50)) ; xii. Create table arch_employee(id_emp number primary key, nom varchar2(50), prenom varchar2(50),datenaissance date, adresse varchar2(50), sexe varchar2(20),tel varchar2(50),email varchar2(50), date_debut date,date_fin date,fonction varchar2(20) ) ; xiii. Create table arch_eleve(id_eleve number primary key ,nom varchar2(50), prenom varchar2(50),datenaissance date, adresse varchar2(50),sexe varchar2(20) , date_debut date,date_fin date ) ; xiv. Create table sall(id_sall number primary key,libelle varchar2(20),nbre_place number); xv. Create table unite(id_unit number primary key,libelle varchar2(20)); xvi. Create table matiere(id_mat number primary key,id_unit number,libelle varchar2(20),foreign key(id_unit) references unite(id_unit) on delete cascade); xvii. Create table devoir(id_devoir number primary key,id_mat number,id_smstr number, type varchar2(20),date_dev date,id_niveau varchar2(20),h_deb varchar2(5) , h_fin varchar2(5) ,foreign key(id_mat) references matiere(id_mat) on delete cascade,foreign key(id_smstr) references semestre(id_semestre) on delete cascade,foreign key(id_niveau) references niveau(id_niveau) on delete cascade); xviii. Create table note(id_devoir number,id_eleve number,note number,primary key(id_devoir,id_eleve),foreign key(id_devoir) references devoir(id_devoir) on delete cascade,foreign key(id_eleve) references eleve(id_eleve) on delete cascade); xix. Create table seance (id_seance number primary key,id_prof number,id_sall number,id_mat number,id_grp varchar2(20) , jour varchar2(20), h_deb varchar2(5) , h_fin varchar2(5) ,foreign key (id_prof) references prof (id_prof) on delete cascade, foreign key (id_sall) references sall (id_sall) on delete cascade, foreign key (id_mat) references matiere (id_mat) on delete cascade, foreign key (id_grp) references groupe (id_grp) on delete cascade); xx. Create table abscent (id_abt number primary key,id_eleve number,date_debut date,h_debut varchar2(5),date_fin date, h_fin varchar2(5) ,foreign key(id_eleve) references eleve(id_eleve) on delete cascade); xxi. Create table sanction (id_sanct number primary key ,id_eleve number,date_sanct date,sanction varchar2(50),motif varchar2(50),commentaire varchar2(50) ,foreign key(id_eleve) references eleve(id_eleve) on delete cascade);
  • 68. 68 xxii. Create table justification_abt (id_just number primary key,id_abt number,motif varchar2(200),moyen varchar2(200) ,commentaire varchar2(50) ,foreign key(id_abt) references abscent(id_abt) on delete cascade); xxiii. Create table joursFerie(id number primary key,date_debut date,date_fin date,libelle varchar2(20),id_ann varchar2(50), foreign key (id_ann) references annscol(id_ann) on delete cascade); xxiv. Create table joursNonOuvert(id number primary key,Jour varchar2(20),d_h varchar2(20) ,d_f varchar2(20),id_ann varchar2(50), foreign key (id_ann) references annscol(id_ann) on delete cascade); xxv. Create sequence semp start with 1 increment by 1; xxvi. Create sequence ss start with 1 increment by 1; xxvii. Create sequence sj start with 1 increment by 1; xxviii. Create sequence sv start with 1 increment by 1; xxix. Create sequence sm start with 1 increment by 1; xxx. Create sequence su start with 1 increment by 1; xxxi. Create sequence sp start with 1 increment by 1; xxxii. Create sequence ssall start with 1 increment by 1; xxxiii. Create sequence sse start with 1 increment by 1; xxxiv. Create sequence se start with 1 increment by 1; xxxv. Create sequence sabt start with 1 increment by 1; xxxvi. Create sequence ssan start with 1 increment by 1; xxxvii. Create sequence sjust start with 1 increment by 1; xxxviii. Create sequence sr start with 1 increment by 1; xxxix. Create sequence s_frais start with 1 increment by 1; xl. Create sequence s16 start with 1 increment by 1; xli. Create sequence s17 start with 1 increment by 1; xlii. Create sequence s18 start with 1 increment by 1; xliii. Create sequence s19 start with 1 increment by 1; xliv. Create sequence s20 start with 1 increment by 1; xlv. Create sequence s21 start with 1 increment by 1; xlvi. Create sequence s22 start with 1 increment by 1; xlvii. Create sequence s23 start with 1 increment by 1; xlviii. Create sequence s24 start with 1 increment by 1; xlix. l. create or replace trigger archelv before delete on eleve for each row begin insert into arch_eleve values(:old.id_eleve ,:old.nom , :old.prenom ,:old.datenaissance ,:old.adresse ,:old.sexe , :old.date_scolarite ,sysdate ) ; end;
  • 69. 69 / li. create or replace trigger arch_emp before delete on employee for each row begin insert into arch_employee values ( :old.id_emp , :old.nom , :old.prenom , :old.datenaissance , :old.adresse , :old.sexe , :old.tel , :old.email , :old.date_debut ,sysdate , :old.fonction ) ; end; / lii. create or replace trigger arch_prof before delete on prof for each row begin insert into arch_employee values ( :old.id_prof , :old.nom , :old.prenom , :old.datenaissance , :old.adresse , :old.sexe , :old.tel , :old.email ,’’ ,sysdate ,’Enseignant’) ; end; /
  • 70. 70 UML : UML (Unified Modeling Language, que l'on peut traduire par "langage de modélisation unifié) est une notation permettant de modéliser un problème de façon standard. Ce langage est né de la fusion de plusieurs méthodes existant auparavant, et est devenu désormais la référence en terme de modélisation objet, à un tel point que sa connaissance est souvent nécessaire pour obtenir un poste de développeur objet.  La notion d'objet La programmation orientée objet consiste à modéliser informatiquement un ensemble d'éléments d'une partie du monde réel (que l'on appelle domaine) en un ensemble d'entités informatiques. Ces entités informatiques sont appelées objets. Il s'agit de données informatiques regroupant les principales caractéristiques des éléments du monde réel (taille, la couleur, ...). La difficulté de cette modélisation consiste à créer une représentation abstraite, sous forme d'objets, d'entités ayant une existence matérielle (chien, voiture, ampoule, ...) ou bien virtuelle (sécurité sociale, temps, ...).  Les méthodes objets La modélisation objet consiste à créer une représentation informatique des éléments du monde réel auxquels on s'intéresse, sans se préoccuper de l'implémentation, ce qui signifie indépendamment d'un langage de programmation. Il s'agit donc de déterminer les objets présents et d'isoler leurs données et les fonctions qui les utilisent. Pour cela des méthodes ont été mises au point. Entre 1970 et 1990, de nombreux analystes ont mis au point des approches orientées objets, si bien qu'en 1994 il existait plus de 50 méthodes objet. Toutefois seules 3 méthodes ont véritablement émergé :  La méthode OMT de Rumbaugh  La méthode BOOCH'93 de Booch  La méthode OOSE de Jacobson (Object Oriented Software Engineering) A partir de 1994, Rumbaugh et Booch (rejoints en 1995 par Jacobson) ont unis leurs efforts pour mettre au point la méthode unifiée (unified method 0.8), incorporant les avantages de chacunes des méthodes précédentes. La méthode unifiée à partir de la version 1.0 devient UML (Unified Modeling Language), une notation universelle pour la modélisation objet.
  • 71. 71 UML n'est pas une méthode dans la mesure où elle ne présente aucune démarche. A ce titre UML est un formalisme de modélisation objet. Le mot méthode parfois utilisé par abus de langage dans les pages suivantes ne doit donc pas être entendu comme une "démarche". UML 1.0 est soumise à l'OMG (Object Management Group) en janvier 1997, mais elle ne sera acceptée qu'en novembre 1997 dans sa version 1.1, date à partir de laquelle UML devient un standard international. Voici le récapitulatif des évolutions de ce langage de modélisation :  En 1995: Méthode unifiée 0.8 (intègrant les méthodes Booch'93 et OMT)  En 1995: UML 0.9 (intègrant la méthode OOSE)  En 1996: UML 1.0 (proposée à l'OMG)  En 1997: UML 1.1 (standardisée par l'OMG)  En 1998: UML 1.2  En 1999: UML 1.3  En 2000: UML 1.4  En 2003: UML 1.5 Cette méthode représente un moyen de spécifier, représenter et construire les composantes d’un système informatique. Avec la méthode UML, un objet est par exemple représenté de la façon suivante :  Intérêt d'une méthode objet Les langages orientés objet constituent chacun une manière spécifique d'implémenter le paradigme objet. Ainsi, une méthode objet permet de définir le problème à haut niveau sans rentrer dans les spécificités d'un langage. Il
  • 72. 72 représente ainsi un outil permettant de définir un problème de façon graphique, afin par exemple de le présenter à tous les acteurs d'un projet (n'étant pas forcément des experts en un langage de programmation). De plus, le fait de programmer à l'aide d'un langage orienté objet ne fait pas d'un programmeur un concepteur objet. En effet il est tout à fait possible de produire un code syntaxiquement juste sans pour autant adopter une approche objet. Ainsi la programmation orientée objet implique  en premier lieu une conception abstraite d'un modèle objet (c'est le rôle de la méthode objet)  en second plan l'implémentation à l'aide d'un langage orienté objet (tel que C++/Java/...) Une méthode objet est donc d'une part une méthode d'analyse du problème (afin de couvrir toutes les facettes du problème), d'autre part un langage permettant une représentation standard stricte des concepts abstraits (la modélisation) afin de constituer un langage commun.  Qu'est-ce qu'un modèle ? La modélisation consiste à créer une représentation simplifiée d'un problème: le modèle. Grâce au modèle il est possible de représenter simplement un problème, un concept et le simuler. La modélisation comporte deux composantes :  L'analyse, c'est-à-dire l'étude du problème  la conception, soit la mise au point d'une solution au problème Le modèle constitue ainsi une représentation possible du système pour un point de vue donné.  La modélisation UML Le méta modèle UML fournit une panoplie d'outils permettant de représenter l'ensemble des éléments du monde objet (classes, objets, ...) ainsi que les liens qui les relie. Toutefois, étant donné qu'une seule représentation est trop subjective, UML fournit un moyen astucieux permettant de représenter diverses projections d'une même représentation grâce aux vues.
  • 73. 73 Une vue est constituée d'un ou plusieurs diagrammes. On distingue deux types de vues :  Les vues statiques, c'est-à-dire représentant le système physiquement o diagrammes d'objets o diagrammes de classes o diagrammes de cas d'utilisation o diagrammes de composants o diagrammes de déploiement  Les vues dynamiques, montrant le fonctionnement du système o diagrammes de séquence o diagrammes de collaboration o diagrammes d'états-transitions o diagrammes d'activités  Les cas d'utilisation Les cas d'utilisation (en anglais use cases) permettent de représenter le fonctionnement du système vis-à-vis de l'utilisateur, c'est donc une vue du système dans son environnement extérieur. Oracle : Oracle est un SGBD (système de gestion de bases de données) édité par la société du même nom (Oracle Corporation - http://www.oracle.com), leader mondial des bases de données. La société Oracle Corporation a été créée en 1977 par Lawrence Ellison, Bob Miner, et Ed Oates. Elle s'appelle alors Relational Software Incorporated (RSI) et commercialise un Système de Gestion de Bases de données relationnelles (SGBDR ou RDBMS pour Relational Database Management System) nommé Oracle. En 1979, le premier prototype (RDBMS - RSI1) intégrant la séparation des espaces d'adressage entre les programmes utilisateurs et le noyau Oracle est commercialisé. Cette version est entièrement développée en langage assembleur. La seconde version (RDBMS - RSI2) est un portage de l'application sur d'autres plates-formes. En 1983 la troisième version apporte des améliorations au niveau des performances et une meilleure prise en charge du SQL. Cette version est
  • 74. 74 entièrement codée en langage C. A la même époque RSI change de raison sociale et devient Oracle. En 1984 la première version d'Oracle (Oracle 4) est commercialisée sur les machines IBM. En 1985 Oracle 5 permet une utilisation client-serveur grâce au middleware SQL*Net. En 1986 Oracle a été porté sur la plateforme 8086. En 1988 Oracle 6 est disponible sur un grand nombre de plates-formes et apporte de nombreuses nouvelles fonctionnalités ainsi qu'une amélioration notable des performances. En 1991, Oracle 6.1 propose une option Parallel Server (dans un premier temps sur la DEC VAX, puis rapidement sur de nombreuses autres plates-formes). En 1992, Oracle 7 sort sur les plates-formes UNIX (elle ne sortira sur les plates-formes Windows qu'à partir de 1995). Cette version permet une meilleure gestion de la mémoire, du CPU et des entrées-sorties. La base de données est accompagnée d'outils d'administration (SQL*DBA) permettant une exploitation plus aisée de la base. En 1997, la version Oracle 7.3 (baptisée Oracle Universal Server) apparaît, suivie de la version 8 offrant des capacités objet à la base de données Oracle est écrit en langage C et est disponible sur de nombreuses plates-formes matérielles (plus d'une centaine) dont :  AIX (IBM)  Solaris (Sun)  HP/UX (Hewlett Packard)  Windows NT (Microsoft) Oracle depuis la version 8.0.5 est disponible sous Linux  Les versions d'Oracle Oracle se décline en plusieurs versions  Oracle Server Standard, une version comprenant les outils les plus courants de la solution Oracle. Il ne s'agit pas pour autant d'une version bridée...
  • 75. 75  Oracle Server Enterprise Edition  Les fonctionnalités d'Oracle Oracle est un SGBD permettant d'assurer :  La définition et la manipulation des données  La cohérence des données  La confidentialité des données  L'intégrité des données  La sauvegarde et la restauration des données  La gestion des accès concurrents  Les composants d'Oracle Outre la base de données, la solution Oracle est un véritable environnement de travail constitué de nombreux logiciels permettant notamment une administration graphique d'Oracle, de s'interfacer avec des produits divers et d'assistants de création de bases de données et de configuration de celles-ci. On peut classer les outils d'Oracle selon diverses catégories :  Les outils d'administration  Les outils de développement  Les outils de communication  Les outils de génie logiciel  Les outils d'aide à la décision  Les outils d'administration d'Oracle Oracle est fourni avec de nombreux outils permettant de simplifier l'administration de la base de données. Parmi ces outils, les plus connus sont :  Oracle Manager (SQL*DBA)  NetWork Manager  Oracle Enterprise Manager
  • 76. 76  Import/Export : un outil permettant d'échanger des données entre deux bases Oracle  Outils de développement d'Oracle Oracle propose également de nombreux outils de développement permettant d'automatiser la création d'applications s'interfaçant avec la base de données. Ces outils de développement sont :  Oracle Designer  Oracle Developer  SQL*Plus : une interface interactive permettant d'envoyer des requêtes SQL et PL/SQL à la base de données. SQL*Plus permet notamment de paramétrer l'environnement de travail (formatage des résultats, longueur d'une ligne, nombre de lignes par page, ...)  Oracle Developper : il s'agit d'une suite de produits destinés à la conception et à la création d'applications client-serveur. Il est composé de 4 applications : o Oracle Forms (anciennement SQL*Forms) : un outil permettant d'interroger la base de données de façon graphique sans connaissances préalables du langage SQL. SQL*Forms permet ainsi de développer des applications graphiques (fenêtres, formulaires, ...) permettant de sélectionner, modifier et supprimer des données dans la base. o Oracle Reports (SQL*ReportWriter) : un outil permettant de réaliser des états o Oracle Graphics : un outil de génération automatique de graphiques dynamiques pour présenter graphiquement des statistiques réalisées à partir des données de la base o Procedure Builder : un outil permettant de développer des procédures, des fonctions et des packages JAVA Java est un langage objet ressemblant au langage C++. Il a été mis au point en 1991 par la firme Sun Microsystems. Le but de Java à l'époque était de constituer un langage de programmation pouvant être intégré dans les appareils électroménagers, afin de pouvoir les contrôler, de les rendre interactifs, et surtout de permettre une communication entre les appareils. Ce programme de
  • 77. 77 développement se situait dans un projet appelé Green, visant à créer une télécommande universelle (Star 7) comprenant un système d'exploitation capable de gérer l'ensemble des appareils électroménagers de la maison. Etant donné que le langage C++ comportait trop de difficultés, James Gosling, un des acteurs du projet (considéré désormais comme le père de Java) décida de créer un langage orienté objet reprenant les caractéristiques principales du C++, en éliminant ses points difficiles, et en le rendant moins encombrant et plus portable (il devait pouvoir être intégré dans n'importe quel appareil...). Ainsi, ce langage fut baptisé dans un premier temps Oak (Oak signifiant chêne). Toutefois, puisque ce nom était déjà utilisé, il fut rebaptisé Java en l'honneur de la boisson préférée des programmeurs, c'est-à-dire le café, dont une partie de la production provient de l'île Java. A la même époque, le Web faisait son apparition, or Java possédait toutes les caractéristiques faisant de lui un langage approprié pour le Web :  Le réseau des réseaux rassemblant sur une même structure des machines différentes, il fallait un langage capable de fonctionner sur chacune d'entre-elles: Java était conçu pour être portable  Le web était limité en bande passante: Java était conçu pour être petit Ainsi, en 1994, l'équipe décida de mettre au point un navigateur (baptisé HotJava) intégrant Java et capable de faire fonctionner des applets (des petites applications fonctionnant dans un navigateur). C'est ainsi que fin 1995 Java eut un terrible essor avec le soutien de Netscape, qui ne tarda pas à inclure Java dans son navigateur...  Comparaison de Java et de C++ Java est très proche du langage C++ étant donné qu'il a quasiment la même syntaxe. Toutefois Java est plus simple que le langage C++ bien qu'il s'en inspire, car les caractéristiques critiques du langage C++ (celles qui sont à l'origine des principales erreurs) ont été supprimées. Cela comprend :  Les pointeurs  La surcharge d'opérateurs  L'héritage multiple  La libération de mémoire est transparente pour l'utilisateur (il n'est plus nécessaire de créer de destructeurs)  Une meilleure gestion des erreurs  Les chaines et les tableaux sont désormais des objets faisant partie intégrante du langage
  • 78. 78 Toutefois Java est beaucoup moins rapide que le langage C++, il perd en rapidité ce qu'il gagne en portabilité