79
«REPOBLIKAN’I MADAGASIKARA Tanindrazana-Fahafahana-Fandrosoana MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE SCIENTIFIQUE ECOLE NORMALE SUPERIEURE POUR L’ENSEIGNEMENT TECHNIQUE DEPARTEMENT DE GENIE MECANIQUE Mémoire de fin d’étude pour l’’obtention du diplôme de C.A.P.E.N SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE DES ETUDIANTS DE L’ENSET Présenté par : RANANDRO Fulgence Dieu donné - RAKOTONINDRIANA Haingo Sahala Encadreurs : Messieurs RANDRIANIVOSOA Ramamonjy Messieurs RAVELOSON Jeannot, 30 Octobre 2010

SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

«REPOBLIKAN’I MADAGASIKARA

Tanindrazana-Fahafahana-Fandrosoana

MINISTERE DE L’ENSEIGNEMENT SUPERIEUR ET DE LA RECHERCHE

SCIENTIFIQUE

ECOLE NORMALE SUPERIEURE POUR L’ENSEIGNEMENT TECHNIQUE

DEPARTEMENT DE GENIE MECANIQUE

Mémoire de fin d’ étude pour l’’ obtention du diplôme de

C.A.P.E.N

SYSTEME D’INFORMATIONS POUR LA SUIVIE

DE LA SCOLARITE DES ETUDIANTS DE

L’ENSET

Présenté par :

RANANDRO Fulgence Dieu donné - RAKOTONINDRIANA Haingo Sahala

Encadreurs : Messieurs RANDRIANIVOSOA Ramamonjy

Messieurs RAVELOSON Jeannot,

30 Octobre 2010

Page 2: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

SUJET DE MEMOIRE

« Système d’informations

pour la suivie de la scolarité des étudiants de l’ENSET »

Cahier des charges

Contexte

Actuellement, l’ENSET ne dispose pas d’un système d’informations pour traiter de les tâches

de la scolarité et pour archiver le parcours des étudiants durant ses études à l’Ecole. Seuls

les outils de bureautique et les registres manuels classiques sont utilisés.

Il s’avère alors intéressant de combler cette lacune par la conception d’un système

d’informations basé sur une base de données accessible grâce à un site web dynamique.

But

Il s’agit de concevoir et de réaliser un portail web dynamique pour la suivie de la scolarité

des étudiants inscrits à l’ENSET, pour gérer de façon plus efficace et rapide les données.

Cahier des charges

Annuaire

Répertoire des projets et mémoires

Gestion des documents et dossiers pédagogiques : relevé des notes, certificats de scolarité,

carte d’étudiant, carte de bibliothèque

Forum pour échange d’idées

Travaux à faire

Collecte des informations de base constituant l’essentielle pour la suivie de la scolarité

Conception de la base de donnée ;

Construction de la base de données avec MySQL

Conception du site web dynamique pour l’accès à la base de données

modélisation UML

Tests sur un serveur local Apache

Hébergement

Documents :

- Cours UML, PHP, Javascript

- Documents Webmaster

- Programmation orientée Objet

RAKOTONDRIATSARA H Rindrantsoa Conception d’un logiciel de gestion de bibliothèque

en ligne, rapport de mémoire d’ingéniorat ESP 2003

LAZAMAHANDRY Toby Hafatra et ANDRIANATOANDRO Vonifanjaniaina, Plate-forme de

formation en ligne, mémoire d’ingéniorat ESP, 2002

Responsables : ANDRIANIVOSOA Ramamonjy

RAVELOSON Jeannot

Page 3: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

Nombre d’étudiants : 2 UFR Mathématiques&Informatiques

REMERCIEMENTS

Remercions DIEU de nous avoir donné la santé, la force et le courage tout au long de

l’accomplissement de ce travail.

Ce travail a été effectué sous la direction des Messieurs ANDRIANIVOSOA Ramamonjy

Et RAVELOSON Jeannot, nos encadreurs.

Nous sommes heureux de pouvoir exprimer pleinement ici nos profondes reconnaissances

pour ses bienveillances attention, ses précieux conseils ainsi que les nombreux

encouragements qu’ils n’ont cessé de prodiguer du début jusqu’à la fin de ce travail.

Hommage respectueux et sincère remerciement également :

A Monsieur le président de jury qui va porté son jugement sur ce travail ;

A tous les enseignants de l’ENSET qui ont donné leur savoir faire pour notre formation

durant ces cinq années d’études.

A tous nos camarades de promotion qui ont su une atmosphère fraternelle

A toutes les personnes qui ont porté leurs aides et soutient pour l’accomplissement de ce

travail.

Nous ne serions pas terminé sans dire un grand merci à toutes nos familles.

RANANDRO RAKOTONINDRIANA

Fulgence Dieu donné Haingo Sahala

Page 4: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

RESUME

Mots clés : Système d’informations, Base de données, SGBD, serveur, client, MySQL, page

dynamique, PHP.

Contexte

Actuellement, l’ENSET ne dispose pas d’un véritable système d’informations informatique

pour traiter les tâches inhérentes de la scolarité. Seuls les outils de bureautique et les

registres manuels classiques sont utilisés.

Ce travail de mémoire consiste à combler cette lacune par la conception d’un système

d’informations basé sur une base de données accessible grâce à un site web dynamique.

But

Il s’agit de concevoir et de réaliser un portail web dynamique pour la suivie de la scolarité

des étudiants inscrits à l’ENSET., pour gérer de façon plus efficace et rapide les données.

Moyens et méthodes utilisés

Le système est modélisé par la méthode UML. Toutes les informations nécessaires sont

stockées dan une base de données construite avec EasyPHP et installée dans un serveur

APACHE. L’accès à cette base de données se fait grâce à un site web dynamique conçu en

PHP.

Résultats

La base de données est construite, et le site est fonctionnel. Ce dernier inclut des fonctions

de recherches sur les travaux de mémoires ou projets effectués, ainsi qu’une annuaire pour

la recherche de personnes; il contient et permet de consulter, avec des modes d’accès

hiérarchisés, les données relatives à la scolarité, entre autre les résultats des examens

(relevée des notes, etc.), les projets ou mémoires de fin d’étude. La délivrance des certificats

de scolarité, de cartes d’étudiants ou de carte d’accès à la bibliothèque est prévue.

Conclusion et perspective

Le site a été testé avec des données restreintes. Il reste à saisir toutes les données

archivées à l’Ecole. Des améliorations sont envisageables, notamment sur la recherche

thématique sur les projets et mémoires réalisés. Ce travail sera d’une grande utilité pour le

service de la scolarité et les responsables pédagogiques à l’ENSET

Page 5: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

GLOSSAIRE

Abréviations Significations

ANSI

HTML

IP

MCD

MLD

PHP

SGBD

SI

SQL

UML

XML

American Standards Institute

Hypertext Markup Langage

Internet Protocol

Modèle Conceptuel des données

Modèle Logique des Données

Hypertext preprocessor

Système de Gestion de Base de Données

Système d’informations

Structured Query Langage

Unified Modeling Langage

Xtensible Markup Langage

Page 6: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

1

INTRODUCTION GENERALE

Actuellement, le système d’informations fait partie intégrante de toute institution, et à plus

forte raison les établissements de formation supérieures.

L’ENSET ne dispose pas d’un système d’informations pour traiter les tâches de la scolarité

et aussi pour archiver le parcours des étudiants durant ses études à l’Ecole.

Ce travail de mémoire a pour but de concevoir un système d’informations pour la suivie de la

scolarité des étudiants de l’ENSET notamment l’inscription des étudiants, leurs notes et

aussi l’archive des projets et mémoires sous forme d’une base de données accessible grâce

à un site web dynamique.

Le site en question comprend deux types d’accès :

Accès privé : accès pour le service de la scolarité

Accès public : accès pour les visiteurs.

Le langage UML (Unified Modeling Language ou langage unifié de modélisation) est l’un des

outils de modélisation objets dont le but est de formaliser le système d’information, afin de

dépasser l’ambiguïté de la langue naturelle. UML permet donc de standardiser et de

normaliser le processus de modélisation des données lors de la phase de conception afin de

lui intégrer au système de gestion de base de données (SGBD).

Le rapport se divise en trois parties. La première partie expose la théorie et les outils de

modélisation nécessaires pour modéliser la base de données, la seconde traite la partie

réalisation et enfin la troisième l’implication pédagogique apportée par ce travail.

Page 7: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

2

PARTIE1 : ETUDE THEORIQUE

Cette partie introduit les outils théoriques nécess aires pour la construction d’une

base de données.

I. Systèmes d’informations

1. introduction

Un système d’informations est un système dont le ré sultat premier est l’information. Il

peut avoir des résultats secondaires qui ont trait à la surveillance d’informations pour

le compte du système englobant. L’information n’est pas seulement un résultat mais

également une source importante utilisée par les SI .

2. Définition

Un système d’informations est un ensemble organis é de ressources (personnels,

données, procédures, matériels, logiciels,...)

Permettant d’acquérir, stocker, de structurer et d e communiquer des informations

sous forme de texte, image, son ou des données codé es dans des organisations.

3. Les différents systèmes d’informations

Selon leur finalité principale, on distingue des :

SI supports d’opérations (traitements de transactio ns, contrôle de processus

industriel, supports d’opérations de bureau et de c ommunication)

SI supports de gestions (aide à la production de ra pport, aide à la décision…)

Page 8: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

3

4. Utilité d’un système d’informations

Un SI supporte une certaine fonction par exemple da ns une entreprise commerciale, le

SI peut la fonction de vente.

5. Conclusion

Un des domaines des SI est le modèle accompagné de la modélisation. Mais il faut

avoir une entité dans la quelle il est le stocker l es informations. D’où la nécessité

d’une base de donnée.

Page 9: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

4

II. Les bases de données et le système de gestion d e base données

Introduction

La base de données est le premier moyen de gérer le s données. La notion de base de

données est nécessaire pour concevoir un système d’ information. En effet notre

système d’informations est basé sur le mécanisme et la manipulation des bases de

données. Dans ce chapitre, on va parler des théorie s de base de données ainsi que le

méthodes pour en construire une.

1. Les bases de données

1.1 Définition :

Une base de donnée est une entité dans la quelle i l est possible de stocker des

façons structurés et avec le moins de redondance po ssible. Ces données doivent

pouvoir être utilisées par des programmes, par des utilisateurs différents, afin de

pouvoir mettre en commun ces informations, d’où le nom de base.

On parle généralement d’un système d’information po ur designer toute la structure

regroupant les moyens mis en place pour pouvoir par tager des données.

1.2 Propriété :

Une base de données doit être :

Exhaustive : elle contient toutes les infirmations requirent pour le service

Unique : la même information n’est présente qu’une seule fois (pas de doublement)

1.3 Utilité des bases de données :

Une base de données permet de mettre des données à la disposition d’utilisateurs

pour une consultation, une saisie ou bien une mise à jour, tout en s’assurant des

droits accordées à ces derniers. Cela est d’autant plus utile que les données

informatiques sont de plus en plus nombreuses.

Une base de donnée peut être locale c'est-à-dire ut ilisable sur une machine par un

utilisateur ou bien repartie c'est-à-dire que les i nformations sont stockées sur des

machines distantes et accessible par réseau inform atique.

L’avantage moyen de l’utilisation de base de donnée s et la possibilité de pouvoir

accéder par plusieurs utilisateurs simultanément

Page 10: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

5

2. Le système de gestion de base de données :

2.1. Définition :

Le système de gestion de base de données est l’outi l utilisé pour la manipulation et

l’exploitation des bases de données. C’est un logic iel composé d’un moteur et d’une

interface graphique, il permet de décrire, de modif ier, d’interroger et d’administrer les

données d’une base de donnée.

Le langage normalisé est le SQL (structured Query L anguage). C’est un langage

permettent d’interroger les données pour extraire u ne partie de ce données.

2.2 La gestion de base de données :

Afin de pouvoir contrôler des données ainsi que les utilisateurs, le besoin d’un

système de gestion s’est vite fait ressentir. La ge stion de la base de données se fait

grâce au SGBD, c’est un ensemble de service (applic ations logicielles) permettant de

gérer les données, c'est-à-dire :

Permettre d’accès aux données de façon simple

Autoriser un accès aux informations à des multiples utilisateurs

Manipuler les données présentes dans ka base de don née (insertion, suppression,

modification)

Le SGBD peut se décomposer en trois parties :

Le système de gestion de fichier qui permet de stoc ker les informations sur un

support physique

Le SGBD interne qui gère l’ordonnancement des infor mations

Le SGBD externe qui représente l’interface avec l’u tilisateur

Page 11: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

6

Figure 1.1 : la décomposition du SGBD

2.3 Les principaux SGBD :

Les principaux SGBD sont les suivants :

Paradox

Filemaker

IBM DB2

Ingres

Interbase

Microsoft Access

Microsoft fox pro

Oracle

MySQL

Etc.

2.4 Les différentes modèles de système de gestion d e base de données (SGBD)

Les bases de données sont apparues à la fin des ann ées 60, à une époque où la

nécessité d’un système de gestion de l’information simple se faisait ressentir. Il existe

cinq modèles de SGBD, différenciés selon la représe ntation des données qu’elle

contient.

Page 12: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

7

2.4.1 Le modèle hiérarchique :

Les données sont classées hiérarchiquement selon un e arborescence descendante.

Ce modèle utilise des pointeurs entre les différent s enregistrements. IL s’agit du

premier modèle de SGBD.

Figure 1.2 : modèle hiérarchique

2.4.2 Le modèle réseau :

Comme le modèle hiérarchique, ce modèle utilise des pointeurs vers des

enregistrements. Toutes fois la structure n’est plu s forcement arborescent dans le

sens descendante.

Fig1.3 : le modèle réseau

2.4.3 Le modèle relationnel :

Les données sont enregistrées dans des tableaux à d eux dimensions (ligne, colonne).

La manipulation de ces données ce fait selon la thé orie des mathématiques des

relations.

Page 13: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

8

Figure 1.4 : le modèle relationnel

2.4.4 Le modèle objet :

Les données sont stockées sous formes d’objets, c'e st-à-dire de structure appelée

classe présentant des données membres. Les champs s ont des instances de ces

classes.

Figure 1.5 : le modèle objet

2.5 Les niveaux des données :

L’architecture ANSI/SPARC datant 1975, définit des nivéaux d’abstractions pour un

SGBD :

Niveau interne (ou physique) qui définit la façon s elon lesquelles sont stockées les

données et les méthodes pour y accéder.

Niveau conceptuel appelé aussi MCD (Modèle Conceptu el de Donnée) ou MLD (Modèle

Logique de Donnés). Il définit l’arrangement des in formations au sein de la base de

données.

Niveau externe qui définit des vues des utilisateur s.

Page 14: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

9

2.6 Les caractéristiques d’un SGBD

L’architecture à 3 niveaux définie par le standard ANSI/SPARC permet d’avoir une

indépendance entre les données et les traitements. D’une manière générale, un SGBD

doit avoir des caractéristiques suivantes :

Indépendance physique

Le niveau physique peut modifié indépendamment du niveau conceptuel. Cela

signifie que tous les aspects matériels de la base de données n’apparaissent pas pour

l’utilisateur, il s’agit simplement d’une structure transparente de représentation des

informations.

Indépendance logique

Le niveau conceptuel doit pouvoir être modifié sans remettre en cause le niveau

physique, c'est-à-dire que l’administration de la b ase doit pouvoir la faire évaluer sans

que cela gère les utilisateurs.

Manipulabilité

Les personnes ne connaissant pas la base de données doivent être capables de

décrire leurs requêtes sans faire référence à des é léments techniques de la base de

données.

Rapidité des accès

Le système doit pouvoir fournir les réponses à la r equête le plus rapidement possible,

cela implique des algorithmes de recherche rapide.

Administration centralisée

Le SGBD doit permettre à l’administrateur de pouvoi r manipuler les données, insérer

les éléments de façon centralisée.

Limitation de redondance

Le SGBD doit pouvoir éviter dans la mesure du possi ble des informations redondant

afin d’éviter, d’une part, un gaspillage d’espace m émoire mais aussi des erreurs.

Vérification de l’intégrité

Les données doivent être cohérentes entre elles, de plus lorsque des éléments font

références à d’autres, ces derniers doivent être pr ésent.

Page 15: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

10

Particularité des données

Les SGBD doivent permettre l’accès simultané à la base de donnée par plusieurs

utilisateurs.

Sécurité des données

Les SGBD doivent présenter des mécanismes permettant de gérer les droits d’accès aux

données selon l’utilisateur.

Conclusion

La notion de base de données et SGBD est indispensable pour modéliser un système

d’information mais comment concevoir une base de données?

3. Conception d’une base de données

3.1 Introduction

La conception d’une base de données nécessite un modèle avant de lui intégrer au SGBD.

Pour notre conception et modélisation, nous allons utiliser le modèle objet. Dans ce chapitre

on va suivre le concepts de l’approche objet puis le choix de langage de modélisation et

enfin la partie conception et modélisation.

3.2 Définition

Un objet est une entité aux frontières précises qui possède une identité ou un nom. Son état

est caractérisé par un ensemble d’attributs et ses comportements sont définies par un

ensemble d’opérations ou méthodes. Une autre définition de l’objet c’est qu’il est une

instance de classe.

Une classe est un type de données abstrait, caractérisée par des propriétés (attributs et

méthodes) communes à des objets et permettant de créer ces derniers possédant ces

propriétés.

Figure 2.1 : exemple de classe et d’objet

Page 16: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

11

3.3. Les concepts importants de l’approche objet

3.3.1. Encapsulation

L’encapsulation consiste à masquer les détails d’implémentation d’un objet en définissant

une interface et la vue externe d’un objet, elle les services accessibles aux utilisateurs.

L’encapsulation facilite l’évolution d’une application car elle stabilise l’utilisation des objets.

En effet, on peut modifier l’implémentation des attributs d’un objet sans modifier son

interface. Elle garantit l’intégrité des données car elle permet d’interdire l’accès direct aux

attributs des objets (utilisation d’accesseurs).

3.3.2. Héritage

L’héritage est un mécanisme de transmission de propriété d’une classe vers une classe. Une

classe peut être spécialisée en d’autres classes, afin d’y ajouter des caractéristiques

spécifiques ou d’en adapter certaines. Plusieurs classes peuvent être généralisées en une

classe qui les factorise, afin de regrouper les caractéristiques communes d’un ensemble de

classe. La spécialisation et la généralisation permettent de construire des hiérarchies de

classe. L’héritage peut être simple ou multiple, il évite la duplication et encourage la

réutilisation.

Figure 2.2 : exemple de hiérarchie de classe

Page 17: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

12

3.3.3. Polymorphisme

Le polymorphisme représente la faculté d’une méthode à pouvoir s’appliquer à des objets de

classes différentes. Il augmente la généricité du code.

Figure 2.3 : exemple de polymorphisme

3.3.4. Agrégation

Il s’agit d’une relation entre deux classes, spécifient que les objets d’une classe sont des

composantes de l’autre. Une relation d’agrégation permet donc de définir des objets

composés d’autres objets. Elle permet d’assembler des objets de base, afin de construire

des objets plus complexes.

Page 18: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

13

Figure 2.4: exemple d’agrégation

3.4. L’évolution de l’approche Objet

3.4.1. Les concepts Objets sont stables et éprouvés

Simula, premier langage de programmation à implémenter le concept de type abstrait (à

l’aide classe), daté en 1967. En 1976 déjà, Small talk

Implémente, les concepts fondateurs de l’approche objet (encapsulation, agrégation,

héritage) à l’aide de :

Classe :

Association entre classes

Hiérarchies des classes

Messages entre objets

Le premier compilateur C++ date 1980, et C++ est normalisé par l’ANSI [6]. De nombreux

langage orienté objet académique ont étagés des concepts objets, EIFFEL, Objective C,

Loops…

Les concepts objets sont anciens, mais ils n’ont jamais été autant d’actualité.

L’approche fonctionnelle n’est pas adaptée au développement d’applications qui évoluent

sans cesse et dont la complexité croit continuellement. L’approche objet a été inventée pour

la faciliter l’évolution d’applications complexes.

Page 19: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

14

3.4.2. Les avantages de l’approche objet

L’approche objet est un ensemble de concepts stables éprouvées et normalisées. C’est une

solution destinée à faciliter l’évolution d’application complexe.

3.4.3. Les inconvénients de l’approche objet

Malgré des apparences, il est plus naturel pour nos aspects cartésiens, de décomposer en

problèmes informatiques sous formes d’une hiérarchie de fonction atomique et de donnée,

qu’en terme d’objet et d’interaction entre ces objets. De plus, les vocabulaires précis est un

facteur d’échec important dans la mise en ouvre d’une approche objet. L’approche objet un

moins Intuitive que l’approche fonctionnelle donc il faut trouver d’un moyen pour faciliter

l’analyse objet, il faut chercher les critères qui identifient une conception objet pertinente et

enfin un moyen pour comparer deux solutions de découpe objet d’un système.

L’application de concept objet nécessite une grande rigueur car le vocabulaire est précis

donc, il y a un risque d’ambiguïté et d’incompréhension. Il est aussi difficile de décrire la

structure objet d’un système de manière pertinente.

3.4.4. Les remèdes aux inconvénient de l’approche o bjet

Pour remédier à ces défauts de l’approche objet, il nous faut en premier lieu, un langage

pour exprimer le concept objet qu’on utilise afin de :

Pouvoir représenter de concept abstrait (graphiquement par exemple)

Limiter les ambiguïtés

Faciliter l’analyse

En second lieu il nous faut une démarche d’analyse et de conception objet pour :

Ne pas effectuer une analyse fonctionnelle et se contenter d’une implémentation objet, mais

penser objet du départ.

Définir les vues qui permettent de couvrir tous les aspects d’un système, avec des concepts

objets.

Bref, il nous faut un outil, qui apporte une dimension méthodologique à l’approche objet, afin

de mieux maîtriser sa richesse et sa complexité

Page 20: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

15

3.5. Choix du langage de modélisation

3.5.1. Vues globales sur les méthodes d’analyses

Les premières méthodes d’analyse sont apparues aux années 1970. A cette époque, on

avait appliqué la découpe cartésienne (fonctionnelle et hiérarchie) d’un système.

Dans les années 1980 on a adopté l’approche systématique où on a utilisé la modélisation

des données et la modélisation des traitements (Merise, Axiale, IE…)

L’émergence des méthodes objets n’est apparue qu’entre les années 1990 et 1995. Ceci est

dû à la prise de conscience de l’importance d’une méthode spécifiquement objet. On veut

structurer un système sans centrer l’analyse uniquement sur les données ou uniquement sur

les traitements mais sur les deux. Plus de cinquante (50) méthodes objets sont apparues

durant cette période (Booch, Classe-rélation, Fusion, HOOD, OMT, OOD, OOM, OOSE,…)

mais aucun méthode ne s’est réellement s’imposée.

a. Les premiers consensus

A cette époque les trois méthodes constituantes UML sont encore indépendantes. L’OMT de

James Rumbaugh [6] quoi permet d’avoir des vues statiques, dynamiques et fonctionnelles

d’un système et qui caractérisé par sa notation graphique riche et lisible.

La deuxième méthode est de OOD de Grady BOOCH qui permet d’avoir les vues logiques et

physiques du système, cette méthode introduit le concept de package qui est un élément

d’organisation des modèles.

Et enfin la troisième et la dernière méthode sont OOSE d’Ivar Jacobson qui est une méthode

issue d’un centre de développement d’Ericsson en Suède et qui couvre tout le cycle de

développement dont la méthodologie repose sur l’analyse des besoins des utilisateurs.

b. L’unification et la normalisation des méthodes ( 1995-1997)

A cette époque UML (Unified Modeling Langage ou langage de modélisation unifiée) est

née. Elle est le fruit de la fusion et synthèse des méthodes dominantes.

Figure 3.1 : schéma d’évolution d’UML

Page 21: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

16

3.5.2. Choix du langage de modélisation

Notre choix porte sur UML grâce aux raisons suivantes :

UML est aujourd’hui un standard incontournable.

En effet :

UML est le résultat d’un large consensus industriels, méthodologies.

UML est riche car il couvre toutes les phrases d’un cycle de développement.

UML est issu du terrain.

UML est ouvert car il est indépendant du domaine d’application et des langages

d’implémentation.

Après l’unification et la standardisation, bientôt l’industrialisation d’UML, les outils qui

supportent UML se multiplient (GD Pro, Object, Team, Objectering, Open Tool, Rational

Rose, Rhapsody, STP, Visio, Visual Modeler, Withclass…)

UML évolue mais reste stable :

L’OMG RFT composé de nombreux acteurs industriels centralise et normalise les

évolutions d’ULM au niveau international.

Les groupes d’utilisateurs d’ULM favorisent le partage des expériences.

De version en version, UML gagne en maturité et précision, tout en restant stable.

UML inclus des mécanismes standard d’auto extension.

La description du méta modèle d’UML est standardisée (OMG-MOF).

UML cadre l’analyse objet.

UML offre différentes vues complémentaires d’un système, qui guide l’utilisation des

concepts objets. Il possède plusieurs niveaux d’abstraction, qui permettent de mieux

contrôler la complexité dans l’expression des solutions objets.

UML est un support de communication.

En effet, sa notation graphique permet d’expérimenter usuellement une solution objet.

L’aspect formel de sa notation limite les ambiguïtés et les incompréhensions. Son

indépendance en fait un langage universel.

Les points forts d’ULM.

UML est un langage formel est normalisé, il permet d’avoir un gain de précision et un gage

de stabilité. Il encourage l’utilisation d’outils.

UML est un support de communication performant, en effet, il cadre l’analyse, facilité la

compréhension de représentations abstraites complexes. Son caractère polyvalent et sa

souplesse en fait un langage universel.

Page 22: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

17

Le point faible d’ULM.

La mise en pratique d’ULM nécessite un apprentissage et passe par un période

d’adaptation.

3.6. Conception et modélisation

3.6.1. Présentation de UML

UML (Unified Modeling Language ou langage unifié de modélisation) est aujourd’hui le

langage standard utilisé en informatique pour la modélisation orientée objets. UML est utilisé

dans les deux environnements suivants: le développement d'application et la gestion

d’architectures informatiques.

3.6.2. Modélisation avec UML

Les diagrammes UML permettent de communiquer l’architecture d’un système aux

concepteurs,

Développeurs et à toutes les personnes externes à l’aspect technique d’un système. Cette

communication prend une forme visuelle et narrative dans :

Le document des exigences fonctionnelles qui regroupe les diagrammes de cas d’utilisation

avec leur description narrative, les diagrammes d’objets, les diagrammes d’interaction et les

diagrammes d’activité.

Le document d’architecture technique qui regroupe les diagrammes de classes, les

diagrammes de package, les diagrammes de composants, les diagrammes de déploiement

et les diagrammes d’état.

Il existe neuf types de diagrammes classés en trois catégories :

Diagramme de cas d’utilisation

Diagramme de classe

Diagramme de package

Diagramme de séquence

Diagramme de collaboration

Diagramme d’état

Diagramme d’activité

Diagramme de composants

Diagramme de déploiement

Les diagrammes seuls sont insuffisants et doivent toujours être accompagnés de notes ou

de descriptions narrative.

Page 23: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

18

a. Diagramme de cas d’utilisation

Les diagrammes de cas d’utilisation sont des vues statiques qui montrent une série de cas

d’utilisation d’un système. Ces cas d’utilisation mettent en oeuvre les acteurs du système

dans leurs relations. Ce diagramme permet d’organiser et de modéliser les comportements

du système.

Les éléments de base des diagrammes de cas d’utilisation sont :

Acteurs : entité externe qui agit sur le système (opérateurs, autres systèmes, …). Il peut

consulter ou modifier l’état du système et à la réponse à l’action d’un auteur, le système

fournit un service qui correspond à son besoin.

Uses cases : ensemble d’action réalisée par le système en réponse à une action d’un acteur.

Ils peuvent être structurés et organisés en paquetages (package). Les paquetages sont des

éléments d’organisation des modèles. Ils regroupent des éléments de modélisation selon

des critères purement logiques.

L’ensemble des uses cases décrit les objectifs (but) du système.

Fig. 4.1: Cas d’utilisation

b. Diagramme de classes

Définition d’une classe

Une classe est un type abstrait caractérisée par des propriétés (attribut et méthode)

commune à un ensemble d’objet et permettant de créer des objets avant ses propriétés.

Classe = attributs + méthodes + instanciation.

Le diagramme de classes est une vue statique des processus du système ou de la

modélisation orientée objet d’un système. Ce diagramme montre une série de classes, de

collaborations et leurs relations. C’est un diagramme très riche.

On peut par exemple se focaliser sur :

Les classes qui participent à des cas d’utilisation,

Les classes associées dans la réalisation d »un scénario précis,

Les classes qui composent les paquetages.

Pour permettre un contexte précis, un diagramme peut être associé au diagramme d’objet.

Page 24: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

19

Fig.4.2. diagramme de classe

c. Diagramme de packages

Le diagramme de packages donne une vue statique du système, mais cette fois, en terme

de groupes ou de catégories.

Fig. 4.3. Diagramme de packages

d. Diagramme de séquence

Ce diagramme est une vue dynamique du système qui met en évidence les interactions

entre les objets et leurs messages. Pour un cas d’utilisation donnée du système, on fait

apparaître l’ordre temporel des messages.

Page 25: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

20

Fig. 4.4. Diagramme de séquence

e. Diagramme de collaboration

Cette vue dynamique du système laisse apparaître l’organisation des objets qui envoient et

reçoivent des messages pour un cas d’utilisation spécifique.

Fig. 4.5. Diagramme de collaboration

f. Diagramme d’état

Cette vue dynamique du système montre l’état d’un objet en termes d’états, de transitions,

d’événements et d’activités. Ce diagramme permet de modéliser le comportement d’une

interface.

Fig. 4.6. Diagramme d’état

Page 26: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

21

g. Diagramme d’activités

Cette vue dynamique du système montre les flux entre les activités du système. Ce

diagramme permet de modéliser les fonctions du système en insistant sur les flux entre les

objets.

Fig. 4.7. Diagramme d’activité

h. Diagramme de composants

Cette vue statique du système montre la mise en oeuvre du système. Ce diagramme montre

l’organisation et les dépendances d’une série de composants. Il permet d’avoir une

cartographie des classes, des interfaces ou des collaborations contenues dans les

diagrammes de classes.

Fig. 4.8. Diagramme de composant

Page 27: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

22

i. Diagramme de déploiement

Cette vue statique du déploiement d’une architecture met en évidence la configuration du

traitement des noeuds d’exécution. Ce diagramme permet d’organiser les composants dans

leur spectre d’exécution.

Fig. 4.9 Diagramme de déploiement

3.6.3. Démarche de modélisation de la scolarité

Pour commencer, on modélise au moyen des diagrammes de cas d’utilisations UML, les

demandes de cahier des charges (besoins utilisateurs).

Pour essayer d’arriver à obtenir le code correspondant

Fig. 5.1. Besoins dans le cas d’utilisation

On part du but, c'est-à-dire le code qu’on veut obtenir, et on remonte en arrière, pour mieux

expliquer le moyen qui va permettre de joindre les « deux bouts ».

Dans le cadre de système orienté objet, la structure du code est définie par les classes

logiciels et leurs regroupements en ensembles appelés « packages ».

On a donc besoin de diagrammes représentants les classes et montrant les données

qu’elles contiennent (attributs), les services qu’elles rendent (opération) ainsi que leurs

relations.

Page 28: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

23

UML propose les diagrammes de classes pour véhiculer toutes ces informations. La figure

ci-dessous montre cette étape préliminaire du codage.

Fig.5.2. Diagramme de classe de conception (structure de code)

Les diagrammes de classes de conception représentent la structure statique du code par les

biais des attributs et des relations entre classes, mais il contiennent également les

opérations (aussi appelés méthodes) qui décrivent les responsabilités (propriétés)

dynamique des classes logicielles.

La fig19 ajoute une étape du côté du code, mais on ne sait pas encore comment relier tout

cela aux diagrammes de cas d’utilisation.

Pour passer les diagrammes de cas d’utilisation aux diagrammes de conception, il faut au

moins une étape intermédiaire, car les diagrammes de cas d’utilisation sont aux niveaux

d’abstraction du cahier des charges alors que les diagrammes de conceptions placent au

niveau du code.

Chaque cas d’utilisation est décrit textuellement de façon détaillée mais donne également

lieu à des diagrammes de séquence représentant graphiquement la séquence des

interactions entre les acteurs et le système appelé diagrammes de séquence système.

L’attribution des bonnes responsabilités aux bonnes classes est l’un des problèmes le plus

délicat de la conception orientée objet, pour chaque service ou fonction, il faut décider quelle

est la classe qui va le (la) convenir.

Les diagrammes de séquences UML sont utiles pour représenter graphiquement ces

décisions d’allocation de responsabilités.

Chaque diagramme de séquence va représenter un ensemble d’objet de classes différentes

collaborant dans le cadre d’un scénario d’exécution du système.

Dans ce genre de diagramme, les objets communiquent en s’envoyant des messages qui

invoquent des opérations sur les objets récepteurs.

Page 29: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

24

On peut donc suivre visuellement les interactions dynamiques entre objets, et les

traitements réalisés par chacun. Les diagrammes de séquence aident également à écrire le

code à l’intérieur des opérations, en particulier les appels d’opérations

Fig. 5.3 Diagramme d’interaction aide à attribuer les responsabilités aux classes

Pour que le tableau soit complet, il reste à détailler une exploitation supplémentaire de cahier

de charges. Elle va permettre de réaliser les diagrammes dynamiques, représentant de

manière formelle l’ensemble des chemins possibles entre les principaux pages proposées

aux utilisateurs.

Ces diagrammes, qui mettent en jeu les classes participantes s’appellent diagramme

d’activité de navigation. Ces diagrammes ont un impact sur les diagrammes de classes de

conception.

Fig. 5.4. Schéma complet de processus de modélisation d’un site

Page 30: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

25

a. Les diagrammes de cas d’utilisation

En partant du cahier de charges, on peut avoir les diagrammes de cas d’utilisation

Fig. 6.1 : vue de haut niveau de l’application

Le schéma ci-dessous montre le paquetage des diagrammes de cas d’utilisation. Nous

allons en détaillé chaque blocs distincts suivants le mode d’accès. Le premier mode est

l’accès en tant que visiteur, c'est-à-dire accès à des informations mises en lignes (accès

libre). Le second mode est pour les concepteurs et administrateur ; accès en tant que

concepteur (accès protéger).

Pour le premier mode d’accès, on a le paquetage du diagramme d’utilisation suivant :

Fig. 6.2. Paquetage de Diagramme de cas d’utilisation accès visiteurs

Page 31: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

26

Page 32: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

27

Fig 6.8: Diagramme de cas d’utilisation des tach es de secrétaire de direction

Page 33: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

28

Page 34: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

29

Page 35: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

30

Fig. 6.11 : Diagramme de séquence du secrétaire principale

Page 36: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

31

Fig 6.12 : Diagramme de séquence du secrétaire de direction

Page 37: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

32

Fig 6.15

Fig 6.13

Page 38: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

33

Fig 6.16

Page 39: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

34

Secrétaire principale Secrétaire de direction

Inscription Carte

Bibliothèque

Carte

d’étudiant

Saisie

Note

Relevé

Note Attestation

Ajout sujet

projet

Formulaire

d’inscription

FORMULAIR

E CARTE

Formulaire

Carte étudiant

Formulaire CHOIX

Affichage

liste

Formulaire saisie Note Formulaire relevé Note

Affichage

Ajout sujet

mémoire

Fig 6.17 : Diagramme d’activité de navigation de la

scolarité

Choix d’action à faire

Page 40: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

35

b. Les différentes classes dans la conception

Nous avons quatre catégories de classes; la classe Secrétaire, la classe Inscription, la

classe Utilisateur et la classe Enseignant qui sont héritées de la classe principale

Scolaenset.

Les méthodes utilisées de ces classes sont héritées de celles de la classe principale

Scolaenset et au moment de l’implémentation il y a le phénomène de l’encapsulation.

Fig. 6.18 : Relation entre les classes

Page 41: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

36

Fig 6.19: Héritage de la classe inscription

Remarque : Les classes Génie Electrique, Génie Mécanique et Génie Math&info héritent

chacun quatre sous classes 2ème année, 3ème année, 4ème année et 5ème année

caractérisées par ces matières spécifiques.

Fig 6.20 : Héritage de la classe filière

Page 42: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

37

PARTIE 2 : REALISATION

Introduction

Nous allons voir maintenant la partie réalisation. Tout d’abord nous expose notre rapport de

travail, ensuite les outils nécessaires pour la réalisation, enfin nous allons présenter le

logiciel conçu et les guides nécessaires pour sa prise en main.

1. Rapport sur l’étape du travail

L’étape du travail se divise en quatre phases résumées dans le tableau suivant :

Phases Période Travail à faire

Première phase 2 au 9 juillet Collection de l’information

Deuxième phase 10 au 17 juillet Analyse de l’existant et

proposition de solution

Troisième phase 18 juillet au 2 Août Conception et modélisation

Quatrième phase 3 Août au 9 Octobre Création du site

Fig 7.1 : Tableau résumant l’étape du travail

Page 43: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

38

2. Les outils nécessaires pour la réalisation

2.1 Architecture du site

L’arborescence représente l’architecture du site est la première étape dans le travail

d’élaboration. C’est elle qui va définir les rubriques et l’enchaînement logique de ces

rubriques entre elles. Une bonne arborescence doit permettre de visualiser les thèmes

principaux, les sous thèmes et les liens existants entre ces différents contenus.

La page d’accueil constitue l’élément central du site. Elle représente la porte d’entrée et doit

être claire, très visuelle, tout en permettant l’accès aux principales rubriques. Chaque

concepteur de site doit commencer son travail par la réalisation de l’arborescence, qui

constitue son plan de travail et qui peut revêtir différentes formes.

Voici l’arborescence de notre site :

Fig 7.2: Arborescence représentant l’architecture du site

Page 44: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

39

2.2 Choix du langage de programmation

Introduction

Le choix du langage de programmation est l’un des facteurs les plus importants pour la

nécessitée de la réalisation d’un logiciel. En effet, chaque langage a ses propres

caractéristiques et ces caractéristiques doivent être compatibles avec les contraintes et

conditions exigées par le cahier des charges. Le choix doit être fait en fonction de leur

souplesse, leur adaptation aux fonctions exigées et aux ressources matérielles disponibles.

2.2.1 Le langage PHP

Notion

Le PHP ou Hypertext Preprocessor est un langage de script HTML ? Qui fonctionne côté

serveur. A la différence avec les autres scripts CGI dans l’autres langages tels que Perl ou

C, au lieu d’écrire en programme avec de nombreuses lignes de commandes afin d’afficher

une page HTML, Vous écrivez une page HTML avec du code inclus à l’intérieur afin de

réaliser une action précise. Ce qui distingue le PHP des langages script comme Java script

est que le code est exécuté sur le serveur, le client ne reçoit que le résultat du script, sous

aucun moyen, d’avoir accès au code qui a produit ce résultat. Vous pouvez configurer votre

serveur WEB afin qu’il analyse tous vos fichiers HTML, comme de fichiers PHP. Ainsi, il n’y a

aucun moyen de distinguer les pages qui sont produits dynamiquement des pages statiques.

Fonctionnalité

Le langage PHP possède les mêmes fonctionnalités que les autres langages permettant

d’écrire des scripts CGI, comme collecter de données, générer dynamiquement des pages

Web ou bien envoyer et recevoir des cookies. La plus grande qualité et le plus important

avantage du langage PHP est le support d’un grand nombre de bases de données.

Sécurité

PHP est un langage puissant et l’interpréter, qu’il soit inclus de le serveur Web ou bien

compilé en version CGI,est capable d’accéder aux fichiers d’exécuter des commandes et

d’ouvrier des connexions réseaux. Tous ces produits rendent fragile de sécurité d’un serveur

web. Le langage PHP a été pense afin d’être un langage beaucoup plus sécurisée pour

écrire des CGI qu e le Perl ou le langage C. de plus une sélection rigoureuse des options de

compilation et d’exécution vous permettre d’obtenir un équilibre parfait entre liberté et

sécurité. Etant donné qu’il y a de nombreux moyens d’utiliser le langage PHP, il y a des

nombreuses directives de configuration afin d’incontrôlé le comportement. Un grand nombre

d’option permettent d’utiliser PHP dans de nombreuses situations, mais cela signifie aussi

qu’il y a certaines combinaisons d’option de compilation et d’exécution qui fragilise la

sécurité du serveur. La flexibilité du code PHP est épaulée par la flexibilité de code. PHP peu

être compilé pour constituer une application serveur complètes avec toutes les

Page 45: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

40

fonctionnalités d’un SHELL, où il peut encore être utilisé comme simple SSI (Server Side

Include) avec peu de risque donnes un environnement à sécurité renforcé comment créer

cet environnement sécurisé est largement à la charge du développeur PHP.

d) Module apache

Lorsque le PHP est compilé en tant que module Apache, ce module hérite des permissions

accordées à l’utilisateur faisant donner Apache (par défaut, l’utilisateur « nobody »). Par

exemple, si on utilise PHP pour accorder à une base de donnée à moins que il n’ait un

système de droits d’accès interne, on devra rendre la base accessible à l’utilisateur

« nobody ». Cela signifie qu’un script malintentionné peut accéder à la base de donnée, la

modifie sans authentification. Il est aussi possible qu’un robot accéder à la base

d’administration et détruise toutes les pages. On doit ainsi protéger les bases de données

avec les autorisations Apache, ou définir son propre modèle d’accès avec LDAP,

NTACCES,… etc. et Include ce code tous ses scripts PHP.

2.2.2 Mysql

Un des grands avantages de PHP, est sans aucun doute d’accès facile à différentes bases

de données. Celles que ORACLES, SYBASE, POSTGRE SQL ou MYSQL.

MYSQUEL est un système de gestion et conception de base de données. Il est libre est

gratuit, Mysql est facile à installer, il s’accompagne de nombreuse produits permettant sa

gestion, tels que PHP Myadmin, un driver MyODC implémenté par défaut dans PHP. Il est

un véritable serveur da base de données, et qui fonctionnent selon un architecture

client/serveur.

Fig 7.3

Page 46: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

41

Mysqld : est le serveur de Mysql, il est le seul à accéder aux fichiers stockant les données

pour lire et écrire des informations.

Mysql dump : permet d’effectuer des sauvegardes

Mysql import : permet d’importer des fichiers ASCII dans un BDD.

2.3 Mode de transmission de données

Comme nous allons réaliser un portail web dynamique, alors nous utilisons le model

client/serveur pour la transmission de données.

Le protocole Client serveur

Introduction est un modèle d’échange client-serveur. Il utilise le protocole http (Hyper texte

transfer protocol)

Il est basé sur le même modèle que FTP (file transfère protocole), il existe cependant un

différent importante : il n’y a pas de connexion durables entre le client et le serveur. Alors

que pour Telnet ou FTP il y a ouverture d’une connexion (généralement avec identification

de login et de mots de passe), avec le www il n’y a que des échanges de messages en

mode non-connecté. C'est-à-dire que l’application serveur n’a aucune mémoire de ce qui

vient d’être dit.

Nous verrons par la suite les problèmes que cela implique.

Le serveur : est un (on l’appelle démon httpd) qui écoute sur un port de machine particulier

(le port 80 par défaut) les requêtes provenant de programmes clients peuvent aller de la

simple demande de transfert d’une ressource (une page HTML, fichier postscript,…) jusqu’à

l’exécution d’un programme sur la machine serveur (Programmation CGI).

Le client : est un programme qui permet à utilisateur de formuler des requête via la réseaux,

et d’en visualiser le résultat. Un bon logiciel client tel que Netscape, Internet exploreur5,

permet de rendre le type de serveur transparent. En effet, avec un tel logiciel, il possible

d’intelliger un protocole de type FTP pour le transfère d’un document,si lui-ci se trouve sur un

serveur FTP.

Plus clairement, un dialogue simple entre le client et le serveur :

Le client effectue une connexion TCP sur le port http du serveur cible :

Le serveur accepte (ou refuse) la connexion.

Page 47: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

42

Le client émet sa requête sous forme d’une ligne de texte terminée par les caractères CR et

LF. La requête comprend la méthode souhaitée suivie de l’ULM Uniforme Ressource Locator

du document demandé.

Le serveur expédie le document demandé (souvent un fichier HTML)

Le serveur couple la connexion, ce qui correspond à la fin du document demandé

Tout ceci enfin d’éviter une situation tendue

2.4 Les logiciels utilisés

Ainsi, d’après ce qu’on a ou à propos de ces différentes langages de programmation, notre

choix s’est basé sur leurs caractéristiques et sur les ressources logicielles à notre

disposition. A savoir l’Easy PHP, le dreameaver MX, et le Namoweb editor. Pour la

réalisation de notre logiciel alors, nous allons utiliser PHP, le SQL et le XHTML qui n’est

autre que la fusion du HTML et le XML.

2.5 Implémentation

Maintenant, nous allons voir les principes utilisés pour la réalisation pratique de notre

logiciel. Ainsi, dans cette partie on va présenter les différents organigrammes de bases.

Page 48: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

43

2.5.1 Ouverture de session

Pour accéder à un compte qu’il soit administrateur ou simple utilisateur, faut saisir d’abord

un login et son mot de passe. Ces caractères saisis pris en compte par le programme. Ce

dernier exécute alors une requête dans la table « users » où se trouve les paramètres des

utilisateurs. Si les caractères saisis correspondent à ces paramètres la session est ouverte,

par contre il y envoie de message d’erreur et on doit saisir le nouveau. La figure suivant alors

représente alors l’organigramme qui réalise cette fonction.

Page 49: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

44

Fig7.3: Organigramme représentant l’ouverture de la session

Page 50: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

45

2.5.2 L’insertion des données

En PHP, on ne peut se contenter d’écrire des requêtes, il faut d’abord se connecter au

serveur de base de donnée, puis exécuter la requête.

Pour interagir avec les serveurs, il faut un formulaire des saisies (saisie.xml) puis un autre

insertion (insérer.php). La figure ci-dessous représente l’organigramme qui réalise l’insertion

des données.

Fig7.4: Organigramme représentant l’affichage

2.5.3 L’affichage des résultats

Il existe plusieurs méthodes pour réaliser l’affichage des résultats de la requête. En

programmation, si le nombre d’exécution d’une boucle est connu à l’avance, il est plus

judicieux d’employer la boucle prévue à cet effet, en occurrence la boucle « FOR », ce qui

Page 51: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

46

est compliqué. Nous allons utiliser alors la boucle « While », puis on va utiliser une table

indicée par le nom du champ de la table utilisé. Cette fonction est représentée par

l’organigramme ci –dessous :

Fig7.5 : Organigramme représentant l’affichage

2.5.4 Modification des données

Pour modifier des données, il faut faire d’abord les listes des ces derniers (modif.php) avec

un liens vers les formulaires des modifications (modif_register.php), ayant lui-même pour

actionner d’envoyer les données vers la page de la modification (affiche.php).

L’organigramme ci-dessous représente respectivement qui réalise la liste des données et

celui de la modification.

Page 52: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

47

Fig7.6: Organigramme qui réalise la liste de données à modifier

Page 53: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

48

Fig7.6: Organigramme qui réalise la modification

Page 54: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

49

Fig7.7 : Organigramme réalise la modification

Page 55: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

50

2.5.5 Suppression des données

Voici un moyen de supprimer un enregistrement faire les listes des données

(suppr_register.php), y ajouter un lien vers la page des suppressions. L’organigramme du

programme réalisant les listes des données à supprimer similaire à celui qui réalise les listes

de ce qu’on va modifier voir (fig. ). L’organigramme ci-dessous représente la fonction qui

réalise la suppression des données.

Fig. 7.8: Organigramme réalise la suppression de données

Page 56: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

51

3. Présentation des pages conçues

Cette partie définie les pages web trouvées dans le site et leurs requêtes SQL de

transmission de données. Nous rappelons que nous avons utilisé le logiciel EasyPHP qui

comprend le serveur web Apache et le serveur de base de données MySQL, le langage

PHP pour l’écriture des programmes. Le code PHP est transcrit en langage HTML puis

envoyer au navigateur grâce au serveur Apache pour l’affichage du page.

3.1 La page d’accueil

La page d’accueil est la porte du site, elle comprend les rubriques suivantes

Présentation

Scolarité

Etudiants

Annuaire Enseignants

Annuaire Etudiants

Forum

Dans l’architecture du site, la page d’accueil est repérée par le fichier « index.php »

Voici la page d’accueil :

Fig8.1 : Page d’accueil

Page 57: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

52

3.2 Page de la scolarité

La page du service de la scolarité comprend l’accès des responsables, cette page est

protégée par un mot de passe. Il y a deux types de responsables, le responsable du

secrétariat principal et le responsable du secrétariat de direction.

Remarque : un étudiant inscrit peut se trouver dans la recherche sur le renseignement

étudiants et l’annuaire

La page de la scolarité est repérée dans le fichier « ident_scola.php ».

Voici la page de la scolarité :

Fig8.2: Page du service de la scolarité

3.2.1 Page du secrétariat principale

Cette page présente les tâches dans le secrétariat principale, elle comprend

Les rubriques suivantes :

Inscription : bouton à cliquer pour trouver le formulaire des inscriptions des étudiants

Dossier administratif : bouton à cliquer pour trouver le formulaire pour les dépôts du dossier.

Carte d’étudiant : (en cours de production)

Carte bibliothèque : (en cours de production)

Certificat de scolarité : (en cours de production)

Page 58: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

53

Voici la page du secrétariat principale :

Fig8.3 : Page du secrétariat principale

Fig8.4 : Page comprenant le formulaire d’inscription

Page 59: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

54

Si le formulaire sera remplie, cliquons sur envoyer pour stocker les données dans la base de

données.

La requête SQL de sélection et l’insertion des données dans la table « inscription_tc » se

trouve dans le fichier « utils.php » le programme principal qui gère cette page en appelant

ces fonctions correspondants.

$req2="select * from inscription_tc where id_insc_tc=$iday";

$result4="INSERT INTO `inscription_tc` ( `id_insc_tc` , `annee_sco`, `nom`,

`prenom`, `jour`, `mois`, `annee`, `lieu_de_naiss`,`filiere` , `annee_etude`, `num_etud`,

`num_quit`,`Adresse`,`Tel`,`Mail` )

VALUES ('','$annee_sco' ,'$nom', '$prenom', '$jour', '$mois', '$annee','$lieu_de_naiss',

'$filiere', '$annee_etude', '$num_etud', '$num_quit','$Adresse','$Tel','$Mail')";

Voir intégralement les codes dans l’annexe [II-1.7]

3.2.2 Page du secrétariat de direction

Cette page représente les tâches dans le secrétariat de direction, elle comprend

Les rubriques suivantes :

Saisie de notes : bouton à cliquer pour trouver le choix du formulaire des notes à remplir.

Relevé des notes : bouton à cliquer pour trouver le choix des relevés de notes.

Carte d’étudiant : (en cours de production)

Carte bibliothèque : (en cours de production)

Certificat de scolarité : (en cours de production)

Voici la page du secrétariat de direction

Fig8.5: Page du secrétariat de la direction

Page 60: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

55

Page comprenant le choix pour la saisie de notes :

Fig 8.6: Page pour le choix de la saisie de notes

Maintenant les choix de la filière et l’année d’étude de notes à saisir ont été effectué, on peut

trouver la page qui contient la liste des étudiants de cette filière et classe et le formulaire de

saisie de notes.

La requête SQL de sélection de la table « inscription_tc » pour avoir la liste et le formulaire

de saisie de notes de la classe 2ème année en Genie Mécanique.

$req="SELECT nom, prenom FROM inscription_tc WHERE annee_etude='2ème année' and

filiere='Genie Mécanique'";

Voir intégralement les codes dans l’annexes [II-2.1]

Voici la page pour l’insertion de notes de la classe de 2ème année Genie Mécanique :

Page 61: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

56

Fig 8.6: Page pour la saisie de notes

Après la saisie de notes, le responsable peut consulter le relevé de notes correspondant,

voici la page comprenant le choix pour le relevé de notes :

Fig8.7: Page pour le choix du relevé de notes à consulter

Page 62: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

57

Après le choix de la filière et l’année d’étude que on passera dans le formulaire de

Saisie de nom et prénoms des étudiants dont on veut trouver les notes.

Fig8.8: Page affichant la liste des étudiants 2ème année Genie Mécanique et le formulaire

de saisie de nom et prénoms.

Voici la requête SQL de sélection de la table note dont on veut trouver :

$req="SELECT * FROM note_gm2 WHERE nom='$nom' and prenom='$prenom'";

Remarque : note_gm2 est la table de notes de la classe 2ème année Génie Mécanique

Voir intégralement les codes dans l’annexe [II - 2.4]

Fig8.9 : Page affichant le relevé de notes à consulter

Page 63: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

58

3.3 Page pour étudiants

En cliquant sur la rubrique « Etudiants » dans la page d’accueil, nous voyons la page qui

contient la liste des étudiants à renseigner.

Fig 8.10: Page pour la liste de tous les étudiants

En cliquant sur détails dans la même ligne d’un nom à renseigner, nous voyons le

renseignement concernant ce nom.

Voici la requête SQL de sélection de la table « renseignement » pour donner le

renseignement sur un nom cliqué :

$req2="select * from renseignement where id=$iday";

Voir intégralement les codes dans l’annexe [II-3.3]

3.4 Page pour l’annuaire Etudiants

Autre que les menus principales on trouve les rubriques « Affiche la liste de tous les

étudiants » pour trouver la liste des étudiants et aussi la recherche alphabétique qui sert à

trouver les noms alphabétiquement.

Page 64: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

59

Fig 8.11 : page pour annuaire étudiants

En cliquant sur « A » nous voyons la liste des noms commençant par « A »

Fig8.12 : page affichant la liste des noms commençant par « A »

Puis nous pouvons savoir le renseignement à propos d’un nom dans cette liste

Page 65: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

60

Fig 8.13 : page affichant le renseignement à propos de « Andrianarivelo Lovatiana »

Fig8.14 : page du forum

Page 66: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

61

Il y a trois choix possible. On peut consulter des messages sans avoir à s’identifier. Mais

avec cette option, on ne peut pas répondre directement à un message car pour pouvoir

répondre et participé au forum, il faut être membre et identifié.

En cliquant sur « s’identifier » une page d’identification s’affiche. Une fois identifié,

l’utilisateur peut créer un nouveau sujet ou répondre à un sujet. la figure ci-dessous montre

cette page.

Fig 8.15 : page affichant les choix possibles une fois identifié

Pour poster un nouveau sujet, il suffit de cliquer sur « Nouveau sujet » et une page d’édition

correspondant à cette tâche s’affiche l’écran. Idem pour le cas où l’utilisateur veut répond à

un message, on clique sur « répondre à un message ».

Page 67: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

62

PARTIE 3 : IMPLICATION PEDAGOGIQUE APPORTEE PAR CE TRAVAIL

Cette partie invoque les réflexions pédagogiques sur ce travail. Citons quelques approches

pédagogiques :

Premièrement : Familiariser les apprenants (étudiants) à consulter un site web

Cela concerne les nouveaux étudiants mais aussi les lycéens. Nous abordons par une

séance des travaux pratiques.

Voici le sujet des travaux pratiques proposé :

Objectif : familiariser les apprenants (étudiants) à consulter un site web

Durée : 2heures

Pré requis : Lecture d’un livre ou d’un revue

Travaux demandés : - Lire les rubriques trouvés dans l’accueil

- Cliquez une à une pour trouver les pages correspondantes

- Conclure la définition d’un site web ?

Deuxièmement : Donner aux étudiants le concept de modélisation.

Cela concerne les étudiants en 4ème année

Déroulement du cours :

Présentation de la méthode MERISE

Exemple d’application

La méthode MERISE :

Présentation :

MERISE est une méthode d’analyse élaboré en France en 1978 et conçue conjointement

par les industrielles et l’Universitaire qui permet notamment de concevoir un système

Page 68: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

63

d’information d’une façon standardisé et méthodique. La méthode MERISE propose une

démarche pour définir n système d’information. Cette démarche amène l’analyste à

concevoir un modèle représentatif du SI actuel et futur.

Les modèles MERISE propose par niveaux modèles suivants :

Niveau de

modélisation

choix préoccupation Modèles

des années

Modèles des

traitements

Conceptuelle Gestion Quoi ? MCD MCT

Logique Organisation Que fait ?

Quoi, où ?

Quand, comment ?

MLD

MOT

Physique Techniques Avec quel moyen ? MPD MOpT

Rôle :

Les modèles servent à répondre aux questions suivantes :

Données

Traitements

MCD : quelles données et quels liens entre

les données

MCT : quels traitements ?

MLD : Comment organiser le stockage des

données ?

MOT : Comment organiser les traitements ?

MPD : Comment stocker effectivement les

données ?

MOpT : Comment réaliser les traitements ?

SGBD

Prog1 Prog2 Prog3

BD Données

Traitement

Page 69: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

64

Modèle conceptuel de données (MCD) :

Le modèle de conceptuelle des données (MCD) a pour but d’écrire de façon formelle les

données qui seront utilisées par le système d’information. Il s’agit donc d’une représentation

des données, il s’agit donc d’une représentation des données, facilement compréhensible,

permettant de décrire le système d’information à l’aide d’entités.

Modèle logique de données (MLD) :

Le modèle logique des données consiste à décrire la structure de données utilisée sans faire

référence à un langage de programmation. Il s’agit donc de préciser le type de données

utilisées lors de traitements.

Modèle physique de données (MPD) :

Le modèle physique de données est une implémentation particulière d’une MLD pour une

matérielle, un environnement est un logiciel donné. Notement, le modèle physique de

données s’intéresse au stockage de données à travers le type et la taille des attributs du

MCD. Cela permet de prévoir la place nécessaire à chaque table dans le cas d’un SGBD.

Passage de MCD à MLD :

On dit qu’une association entre deux entités est de types :

1 :1 si les deux cardinalité sont 0.1 ou 1.1

1 : n si les deux cardinalité sont 0, n ou 1, n (un à plusieurs)

n :m si les deux cardinalité sont 0,n ou 1,n (plusieurs à plusieurs)

Exemple :

Valider le modèle suivant en vérifiant les affirmations ci-dessous, cochez la case lorsque

l’affirmation est exacte.

Page 70: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

65

1- un micro-ordinateur possède toujours un contact de maintenance

2- un contrat de maintenance ne garantit pas que des micro-ordinateurs

3- un micro-ordinateur est couvert par aucun contact ou un contact

4- un fournisseur achète des micro-ordinateurs

5- un micro-ordinateur peut être acheté chez plusieurs fournisseurs

6- d’autres couples de cordialités peuvent être utilisé sur un MCD

7- Ce modèle comporte 3 associations et 2 entités

8- La durée du contrat peut être calculée

9- L’ordinateur est identifié par son nom de machine

10- Le nom du fournisseur permet d’identifier un fournisseur

11- Deux micro-ordinateurs ne permettent pas d’avoir le même nom de machine

12- En cas de panne, On sait qu’il faut envoyer l’ordinateur pour la réparation

13- un fournisseur a vendue un ordinateur, un ou plusieurs micro ordinateurs

En utilisant les informations ci-dessous, complétez le précédent

Un logiciel se caractérise par un nom, une catégorie, un numéro de série et un numéro de

version

Un logiciel est identifié par (cocher la bonne réponse)

Un nom

Une catégorie

Un numéro de série ;

3) Un logiciel peut-être installé sur un micro-ordinateur

Un micro-ordinateur possède toujours un logiciel .Certains ordinateurs peuvent stocker

plusieurs logiciels différents

4) Un réparateur est décrit par un code mnémonique, un nom, des coordonnées postales et

téléphoniques

5) Un réparateur est capable de réparer tous les micro-ordinateurs

6) Un contrat de maintenance est toujours signé avec un et un seul réparateur

7) Un réparateur signe un ou plusieurs contrats.

Page 71: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

66

Troisièmement : Initier les étudiants à écrire un programme en langage html

Cette partie concerne les étudiants en 2ème année. Abordons le par une séance d’un cours

théorique.

Objectif : Initier les étudiants à écrire un programme en langage html

Durée : 3heures

Pré requis : Programmation en langage Turbo Pascal

Déroulement du cours :-le langage html

-Syntaxe du langage html

- Exemple d’un formulaire

Introduction:

HTML (Hyper Text MarkUp Language) est un langage de description (et non pas un langage

de programmation) qui va nous permettre de décrire l’aspect d’un document, d’y inclure des

informations variées (textes, images, sons, animations etc.…) et d’établir des relations

cohérentes entre ces informations grâce aux liens hypertextes.

Les avantages du langage HTML sont nombreux :

Peux coûteux en effet un simple éditeur de texte suffit à écrire ses premiers documents

HTML

Relativement facile à aborder,

Il représente en outre un bon moyen de dépasser les problèmes de comptabilité entre des

systèmes et des formats informatiques différents.

La description d’un document HTML passe par l’utilisation de BALISE (ou ’’ TAGS ‘’ en

anglais). Une balise est délimité par un signes ‘’<’’ et ‘’>’’ entre lesquels figure le nom de la

balise. Par exemple le balise de retour à la ligne est <BR> la plupart du temps, on utilise la

balise de début, et une balise de fin, qui définissent les propriétés de l’intervalle.

Exemple :

Tag<B>

Début d’écriture

en BOLD (gras)

Tag<B>

Fin d’écriture en

BOLD (gras)

Résultat dans

le navigateur

<B> écriture en gras< /B>

Sera traduit par :

Ecriture en gras

Page 72: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

67

Syntaxe du langage HTML

< !....commentaire……>

< ! DOCTYPE>

<HTML>

<HEAD>

« Ecrire votre texte ici »

</HEAD>

<BODY>

« Ecrire votre texte ici »

</BODY>

<HTML>

Les formulaires :

Les formulaires fond parti du langage html, c'est-à-dire qu’il existe des tags particulier

permettant de les créer.

Les formulaires sont généralement utilisés pour créer un médium interactif entre l’utilisateur

et le serveur web. Par exemple, le formulaire peut demander à l’utilisateur de choisir un

document à l’aide d’un menu déroulant, et renvoyer ce document une fois le choix établi.

L’avantage des formulaires est qu’ils permettent de créer une interface pour différentes

passerelles (d’où le nom de CGI) telles que les bases de données ou d’autres serveurs.

Le code source est le suivant : il ressemble bien entendu à celui d’une page HTMT

courante :

<html>

<head>

<title> Un formulaire pour débuter </title>

</head>

<body>

<br>

<h2> Un formulaire pour débuter </h2>

<hr>

<p>

<form method="post" action="nom_votre_programme">

choisissez ceci;

<input type="checkbox" name="check checked">

<p>

Choisissez quelque chose:

<p>

Page 73: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

68

<input type="radio" name="choix1" value="un">Un

<br>

<input type="radio" name="choix1" value="deux">Deux

<br>

<input type="radio" name="choix1" value="trois">Trois

<br>

<p>

Choisissez encore quelque chose:

<p>

<select name="choix2">

<option>Quatre

<option>Cinq

<option>Six </option>

</select>

<p>

Saisissez du texte:

<input type="text1" size="30" value="dans cet espace réservé">

<p>

Saisissez un autre texte:

<p>

<TEXTAREA name="texte2" row="5" cols="60">0

dans cet autre espace réservé à cet essai

</TEXTAREA>

<p>

<input type="submit" value="appuyer ici pour valider">

<p>

<input type="reset" value="appuyer ici pour annuler">

<p>

</form>

</p>

</body>

</html>

Page 74: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

69

Page 75: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

70

CONCLUSION GENERALE Le site a été testé avec des données restreintes. Il reste à saisir toutes les données

archivées à l’Ecole.

Effectivement, la création ou la manipulation des pages web dynamiques nécessite la

maîtrise du serveur web et sa configuration ainsi que les différents protocoles.

Concernant la connexion d’une base de donnée à un serveur web ; cela nécessite la

connaissance des différentes requêtes SQL et le langage de script. Le choix d’un tel langage

se fait par son aptitude à traiter les données.

Nous avons utilisé DREAMWEVER MX comme éditeur de source du fait qu’il fait partie de

ceux qui sont les plus performants.

Etant donnée que ce travail est une réalisation d’un portail web dynamique pour la suivie de

la scolarité des étudiants inscrits à l’ENSET tournant sur un serveur web, le choix qu’on a

fait pour utiliser un serveur de données, c’est tout simplement pour rendre facile la gestion

de données sur les systèmes.

Des améliorations sont envisageables, notamment sur la recherche thématique sur les

projets et mémoires réalisés. Ce travail sera d’une grande utilité pour le service de la

scolarité et les responsables pédagogiques à l’ENSET.

Page 76: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

71

ANNEXE

Page 77: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

72

SUJET DE MEMOIRE ........................................................................................................... 1

« Système d’informations ....................................................................................................... 1

pour la suivie de la scolarité des étudiants de l’ENSET » ...................................................... 1

REMERCIEMENTS ............................................................................................................... 2

RESUME ............................................................................................................................... 3

Introduction générale ............................................................................................................. 1

Partie1 : Etude théorique ....................................................................................................... 2

I. Systèmes d’informations ................................................................................................. 2

1. introduction ................................................................................................................. 2

2. Définition..................................................................................................................... 2

3. Les différents systèmes d’informations ....................................................................... 2

4. Utilité d’un système d’informations .............................................................................. 3

5. Conclusion .................................................................................................................. 3

II. Les bases de données et le système de gestion de base données ................................ 4

1. Les bases de données ................................................................................................... 4

1.1 Définition : ................................................................................................................. 4

1.2 Propriété : ................................................................................................................. 4

1.3 Utilité des bases de données : ................................................................................. 4

2. Le système de gestion de base de données : ................................................................. 5

2.1. Définition : ................................................................................................................ 5

2.2 La gestion de base de données : .............................................................................. 5

2.3 Les principaux SGBD : .............................................................................................. 6

2.4 Les différentes modèles de système de gestion de base de données (SGBD) ......... 6

2.4.1 Le modèle hiérarchique :........................................................................................ 7

2.4.2 Le modèle réseau : ................................................................................................ 7

2.4.3 Le modèle relationnel : ........................................................................................... 7

2.4.4 Le modèle objet : ................................................................................................... 8

2.5 Les niveaux des données : ....................................................................................... 8

2.6 Les caractéristiques d’un SGBD ............................................................................... 9

3. Conception d’une base de données ............................................................................. 10

3.1 Introduction ............................................................................................................. 10

3.2 Définition ................................................................................................................. 10

3.3. Les concepts importants de l’approche objet ............................................................. 11

3.3.1. Encapsulation ..................................................................................................... 11

3.3.2. Héritage .............................................................................................................. 11

3.3.3. Polymorphisme ................................................................................................... 12

3.3.4. Agrégation .......................................................................................................... 12

Page 78: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

73

3.4. L’évolution de l’approche Objet ................................................................................. 13

3.4.1. Les concepts Objets sont stables et éprouvés .................................................... 13

3.4.2. Les avantages de l’approche objet ...................................................................... 14

3.4.3. Les inconvénients de l’approche objet ................................................................ 14

3.4.4. Les remèdes aux inconvénient de l’approche objet ............................................. 14

3.5. Choix du langage de modélisation ............................................................................. 15

3.5.1. Vues globales sur les méthodes d’analyses ........................................................ 15

a. Les premiers consensus ........................................................................................... 15

b. L’unification et la normalisation des méthodes (1995-1997) ...................................... 15

3.5.2. Choix du langage de modélisation ...................................................................... 16

3.6. Conception et modélisation ....................................................................................... 17

3.6.1. Présentation de UML .......................................................................................... 17

3.6.2. Modélisation avec UML ....................................................................................... 17

a. Diagramme de cas d’utilisation ................................................................................. 18

b. Diagramme de classes ............................................................................................. 18

c. Diagramme de packages .......................................................................................... 19

d. Diagramme de séquence .......................................................................................... 19

e. Diagramme de collaboration ..................................................................................... 20

f. Diagramme d’état ...................................................................................................... 20

g. Diagramme d’activités............................................................................................... 21

h. Diagramme de composants ...................................................................................... 21

i. Diagramme de déploiement ....................................................................................... 22

3.6.3. Démarche de modélisation de la scolarité ........................................................... 22

a. Les diagrammes de cas d’utilisation ......................................................................... 25

b. Les différentes classes dans la conception ............................................................... 35

Partie 2 : REALISATION ...................................................................................................... 37

1. Rapport sur l’étape du travail ........................................................................................ 37

2. Les outils nécessaires pour la réalisation ..................................................................... 38

2.1 Architecture du site ................................................................................................. 38

2.2 Choix du langage de programmation ...................................................................... 39

2.2.1 Le langage PHP ................................................................................................... 39

2.2.2 Mysql .................................................................................................................. 40

2.3 Mode de transmission de données ............................................................................. 41

2.4 Les logiciels utilisés .................................................................................................... 42

2.5 Implémentation ........................................................................................................... 42

2.5.1 Ouverture de session ........................................................................................... 43

2.5.2 L’insertion des données ....................................................................................... 45

Page 79: SYSTEME D’INFORMATIONS POUR LA SUIVIE DE LA SCOLARITE …

Système d’informations pour la suivie de la scolarité des étudiants de l’ENSET

74

2.5.3 L’affichage des résultats ...................................................................................... 45

2.5.4 Modification des données .................................................................................... 46

2.5.5 Suppression des données.................................................................................... 50

3. Présentation des pages conçues .................................................................................. 51

3.1 La page d’accueil .................................................................................................... 51

3.2 Page de la scolarité ................................................................................................ 52

3.2.1 Page du secrétariat principale .............................................................................. 52

3.2.2 Page du secrétariat de direction........................................................................... 54

3.3 Page pour étudiants ................................................................................................... 58

3.4 Page pour l’annuaire Etudiants................................................................................... 58

Partie 3 : IMPLICATION PEDAGOGIQUE APPORTEE PAR CE TRAVAIL ......................... 62

CONCLUSION GENERALE ................................................................................................ 70

ANNEXE .............................................................................................................................. 71