Vous êtes sur la page 1sur 110

REPUBLIQUE ALGERIENNE DEMOCRATIQUE ET POPULAIRE

MINISTERE DE L'ENSEIGNEMENT SUPERIEURE ET DE LA RECHERCHE


SCIENTIFIQUE

Université Mouloud Mammeri Tizi-Ouzou

Faculté de Génie Electrique et d'Informatique


Département d'Informatique

MEMOIRE
De fin d’études

En vue de l'obtention du diplôme


d'ingénieur d'Etat en informatique.
Option : Systèmes d’information avancés.

THEME
Thème :
Conception et implémentation
Conception d’une
et réalisation d‟un intranet avecapplication
un
siteclient-serveur
web dynamique, un serveur
pour la FTP et serveur
discussion
de messagerie
sur réseau.

Proposé et dirigé par :


M. HAMRIOUI Réalisé par :
M.TIGHLILT FERHAT Salem
M. TAKARABT Ali

2009/2010
SOMMAIRE
2009/2010

Introduction générale………………………………………………………………………………………………………………….. 1
Chapitre I
Introduction…………………………………………………………………………………………………………………….. 2
I. Les types des réseaux …………………………………………………………………………………………………….. 2
I.1. Les réseaux locaux (LAN: Local Area Network)……………………………………………………………….. 2
I.2. Les réseaux métropolitains (MAN: Métropolitain Area Network)…………………………………… 2
I.3. Les réseaux distants (WAN: Wide Area Network)……………………………………………………………. 2
II. Architecture des réseaux :………………………………………………………………………………………………. 3
II.1. Les réseaux en étoile: …………………………………………………………………………………………………………… 3
II.2. Les réseaux en anneau: ……………………………………………………………………………………………………….. 3
II.3. Les réseaux en bus: ………………………………………………………………………………………………………………. 3
III. Le modèle OSI ……………………………………………………………………………………………………………….. 3
III.1. La couche physique…………………………………………………………………………………………………………. 4
III.2. La couche liaison de données………………………………………………………………………………………….. 4
III.3. La couche réseau…………………………………………………………………………………………………………… 4
III.4. La couche transport………………………………………………………………………………………………………… 4
III.5. La couche session……………………………………………………………………………………………………………. 4
III.6. La couche présentation………………………………………………………………………………………………… 4
III.7. La couche application……………………………………………………………………………………………………… 4
IV. Le modèle TCP/IP …………………………………………………………………………………………………………. 4
IV.1. La couche réseau physique…………………………………………………………………………………………… 5
IV.2. La couche routage – le protocole IP………………………………………………………………………………… 6
i) Adresse IP……………………………………………………………………………………………………………………………… 6
ii) Le routage……………………………………………………………………………………………………………………………… 7
IV.3. La couche transport………………………………………………………………………………………………………… 7
i) Le protocole UDP: User Datagram Protocol…………………………………………………………………………….. 7
ii) Le protocole TCP: …………………………………………………………………………………………………………………… 7
IV.4. La couche Application…………………………………………………………………………………………………….. 8
V. client serveur……………………………………………………………………………………………………………….. 8
V.1. Présentation de l’architecture d’un système client/serveur :…………………………………………… 8
V.2. Notions de bases :………..…………………………………………………………………………………………………… 8
V.3. Fonctionnement d'un système Client/serveur : …………………………………………………………………. 9
VI. INTERNET ………………………………………………………………………………………………………………………….. 9
VI.1. Définition………………………………………………………………………………………………………………………….. 9
VI.2. Historique : ………………………………………………………………………………………………………………………. 9
VI.3. Les principaux services de l’Internet : ……………………………………………………………………………….… 10
VI.3.1. La messagerie électronique (email) ……………………………………………………………………………..….. 10
VI.3.2. Le transfert de fichiers (Ftp et Tftp) …………………………………………………………………………….….. 10
VI.3.3. Le service GOPHER…………………………………………………………………………………………………………… 10
VI.3.4. Le service WAIS (Wide Area Informatique System) ……………………………………………………….. . 11
VI.3.5. Les news………………………………………………………………………………………………………………………….. 11
VI.3.6. Le service IRC (Internet Relay Chat) ………………………………………………………………………………… 11
VI.3.7. Le World Wide Web (WWW) …………………………………………………………………………………………… 11
VI.3.8. Le service TELNET (Telecommunications Network) ……………………………………………………….…. 12
VI.3.9. Le DNS………………………………………………………………………………………………………………………………. 12
VII. L’INTRANET……………………………………………………………………………………………………………………….. 12
VII.1. Définition…………………………………………………………………………………………………………………………… 12
VII.2. L'utilité d'un intranet………………………………………………………………………………………………….…..... 13
VII.3. Avantage d'un intranet……………………………………………………………………………………..……………..... 14
VII.4. Mise en place de l'intranet………………………………………………………………………………………………… 15
VII.5. Sécurité d’un Intranet……………………………………………………………………………………………………….. 15
VIII. Extranet……………………………………………………………………………………………………………………………. 15
IX. Le Web…………………………………………………………………………………………………………………………………… 16
IX.1. Historique…………………………………………………………………………………………………………………………… 16
IX.2. Facteurs de succès du Web………………………………………………………………………………………………… 16
IX.3. Principaux termes du Web : ……………………………………………………………………………………………… 16
IX.4. Types de sites Web ……………………………………………………………………………………………………………. 18
IX.5. Pages Web statiques ……………………….……………..…………………………………………………………………. 18
IX.6. Pages Web dynamiques …………………………………………………………………………………………………… 18
Conclusion : ……………………………………………………………………………………………………………….……………….. 19
Chapitre II.
I. Introduction……………………………………………………………………………………………………………………. 20
II. Présentation du laboratoire de recherche en génie civil (LAMOMS) …………………………….. 20
III. Organigramme du laboratoire……………………………………………………………………………………… 21
IV. Tableau récapitulatif des effectifs existants……………………………………………………………..……. 21
V. Etude et travaux de recherche à réaliser………………………………………………………………………… 21
VI. Objectif de notre application………………………………………………………………………………………… 22
Conclusion……………………………………………………………………………………………………………………………….…… 22
Chapitre III
Introduction………………………………………………………………………………………………………………….……………. 23
I. Démarche suivie…………………………………………………………………………………………………………….. 23
II. Règle de gestion………………………………………………………………………………………………………….…. 23
III. Identification des acteurs de l’application……………………………………………………………………. 24
IV. Identification des différents espaces de l’application………………………………………………..… 24
V. Schéma général du site : ………………………………………………………………………………………………… 25
VI. Spécification des scénarios : ………………………………………………………………………………………….. 26
VI.1. Spécification des cas d’utilisations…………………………………………………………………………………….. 28
VII. L’analyse …………………………………………………………………………………………………………….…………. 31
VII.1. Diagramme de robustesse et diagramme de séquence : …………………………………………………… 32
VII.1.1. Cas d’utilisation « identification d’un chercheur » : ………………………………………………………… 33
VII.1.1. 1.Diagramme de robustesse ……………………………………………………………………….………………… 33
VII.1.1. 2.Diagramme de séquence ………………………………………………………………………………….……….. 34
VII.1.2. Cas d’utilisation « Gérer un compte chercheur » : …………………………………………………….……. 34
VII.1.2. 1.Diagramme de robustesse……………………………………………………………………………………….…… 35
VII.1.2. 2.Diagramme de séquence …………………………………………………………………….……………………… 36
VII.1.3. Cas d’utilisation « changer mot de passe » …………………………………………………….………………. 36
VII.1.3. 1.Diagramme de robustesse ……………………………………………………………………………..…………… 37
VII.1.3. 2.Diagramme de séquence ………………………………………………………………………………..…………… 38
VII.1.4. Cas d’utilisation « modifier un chercheur » : …………………………………………………………………… 38
VII.1.4. 1.Diagramme de robustesse……………………………………………………………………………………………… ..39
VII.1.4. 2.Diagramme de séquence ……………………………………………………………………………………………… 40
VIII. La conception : ………………………………………………………………………………………………………………. 40
VIII.1. La conception d’application web : ……………………………………………………………………………………. 41
VIII.2. Réalisation des cas d’utilisation ……………………………………………………………………………………….. 41
VIII.2.1. Diagrammes de séquences élaborées des cas d’utilisations : ………………………………………… 41
VIII.2.1.1. Identification d’un chercheur……………………………………………………………………………………… 41
VIII.2.1. 2.Créer un compte chercheur………………………………………………………………………………………. 42
VIII.2.1. 3.Changer le mot de passe…………………………………………………………………………………………….. 43
VIII.2.1.4. Gérer la base de donnée…………………………………………………………………………………………..… 44
VIII .2.2. Les diagrammes de classe ……………………………………………………………………………………………. 45
VIII .2.2. 1. Diagramme de classe générale du cas d’utilisation « identification d’un chercheur… 45
VIII .2.2. 2. Diagramme de class générale du cas d’utilisation « Créer un compte chercheur»…….. 46
VIII .2.2.3. Diagramme de class générale du cas d’utilisation « Changer mot de passe»……………… 46
VIII .2.2. 4. Diagramme de class générale du cas d’utilisation « Gérer la base de données…………. 47

VIII .2.2. 5. Diagramme de classe détaillé du cas d’utilisation «identification chercheur »…………… 47
VIII .2.2.6. Diagramme de classe détaillé du cas d’utilisation « modifier le mot de passe »…………. 48
VIII .2.2.7.Diagramme de classe détaillé du cas d’utilisation « créer un compte chercheur »……… 49
VIII .2.2.8.Diagramme de classe détaillé du cas d’utilisation « Gérer la base de données »………... 50
IX. La conception de la base de données : ………………………………………………………………………..… 50
IX.1. Le modèle conceptuel de données……………………………………………………………………………………… 51
IX.2. Le schéma relationnel……………………………………………………………………………………………………….. 52
IX.3. Le modèle physique de données : ………………………………………………………………………………………. 52
Conclusion : ………………………………………………………………………………………………………………………………… 53
Chapitre IV
Introduction…………………………………………………………………………………………………………………………………. 54
I. Architecture de notre application…………………………………………………………………………………. 54
I.2. L’environnement de développement…………………………………………………………………………………… 55
I.2.1. Langages de programmation……………………………………………………………………………………………… 55
I.2.1.1. PHP ………………………………………………………………………………………………………………………………… 55
I.2.1.2. Structure d’une page PHP ………………………………………………………………………………………………. 56
I.2.1.3. Fonctionnement du PHP…………………………………………………………………………………………………… 57
I.2.2. Outil de développement……………………………………………………………………………………………………… 57
I.2.2.1. Serveur Web Apache………………………………………………………………………………………………………. 57
I.2.2.2. Serveur MySQL ……………………………………………………………………………….……………………………… 58
I.2.2.2.1. MySQL……………………………………………………………………………..…………………………………………… 58
I.2.2.2.2. Fonctionnalités de MySQL……..…………………………………………………………………………………….. 58
I.2.2.3. Le Serveur FTP FileZilla . …………………………………………………………………….…………………………. 59
I.2.2.4. Le Serveur SMTP Mercury……………………………………………………………………………………………… 60
I.2.2.5. XAMPP ……………………………………………………………………………………………………………………………. 61
I.2.2.5.1. Installer XAMPP ……….…………………………………………………………………………………………………… 61
I.2.2.5.2. Lancer XAMPP ……………………………………………………………………………………………………………… 62
I.2.2.5.3. Installation d'un des serveurs en tant que service ……………………………………………………….. 63
I.2.2.5.4. La console de sécurité XAMPP ……………………………………………………………………………………… 63
I.2.2.5.5. Emplacement des documents web ……………………………………………………………………….……… 64
I.2.2.5.6. Créer un répertoire à démarrage automatique ………………………………………..………………… 65
I.2.2.5.7. Modifier la configuration ………………………………………………………………………………………….…. 65
I.2.2.5.8. Les différents répertoires ……………………………………………………………………………………….……. 66
I.2.2.5.9. MySQL et PHP ……………………………………………………………………………………………………………… 66
I.2.2.6. PhpMyAdmin…………………………………………………………………………………………………………………… 67
I.2.2.6.1. Les fonctions de PhpMyAdmin………………………………………………………………………………….….. 67
I.2.2.6.2. Utilisation de PhpMyAdmin…………………………………………………………………………………..……… 67
I.2.2.7. Autres outils…………………………………………………………………………………………….……………………… 68
II. Exemple des différentes interfaces du site à réaliser……………………………………………………… 68

Annexe
Introduction……………………………………………………………………………………………………………………………….. 82
I. UML……………………………………………………………………………………………………………………………………….. 82
I.1. Les méthodes objets ……………………………………………………………………………………………………………… 82
I.2. Les stades de construction d’UML …………………………………………………………………………………………. 82
I.3. La modélisation UML …………………………………………………………………………………………………………….. 83
I.3. 1.Diagramme fonctionnel : ……………………………………………………………………………………………………. 84
I.3. 1.1.Le diagramme de cas d’utilisation : …………………………………………………………………………… 84
I.3. 2.Diagramme statique ………………………………………………………………………………………………………….. 84
I.3. 2.1.Le diagramme de classe : ……………………………………………………………………………………………….. 84
I.3. 2.2.Le diagramme d’objet : …………………………………………………………………………………………………… 84
I.3. 2.3.Le diagramme de composant : ……………………………………………………………………………………….. 85
I.3. 2.4.Le diagramme de déploiement : …………………………………………………………………………………….. 85
I.3. 3.Diagramme dynamique …………………………………………………………………………………………………….. 85
I.3. 3.1.Le diagramme de séquence : …………………………………………………………………………………………… 85
I.3. 3.2.Le diagramme d’état de transition : …………………………………….…………………………………………… 85
I.3. 3.3.Le diagramme d’activité : ……………………………………………………………………………………………….. 85
I.3. 3.4.Le diagramme de collaboration : …………………………………………………………………………………… 85
II. L’extension d’UML pour le Web …………………………………………………………………………….……………… 86
II.1. Introduction………………………………………………………………………………………………………………………… 86
II.2. L’extension d’UML pour le Web………………………………………………………………………………………….. 87
II.3. Description des stéréotypes………………………………………………………………………………………………… 87
II.3.1. Page serveur (« server page ») ………………………………………………………………………………………… 87
II.3.2. Page client (« client page ») …………………………………………………………………………………………… 88
II.3.3. Formulaire (« form ») ……………………………………………………………………………………………………… 88
II.3.4. Structure de cadre…………………………………………………………………………………………………………….. 89
II.3.5. Cible (« target »)……………………………………………………………………………………………………………….. 90
II.3.6. Objet Script Client (« client script objet »)………………………………………………………………………….. 90
II.3.7. Lien (« Link ») …………………………………………………………………………………………………………………… 91
II.3.8. Lien cible (« targeted link ») ………………………………………………………………………………………………. 91
II.3.9. Contenu de cadre (« frame content ») ………………………………………………………………………….…… 92
II.3.10. Soumet (« submit ») ……………………………………………………………………………………………………… 92
II.3.11. Construit (« build ») ……………………………………………………………………………………..………………… 93
II.3.12. Redirige (« redirect ») …………………………………………………………………………………………………… 93
II.3.13. Élément de saisie (« input element ») ……………………………………………………………………………. 94
II.3.14. Sélection d’élément (« select element ») ……………………………………………………………………….. 95
II.3.15. Zone de texte (« text area element ») ………………………………………………………………….………… 95
II.3.16. Page web (« Web page ») ………………………………………………………………………………………………. 95
II.4. Règles de cohérence……………………………………………………………………………………………………………. 96
Conclusion générale…………………………..……………………………………………………………..……………………….. 98
Bibliographie et webiographie .………………………………..……………………………….……………………………….. 99
CHAPITRE

1
Généralités

Introduction
Les réseaux informatiques occupent aujourd'hui une place prépondérante dans la vie
professionnelle. Ils permettent à plusieurs machines distantes de communiquer par des
moyens divers. Les types de données transmises sont très variés : parole, sons, photos, vidéo,
fichiers de données... L'évolution technologique favorise cette diversité, avec une rapidité
encore inimaginable il y a peu de temps. Ce développement spectaculaire et universel exige
une compatibilité quasi totale, à l'origine d'un processus normatif d'envergure effectué par
l'I.S.O. (Organisatio. prise par les communications est telle que le marché des réseaux
informatiques est très disputé par les opérateurs de télécommunication et les constructeurs
d'équipements informatiques. Il fournit une très grande activité économique.

Dans ce chapitre nous présenterons les différentes échelles de réseaux, leurs


modèles d‟architectures et nous détaillerons beaucoup plus le modèle Internet en s‟axant sur
sa pile de protocoles (TCP/IP) et ses différentes applications.

I. Les types des réseaux [01]

On distingue trois types de réseau :

 Les réseaux locaux (LAN: Local Area Network).

Ces réseaux sont en général circonscrits à un bâtiment ou à un groupe de bâtiment s pas


trop éloignés les uns des autres (site universitaire, usine ou 'campus').

L'infrastructure est privée et est gérée localement par le personnel informatique.

 Les réseaux métropolitains (MAN: Métropolitain Area Network).

Ce type de réseaux peut regrouper un petit nombre de réseaux locaux au niveau d'une
ville ou d'une région. L'infrastructure peut être privée ou publique.

Par exemple, une ville peut décider de créer un 'MAN' pour relier ses différents services
disséminés sur un rayon de quelques kilomètres et en profiter pour louer cette infrastructure à
d'autres utilisateurs.

 Les réseaux distants (WAN: Wide Area Network).

Ce type de réseau permet l'interconnexion de réseaux locaux et métropolitains à


l'échelle de la planète, d'un pays, d'une région ou d'une ville.

L'infrastructure est en général publique (PTT, Télécom etc.) et l'utilisation est facturée
en fonction du trafic et/ou en fonction de la bande-passante réservée, pour les lignes louées
(une ligne louée est réservée exclusivement au locataire, 24h sur 24, pour la durée du contrat).
Les modems sont un des éléments de base des WANS.

II. Architecture des réseaux [01]

La topologie des réseaux informatiques peut se partager en trois groupes, qui peuvent
se combiner eux aussi :
 Les réseaux en étoile: Chaque nœud est relié directement sur un nœud central:
l'information passe d'un nœud périphérique au nœud central, celui-ci devant gérer chaque
liaison.
 Les réseaux en anneau: Chaque nœud est relié au nœud suivant et au nœud
précédent et forme ainsi une boucle: l'information transite par chacun d'eux et retourne à
l'expéditeur.
 Les réseaux en bus: Chaque nœud est connecté sur un bus: l'information passe
'devant' chaque nœud et s'en va 'mourir' à l'extrémité du bus.

Pour assurer un bon transfert de l‟information avec une qualité de service suffisante, il
faut prévoir une architecture logicielle normalisée tel que le modèle OSI et le modèle TCP/IP
que nous allons décrire ci-dessous.

III. Le modèle OSI [02]

Au début des années 70, chaque constructeur a développé sa propre solution réseau
autour d‟architecture et de protocoles privés (SNA d‟IBM, DSA de BULL, TCP /IP du
DOD, …) et il s‟est vite avéré qu‟il est impossible d‟interconnecter ces différents réseaux si
une norme internationale n‟est pas établie. Cette norme établie par L‟internationale Standard
Organisation (ISO) est la norme Open System Interconnection (OSI, interconnexion des
systèmes ouverts). Un système ouvert est un ordinateur, un terminal, un réseau, n‟importe
quel équipement respectant cette norme et donc apte à échanger des informations avec
d‟autres équipements hétérogènes et issue de constructeurs différents.

Description du modèle [02]

Le modèle normalisé connu sous le nom de modèle OSI (Open Systems


Interconnections ou Interconnexion des systèmes ouverts) repose sur l‟empilement de 7
couches pouvant communiquer verticalement entre elles (figure1).

7. Application
6. Présentation
5. Session
4. Transport
3. Réseau
2. Liaison
1. Physique
Figure1 : Les couches du modèle OSI

 La couche physique [02]

Cette couche offre les services de l‟interface entre l‟équipement de traitement


informatique (ordinateur ou terminal) et le support physique de transmission. L‟unité de
transfert gérée par cette couche est l‟information élémentaire binaire.

 La couche liaison de données [02]


Pour qu‟une succession de bits prennent sens, cette couche définit des
conventions pour délimiter les caractères ou des groupes de caractères. Elle a, donc pour but
d‟acheminer sur une voie physique toutes les informations qui lui sont transmises par la
couche supérieure. L‟unité de traitement à ce niveau est appelée trame de données.

 La couche réseau [02]

Cette couche permet de gérer le sous-réseau, la façon dont les paquets


(ensemble de trames) sont acheminés de la source au destinataire. La couche réseau a de ce
fait pour rôle essentiel d‟assurer les fonctions de routage.

 La couche transport [02]

Elle s‟occupe de l‟acheminement des informations (messages) de bout en bout via le


réseau (entre expéditeur et destinataire) de façon indépendante du type de réseau

 La couche session [02]

Cette couche effectue la mise en relation de deux applications et fournit les


protocoles nécessaires à la synchronisation des échanges, leur arrêt et leur reprise. Elle permet
d‟attribuer un numéro d‟identification à l‟échange d‟une suite de messages entre applications.

 La couche présentation [02]

Cette couche s‟occupe de la représentation des données, elle gère tout ce qui est
transformation de données, formatage, conversion et syntaxe dans un langage de telle sorte
que les deux clients qui dialoguent se comprennent.

 La couche application [02]

Cette couche définit la façon dont les applications accèdent au réseau, elle fournit
une fenêtre à travers laquelle une application obtient un accès à l‟ensemble des services des
couches inférieures : transfert de fichiers, partage de ressources…

IV. Le modèle TCP/IP [02]

TCP/IP désigne communément une architecture réseau, mais cet acronyme désigne en
fait 2 protocoles étroitement liés : un protocole de transport, TCP (Transmission Control
Protocol) qu'on utilise "par-dessus" un protocole réseau, IP (Internet Protocol). Ce qu'on
entend par "modèle TCP/IP", c'est en fait une architecture réseau en 4 couches dans laquelle
les protocoles TCP et IP jouent un rôle prédominant, car ils en constituent l'implémentation la
plus courante. Par abus de langage, TCP/IP peut donc désigner deux choses : le modèle
TCP/IP et la suite de deux protocoles TCP et IP.

Le modèle TCP/IP, comme nous le verrons plus bas, s'est progressivement imposé
comme modèle de référence en lieu et en place du modèle OSI. Cela tient tout simplement à
son histoire. En effet, contrairement au modèle OSI, le modèle TCP/IP est né d'une
implémentation ; la normalisation est venue ensuite. Cet historique fait toute la particularité
de ce modèle, ses avantages et ses inconvénients.

L'origine de TCP/IP remonte au réseau ARPANET. ARPANET est un réseau de


télécommunication conçu par l'ARPA (Advanced Research Projects Agency), l'agence de
recherche du ministère américain de la défense (le DOD : Département of Defense). Outre la
possibilité de connecter des réseaux hétérogènes, ce réseau devait résister à une éventuelle
guerre nucléaire, contrairement au réseau téléphonique habituellement utilisé pour les
télécommunications mais considéré trop vulnérable. Il a alors été convenu qu'ARPANET
utiliserait la technologie de commutation par paquet (mode datagramme), une technologie
émergeante. C'est donc dans cet objectif et ce choix technique que les protocoles TCP et IP
furent inventés en 1974. L'ARPA signa alors plusieurs contrats avec les constructeurs (BBN
principalement) et l'université de Berkeley qui développait un Unix pour imposer ce standard,
ce qui fut fait.

Description du modèle :

Le modèle TCP/IP peut en effet être décrit comme une architecture réseau à 4 couches :

1 Application
2 Transport
3 Routage
4 Réseau
Figure 2 : Modèle TCP/IP en 4 couches

 La couche réseau physique

La couche réseau physique équivaut aux couches physiques et liaison du modèle OSI.
En pratique, dans la majorité des cas, la couche réseau physique du modèle Internet est la
norme Ethernet IEEE 802.3. Ce n'est nullement la seule possibilité.

Ethernet est un réseau local ayant les caractéristiques suivantes:

 Transmission par trames de longueur variable mais de structure normalisée.


 Détection des collisions avec réémission des trames perdues.
 Débit de 10 Mbit par seconde (dans une trame).
 Adressage physique sur 6 octets.

 La couche routage – le protocole IP

Le protocole IP (Internet Protocol) a pour but d‟acheminer un paquet de données entre


une station source et une station destinataire qui peut être située sur le même segment de
réseau ou sur des réseaux différents reliés par une ou plusieurs passerelles.
Chaque paquet est une entité qui est absolument indépendante de toutes les autres. IP
n‟offre qu‟un service de type remise de datagrammes, c'est-à-dire d‟unités de données en
mode non connecté. Il ne s‟occupe pas du contrôle de flux de données.

i) Adresse IP

Chaque ordinateur du réseau Internet dispose d‟une adresse IP unique sur 32 bits. Une
adresse IP est souvent représentée en notation décimale. Chaque octet (avec une valeur de 0 à
255) est séparé des autres par un point. L'adresse 255.25.25.25 constitue un exemple
d'adresse IP. Chaque adresse IP a une valeur de masque de réseau associée, codée sur 32 bits.

Le masque, accompagnant l'adresse, divise celle-ci en deux parties. La première est


l'adresse, qui identifie le réseau de manière unique; l'autre est une adresse d'hôte qui identifie
l'hôte de manière unique dans un réseau donné.

Les adresses IP sont réparties entre différentes catégories appelées classes. Ces classes
sont résumées dans le tableau suivant:

classe Adresses Masque de réseau

A 0.0.0.0 à 127.255.255.255 255.0.0.0

128. 0. 0. 0 à 255.255.0.0
B
191.255.255.255

192. 0. 0.0 à 255.255.255. 0


C
223.255.255.255

Tableau 1: Les Classes d'adresses IP

ii) Le routage

Les routeurs sont des ordinateurs qui assument sur Internet la tâche de relier les réseaux
entre eux. Lorsqu‟un paquet de données doit être envoyé à un ordinateur d'un autre réseau, il
doit tout d‟abord être envoyé à un routeur. On doit alors spécifier une passerelle IP (l'adresse
du routeur).

Pour acheminer les paquets, deux cas peuvent alors se produire :

 Si la station destinataire se trouve sur le même réseau que la station émettrice, le


paquet est envoyé directement vers la station destinataire.
 Si la station destinataire se trouve sur un autre réseau, IP envoie le paquet vers une
passerelle. Cette passerelle se charge d‟acheminer le paquet vers la station destinataire, ou
vers un sous réseau, jusqu‟à l‟acheminement final du paquet.

 La couche transport

Le niveau IP établit la communication entre machines. La couche transport établit la


communication entre processus. Les messages de cette couche seront empaquetés dans des
messages IP. L'identification des processus communicant entre eux au niveau de cette couche
se fait par des numéros appelés ports.

Cette couche supporte deux protocoles UDP et TCP, suivant le mode de communication
entre les processus.

i) Le protocole UDP: User Datagram Protocol

Le protocole UDP utilise IP pour acheminer, d'un ordinateur à un autre, en mode non
fiable des datagrammes qui lui sont transmis par une application. UDP n'utilise pas d'accusé
de réception et ne peut donc pas garantir que les données ont bien été reçues. Il ne réordonne
pas les messages si ceux-ci n'arrivent pas dans l'ordre dans lequel ils ont été émis et il n'assure
pas non plus de contrôle de flux. Il se peut donc que le récepteur ne soit pas apte à faire face
au flux de datagrammes qui lui arrivent. C'est donc à l'application qui utilise UDP de gérer les
problèmes de perte de messages, duplications, retard, etc.

Cependant, UDP fournit un service supplémentaire par rapport à IP, il permet de


distinguer plusieurs applications destinatrices sur la même machine par l'intermédiaire des
ports. Un port est une destination abstraite sur une machine identifiée par un numéro qui sert
d'interface à l'application pour recevoir et émettre des données.

ii) Le protocole TCP: Trans mission Control Protocol

Contrairement à UDP, TCP est un protocole qui procure un service de flux d'octets
orienté connexion et fiable. Le terme orienté connexion signifie que les applications
dialoguant à travers TCP sont considérées l'une comme un serveur, l'autre comme un client, et
qu'elles doivent établir une connexion avant de pouvoir dialoguer. Les ordinateurs vérifient
donc préalablement que le transfert est autorisé, que les deux machines sont prêtes en
s'échangeant des messages spécifiques. Une fois que tous les détails ont été précisés, les
applications sont informées qu'une connexion a été établie et qu'elles peuvent commencer
leurs échanges d'informations. Il y a donc exactement deux extrémités communiquant l'une
avec l'autre sur une connexion TCP.

La communication est donc fiable grâce à des mécanismes d'accusé de réception, de


réémission après temporisation et la vérification de la transmission effective, unique et
ordonnée des messages échangés par les applications, mais au prix d'une complexité et d'une
charge plus importante, aussi bien sur les machines que sur lles utilisateurs invoquent les
programmes qui permettent l'accès au réseau. Chaque programme d'application interagit avec
la couche transport pour envoyer ou recevoir des données. En fonction des caractéristiques de
l'échange, le programme choisit un mode de transmission à la couche transport. Parmi ces
programmes d'application, on distingue Telnet (Télécommunications Network), Ftp (File
Transfert Protocol), SMTP (Simple Mail Transfer Protocol), etc.…

V. Le Client-serveur [03]
C‟est un modèle informatique basé sur le traitement distribué selon lequel un utilisateur
lance un logiciel client à partir d‟un ordinateur relié à un réseau, déclenchant simultanément le
lancement d‟un logiciel serveur situé dans un autre ordinateur possédant les ressources souhaitées
par l‟utilisateur.

V.1. Présentation de l’architecture d’un système client/serveur [03]


De nombreuses applications fonctionnent selon un environne ment client/serveur, cela
signifie que des machines clientes (des machines faisant partie du réseau) contactent un serveur,
une machine généralement très puissante en terme de capacité d‟entrée-sortie, qui leur fournit des
services.
Les services sont exploités par des programmes, appelés programmes clients, s‟exécutant
sur les machines clientes. On parle ainsi de client FTP, client de messagerie ..., lorsque l‟on
désigne un programme, tournant sur une machine cliente, capable de traiter des informations q u‟il
récupère auprès du serveur. (Dans le cas du client FTP il s‟agit de fichiers, tandis que pour le
client messagerie il s‟agit de courriers électronique). Dans un environnement purement
Client/serveur, les ordinateurs du réseau (les clients) ne peuvent voir que le serveur, c‟est un des
principaux atouts de ce modèle (chaque machine est soit client, soit serveur).

V.2. Notions de bases [03]


Client : C’est le processus demandant l’exécution d’une opération
à un autre processus par envoi d’un message contenant le descriptif
de l’opération à exécuter et attendant la réponse à cette opération
par un message en retour.
Serveur : C’est un processus accomplissant une opération sur
demande d’un client.
Requête : C’est un message transmis par un client à un serveur
décrivant l’opération à exécuter pour le compte d’un client.
Réponse : C’est un message transmis par un serveur à un client
suite à l’exécution d’une opération contenant les paramètres de
retour de l’opération.
Middleware : C’est le logicie l qui est au milieu assure les dialogues
entre les clients et les serveurs souvent hétérogènes.

V.3. Fonctionnement d'un système Client/serveur [03]


Un système client/serveur fonctionne selon le schéma suivant :
Figure 3 : Architecture client serveur
Le client émet une requête vers le serveur grâce à son adresse et le port, qui désigne un
service particulier du serveur. Le serveur reçoit la demande et répond à l'aide de l'adresse de la
machine client et son port.

VI. INTERNET [04]

VI.1. Définition
Internet est un réseau informatique international réalisant l'interconnexion d'un nombre
croissant de réseaux de toutes dimensions. Initialement destiné à la recherche, il s'est
considérablement développé. Conçu aux États-Unis, Internet repose sur des solutions
pragmatiques : il constitue un service sans ouverture de connexion préalable et sans garantie de
fiabilité ; les équipements des utilisateurs et des serveurs assurent les traitements nécessaires pour
rendre fiables les échanges.
VI.2. Historique :
Internet est issu des technologies développées au cours des années 70 par la DARPA qui
s‟appelait ARPANET (une organisation liée à l‟armée américaine). A l‟origine, l‟objectif de cette
organisation était d‟interconnecter les organismes militaires et les centres de recherche dans le
but de permettre le transfert fiable de données et d‟autre part d‟accéder à des centres dotés de
super calculateurs coûteux. Très vite le réseau draina un grand nombre d‟universités et
d‟entreprises privées impliquées dans le projet de recherche du gouvernement américain.
En 1983, l‟infrastructure de base actuelle (de l‟Internet) était achevée. Avec l‟arrivée des
différentes entreprises commerciales sur le réseau poussèrent l‟armée américaine à abandonner le
projet Internet pour laisser le champ à ces entreprises et les utilisateurs individuels. Alors depuis
ce temps, l‟Internet permet d‟échanger des messages électroniques (e- mails) et les fichiers FTP
entre les ordinateurs sauf que le mode d‟emploi de l‟Internet était compliqué. C‟était des lignes
de commandes presque incompréhensibles. Ce n‟est que vers les années 90 que l‟Internet a connu
un tel succès grâce au développement de l‟interfaçage graphique et l‟invention du WWW.
VI.3. Les principaux services de l’Internet [04]
On décrit ici de manière succincte quelques applications majeures que l'on trouve sur
Internet.

VI.3.1. La messagerie électronique (email)

La messagerie électronique est l‟un des premiers services de l‟Internet, il date du milieu
des années 70. Il permet l‟envoi des messages entre les différents internautes en utilisant le
SMTP (Simple Mail Transfert Protocol) qui est le protocole Internet standard d‟envoi du
courrier électronique.

Pour la lecture des messages, les clients de messageries utilisent un autre protocole qui
est soit POP ou bien IMAP.

VI.3.2. Le transfert de fichiers (Ftp et Tftp)

Les protocoles FTP (File Transfert Protocol) et TFTP (Trivial File Transfert Protocol)
permettent de transférer des fichiers d‟une machine à une autre. FTP est bâti sur TCP, tandis
que TFTP est bâti sur UDP.

L‟utilisation de FTP depuis un poste client pour aller chercher ou déposer un fichier sur
un serveur nécessite une connexion avec un nom et un mot de passe. Dans le cas d‟un serveur
FTP public, la connexion se fait avec le nom anonymous et il est conseillé de donner son
adresse email comme mot de passe.

Dans le cas de TFTP, aucune authentification préalable n‟est nécessaire ; l‟inconvénient


est que le serveur TFTP n‟offre des possibilités d‟accès qu‟à un nombre restreint de fichiers.

VI.3.3. Le service GOPHER

GOPHER est un système à base de menus qui aide à la recherche de fichiers, de


programmes et d‟autres ressources sur Internet en mode texte. Il a été développé en 1991 à
l‟université de Minnesota sous le nom (Golden Gopher) et il a connu son succès avant
l‟apparition de World Wide Web.

A l‟ouverture d‟une session Gopher, on sera face à un menu principal. On se déplace


vers d‟autres sous-menus à chaque sélection d‟une option. On poursuit la recherche dans l‟arb

Le principal avantage de GOPHER par rapport à FTP est qu‟on ne doit pas connaître
le nom d‟un fichier avant de le rechercher.

VI.3.4. Le service WAIS (Wide Area Informatique System)

WAIS permet de rechercher des documents de différents formats (images, sons, vidéos
et textes) sur Internet. Elle fut la première base de données textuelle d‟Internet.
VI.3.5. Les news

On appelle les NEWS les forums de discussion sur le réseau Internet. Ces forums
permettent aux individus de participer activement en laissant ou en répondant à un message,
ainsi que de lire la liste de tous les messages présents dans ce forum.

Le protocole utilisé pour transférer les NEWS est NNTP (Network News Transfert
Protocol), il gère des connexions permanentes avec les serveurs voisins, mettant à jour
instantanément chaque nouveauté dans le forum.

VI.3.6. Le service IRC (Internet Relay Chat)

Il s'agit d'un système de communication en temps réel où l'utilisateur se connecte à un


serveur qui recense des forums de discussion. Il choisit un forum (appelé Channel), et s'y
joint. Une liste de personnes lui apparaît alors avec lesquelles il peut discuter (textuellement)
en privé ou en public.

VI.3.7. Le World Wide Web (WWW)

Le WWW qui signifie “la toile d‟araignée planétaire” est un système d'information
graphique basé sur des liens hypertextes permettant de naviguer d'un site à un autre, sur
Internet. WWW intègre pratiquement l'ensemble des services présents sur les réseaux. Il a
tellement simplifié le travail sur Internet, que même les utilisateurs n'ayant aucune expérience
informatique apprennent immédiatement à se servir de son interface graphique. Le système
client de WWW sur l'ordinateur local (on l'appelle générale ment Web Browser ou
"navigateur") s'adresse à un serveur WWW du réseau.

Pour accéder au Web, il est nécessaire de disposer d‟un logiciel appelé navigateur Web.
L‟accès à un document est conditionné par la connaissance de sa localisation qui est exprimée
sous forme d’URL. Les clients et les serveurs dialoguent sur le Web en utilisant le protocole
HTTP.

VI.3.8. Le service TELNET (Telecommunications Network)

TELNET est une application qui permet à un utilisateur de se connecter à distance sur un
ordinateur, pourvu que cet utilisateur y dispose d‟un accès autorisé. Elle permet de prendre le
contrôle (du moins partiellement) d‟un ordinateur distant. Il existe des clie nts TELNET pour
de nombreuses plateformes (UNIX, Windows, MacOs,…), elle est bâtie sur le protocole TCP.

VI.3.9. Le DNS

Le DNS (Domain Name System) est, en quelque sorte, un annuaire des ressources
réseau. Il permet de faire la correspondance entre le « no m » d‟une machine ou d‟un service et
une adresse IP. L‟adresse IP n‟étant pas facilement manipulable, surtout par les utilisateurs, la
notion de noms (c‟est-à-dire la désignation alphabétique non ambiguë) a été introduite. Le
DNS gère un espace de noms mondial, cohérent, indépendant des protocoles.

VII. L’INTRANET [1]


L‟utilisation des technologies Internet ne se limite pas à la connexion au réseau des
réseaux. De nombreuses entreprises implémentent un serveur privé en utilisant des technologies à
la base de l‟Internet, essentiellement TCP/IP et http, d‟où l‟apparition de ce q
Un intranet est un ensemble de services internet (par exemple un serveur web) internes à
un réseau local, c'est-à-dire accessibles uniquement à partir des postes d'un réseau local, ou bien
d'un ensemble de réseaux bien définis, et invisibles (ou inaccessibles) de l'extérieur. Il consiste à
utiliser les standards client-serveur de l'internet (en utilisant les protocoles TCP/IP), comme par
exemple l'utilisation de navigateurs internet (client basé sur le protocole HTTP) et des serveurs
web (protocole HTTP), pour réaliser un système d'information interne à une organisation ou une
entreprise.
Un intranet repose généralement sur une architecture à trois niveaux, composée :

 De clients (navigateur internet généralement) ;

 D'un ou plusieurs serveurs d'application (middleware): un serveur web


permettant d'interpréter des scripts CGI, PHP, ASP ou autres, et les traduire en requêtes SQL
afin d'interroger une base de données ;

 D'un serveur de bases de données.

De cette façon, les machines clientes gèrent l'interface graphique, tandis que les
différents serveurs manipulent les données. Le réseau permet de véhiculer les requêtes et les
réponses entre clients et serveurs.

Un intranet possède naturellement plusieurs clients (les ordinateurs du réseau local) et


peut aussi être composé de plusieurs serveurs. Une grande entreprise peut par exemple
posséder un serveur web pour chaque service afin de fournir un intranet composé d'un serveur
web fédérateur liant les différents serveurs gérés par chaque service.

VII.2. L'utilité d'un intranet [1]

Un intranet dans une entreprise permet de mettre facilement à la disposition des


employés des documents divers et variés; cela permet d'avoir un accès centralisé et cohérent à
la mémoire de l'entreprise, on parle ainsi de capitalisation de connaissances. De cette façon, il
est généralement nécessaire de définir des droits d'accès pour les utilisateurs de l'intranet aux
Figuresur
documents présents 4 : celui-ci,
Architecture
et parà conséquent
trois niveauune authentification de ceux-ci afin de leur
permettre un accès personnalisé à certains documents.

Des documents de tous types (textes, images, vidéos, sons, ...) peuvent être mis à
disposition sur un intranet. De plus, un intranet peut réaliser une fonction de groupware très
intéressante, c'est-à-dire permettre un travail coopératif. Voici quelques unes des fonctions
qu'un intranet peut réaliser :

 Mise à disposition d'informations sur l'entreprise (panneau d'affichage)

 Mise à disposition de documents techniques

 Moteur de recherche de documentations

 Un échange de données entre collaborateurs

 Annuaire du personnel

 Gestion de projet, aide à la décision, agenda, ingénierie assistée par ordinateur

 Messagerie électronique

 Forum de discussion, liste de diffusion, chat en direct


 Visioconférence

 Portail vers internet

Ainsi, un intranet favorise la communication au sein de l'entreprise et limite les erreurs


dues à la mauvaise circulation d'une information.

VII.3. Avantages d'un intranet [1]

L‟Intranet permet :
 Le partage de l‟information avec l‟ensemble du personnel de l‟entreprise et leurs
partenaires sans contraintes géographiques.
 La recherche d‟information : l‟Intranet de l‟entreprise offre un point d‟accès unique à
des données stockées de différentes manières.
 La récupération de l‟information en temps réel : les utilisateurs ont la possibilité de
prendre connaissance des documents les plus récents……
 La manipulation des informations : les données dans l‟Intranet sont bien rangées et bien
structurées par l‟administrateur, l‟utilisateur final recevra ces informations via des outils de
bureau qui lui sont familiers, même si les formats sont différents.
 L‟accélération d‟échange d‟informations entre collaborateurs de l‟entrepr ise.
 De favoriser les prises de décisions compte tenu d‟une meilleure circulation de
l‟information.
 ……

VII.4. Mise en place de l'intranet [1]

Un intranet doit être conçu place). Ainsi, l'intranet ne doit pas être conçu par les seuls
informaticiens de l'entreprise mais selon un projet prenant en compte les besoins de toutes les
parties prenant de l'entreprise.

Pour ce qui est de la mise en place matérielle, il suffit de mettre en place un serveur web
(par exemple une machine fonctionnant sous Linux avec le serveur web Apache et le serveur
de bases de données MySQL ou bien un serveur sous Windows avec le serveur web
Microsoft Internet Information Server). Il suffit ensuite de configurer un nom de domaine
pour le serveur (par exemple intranet.votre_entreprise.com. Il est à noter l'existence de CMS
(systèmes de gestion de contenu) permettant de gérer la publication des pages par une équipe
de rédacteurs.

VII.5. Sécurité d’un Intranet [1]

Comme un nombre croissant de sociétés hébergent un site Web, leurs exigences en


matière de sécurité des réseaux augmentent. Les pare- feu (firewalls) répondent bien à cette
demande, en permettant à une entreprise d‟isoler son réseau interne et ses ordinateurs de
l‟Internet à accéder à une quantité limitée de données et de services.
Fire walls : est un système de protection qui est placé entre le réseau d‟entreprise et
l‟Internet. Il filtre les informations entrantes et les informations sortantes. Son rôle principal est
de protéger l‟entreprise contre la fraude, le piratage des informations stockées… .

VIII. Extranet [1]

Un extranet est une extension du système d'information de l'entreprise à des partenaires


situés au-delà du réseau.

L'accès à l'extranet doit être sécurisé dans la mesure où cela offre un accès au système
d'information à des personnes situées en dehors de l'entreprise.
Il peut s'agir soit d'une authentification simple (authentification par nom d'utilisateur et
mot de passe) ou d'une authentification forte (authentification à l'aide d'un certificat). Il est
conseillé d'utiliser HTTPS pour toutes les pages web consultées depuis l'extérieur afin de
sécuriser le transport des requêtes et des réponses HTTP et d'éviter notamment la circulation
du mot de passe en clair sur le réseau.

Un extranet n'est donc ni un intranet, ni un site internet. Il s'agit d'un système


supplémentaire offrant par exemple aux clients d'une entreprise, à ses partenaires ou à des
filiales, un accès privilégié à certaines ressources informatiques de l'entreprise par
l'intermédiaire d'une

Une des applications les plus connues développées sur Internet est le WWW (World Wide
Web, ou simplement Web). C'est une application conviviale de consultation à distance de pages
d'informations multimédia. Son principal intérêt est de pouvoir atteindre, à partir d'une page,
d'autres pages stockées sur des ordinateurs éventuellement très éloignés. La simplicité et
l'esthétique soignée du Web ont contribué à sa popularité et à la diffusion d'Internet dans le grand
public. Désormais, Internet prend une place prépondérante dans la vie quotidienne et de nouvelles
utilisations sont en pleine expansion (commerce électronique, diffusion d'images fixes.

IX.1. Historique [04]


Le WWW est inventé en 1989 et développé en 1992, au CERN à Genève, par Tim
Berner Lee, un chercheur atomiste en quête d‟un outil de partage de connaissances scientifiques
avec les autres chercheurs de toute l‟Europe. Il était le premier à proposer de relier les documents
sous forme d‟une toile d‟araignée i.e. des documents reliés avec des liens hypertextes. En 1993,
une première interface graphique, Mosaïc, est livrée au NCSA.

X1.2. Facteurs de succès du Web [04]

Ces facteurs sont principalement :


Universalité : Ceci grâce à :
 La navigation hypertexte étendue : les liens peuvent s‟appliquer à des documents
hébergés sur d‟autres sites au sens géographique du terme.
 Support multimédia : images fixes, animées, sons, vidéos, etc.
 Multiplateforme : les codages utilisés permettent d‟utiliser toutes les machines
existantes.
Simplicité : est assurée par :
 L‟unité de visualisation du contenu (navigateur)
 Les liens hypertextes
 Les systèmes d‟adresses URL.
 Intégration de tous les services qui existent (messagerie, FTP, news, etc.)
Gratuité des protocoles : Sont offerts au domaine public comme « http ».

IX.3. Principaux termes du Web


Page Web : C‟est une série de mots disposés linéairement et d‟objets graphiques, sonores
ou vidéo. Certains mots ou graphiques (souvent en surbrillance ou soulignés) pointent vers
d‟autres pages, c‟est ce qu‟on appelle hyperlien qui peuvent être obtenues en cliquant sur ces
mots ou graphiques. Cette technique d‟hypertexte permet la lecture non linéaire d‟un document
(navigation, surf).
Site Web : C‟est un ensemble de pages Web reliées les unes aux autres par des hyperliens
(liens hypertextes).
Page d’accueil : C‟est la page d‟introduction d‟un site Web qu‟on peut aussi appeler
« page de couverture ». Elle est très importante car elle détermine la première impression de
l‟internaute.
Site Internet : C‟est un ensemble de données (texte, image, son, vidéo, etc.) Hébergées sur
un serveur ayant une adresse IP et accessible aux internautes. Il existe différents types de sites
selon leurs contenus et la nature des services qu‟ils offrent. Citons les sites FTP, WEB, etc.
Serveur Internet : C‟est l‟ensemble des ressources matérielles (espace disque, connexion
Internet, contenu du site, etc.) et logiciels (les programmes) qui servent les clients d‟où émanent
les demandes de services.
URL (Uniform Resource Locator) : C‟est une adresse universelle d‟une page WEB. Elle a
le format suivant :
Protocole utilisé : // nom du serveur/ chemin d‟accès au fichier
Une URL s‟apparente à un nom de serveur et une information sur le type de protocole de
réseau à utiliser pour atteindre la ressource.
HTML (HyperText Markup Language) : Les pages Web (ayant l‟extension html) sont
écrites en HTML. C‟est un langage de balisage hypertextuel permettant d‟inclure outre du texte,
des graphiques, sons, vidéos et des pointeurs vers d‟autres pages du même site ou d‟un site
distant.
Note : une balise est une meta-information, le balisage est le fait d‟utiliser ces balises
dans des programmes bien spécifiques.
Hypertexte : C‟est une forme non séquentielle non narrative d‟organisation et d‟accès à
l‟information représenté par un réseau de liens associatifs qui forment une structure d‟hypertexte
Hypermédia : Le terme hypermédia désigne un hypertexte dont on insiste sur la nature
multimédia de son contenu informationnel.
Hyperdocument : il désigne un ensemble de documents multimédia ayant une organisation
et un fonctionnement hypertextuel.
Lien hypertexte : C‟est un pointeur qui pointe sur un nœud de destination, souvent il est
sous forme d‟une icône, symbole, petite image, un mot dans un texte, etc. Il permet d‟explorer le
Web avec un simple clic de souris. On distingue :
 les liens internes qui renvoient à d‟autres pages du même site
 les liens externes qui renvoient à d‟autres pages d‟un autre site
 les liens vers un signet qui renvoient à un signet de la même page ou d‟une autre page
 Les liens vers un e- mail qui permettent à l‟internaute d‟envoyer un e- mail directement
depuis la même page.
 Liens de téléchargement qui permettent de télécharger des documents depuis la même
page.
Navigateur : C‟est un logiciel qui offre une interface d‟accès aux différentes informations
disponibles sur le Web et l‟exploration de ce dernier, Ce dernier interprète le texte et les
commandes de formatage qu‟il contient et affiche à l‟écran la page correctement fo rmatée.
Moteur de recherche : Un moteur de recherche est un programme qui indexe le contenu de
différentes ressources Internet, et plus particulièrement de sites Web, qui permet à l‟internaute de
rechercher de l‟information à partir d‟un navigateur Web, selon différents paramètres, en se
servant de mots clés, et qui permet d‟avoir accès à l‟information ainsi trouvée.

IX.4. Types de sites Web [04]


Les sites Web sont difficiles à classer, les limites entre les différents types varient en
fonction de l'objectif et du public visé. En général on retrouve la classification ci-après :
Sites personnels : Se caractérisent par leur manque d'uniformité, leur présentation est liée
aux capacités et aux possibilités de leurs créateurs, qui peuvent être très variés. Evidemment, il
est difficile d'obtenir un tout harmonieux à partir de motifs provenant de styles variés. En ce qui
concerne leur contenu, tous les thèmes sont traités.
Sites d'informations : Ces sites sont axés sur le texte offrant souvent de nombreux liens et
peuvent se composer de plusieurs milliers de pages qui traitent des thèmes différents.
Sites pour présentation d'entreprises : Ils se composent généralement de quelques pages
qui servent à présenter l'entreprise. La présentation est souvent rigide et le sérieux est de rigueur.
Sites "boutiques" : Ce sont des boutiques qui commercialisent leurs produits en ligne en
offrant des informations sur chaque produit.
Sites de bases de données : Ces bases de données présentent leur contenu seulement sur
demande, en remplissant un formulaire de requêtes.
Sites portail : Un portail est une collection de liens qui est conçue autour d'une fonction de
recherche et se compose souvent de contenus prêtés.

IX.5. Pages Web statiques :


Ce sont des pages Web écrites en HTML invariantes, proposées à l‟avance, autrement dit,
à chaque fois qu‟un client affiche une page cette dernière se présente de la même manière tout au
moins tant que le code HTML correspondant n‟a pas été mis à jour par l‟auteur.
Les fichiers de code HTML ne sont pas en mesure d‟interagir avec le serveur. Si par
Exemple, on veut récupérer des informations liées à l‟utilisateur pour les stocker dans
Une base de données, il va falloir mettre en œuvre d’autres
outils capables de supporter ce type d’interaction.
La mise à jour des pages HTML est très difficile et doit s’effectuer
via un éditeur, de nombreux fichiers sont liés et la cohérence des
liens est difficile à gérer.

IX.6. Pages Web dynamiques :


Les lourdeurs de la consultation et la mise à jour des pages
Web statiques ainsi que le faible volume d’informations qu’elles
contiennent ont rapidement conduit les concepteurs à proposer des
«sites Web dynamiques ». Dans ce cas, les pages ne sont pas
fabriquées à l’avance.
Cette composante dynamique peut recouvrir des aspects tels
que la diffusion d’informations évoluant dans le temps ou la
récupération des renseignements saisis par l’utilisateur pour décider
de déclencher telle ou telle autre action.
Les auteurs chargés de la conception de teldonnées ou autre
(que nous allons aborder plus tard).
Voici une liste forcement incomplète des fonctionnalités
dynamiques de base :
 Pages d’accueil pe rsonnalisables.
 Accès à des bases de données.
 Transactions comme rciales.
 Formulaires de renseignements.
 Services d’inscription.
 Annonces journalières.

Conclusion :

Dans ce chapitre nous avons abordé les généralités sur les réseaux, et les différentes
notions liées à l‟internet, intranet, extranet, le client serveur. Elles constituent la base de notre
travail.

Le chapitre suivant sera consacré à la présentation du laboratoire de recherche en génie


civil LAMOMS.
CHAPITRE

2
Présentation du labo
LAMOMS
I. Introduction

Dans ce chapitre nous allons présenter le laboratoire de recherche en génie civil


LAMOMS (Laboratoire de Modélisation Expérimentale et numérique des Matériaux et
Structure en génie civil) ainsi que ses activités dans les différents domaines de génie civil.

II. Présentation du laboratoire de recherche en génie civil (LAMOMS) [doc]

Le laboratoire de recherche en génie civil LAMOMS se rattache à UMMTO, proposé dans


le cadre du programme national de recherche scientifique selon l‟article 10 de la loi 98-11, il a
été crée en mai 2002, en effet ses différentes équipes de recherche travaillent sur divers
thèmes depuis plusieurs années. Ces équipes ont été crées dans le cadre des axes de recherche
CNEPRU (Comités Nationaux d‟Etudes et de Projets de Recherches Universitaires) agrée par
le ministère de l‟enseignement supérieur et de la recherche scientifique.

Les chercheurs sont en majorités des enseignants inscrits en thèse de doctorat ou


magistère. Les équipes sont dirigées par des directeurs de recherches (professeurs) et des
maitres de recherche (maitres de conférences).

Les recherches entreprises ont permit à beaucoup d‟enseignants de soutenir leurs travaux
de thèses. Par conséquent, cela les a aidés d‟évaluer leurs carrières universitaires. Cependant
ce laboratoire est constitué de cinq équipes

 Equipe 1 : Thème : Etude du comportement, endommagement et


vulnérabilité des structures.
 Equipe 2 : Thème : Simulation numérique et expérimentale du comportement
non linéaire des matériaux et structures.
 Equipe 3 : Thème : Etude conceptuelle et mécanique des structures a base de
matériaux composites.
 Equipe 4 : Thème : Comportement rhéologique différé et résistance au feu des
matériaux et structures.
 Equipe 5 : Thème : Application des méthodes numériques et de la théorie de la
plasticité a l‟étude des sols fins hétérogènes et anisotropes
III. organigramme du laboratoire [doc]

Directeur

Chef équipe 1 Chef équipe 2 Chef équipe 3 ……………….. Chef équipe N

Membre 1 Membre 1 Membre 1 Membre 1

Membre 2 Membre 2 Membre 2 Membre 2

Membre N Membre N Membre N Membre N

Figure 1 : Organigramme du laboratoire


IV. Tableau récapitulatif des effectifs existants [doc]

GRADE EFFECTIF 2004 /2005


Professeur 03
Maitre de conférences 03
Chargé de cours 12
Maitre assistants 14
Etudiant chercheurs 12
Personnels de soutien administratif 05
et technique de la recherche
TOTAL 32+12+05

V. Etude et travaux de recherche à réaliser [doc]


 Sécurité des structures en béton armé ou précontraint vis des phénomènes
d‟instabilité de forme.
 La qualité (propriétés rhéologiques) des matériaux utilisés en génie civil (étude
expérimentale et modélisation).
 Calcul et simulation non linéaire des structures tridimensionnelles –
application à la précontrainte extérieure.
 Elaboration des méthodes de conception et des programmes de calcul
spécifiques aux matériaux composites.
 Recherche des outils nécessaires pour la caractérisation de la variabilité des
paramètres géotechniques des sols finis.
 Création d‟une bibliothèque d‟éléments finis. Etude du comportement des
enceintes de stockages des liquides à des températures cryogéniques (basse
température).
 La mise au point d‟un code de calcul numérique, complet, capable de simuler
et d‟analyser le comportement au feu des structures en métal et en béton depuis
la mise en charge jusqu'à l‟effondrement effectif de la structure.
 Etude du comportement au cisaillement des bétons traditionnels et des bétons
renforcés de fibres.
 Mise en équations du comportement dynamique des structures de génie civil.
VI. Objectif de notre application

Les objectifs de notre application peuvent être classés en deux :

 Présentation du laboratoire de recherche en génie civil par le site web à travers


ses différentes rubriques : présentation, équipe de recherche, thème de
recherche etc..., et de contacter le laboratoire pour des suggestions et/ou des
avis personnels.
 L‟objectif principale qui est la gestion du personnelles, des publications et du
fond documentaire du laboratoire.

Conclusion

Ce chapitre nous a permis de prendre connaissance du laboratoire de recherche en


génie civil à savoir ses équipes et thèmes de recherche ainsi que ses objectifs.
CHAPITRE

3
Analyse et conception
Introduction

Notre application consiste à concevoir un site Web dynamique avec un serveur de


transfert de fichiers (serveur FTP) et un serveur de messagerie, pour le laboratoire de
recherche en génie civil LAMOMS. Dans cette partie nous allons présenter les différents
facteurs qu‟interviennent dans la conception de notre application, ainsi que le schéma
générale du site et les structures de données.

I. Démarche suivie

Identification
des acteurs

Partie Conception
Diagramme
des cas
d’utilisation
Identification Diagrammes de
des activités robustesse et de
séquence simple
Diagrammes de
séquence de
réalisation

Diagramme de
Partie analyse et spécification des besoins classe

Figure 1 : Démarche suivie

II. Règle de gestion


Le laboratoire LAMOMS est constitué de plusieurs équipes dont le nombre n‟est pas limité ;
 Chaque équipe travaille sur un et un seul thème.
 Chaque équipe travaille sur un thème pendant une durée qui ne doit pas dépasser 04
ans ;
 Chaque équipe est composée d‟un responsable et d‟un nombre qui n‟est pas limité de
chercheurs ;
 Le directeur du laboratoire peut être responsable d‟une équipe ;
 Le laboratoire doit envoyer un bilan ou rapport concernant les travaux des chercheurs
au ministère chaque fin d‟année (publications).
III. Identification des acteurs de l’application
1. L’administrateur : C‟est le maitre de l‟ouvrage, et c‟est lui qui va s‟occuper de la
gestion du site.
2. Directeur : Il gère les équipes du laboratoire ainsi que l‟affectation des thèmes a ces
équipes.
3. Che rcheur responsable d’une équipe : Considérer comme administrateur de son
équipe. Ainsi, il gère les comptes des chercheurs de son équipe.
4. Les chercheurs : Ce sont les membres du laboratoire dont chacun d‟eux appartient à
une équipe et possède un compte.
5. Visiteur : toute personne connectée au site pour le visiter.

Application web

Visite ur Adm inistr ate ur

Dire cteur Chef é quipe Cher che ur

Figure 2 : Le diagramme de contexte

IV. Identification des différents espaces de l’application


1. Espace administrateur : Cette espace permet à L‟administrateur du site d‟effectuer
les taches suivantes :
 Animer le forum de discussion ;
 Gérer les équipes de recherche ;
 Gérer les thèmes de recherche ;
 Gérer les chercheurs ;
 Gérer les publications ;
 Gérer la documentation.
2. Espace chercheur : Cette espace donne la possibilité aux chercheurs de :
 Voir son profil;
 Changer mot de passe ;
 Faire une publication ;
 Entrer dans sa boite du courrier électronique ;
 Participer dans le forum de discussion ;

3. Espace chercheur responsable d’une équipe :


 Idem espace chercheur et il peut aussi gérer les comptes des chercheurs de son équipe.
4. Espace directeur : Idem que le chercheur et il peut aussi gérer les équipes de
recherche ainsi que les thèmes associés a ces équipes.
5. Espace visiteur : c‟est tout l‟espace dont l‟accès n‟est pas restreint
V. Schéma géné ral du site :

ACCUEIL

Présenta tion Publica tions Conta cts Annuai re A propos Thèmes et


équipes

Administra teur Actuali tés Membres Documenta tion Plan du si te

Gérer la base Chercheur Chercheur chef Di recteur


de données d’équipe

Gérer les Gérer les


Profile Cha nger mot Courrier Ajout Forum équipes thèmes
de passe publi cation

Consul ter Envoyer Ajouter Suppri mer


courrier courrier chercheur chercheur

Figure 3: Schéma général du site


VI. Spécification des scénarios :
Un scénario est une description séquentielle de la manière dont l‟application va être utilisée.
Ils doivent être décrits par les utilisateurs eux même.
Acteur Les tâches Les scénarios
Visiteur T0 : se connecter S0 : saisir l‟URL du site ;
T1 : naviguer dans le site S1 : sélectionner le mode de navigation
T2 : contacter le labo ou un S2 : sélectionner le lien « contacts» ;
chercheur
T3 : voir le plan du site S3 : sélectionner le lien « plan du
site » ;
T4 : chercher par l‟annuaire. S4 : sélectionner le lien « annuaire » ;
T5 : Consulter ou télécharger la S5: sélectionner le lien
documentation ; « documentation »;
T6 : Consulter les informations S6 : Cliquer sur le lien « A propos » ;
sur le site

T7 : Consulter la présentation du S7 : Cliquer sur le lien « présentation » ;


laboratoire
T8 : Consulter les thèmes des S8 : Cliquer sur le lien « thèmes et
différentes équipes équipes » ;
T9 : Voir ou télécharger une S9: Cliquer sur le lien « publication » ;
publication
T10 : consulter les actualités S10: Cliquer sur le lien « actualités » ;
Le chercheur T11 : Authentification S11 : accéder au formulaire
authentification ;
S12 : saisir le login et le mot de passe ;

T12 : Entrer dans le forum S13 : cliquer sur le lien « Forum »


T13: Changer le mot de passe ; S14 : sélectionné le lien « changer le
mot de passe » ;
S15 : Changer le mot de passe ;
T14 : Ajouter une Publication S16 : Sélectionner le lien « Ajout
publication »
S17 : Ajouter la publication.
T15 : consulter et répondre au S18 : Cliquer sur le lien «courrier » ;
courrier électronique ; S19 : sélectionné lien « boite de
réception »pour visualiser les nouveaux
messages ;
S20: cliquer sur le lien « nouveau
message »et remplir le formulaire de
réponses et l‟envoyer ;
Chercheur chef T16 : Idem que le chercheur ; S21: Idem que les scénarios du
d‟équipe chercheur ;
T17: Créer le compte chercheur ; S22: Cliquer sur le lien « Ajouter » ;
S23: Remplir le formulaire de création ;
T18: Supprimer un compte S24 : cliquer au lien « Supprimer »;
chercheur ; S25 : Sélectionner le login du chercheur
à supprimer;

Directeur T16 : S21 :

T19 : Gérer les équipes de S26 : Cliquer sur le lien « équipe »


recherche ; S27 : Cliquer sur ajouter pour ajouter
une équipe ou sur supprimer pour
supprimer une équipe.
T20 : Gérer les thèmes de S28 : Cliquer sur le lien « thèmes ».
recherche ; S29 : Affecter un thème de rechercher a
une équipe ou supprimer un thème de
recherche d‟une équipe.
Administrateur T11 : S11, S12 ;
T20 : gérer la base de données S30 : Cliquer sur le lien correspondant a
une table dans la base de données et
effectuer les opérations possibles
(afficher, modifier, ajouter et
supprimer) ;
IV.1. Spécification des cas d’utilisations [5]

Les cas d‟utilisations permettent de représenter les interactions entre l‟utilisateur et


l‟application. Il est composé de scénarios qui décrivent la même tache en incluant toutes les
informations dans des scénarios regroupés.

On représentera ci-dessus une description de quelques cas d‟utilisations


 Cas d’utilisation : « identification d’un chercheur »
Use case : Identification d‟un chercheur
Scénarios : S11, S12
Rôle : Chercheur :
 Le chercheur clique sur le lien « membres ».
 L‟application lui renvoie le formulaire à remplir.
 Le chercheur choisie la catégorie « chercheur » puis saisie un login et un mot de passe
valide
 L‟application redirige le chercheur vers son propre espace.

 Cas d’utilisation « Créer compte che rcheur »

Use case : Créer compte chercheur.

Scénarios : S22, S23

Rôle : Chercheur chef d‟équipe :

 Le chercheur chef d‟équipe sélectionne le lien « Ajouter ».


 L‟application lui renvoie un formulaire à remplir avec les références de chercheur.
 Le chercheur chef d‟équipe saisie les références du chercheur et soumet
Le formulaire a l‟application.
 L‟application lui retourne un message de confirmation.

 Cas d’utilisation « change r le mot de passe »


Use case : Changer le mot de passe
Scénarios S14, S15
Rôle : Chercheur et chercheur chef d‟équipe et le directeur.
Description :
 Le chercheur, le chercheur chef d‟équipe ou le directeur atteint son interface et clique
sur le lien « changer le mot de passe ».
 L‟application lui affiche le formulaire de changement du mot de passe.
 Le client remplit le formulaire et soumet la requête.
 L‟application lui revoie un message de confirmation si le mot de passe a été bien
changé, sinon elle affiche un message d‟erreur.

 Cas d’utilisation « Gérer la base de données »


Use case : Gérer la base de données
Scénarios : S26, S27
Rôle : Administrateur
Description :
 L‟administrateur clique sur le lien correspondant à une table de la base de données.
 L‟application lui revoie la table a modifiée.
 L‟administrateur consulte, modifie, ajoute, ou supprime les enregistrements les tables
de la base de données.

Documentation A propos
Présentation
Contacts
« Extend »

« Extend »
« Extend »

« Extend »

« Extend » Actualités
Annuaire « Extend »

« Extend » Visiter le site du laboratoire « Extend » Publications


Plan du site

Thèmes et équipes
« Extend »

»»»
« Uses »
« Extend »
Membre
« Extend » Administrateur

Accéder à la page d’accueil

Visiteur

Ajout
publication
Courrier
Changer mot de

«Extend »

« Extend»
« Extend »

passe

Accéder a l’interface chercheur « Extend »


Forum
« Include »

Chercheur
« Uses »

Profil

Authentification

Accéder a l’interface chercheur « Extend» Ajout


chef d’équipe chercheur
Chercheur chef d’équipe

« Extend» Supprimer
chercheur

Accéder a l’interface
Directeur
Directeur

Ajoute/ Supprimer « Extend » Ajoute/ Supprimer


« Extend »
une équipe un thème
Accéder a l’interface «Uses »
Authentification
Administrateur Administrateur

»»
« Uses
Gérer la base de données

« Extend » Ajouter un
« Extend»

enregistrement

« Extend » Supprimer un
enregistrement
Consulter et ou
modifier une table

Figure 4: Diagramme des cas d’utilisation général.

VII. L’analyse [05]


L‟analyse est une activité qui débute par l‟examen des diagrammes des cas d‟utilisations et
leurs scénarios ainsi que les besoins fonctionnels du système. Elle aboutit à un modèle
d‟analyse constitué d‟un certain nombre de diagrammes de séquences, de robustesses avec des
objets et des classes d‟objets du domaine considéré. L‟abstraction avec laquelle leurs
spécifications sont faites implique une dépendance de l‟architecture utilisée.

 Les objets d’interface (boundary) [05]

Un objet interface représente l‟interface entre l‟acteur et le système tels des pages Web
complètes dans le cas des applications Web ou les écrans de saisie.

L’icône :

 Les objets entité : [05]


Ils sont des objets décrits dans un certain cas d‟utilisation et qui se trouvent dans d‟autres cas
d‟utilisation.

L’icône :

 Les objets de contrôle : [05]

Il représente les activités des processus du système .Ils dirigent les activités des objets entité
et interface. Ces objets sont obtenus en isolant les verbes des cas d‟utilisations, quant aux
noms, ils donneront naissance à des objets entité.

L’icône :

VII.1. Diagramme de robustesse et diagramme de séquence : [06]

Un diagramme de séquence représente des échanges de messages entre objets. Il permet de


mieux visualiser la séquence des messages par une lecture de bas en haut .L‟axe vertical
représente le temps, et l‟axe horizontal représente les objets qui collaborent. Une ligne
verticale en pointillé est attachée a chaque objet et représente sa ligne de vie.

A chaque diagramme de robustesse correspond un diagramme de séquence qui contient la


reformulation du texte de cas d‟utilisation déjà décrit par des scénarios.

Dans les diagrammes de classe les associations entre objets doivent respecter un certain
nombre de règles qui sont les suivantes:

 Les acteurs n‟interagissent qu‟avec les objets interface.


 Les objets contrôle interagissent avec tous les autres objets.
 Les objets entité n‟interagissent qu‟avec les objets contrôle.

Nous allons représenter ci-après quelques cas d‟utilisation :


1. Identification d‟un chercheur.
2. Créer compte chercheur.
3. Changer le mot de passe.
4. Gérer la base de données.

VII.1.1. Cas d’utilisation « identification d’un che rcheur » :

Ce cas d‟utilisation contient les objets suivants :


Objets interface :

 Page d‟accueil
 Formulaire d‟identification.
 Page de confirmation.

Objets de contrôle :

 Identifier chercheur.

Objet entité :

 Identification de chercheur.
 Diagramme de robustesse :

Page
d’accueil

Identifier
Chercheur Chercheur Identification Chercheur
chercheur

Page confirmation

Figure 3: Diagramme de robustesse du cas d‟utilisation « identification chercheur »

 Diagramme de séquence :
Figure 5: Diagramme de séquence du cas d‟utilisation « Identification d’un
chercheur »

(I) Le chercheur atteint la page d‟accueil puis sélectionne le lien « Membre »


(II) Le système affiche le formulaire d‟identification
(III) Le chercheur remplit le formulaire d‟identification
(IV) Le système vérifie l‟identification du chercheur et lui affiche sa propre interface.

VII.1.2. Cas d’utilisation « Gérer un compte chercheur » :

Ce cas d‟utilisation contient les objets suivants :

Objets interface :

 Page chercheur chef d‟équipe


 Formulaire de création de compte chercheur
 Page confirmation
Objets de contrôle :

 Créer compte chercheur

Objets entité :

 Compte chercheur

 Diagramme de robustesse

Chercheur
Chef d’équipe

Figure 6: Diagramme de robustesse du cas d‟utilisation « Créer un compte che rcheur »

 Diagramme de séquence :
Figure 7 : Diagramme de séquence du cas d‟utilisation « créer un compte chercheur ».

(I) Le chercheur chef d‟équipe atteint sa propre page d‟accueil puis sélectionne le lien
« Ajouter ».
(II) Le système affiche le formulaire pour créer un compte chercheur.
(III) Le chercheur chef d‟équipe saisit les références du chercheur et soumet le formulaire.
(IV) Le système vérifie et créer le compte chercheur et confirme la création.

VII.1.3. Cas d’utilisation « change r mot de passe » :

Ce cas d‟utilisation contient les objets suivants

Objet interface :
 Formulaire d‟authentification
 Page chercheur
 Formulaire changer mot de passe.
 Page confirmation de changement de mot de passe.

Objets de contrôles :
 Vérifier authentification.
 Modifier mot de passe.
Objets entités :
 Mot de passe chercheur.

 Diagramme de robustesse :

Figure 8: Diagramme de robustesse du cas d‟utilisation « Modifier mot de passe ».

 Diagramme de séquence :
Figure 9: Diagramme de séquence du cas d‟utilisation « changer mot de passe ».

(I) Le chercheur atteint sa propre interface puis sélectionne le lien « changer mot de
passe ».
(II) Le système affiche le formulaire « changer le mot de passe ».
(III) Le chercheur remplie le formulaire « changer le mot de passe ».
(IV) Le système vérifie et modifier dans la base de données le mot de passe et construit
un message de confirmation et l‟affiche.

VII.1.4. Cas d’utilisation « modifier un chercheur » :

Ce cas d‟utilisation contient les objets suivants :

Objets interface :

 Formulaire de modification d‟un chercheur


 Page confirmation

Objet de contrôle :

 Vérifier et modifier le chercheur


 Enregistrer chercheur

Objets entités :

 Chercheur

 Diagramme de robustesse

Figure 10: Diagramme de robustesse pour le cas d‟utilisation « Gére r la base de données »

Exemple « Modifier che rcheur ».

 Diagramme de séquence :
Figure 11: Diagramme de séquence du cas d‟utilisation «Gé rer la base de données »
Exemple : Modifier chercheur.

(I) L‟administrateur atteint la page du formulaire, il clique sur modifier Le remplir


ensuite il clique sur Enregistrer.
(II) Le système modifie le chercheur et vérifie ensuite les informations saisies.
(III) Le système enregistre le chercheur avec les modifications apportées.
(IV) Le système confirme la modification.

VIII. La conception : [06]

La conception prend en compte les choix d‟architecture technique retenue pour le


développement et l‟exploitation du système .La conception permet d‟étendre la
représentation des diagrammes effectuée au niveau de l‟analyse en y intégrant les aspects
techniques plus proche et préoccupations physiques.

VIII.1. La conception d’application we b : [05]


La conception d‟application Web se distingue de la conception des autres
systèmes par deux activités majeurs à savoir la répartition des objets sur le client et le serveur
et la définition de l‟interface utilisateur sous forme de page Web.

VIII.2. Réalisation des cas d’utilisation :

Cette étape consiste en la transformation des objets d‟interface et de contrôle en page client et
serveur.

VIII.2.1. Diagrammes de séquences élaborées des cas d’utilisations :

 Identification d’un chercheur

Formulaire
Page Vérifier / Page
d’identification Chercheur
Chercheur accueil Confirmer confirmation

Le chercheur atteint Atteint


la page d‟accueil
Sélection
puis sélection le
lien« Membres »

Le système affiche le
Affiche
formulaire
d’identification

Le chercheur remplit
le formulaire Saisie Soumet
d‟identification

Vérifie/confirmer
Le système vérifie
l‟identification du
chercheur et lui Construit
affiche sa propre Affiche
interface

Figure 12: diagramme de séquence élaboré du cas


d‟utilisation « Identification d’un chercheur »

 Créer un compte chercheur


Pa ge
Formulaire
chercheur
Chercheur chef Créer compte Vérifier Chercheur chef
chef d’équipe d’équipe chercheur /Créer équipe

Le chercheur chef
Page
confirmation

Figure 13: diagramme de séquence élaboré du cas


d‟utilisation « Créer un compte chercheur »
 Change r le mot de passe

Formulaire
Page Changer mot Vérifier / Page
Chercheur chercheur de passe Modifier Chercheur confirmation

Le chercheur atteint Atteint


sa propre interface
puis sélection le lien Sélection
« Changer mot de
passe »

Le système affiche le Affiche


formulaire « Changer
mot de passe »

Le chercheur remplit
Saisie Soumet
le formulaire
« changer mot de
passe

Vérifie/Modifier
Le système vérifie et
modifie dans la BD le
Construit
mot de passe,
Affiche
construit un message
de confirmation et
l‟affiche

Figure 14 : diagramme de séquence élaboré du cas


d‟utilisation « Changer le mot de passe»
 Gérer la base de données

Formulaire Modifier/
Enregistre Page
modifier Vérifier
Chercheur chercheur confirmation
Administrateur chercheur dans la BD

L administrateur
atteint la page du Atteint
formulaire, clique
sur modifier le Soumet
remplit puis clique
sur enregistrer
Modifier/
Le système modifier
Vérifier
le chercheur et vérifier
en suite les
informations saisies

Le système enregistre Enregistre


le chercheur avec les
modifications
apportées

Le système confirme
la modification Construit
Confirmation

Figure 15: diagramme de séquence élaboré du cas d‟utilisation « gé rer la base de données»

Exemple : modifier un chercheur


VIII.2.2. Les diagrammes de classe : [06]

La classe est un ensemble d‟objets ayant les mêmes caractéristiques

Représentation graphique de classe : [06]


Nom de classe

Attributs

Operations ()

Un diagramme de classe représente la structure statique d‟un système. Il contient des classes
et leurs associations et éventuellement des objets. L‟intérêt majeur des diagrammes de classe
est de modéliser les entités d‟un système.

L‟ensemble des classes est partitionnés en quatre composants :

 Classes entités : Elles permettent de modéliser toutes les informations que l‟on veut
gérer
 Les classes acteurs : Elles représentent les rôles attribués.
 Les classes processus : Elles permettent de répertorier les activités organisées pour
accomplir les missions.
 Autres processus : Cette catégorie regroupe toute les classes qui ne sont ni acteur ni
processus

Apres les diagrammes de séquence des différents cas d‟utilisations représentés, nous allons
passer aux diagrammes de classes généraux puis détaillés qui représentent une vue logique
des objets.

 Diagramme de classe générale du cas d’utilisation « identification d’un


chercheur

Formulaire
Page « Link »
d’identification
d’accueil
chercheur

« Submit»

« Build» « Build»
Page confirmation Vérifier /Confirmer Page d’erreur
 Diagramme de class générale du cas d’utilisation « Créer un compte chercheur»

Page chercheur « Link


Link»» Formulaire
chef d‟équipe création compte
chercheur

« Submit»

« Build» « Build»
Page confirmation Vérifier /Créer Page d‟erreur

 Diagramme de class générale du cas d’utilisation « Changer mot de passe»

, « Link»
Page Formulaire « Submt» Vérifier/ «Build»
chercheur changer mot Modifier
de passe

« Redirect»

« Build» Construit
Page d‟erreur Page
Page
message erreur confirmation
confirmation
 Diagramme de class générale du cas d’utilisation « Gérer la base de données»

« Link » « Submit » Modifier/


Page Formulaire
Vérifier
Administrat Modifier
dans la BD
-eur chercheur

Page «Build » Enregistrer «Redirect»


confirmation chercheur

 Diagramme de classe détaillé du cas d’utilisation « Identification d’un


chercheur » :

« Client page » « form » « Server page »


Page d’accueil Formulaire Identification
« link » D’identification « submit »

Verifierentrer()
Valider-id()

« redirect »

« Client page» « Server page »


Page chercheur Préparation de la
« build » page chercheur.
 Diagramme de classe détaillé du cas d’utilisation « modifier le mot de passe »

« Client page » « form » « server page »


Page chercheur « link » Modifier mot de passe Modifier
« input » Id_chercheur « Submit » Id_chercheur
« input » mot de Mot pass
passe Verifier_info()
« submit » entrer Eregistrer()
Afficher()

« redirect » « Build »
« server page »
« Client page » « Build » Construit
Erreurb réécriture message erreur
incorrecte du mot de « Client page »
Message
passe Page
confirmation
Afficher_erreur()
 Diagramme de classe détaillé du cas d’utilisation « créer un compte chercheur »

« Client page » « Form» « Server page»


Page d’accueil Formulaire Message d’erreur
« Link » d’identification
« redirect »

Valider-id()

« Build »
« Submit »

« Client page »
« Server page » Page d’erreur
« Server page »
Préparation de la page
« redirect » Identification
chercheur chef d’équipe

Verifier entrer()

« Build »

« Client page » « Server page » « Client page »


« Submit »
Page chercheur chef Création d’un compte Page d’erreur
d’équipe chercheur « Build »

Parcourir_BD()

« link »
« Build »

«Form» «Client page »


Formulaire de création Message de
compte chercheur confirmation
 Diagramme de classe détaillé du cas d’utilisation « Gére r la base de données »
Exemple : Modifier un compte chercheur :

« Client page » « Form » « Server page »


MAJ chercheur « link » Formulaire modifier « Submit » Modifier
chercheur
Id_ch
« imput » Id_ch

Vérification

« redirect »

Membre

« Server page »
Enregistrer

Client page »
Id_ch
Page confirmation « Build »
Enregistrer()

 Le lien « Link »

C‟est une association entre page client et une page client ou serveur.

 Le Construit « Build »

L‟association « Build » identifie quelques pages serveur et responsable de la creation d‟une


page client.

Une page serveur peut construire plusieurs pages clients.

Une page client ne peut être construite que par une page serveur.

 Le lien « Redirect » :

Une relation « Redirect » qui est une association unidirectionnelle avec une autre page Web,
peut être dirigée à partir d‟une page client ou serveur.

IX. La conception de la base de données :

Les diagrammes de cas d‟utilisation, de séquence, de classe générales et de classes


détaillées ci-dessus modélisent notre application. La modélisation avec ces diagrammes
surtout les diagrammes de classes détaillées nous a permet de nous rendre compte de la
nécessite de certaine données pour le fonctionnement de l‟application. La base de données
Que nous avons crées est constituée de plusieurs tables do nt les plus significatives dans le
laboratoire sont représenter ci- dessous :

Le modèle conceptuel de données

thème faq_reponse faq_question

id_thème idrep id
1,1

1,1 1,1 1,1


publication
Ajouter Répondre
Travaille
Id_pub
0,N 0,N
1,N cherheur
equipe
Id_membre
1,1 Id_equipe 1,N 1,1
Appartient 1,1
0,N
faire
1,1

supervise
chef equipe directeur
1,1

1,N 1,N
gérer 1

gérer 2

Figure 16 : Le MCD
Le schéma relationnel

equipe (id_equipe, nom_resp, prenom_resp).

me mbre (id_membre, nom, prenom, grade, qualite, domaine_de_competence, num_equipe,


etablissement_de_rattachement, login, pass, E_mail ).

publication (id_pub, titre, type, id_membre).

thè me (id_thème, intitule, num_equipe).

faq_question (Id, auteur, sujet, text, date).

faq_reponse (idrep, auteurrep, textrep, daterep).

Le modèle physique de données :

 Table « equipe »
Champ Signification Type
Id_equipe Identifiant équipe Int(6) clé primaire
nom_resp Nom du responsable de Varchar(25)
l‟équipe
prenom_resp Prénom du responsable de Varchar(25)
l‟équipe

 Table « chercheur »
Champ Signification Type
id_membre Identifiant membre Int(6) clé primaire
nom Nom du membre Varchar(25)
prenom Prénom du membre Varchar(25)
grade Grade du membre Varchar(50)
qualite enum('CE','CP','M')
domaine_de_competence domaine de compétence Varchar(50)
num_equipe Numéros de l‟équipe du Int(6) clé étrangère
membre
etablissement_de_rattachement Etablissement de Varchar(100)
rattachement
login Login du membre Varchar(50)
pass Mot de passe du Varchar(15)
membre
E_mail E_mail du membre Varchar(50)

 Table « publication »
Champ Signification Type
id_pub Identifiant publication Int(6) clé primaire
titre Titre publication text
type Type publication enum('national','international')
id_membre Identifiant du membre Int (11) cl étrangère
 Table « thè me »
Champ Signification Type
id_thème Identifiant du thème Int(6) clé primaire
Intitule Intitulé du thème varchar(25)
num_equipe Numéros de l‟équipe qui Int(6) clé étrangère
travail sur le thème

 Table « faq_question »
Champ Signification Type
Id Identifiant de la question Int(6) clé primaire
auteur Login de l‟auteur varchar(50)
sujet Sujet de la question varchar(100)
text Contenue de la question longtext
date Date de la soumission de la datetime
question

 Table « faq_reponse »
Champ Signification Type
idrep Identifiant de la réponse Int(6) clé primaire
auteurrep Login du répondant varchar(50)
textrep Contenue de la longtext
daterep Date de la réponse datetime

Conclusion :

A la fin de ce chapitre, on aura cerné toutes les informations manipulées par les différents
utilisateurs de notre application (l‟administrateur, les chercheurs, le chercheurs chefs
d‟équipes, le directeur du laboratoire et les visiteurs), il ne reste qu‟a mettre en œuvre une
plate forme pour la réalisation de notre application. Ce que sera l‟objet de notre chapitre
suivant.
CHAPITRE

4
Réalisation
Introduction

On s‟intéressera dans ce chapitre à l‟implémentation de notre future application, et


pour cela nous décrivons d‟abord l‟environnement et les outils de développement de notre
application, ensuite nous présentons un exemple des différentes interfaces de cette dernière
ainsi que les fonctionnalités qu‟elles regroupent.

I. Architecture de notre application


L‟application comporte trois niveaux, analogue à l‟architecture trois tiers du modèle
client serveur. L‟architecture de notre application peut être représentée graphiquement
comme suit :

Serveur
Serveur Web API BDD

(Apache)

API Serveur
Requête Module FTP
HTTP php
Réponse

WWW
Serveur
Serveur
API
SMTP
BDD

(mysql)
Premier niveau Deuxième niveau Troisième niveau

Figure 1 : l‟architecture du déploiement de l‟application.

Premier niveau : il comprend le navigateur qui interprète et affiche les interfaces utilisateur
relatives aux différents services de l‟application ;

Deuxième niveau : le deuxième niveau est constitué d‟un serveur Web Apache doté de
module PHP (l‟interpréteur PHP est installé comme module Apache) ;

Troisième niveau : le troisième niveau est composé d‟un serveur de base de données
(MYSQL) performant souple et disposant d‟un jeu de commande s SQL large, un serveur FTP
qui assure un transfère de fichiers rapide et un serveur SMTP qui permet l‟échange de
messages.
I.2. L’environnement de développement

I.2.1. Langages de programmation

Pour satisfaire les besoins de l‟application à réaliser, nous avons utilisé les langages
suivants :

 Le langage HTML : pour la création des pages statiques de l‟application qui


constitueront l‟interface utilisateur.
 Le langage de requête SQL : pour l‟élaboration des requêtes d‟interrogation de la
base de données.
 Le langage de script côté client java script : pour les contrôles des informations au
niveau client.
 Le langage de script PHP : pour la partie dynamique du site. Il constitue le langage
pilier de l‟application, c'est-à-dire, que c‟est sur lui que reposent le dynamisme de
l‟application, c‟est la raison pour la quelle nous allons mieux le détailler dans ce qui suit :

I.2.1.1. PHP [07]

PHP (Hypertext Preprocessor) est un langage de script côté serveur, c‟est à dire que les
scripts sont exécutés avant que la page ne soit envoyée au navigateur, Ses principaux
avantages sont :

 PHP est facile à utiliser, il permet de créer avec un minimum d‟efforts des pages Web
dynamiques destinées aux applications Internet multimédia et de E-commerce.

 PHP est multiplateforme, il existe pour les différentes versions de Windows, Unix et
Linux, ainsi que pour de nombreux serveurs Web dont APACHE et IIS (Internet Information
Services).

 PHP est libre, donc « OPEN SOURCE », on peut ajouter de nouvelles fonctionnalités
sans attendre une nouvelle version.

 PHP utilise le moteur de scripts Zend, qui améliore la rapidité de traitement

 PHP a été conçu pour fonctionner sur le Web, la connexion et l‟interrogation d‟une
base de données sont extrêmement simples (peuvent être accomplies en deux ou trois lignes
de code).

 La plus grande qualité et le plus important avantage du langage PHP est le support
d‟un grand nombre de bases de données (plus de 20). PHP possède des fonctions ODBC,
permettant de s‟interfacer de manière conviviale à toute base de données ODBC (Open Data
Base Connectivity).

 Avec plus de 1200 fonctions utilisables dans des applications très variées, PHP couvre
pratiquement tous les domaines en rapport avec les applications Web.

I.2.1.2. Structure d’une page PHP [07]

Le code PHP fait partie intégrante de la page HTML, il est inclus entre :
 < ? PHP ………instruction …….. ?>
 < ? php ……….instruction …….. ?>
 < ? ……..instruction …….. ?>
 < % ……..instruction …….. %>
 < script langage= « PHP » >
………….instruction………..
< / script>

Ce code permet au navigateur de passer en mode PHP.

<HTML>

<HEAD>

….

Script s’exécutant dans le navigateur


<script language=’’JavaScript’’> pendant l’interprétation de la page

..…code java script…..


Section HTML normal

</script> Code PHP s’exécute sur le serveur avant


l’envoi de la page

</HEAD>

<BODY>

Code HTML normal

< ?php

…instructions Php…

?>
IL est à noter la différence avec :

 Les autres langages de scripts coté serveur tels que le Perl ou les servelets Java, qui
doivent écrire un programme avec de nombreuses lignes de commandes afin d‟afficher une
page HTML, alors qu‟ on écrit une page HTML avec du code PHP inclus à l‟intérieur.

 Les autres langages de script coté client comme le Java script sont exécutées par le
navigateur, alors que le code PHP est exécuté sur le serveur. Si on a un script PHP sur un
serveur, le client ne reçoit que le résultat du script, sans aucun moyen d‟avoir accès au code
qui a produit ce résultat.

I.2.1.3. Fonctionnement du PHP [07]

Le serveur Web reconnaît à l‟extension des fichiers, différente de celle des pages HTML
simples, si le document appelé par le client comporte du code PHP.

 Le serveur Web lance l‟interpréteur PHP ;

 L‟interpréteur PHP traduit le document demandé et exécute le code source de la page ;

 Les commandes figurant dans la page sont interprétées et le résultat prend la forme
d‟une page HTML publiée à la place du code source dans le même document ;

 La page modifiée est envoyée au client pour y être affichée par le navigateur.

De cette façon la page Web est crée dynamiquement, c‟est à dire au moment même ou le
client y accède. Cela permet donc de modifier la page avant qu‟elle ne soit envoyée au client
en fonction de dialogue avec l‟utilisateur.
I.2.2. Outil de développe ment

I.2.2.1. Serveur We b Apache [3]

L‟ancêtre d‟apache est le serveur libre développé par le (National Center for Supercomputing
Applications) de l‟université de l‟Illinois. L‟évolution de ce serveur s‟est arrêtée lorsque le
responsable a quitté le NCSA en1994, les utilisateurs ont continué à corriger les bugs et à
créer des extensions qu‟ils distribuaient sous forme de "patches " (bouts de programmes
ajoutés par les utilisateurs des NCSA pour étendre les fonctionnalités d‟Apache) d‟où le
nom "a patch.
Nous choisissons et présentons ce serveur par les avantages qu‟il offre et que nous allons
détailler ci-après :

 c‟est un serveur gratuit (peut être téléchargé à partir du site du groupe Apache à
l‟adresse „http://www.apache.org‟).
 un niveau élevé de performances pour des besoins matériels modestes.
 extensible, modulaire et configurable.
 robuste.
 très portable contrairement à IIS (Internet Information Services) de Microsoft qui
tourne seulement sous Windows, le serveur Web Apache dispose d‟une version pour chaque
plate forme (Linux, Windows,…).
I.2.2.2. Serveur MySQL [07]

I.2.2.2.1. MySQL

Est un véritable serveur de bases de données SQL multiutilisateurs et


multitraitements. Cela permet d‟établir des connexions rapides et d‟utiliser la même mémoire
cache pour plusieurs requêtes.
MYSQL est une configuration Client –Serveur ce qui consiste en un serveur démon
MySQLd, différents programmes clients et des librairies.

MYSQL est basé sur une bibliothèque de gestion de données éprouvées depuis de
nombreuses années et faisant appel à des index d‟arbres binaires. Grâce à cela, le cœur du
système peut afficher une performance remarquable, tout particulièrement dans les accès
indexés.

Les principaux objectifs de MYSQL sont la rapidité, la robustesse, et la facilité


d‟utilisation.

I.2.2.2.2. Fonctionnalités de MySQL

La liste suivante décrit quelques fonctionnalités importantes de MYSQL :

 Multitraite ment : MySQL est multitraitement en utilisant les threads du noyau. Il


peut utiliser plusieurs CPU

 Langues : Le serveur peut fournir au client les messages d‟erreurs en plusieurs


langues.

 APIs : Les applications de bases de données MySQL peuvent être écrites en C, C++,
Eiffel, JAVA, PERL, PHP, PYTHON et TCL.

 Multi plateformes : Prise en charge de plus de 20 plates- formes de système


d‟exploitation Win95/98, NT UNIX et LINUX.
 Tables : MySQL stocke chaque table sous forme de fichier distinct dans le répertoire
de la base de données. La taille maximale d‟une table comprise entre 4Go est la taille
maximale de fichier acceptée par le système d‟exploitation. Le mélange des tables de
différentes bases de données est supporté dans une même requête.

 Système de droits flexibles et sécurisé : Système de droits flexible et sécurisé de


mots de passe, et qui autorise une vérification faite sur l‟hôte : le serveur détermine l‟identité
du client grâce à l‟hôte depuis laquel il se connecte et le nom d‟utilisateur qu‟il spécifie. Puis,
l‟associer avec les droits d‟utilisation des commandes „select‟, insert, update et „delete‟ sur
cette base (le serveur vérifie chaque requête émise pour voir si elle est autorisée). Les mots de
passe sont sécurisés depuis que la gestion des mots de passe est cryptée entre le client et le
serveur.

 Rapide, Robuste et Convivial : MySQL est de trois à quatre fois plus rapide que la
plupart des autres bases de données commerciales : les fonctions SQL sont implémentées à
travers des classes de librairies extrêmement optimisées. En général, il n‟y a plus d‟allocation
mémoire après une requête d‟initialisation.

Les développeurs de MySQL utilisent MySQL depuis 1996 dans un environnement de plus de
40 bases de données contenant 10000 tables, dont plus de 500 contiennent plus de 7 millions
d‟enregistrements. C‟est environ 100 Giga Octets de données critiques.

Sa gestion est aisée puisqu‟elle ne nécessite pas des compétences poussées en administration
de bases de données

 Economique : MySQL est un SGBD, « OPEN SOURCE ».

I.2.2.3. Le Serveur FTP File Zilla [1]

Le File Transfer Protocol (protocole de transfert de fichiers), ou FTP, est un


protocole de communication destiné à l'échange informatique de fichiers sur un réseau
TCP/IP. Il permet, depuis un ordinateur, de copier des fichiers vers un autre ordinateur du
réseau, d'alimenter un site web, ou encore de supprimer ou de modifier des fichiers sur cet
ordinateur.

La variante de FTP protégée par les protocoles SSL ou TLS (SSL étant le prédécesseur
de TLS) s'appelle FTPS.

FTP obéit à un modèle client-serveur, c'est-à-dire qu'une des deux parties, le client,
envoie des requêtes auxquelles réagit l'autre, appelé serveur. En pratique, le serveur est un
ordinateur sur lequel fonctionne un logiciel lui- même appelé serveur FTP, qui rend public une
arborescence de fichiers similaire à un système de fichiers UNIX. Pour accéder à un serveur
FTP, on utilise un logiciel client FTP (possédant une interface graphique ou en ligne de
commande).

Le protocole, qui appartient à la couche session du modèle OSI et à la couche


application du modèle ARPA, utilise une connexion TCP. Il peut s'utiliser de deux façons
différentes :

1. Mode actif : c'est le client FTP qui détermine le port de connexion à utiliser pour
permettre le transfert des données. Ainsi, pour que l'échange des données puisse se faire, le
serveur FTP initialisera la connexion de son port de données (port 20) vers le port spécifié par
le client. Le client devra alors configurer son pare-feu pour autoriser les nouvelles connexions
entrantes afin que l'échange des données se fasse. De plus, il peut s'avérer problématique pour
les utilisateurs essayant d'accéder à des serveurs FTP lorsqu'ils sont derrière une passerelle
NAT (Network Adresse Translation). Étant donnée la façon dont fonctionne le NAT, le
serveur FTP lance la connexion de données en se connectant à l'adresse externe de la
passerelle NAT sur le port choisi. Certaines passerelles NAT n'ayant pas de correspondance
pour le paquet reçu dans la table d'état, le paquet sera ignoré et ne sera pas délivré au client.
2. Mode passif : le serveur FTP détermine lui- même le port de connexion à utiliser pour
permettre le transfert des données (data connexion) et le communique au client. En cas de
présence d'un pare- feu devant le serveur, celui-ci devra être configuré pour autoriser la
connexion de données. L'avantage de ce mode, est que le serveur FTP n'initialise aucunele
client initialise et communique directement par le port 21 du serveur; cela permet de

simplifier les configurations des pare- feu serveur.

V.2.2.4. Le Serveur SMTP Mercury[2]

Mercury est un produit gratuit (Freeware), c‟est un serveur de messagerie de type


POP3 et SMTP pour INTRANET, INTERNET et liaison DIALUP (accès à INTERNET non
permanent, par modem ou routeur par exemple). Il peut gérer une boîte de domaine (Domain
Box).

Une boîte de domaine est une boîte par exemple de type societe.herbergeur.fr voir
même societe.fr. Ou société est le nom de l‟entreprise qui désire avoir une boite de domaine
et hébergeur, le nom de votre fournisseur d‟accès.

A intervalle régulier (à définir selon les besoins), un serveur (comme MERCURY par
exemple) va chercher le courrier sur CIEL et le redistribue dans les différentes boîtes E-Mail.

Le serveur profite pour envoyer également le courrier en partance pour INTERNET


(dépôt du courrier sur CIEL).

L‟avantage de ce système c‟est que on peut créer autant de boites qu‟ont désire
puisque c‟est sur le serveur de messagerie interne que sont créés les comptes. De plus chaque
utilisateur ne se connecte pas dans son coin sur INTERNET pour aller relever son E-Mail,
c‟est le serveur de messagerie qui relève le courrier à heure fixe ou à intervalles réguliers…

Si une boîte n‟existe pas, le serveur de messagerie interne répond à l‟expéditeur du


message que l‟adresse n‟existe pas, néanmoins, le postmaster (l‟administrateur du serveur de
messagerie) a une trace de ces erreurs et peut ré-aiguiller vers une personne ou un service le
message dont l‟entête n‟était pas correcte.

I.2.2.5. XAMPP

XAMPP est un utilitaire qui Install et configure automatiquement un environnement


de travail complet pour le développement et le teste de notre application. Il regroupe un
serveur web apache, un serveur FTP (FileZilla), un serveur de messagerie SMTP(Mercury),
un serveur de base de données MySQL et le langage PHP ainsi que des outils qui facilitent le
développement tel l‟administrateur de bases de données MySQL, PhpMyAdmin.

I.2.2.5.1. Installer XAMPP [3]

Figure 2: Fenêtre d‟installation de XAMPP.

L'assistant d'installation de XAMPP win32. Quand l'installation est complétée, vous trouverez
XAMPP sous Démarrer / Programmes / XAMPP. Grâce au panneau de contrôle XAMPP,
vous pouvez démarrer/arrêter chacun des serveurs et installer/désinstaller les services.
I.2.2.5.2. Lancer XAMPP [3]

Figure 3: Panneau de contrôle de XAMPP

Le panneau de contrôle XAMPP pour arrêter/démarrer Apache, MySql, FileZilla et


Mercury ou installer ces serveurs en tant que services

On peut aussi utiliser les scripts suivants :


Démarrage Apache & MySQL : .\xampp\xampp_start.exe
Arrêt Apache & MySQL : .\xampp\xampp_stop.exe
Démarrage Apache : .\xampp\apache_start.bat
Arrêt Apache : .\xampp\apache_stop.bat
Démarrage MySQL : .\xampp\mysql_start.bat
Arrêt MySQL : .\xampp\mysql_stop.bat
Démarrage Mercury Mailserver : .\xampp\mercury_start.bat
Arrêt Mercury : utilisez l'interface graphique
Configuration FileZilla : .\xampp\filezilla_setup.bat
Démarrage FileZilla : .\xampp\filezilla_start.bat
Arrêt FileZilla : .\xampp\filezilla_stop.bat

Pour tester : après le démarrage d'Apache, visitez http://localhost ou http://127.0.0.1 et


examinez tous les exemples et outils XAMPP.

Figure 4: Page d‟accueil XAMPP.

I.2.2.5.3. Installation d'un des serveurs en tant que service [3]


Vous pouvez installer en tant que service un serveur particulier sous ces plateformes: NT4,
2000 et XP. Les scripts suivants sont disponibles:

Installation du service Apache : .\xampp\apache\apache_installservice.bat


Désinstallation du service Apache : .\xampp\apache\apache_uninstallservice.bat
Installation du service MySQL : .\xampp\mysql\mysql_installservice.bat
Désinstallation du service MySQL : .\xampp\mysql\mysql_uninstallservice.bat
Installation/désinstallation du service FileZilla : .\xampp\filezilla_setup.bat
Mercury: aucun service disponible !

I.2.2.5.4. La console de sécurité XAMPP [3]

XAMPP n'est pas destiné à un usage en production mais seulement pour des développeurs
dans un environnement de développement. XAMPP est configuré de façon à être le plus
ouvert possible pour permettre au développeur de faire ce qu'il veut. Ceci est intéressant dans
un contexte de développement mais en production ceci pourrait s'avérer fatal.

Voici la liste des éléments de sécurité manquants dans XAMPP :

 L'administrateur MySQL (root) n'a pas de mot de passe.


 Le serveur MySQL est accessible depuis le réseau.
 phpMyadmin est accessible depuis le réseau.
 Les exemples sont disponibles depuis le réseau.
 L'utilisateur de Mercury et FileZilla est connu.

Donc, on doit sécuriser XAMPP avant de publier quoi que ce soit en ligne. Parfois, un coupe-
feu ou un routeur externe sont suffisants pour la sécurité. On doit d'abord utiliser la console de
sécurité web XAMPP.

Figure 5: console de sécurité web XAMPP.

Le mot de passe root de MySQL et phpMyAdmin, ainsi qu'une protection sur le répertoire
XAMPP peuvent être établis ici. Pour Mercury et FileZilla, il faut modifier les réglages
(utilisateur et mot de passe).

I.2.2.5.5. Emplacement des documents web [3]


Le répertoire suggéré est htdocs (.\xampp\htdocs). Si vous y placez un fichier test.html, vous
pouvez l'afficher en visitant http://localhost/test.html avec votre propre Apache. Il en va de
même avec tous les fichiers php ou cgi. Il est possible de créer un sous-répertoire dans htdocs.
Par exemple le répertoire .\xampp\htdocs\new contenant test.html. Puis vous visitez
http://localhost/new/test.html.

Autres types de fichiers :

 CGI, exécutable partout, extensions permises : .cgi => kit de base ;


 PHP, exécutable partout, extensions permises : .php .php4 .php3 .phtml => kit de
base ;
 MOD Perl, exécutable sous .\xampp\htdocs\modperl, extensions permises : .pl =>
ajout Perl ;
 ASP Perl, exécutable sous .\xampp\htdocs\modperlasp, extensions permises : .asp =>
ajout Perl ;
 JSP Java, exécutable sous .\xampp\tomcat\webapps\java (u.a), extensions permises :
.jsp => ajout Tomcat
 Servlets Java, exécutable sous .\xampp\tomcat\webapps\java (u.a), extensions
permises : .html (u.a) => ajout Tomcat
 MOD Python, exécutable sous .\xampp\htdocs\python, extensions permises: .py =>
ajout Python ;

Spyce Python, exécutable sous .\xampp\htdocs\python, extensions permises: .spy => ajout
Python.

I.2.2.5.6. Créer un répertoire à dé marrage automatique [3]

Si vous visitez un répertoire tel que http://localhost/xampp, le serveur Apache retourne un


document de façon automatique, grâce à la présence du fichier index.php. Ceci se produit en
raison de la directive "DirectoryIndex" dans httpd.conf. C'est là que vous définissez les noms
et l'ordre d'exécution des fichiers de départ. Par défaut dans XAMPP, la directive
"DirectoryIndex" contient ceci:

index.php index.php4 index.php3 index.cgi index.pl index.html index.htm index.html.var


index.phtml.

I.2.2.5.7. Modifier la configuration [3]

Vous faites vos ajustements dans XAMPP via les fichiers de configuration classiques en mode
texte.

Les fichiers suivants existent :

 Configuration de base d'Apache : .\xampp\apache\conf\httpd.conf


 Apache SSL: .\xampp\apache\conf\ssl.conf
 Apache Perl (ajout): .\xampp\apache\conf\perl.conf
 Apache Tomcat (ajout): .\xampp\apache\conf\java.conf
 Apache Python (ajout): .\xampp\apache\conf\python.conf
 PHP: .\xampp\php\php.ini
 MySQL: .\xampp\mysql\bin\my.ini
 phpMyAdmin: .\xampp\phpMyAdmin\config.inc.php
 FileZilla FTP: .\xampp\FileZillaFTP\FileZilla Server.xml
 Configuration de base de Mercury Mail : .\xampp\MercuryMail\MERCURY.INI
 Sendmail: .\xampp\sendmail\sendmail.ini

I.2.2.5.8. Les différe nts répertoires [3]

Répertoires Contenues
\xampp\anonymous Exemple pour FTP anonyme
\xampp\apache Serveur Apache
\xampp\cgi-bin Scripts d'exécution cgi
\xampp\FileZillaFTP FileZilla FTP server directory
\xampp\htdocs Documents http
\xampp\install Pour configuration de XAMPP (ne pas
effacer!)
\xampp\licenses (même)
\xampp\MercuryMail Serveur Mercury Mail (SMTP POP3 IMAP)
\xampp\mysql Serveur MySQL
\xampp\perl Perl
\xampp\php PHP (4+5)
\xampp\phpmyadmin phpMyAdmin
\xampp\security Configuration de sécurité
\xampp\tmp Temporaire
\xampp\webalizer Statistiques web Webalize
\xampp\webdav Exemple pour "WebDAV Authoring"

I.2.2.5.9. MySQL et PHP [3]

MySQL démarre sans mot de passe pour "root". Donc en PHP vous pouvez vous
connecter au serveur MySQL avec : mysql_connect("localhost","root","");

Pour ébablir un mot de passe root pour MySQL, vous pouvez utiliser "mysqladmin" en mode
console. Par exemple:

\...\xampp\mysql\bin\mysqladmin -u root password secret


Attention: Après le changement du mot de passe pour root, n'oubliez pas d'en informer
phpMyAdmin. Sous .\xampp\phpmyadmin, localisez config.inc.php et modifiez les lignes
suivantes:

$cfg['Servers'][$i]['user'] = 'root'; // MySQL SuperUser


$cfg['Servers'][$i]['auth_type'] = 'http'; // HTTP MySQL authentification

En conséquence, le mot de passe correct pour root devra être fourni avant que phpMyAdmin
ne puisse démarrer.

I.2.2.6. PhpMyAdmin
PhpMyAdmin est un utilitaire rendant plus conviviale l‟administration de base de
données MySQL. Il consiste en un ensemble de scripts PHP permettant d‟administrer des
bases de données MySQL en passant par un navigateur web.

V.2.2.6.1. Les fonctions de PhpMyAdmin

 Création et suppression de base de données


 Création, modification, copie et suppression de table
 Edition, ajout et suppression de champ
 Exécution des commandes SQL.
 Création d‟index
 Chargement de fichier dans des tables

I.2.2.6.2 Utilisation de PhpMyAdmin


Pour accéder à PhpMyAdmin, il faut d‟abord vérifier que Apache et MySql sont
lancer, après on peut accéder à partir du bouton „admin‟ à coté du module Apache au serveur
local dans le menu outils on clique sur PhpMyadmin., la page d‟accueil de PhpMyAdmin
s‟affiche dans la fenêtre du navigateur, accompagner d‟un champ de sélection de base de
données présente sur l‟hote MySQL par défaut.
Figure 6: Administration de MySQL à partir de PhpMyAdmin
Pour afficher le contenu de la base personnelle par exemple, il faut cliquer sur la ligne
correspondante à la base de données personnelle dans la partie gauche de la fenêtre du
navigateur. Toutes les tables de cette base de données seront affichées :

I.2.2.7. Autres outils

 Macromedia Dreamweaver 8: est un éditeur de page HTML, convivial et simple à


utiliser.
 Photoshop: est un éditeur d‟image, il a été utilisé pour la création des objets
graphiques de notre application tel que les bannières les boutons et le logo.
 123 Flash menu : Construction des différents boutons et menus flash
 Internet Explorer 6: est le navigateur Web utiliser pour l‟interprétation des différents
codes HTML de notre application. Il est facile à utiliser, offert avec Windows XP.
 Windows XP (service Pack2) : est le système d‟exploitation utilisé pour le
développement de notre application de part sa robustesse et de sa représentation graphique
très conviviale.

 Outil matériel : le développement de notre application a été effectué sur un PC doté


d‟un micro processeur Intel avec une fréquence de 2*(1,8 Mhz), une RAM de 2 Go et d‟un
disque dure de 160Go. Une configuration qui a été largement suffisante pour mener a bien
notre projet.

I.3. Exemple des différentes interfaces du site à réaliser

Dans ce qui suit, nous allons présenter quelques interfaces de notre application :
L’interface graphique : Page d‟accueil de l‟application

L’interface avec l’utilisateur :

Cette interface est considérée comme un passage obligatoire pour tous les visiteurs de ce
portail d‟accès.
L’interface graphique : Identification d‟un membre du labo.

L’interface avec l’utilisateur :

Apres avoir sélectionné le lien « Membres » sur la page d‟accueil cette interface intermédiaire
lui est présentée pour identification, Apres avoir saisie ses coordonnées d‟identifications il
clique sur le bouton « Connexion » afin d‟avoir accès a la page lui permettant de travailler
dans son espace réservé. Si toutefois les informations fournies sont correctes sinon il recevra
un message d‟erreur.

L’interface graphique : administrateur

L’interface avec l’utilisateur :

L‟administrateur âpres avoir sélectionné le lien « Administrateur » dans la page d‟accueil et


après validation de son identification, il accède a sa propre page présentée ci-dessus. Cette
page comporte des boutons lui permettant d‟assurer son rôle.
L’interface graphique : Espace chercheur :

L’interface avec l’utilisateur :

Le chercheur après avoir eu son « login » et son « mot de passe », il sélectionne le lien
« Membre » dans la page d‟accueil et après validation de son identification, Il accède a sa
page présentée ci-dessus. Cette page lui permet d‟exécuter ses taches.
L’interface graphique : Page chercheur chef d‟équipe :

L’interface avec l’utilisateur :


Le chercheur chef d‟équipe après avoir son « login » et son « mot de passe », il sélectionne le
lien « Membres » et après validation de son identification, il accède à sa page présentée ci-
dessus. Cette page lui permet d‟exécuter ses taches.

Inte rface graphique : Page directeur

L’interface avec l’utilisateur :


Le directeur après avoir son « login » et son « mot de passe », il sélectionne le lien
« Membres » et après validation de son identification, il accède à sa page présentée ci-
dessus. Cette page lui permet d‟exécuter ses taches.

L’interface graphique : « changer mot de passe »

Interface avec l’utilisateur :


Le membre (chercheur, chercheur chef d‟équipe, directeur) désirant changer son mot de passe
doit saisir les informations nécessaires ensuite cliquera sur le bouton « Envoyer ». Une page
de confirmation de changement lui sera envoyé en cas de validité des informations saisies
dans le cas contraire un message d‟erreur lui sera généré.

L’interface graphique : création d‟un compte chercheur


L’interface avec l’utilisateur :

Cette interface est utilisée après avoir choisi le lien « Ajouter » dans la page du chercheur chef
d‟équipe, Elle permet la saisie des cordonnées d‟un chercheur affecté a une équipe donnée, Le
contrôle des valeurs saisies dans tout les champs se fera par le JavaScript, et après validation
de création de compte. Le nouveau chercheur aura son « login » et son « mot e passe » qui lui
seront communiqués.

L’interface graphique : supprimer un chercheur :


L’interface avec l’utilisateur :

Cette interface est utilisée après avoir choisi le lien « Supprimer » dans la page du chercheur
chef d‟équipe, Elle permet de saisir le « login » et le « mot de passe » du chercheur a
supprimer , en suite cliquer sur le bouton supprimer et un message de confirmation de la
suppression est envoyé si les cordonnées saisies sont valides et dans le cas contraire un
message d‟erreur sera envoyé .

L’interface graphique : Ajouter une publication


L’interface avec l’utilisateur :

Cette interface est utilisée après avoir choisi le lien « Ajout publication» dans la page du
chercheur ou chercheur chef d‟équipe ou directeur, Elle permet de saisir le « titre » et le
« type » de la publication, en suite cliquer sur le bouton « parcourir » pour charger le chemin
de la publication a ajouté et un message de confirmation lui sera envoyé.

L’interface graphique : Forum de discussion :


L’interface avec l’utilisateur :

Cette interface est utilisée après avoir choisi le lien « Forum» dans la page du chercheur chef
d‟équipe ou directeur, Elle permet de cliquer sur le bouton ajouter pour poser une question a
l‟ensembles des membres du labo ou bien de cliquer sur le bouton « + » pour répondre a une
question posée par un chercheur ou voir les réponses de cette question.

L’interface graphique : Courrier


L’interface avec l’utilisateur :

Cette interface est utilisée après avoir choisi le lien « Courrier» dans la page du chercheur ou
chercheur chef d‟équipe ou celle du directeur, Elle permet de cliquer sur le bouton « boite de
réception » pour voir s‟il ya des nouveaux messages à lire ou nom, comme elle permet de
cliquer sur le bouton « Nouveau message » pour écrira un message a un chercheur bien précis.

L’interface graphique : Gestion des équipes de recherche:


L’interface avec l’utilisateur :

Cette interface est utilisée après avoir choisi le lien « Equipe» dans la page du directeur, Elle
permet d‟ajouter ou de supprimer une équipe de recherche dans le labo.

Conclusion

Dans ce chapitre nous avons au premier lieu présenté l‟environnement et les outils
utilisés pour implémenter notre projet. Puis nous avons prése nté des exemples d‟interfaces de
notre application.
Annexe
Introduction

Dans ce présent chapitre nous allons présenter l‟UML ainsi que son extension pour le Web

I. UML

I.1. Les méthodes objets [06]

Au début des années 90, un certain nombre de méthodes objet commençait à couvrir la
partie analyse et conception du cycle de développement du logiciel. Le premier phénomène
observé a été celui de l‟émergence de trois méthodes.

Ainsi, après la cinquantaine de méthodes qui existaient au début des années 90,
seulement trois d‟entre elles se sont détachées nettement après quelques années :

 La méthode OMT (Object Modeling Technique) de James Rumbaugh.


 La méthode BOOCH de Grady Booch.
 La méthode OOSE (Object Oriented Softwar Engineering) de Ivar Jacobson.

A partir de 1994, Rumbaugh, Booch et Jacobson ont décidé de s‟unir dans


l‟élaboration d‟une nouvelle méthode, suffisamment générique, pour pouvoir s‟appliquer à
quasiment tous les contextes applicatifs. Cette méthode unifiée à partir de la version 1.0
devient UML (Unified Modeling Language), une notation universelle pour la modélisation
objet.

I.2. Les stades de construction d’UML [06]

Date Stade d’UML Acteur Action


Avant 1994 G.Booch Elaboration de
J.Rambaugh méthodes orienté
I.Jacobson objet
Autre...
1994 Rational Software Rapprochement de
G.Booch et
J.Rambaugh
1995 Méthode unifiées G.Booch
J.Rambaugh
Rassemblés par
Rational Software
1996 UML 0.9 G.Booch
J.Rambaugh
I.Jacobson
Rassemblés par
Rational Software
Fin 1996 OMG Apple d’offfre pour
Une méthodologie.
Début 1997 G.Booch Soumission à L’OMG
J.Rambaugh Remarque : L’OMG a
I.Jacobson reçu une offre
Rassemblés par concurrente d’UML.
Rational Software
Ainsi que d’autre
partenaires (digital,
HP, Microsoft, etc…)
Fin 1997 UML 1.1 Les auteur d’UML Rapprochement et
1.0 et ceux de l’offre standardisation de la
concurrente (dont nouvelle version par
software) l’OMG.
Mars 1999 UML 1.3 Task force Amélioration de la
constituée par version 1.1
l’OMG
2001 UML 1.4 Task force Amélioration de la
constituée par version 1.3
l’OMG
2002 UML 2.0 Task force Nouvelle version
constituée par d’UML
l’OMG

I.3. La modélisation UML [05]

UML fournit une panoplie d‟outils permettant de représenter l‟ensemble des éléments
du monde objet (classe, objet, …etc.) ainsi que les liens qui les relient, il s‟articule auteur de
plusieurs types de diagrammes, chacun d‟eux étant dédié à la représentation des concepts
particuliers d‟un système logiciel. UML modélise le système suivant trois modes de
représentation : le premier décrit les services fonctionnels rendus par le système, le second
concerne la structure statique du système, le troisième concerne sa dynamique de
fonctionnement. Les trois représentations sont nécessaires et complémentaires pour
schématiser la façon dont est composé le système et comment ses composantes fonctionnent
entre elles.
Fonctionnel

Cet axe décrit les services


rendus par le système

Cet axe décrit les acteurs Cet axe décrit le


et les axes structurant le fonctionnement dynamique
système du système

Dynamique
Statique
Figure1 : Les axes de modélisation UML.

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


concepteurs, développeurs et toutes les personnes externes a l‟aspect technique d‟un système.

Diagramme fonctionnel :

Le mode de représentation fonctionnel s‟appuis exclusivement sur le diagramme suivant

 Le diagramme de cas d’utilisation : [06]

De point de vue utilisateur, le diagramme de cas d‟utilisation défini les limites du système et
les relations entre le système et l‟environnement.

Un cas d‟utilisation est une façon d‟utiliser le système. L‟intérêt majeur de ce système est de
représenter les fonctionnalités du système selon les besoins des utilisateurs.

Diagramme statique : [06]

Le modèle de représentation statique et structurel s‟appuis sur les diagrammes ci-contre :

 Le diagramme de classe : [06]

Le diagramme de classe exprime de manière générale la structure statique d‟un système, il


contient de la classe ainsi que ses associations.

L‟intérêt majeur de ce diagramme est de représenter les entités de système d‟information.

 Le diagramme d’objet : [06]

Le diagramme d‟objet permet de mettre en évidence des liens entre les objets, instance de
classe reliée par une instance d‟association.
Le diagramme d‟objet utilise les mêmes concepts que le diagramme de classe.

Ce diagramme est utilisé pour illustrer les parties complexes d‟un diagramme de classe.

 Le diagramme de composant : [06]

Le diagramme de composant décrit les éléments physiques et leurs relations dans


l‟environnement de réalisation, il montre les choix de réalisation.

 Le diagramme de déploiement : [06]

Ce diagramme montre la disposition physique des différents matériels, (les nœuds) qui entrent
dans la composition d‟un système et de la repartions des diagrammes exécutables sur ces
matériels.

Diagramme dynamique : [06]

Le mode de représentation dynamique ou comportement s‟appuis sur les diagrammes


suivants :

 Le diagramme de séquence : [06]

Le diagramme de séquence montre les interactions entre objets selon un point de vue
temporel, le contexte des objets n‟est pas représenter d‟une manière explicite. La
représentation se concentre sur la représentation des interactions.

Généralement, ce diagramme définie les objets acteurs et le système.

 Le diagramme d’état de transition : [06]

Le diagramme d‟état de transition a pour objectif de représenter des traitements permettant de


gérer le domaine étudié. Ce diagramme met en évidence des différents états d‟une classe.

 Le diagramme d’activité : [06]

Le diagramme d‟activité permet de représenter la dynamique du système, on peut le


considérer comme une variante du diagramme d‟état de transition.

Il est attaché a une classe, processus, acteur ou entité, a un cas d‟utilisation ou bien a une
opération.

 Le diagramme de collaboration : [06]

Le diagramme de collaboration met en place les interactions entre les différents objets du
système étudié et les messages qu‟ils échangent. Dans le cadre de l‟analyse, ce diagramme est
utilisé pour faire apparaitre les échanges d‟information entre le système étudie et les autres
systèmes.

L‟ensemble de ces 9 diagrammes UML peut ainsi être repartis sur les trois axes de
modélisation, comme indiqué sur la figure suivante :
Fonctionnel

Diagramme de cas
d‟utilisation

Diagramme de classe Diagramme d‟état


Diagramme d‟objet Diagramme d‟activités
Diagramme de composant Diagramme de séquence
Dynamique
Diagramme de déploiement Diagramme de collaboration

Figure2 : Les diagrammes UML par axe de modélisation

II. L’extension d’UML pour le Web [05]

II.1. Introduction

À l‟heure actuelle, toute technique de modélisation doit prendre en compte, non seulement les
éléments pertinents, propre au Web, tels que les pages Web et les liens hypertextes, mais aussi
leurs relations avec les éléments d‟arrière-plan du système, tels que les couches intermédiaires
et les bases de données.

UML (Unified Modeling Language) est une notation qui permet de traduire
graphiquement les modèles de systèmes logiciels. Techniquement UML est un langage, mais
comme tous les langages, il exprime les choses d‟un certain point de vue. En pratique, UML
traduit les modèles et les conceptions de systèmes d‟une façon orientée objet, que ces
systèmes soient des applications de gestion classique ou des systèmes temps réel embarqués.

UML est une démarche très utilisée, mais inadaptée pour exprimer des concepts Web,
d‟où la naissance de WAE (Web Application Extension, extension pour application Web), qui
complète la notation UML avec une sémantique et des contraintes permettant d‟intégrer des
éléments d'architecture Web dans le reste du modèle système.
II.2. L’extension d’UML pour le Web

Cette extension d‟UML définit un ensemble de stéréotypes, étiquettes et contraintes, qui


rendent possible la modélisation d‟applications Web.

Un stéréotype : c‟est une extension du vocabulaire d‟UML. Il permet d‟assurer une nouvelle
signification à un élément du modèle. Un stéréotype est représenté soit par une nouvelle
icône, soit par une chaîne de caractères entre guillemets (« »).

Une étiquette : c‟est une extension de propriétés d‟un élément du modèle. La plupart des
éléments du modèle possèdent des propriétés ; les classes, par exemple, possèdent entre
autres, un nom, une visibilité et une persistance. L‟étiquette est représentée, dans un
diagramme, par une chaîne de caractères entre cheverons (< >).

Une contrainte : est une extension de la sémantique d‟UML. La contrainte édicte une règle
que le modèle doit vérifier pour être qualifié. Les contraintes sont représentées par des chaîne
de caractères entre accolades ({ }).

II.3. Description des stéréotypes

II.3.1. Page serveur (« server page »)

Métaclasse : Classe

Description :

Une page serveur représente une page Web qui possède des scripts exécutés par le serveur.
Ces scripts interagissent avec les ressources serveur, tels que bases de données ou systèmes
externes. Les opérations de l‟objet représentent les fonctions dans le script et ses attributs
représentent les variables qui sont visibles dans la portée de la page.

Icône :

Contraintes :

Les pages serveur ne peuvent avoir de relation qu‟avec des objets sur le serveur.

Étiquettes :
Moteur de script (scripting engine) : soit le langage, soit le moteur, qui doit être utilisé pour
exécuter ou interpréter cette page (PHP, Java script, etc.).

II.3.2. Page client (« client page »)

Métaclasse : classe

Description :

Une instance d‟une page client est une page Web formatée en HTML, mélange de
données, de présentation et même de logique. Les pages client, qui sont restituées par des
navigateurs client, peuvent contenir des scripts interprétés par les navigateurs. Les fonctions
d‟une page client correspondent aux scripts de la page Web. Les attributs de la page client
correspondent aux variables déclarées dans les scripts qui sont accessibles à toute fonction de
la page (portée de la page). Les pages client peuvent entretenir des associations avec d‟autres
pages client ou serveur.

Icône :

Contraintes :

Aucune.

Etiquettes :

 Titre (Title) : titre de la page tel qu‟il est affiché par le navigateur.
 Base (Base) : URL de base pour dé référencer les URL relatives.
 Corps (Body) : ensemble des attributs de la balise <body>, qui définit des
caractéristiques par défaut du texte et de l‟arrière-plan.

II.3.3. Formulaire (« form »)

Métaclasse : classe

Description :

Une classe stéréotypée « form » est un ensemble de champs de saisie faisant partie
d‟une page client. À une classe formulaire correspond une balise HTML <form>. Les attributs
de cette classe correspondent aux éléments de saisie d‟un formulaire HTML (zones de saisie,
zones de texte, bouton d‟option, case à cocher et éléments cachés).

Un formulaire n‟a pas d‟opérations, puisqu‟ il ne peut les encapsuler. Toute opération qui
interagit avec le formulaire appartient à la page qui la contient.

Icône :

Contraintes :

Aucune.

Étiquettes :

Méthode _GET ou POST_ utilisée pour soumettre les données à l‟URL de l‟attribut
action de la balise HTML <form>.

II.3.4. Structure de cadre (« frameset »)

Métaclasse : classe.

Description :

Une structure de cadre est un conteneur de plusieurs pages Web. La zone d‟affichage
rectangulaire est devisée en cadres rectangulaires inscrits. À chaque cadre peut être associé un
nom unique de cible (« target »).

Le contenu d‟un cadre peut être une page Web ou une structure de cadre.

Une classe stéréotypée « frameset » est directement associée à une structure de cadre
de page Web par la balise HTML <frameset>.

Parce qu‟une structure de cadre est une page client, elle aussi peut posséder des
opérations et des attributs, mais ceux-ci ne sont déclenchés que par les navigateurs non
compatibles avec les cadres.

Icône :
Contraintes :

 Rangées (raws) : valeur de l‟attribut rows de la balise HTML <frameset>. C‟est une
chaîne de pourcentages séparés par des virgules, définissant les hauteurs relatives des cadres.
 Colonnes (cols) : valeur de l‟attribut cols de la balise HTML <frameset>. C‟est une
chaîne de pourcentages séparés par des virgules, définissant les largeurs relatives des cadres.

II.3.5. Cible (« target »)

Metaclasse : classe.

Description :

Une cible est une zone nommée dans la fenêtre du navigateur dans laquelle des pages
Web peuvent être affichées. Le nom de la classe stéréotypée est celui de la cible.
Habituellement, une cible est le cadre d‟une structure de cadre définie dans une fenêtre ;
cependant, une cible peut être une toute nouvelle instance de navigateur.

Une association « targeted link » spécifie la cible où une page Web doit être affichée.

Icône :

Contraintes :

Un nom de cible doit être unique pour chaque client du système. Par conséquent, une
seule instance d‟une même cible peut exister sur un même client.

Étiquettes :

Aucune.

II.3.6. Objet Script Client (« client script objet »)

Métaclasse : classe.

Description :

Un objet script Client est un ensemble qui regroupe des scripts client particuliers dans
un fichier, lequel est inclus par une requête distincte du navigateur client. Ces objets
regroupent souvent des lots de fonctions couramment utilisées au travers d‟une application ou
d‟une entreprise.
Icône :

f(){}

Contraintes :

Aucune.

Étiquettes :

Aucune.

II.3.7. Lien (« Link »)

Métaclasse : association.

Description :

Un lien est un pointeur d‟une page client vers une autre page. Dans un diagramme de
classe, un lien est une association entre une page client et une autre page client ou une page
serveur. À un lien correspond une balise ancre HTML.

Icône :

Aucune.

Contraintes :

Aucune.

Étiquettes :

Paramètres (parameters) : liste de noms de paramètres qui doivent être passés avec la
demande de la page liée.

II.3.8. Lien cible (« targeted link »)

Métaclasse : association.

Description :

Similaire à une association lien. Un lien cible est un lien dont la page associée est
affichée dans une cible. À un lien cible correspond une balise ancre HTML, dont l‟attribut
target prend la valeur de la cible.
Icône :

Aucune.

Contraintes :

Aucune.

Étiquettes :

 Paramètres (parameters) : liste de noms de paramètres qui doivent être passés avec la
demande de la page liée.
 Nom de la cible (Target Name) : nom de la cible où la page vers laquelle pointe le lien
doit être affichée.

II.3.9. Contenu de cadre (« frame content »)

Métaclasse : association.

Description :

Une association contenue de cadre est une association d‟agrégation qui traduit l‟appartenance
d‟une page ou d‟une cible à un cadre.

Une association contenue de cadre peut aussi pointer vers une structure de cadre, aboutissant
dans ce cas à des cadres imbriqués.

Icône :

Aucune.

Contraintes :

Aucune.

Étiquettes :

 Rangée (Rows) : entier qui indique la rangée du cadre dans la structure de cadre
auquel appartient la page, ou la cible associée.
 Colonne (Col) : entier qui indique la colonne du cadre dans la structure de cadre
auquel appartient la page, ou la cible associée.

II.3.10. Soumet (« submit »)

Métaclasse : association.

Description :
Une association de soumission se trouve toujours entre un formulaire et une page serveur. Les
formulaires soumettent les valeurs de leurs champs au serveur, par l‟intermédiaire de pages
serveur, pour qu‟il les traite. Le serveur Web traite la page serveur, qui accepte et utilise les
informations du formulaire.

Icône :

Aucune.

Contraintes :

Aucune.

Étiquettes :

Paramètre (parameters) : une liste de noms de paramètres qui doivent être passés avec la
demande de la page liée.

II.3.11. Construit (« build »)

Métaclasse : association.

Description :

La relation « build » est une relation particulière qui fait le pont entre les pages client et les
pages serveur. Les pages serveur n‟existent que sur le serveur, où elles sont employées à
construire les pages client.

L‟association « build » identifie quelle page serveur est responsable de la création d‟une page
client. C‟est une relation orientée, puisque la page client n‟a pas connaissance de la page qui
est à l‟origine de son existence.

Une page serveur peut construire plusieurs pages client, en revanche, une page client ne peut
être construite que par une page serveur.

Icône :

Aucune.

Contraintes :

Aucune.

Étiquettes :

Aucune.

II.3.12. Redirige (« redirect »)


Métaclasse : association.

Description :

Une relation « redirect », qui est une association unidirectionnelle avec une autre page Web,
peut être dirigée à partir d‟une page client ou serveur ou vers une page client ou serveur.

Si la relation part d‟une page serveur, le traitement de la requête de la page peut se poursuivre
par l‟autre page. Cela ne veut pas dire que la page de destination participe toujours à la
construction d‟une page client, simplement qu‟elle le pourrait. Cet usage de la redirection
correspond à la balise <meta>.

Icône :

Aucune.

Contraintes :

Aucune.

Étiquettes :

Délai (Delay) : délai que doit observer une page client avant de rediriger vers la page de
destination. Cette valeur correspond à l‟attribut content de la balise <META>.

II.3.13. Élément de saisie (« input element »)

Métaclasse : attribut.

Description :

Un élément de saisie correspond à la balise <input> d‟un formulaire HTML. Cet attribut est
utilisé pour saisir un mot ou une ligne de texte. Les étiquettes associées à cet attribut
stéréotypé correspondent aux attributs de la balise <input>.

Icône :

Aucune.

Contraintes :

Aucune.

Étiquettes :

 Type de l‟élément saisie : texte, numérique, mot de passe, case à cocher, bouton
d‟option, bouton submit ou bouton reset.
 Taille (size) : définit la largeur allouée à l‟écran de saisie.
 Longueur Max (Maxlength) : nombre maximal de caractères que peut saisir
l‟utilisateur.
II.3.14. Sélection d’élément (« select element »)

Métaclasse : Attribut.

Description :

Il permet à l‟utilisateur de sélectionner une ou plusieurs valeurs dans une liste (liste d‟option
ou liste déroulante).

Icône :

Aucune.

Contraintes :

Aucune.

Étiquettes :

 La taille : définit le nombre d‟éléments qui doivent être affichés simultanément.


 Multiple : valeur booléenne qui indique que plusieurs éléments peuvent être
sélectionnés.

II.3.15. Zone de texte (« text area element »)

Métaclasse : Attribut.

Description :

Elle est employée dans les formulaires, elle permet l‟écriture de plusieurs lignes de texte.

Icône :

Aucune.

Contraintes :

Aucune.

Étiquettes :

 Ligne (Rows) : nombre de lignes.


 Colonne (Cols) : largeur du texte.
II.3.16. Page web (« Web page »)

Métaclasse : Composant.
Description :

Un composant page est une page Web, il peut contenir des scripts client ou serveur. Ce
composant est un fichier texte accessible au serveur Web, et il peut être également un module
compilé, chargé et exécuté par le serveur Web, puis le serveur Web produit à partir du
composant page un document au format HTML, qui est renvoyé en réponse à la requête du
navigateur.

Icône :

Contraintes :

Aucune.

Étiquettes :

Chemin (path) : chemin requis pour spécifier la page Web sur le serveur Web.

II.4. Règles de cohérence

 Réalisation de composant : les composants pages Web peuvent réaliser les classes
stéréotypées « server pge », « client page » ou « frameset ».

 Généralisation : tous les éléments de modélisation dans une même généralisation


doivent être du même stéréotype.

 Association : une page client peut avoir au plus une relation « build » avec une page
serveur, par contre une page serveur peut avoir plusieurs relations « build » avec plusieurs
pages client. En plus des combinaisons standards d‟UML sont permises les combinaisons de
stéréotype présentées au tableau 1.
A:
« client page » « serveur page » « frameset » « target » « form »
De :
« link » « link » « link »
« aggregation
« client page » « target link » « target link » « target link » « dependency »
»
« redirect » « redirect » « redirect »
« serveur « build » « build »
« redirect »
page » « redirect » « redirect »
« frame « frame « frame
« frameset »
content » content » content »
« target »
« form » « aggregate by » « submit »

Tableau 1 : Combinaison valides d‟association de stéréotypes

Conclusion

Au cours de ce chapitre nous avons vu l‟outil de modélisation UML et son extension


pour le Web que nous avons utilisé pour la conception de notre application.
Conclusion
générale
Conclusion générale

Nous avons présenté à travers ce travail une étude relative à la conception et la réalisation
d‟un intranet avec site web dynamique, un serveur FTP et un serveur de messagerie pour le
laboratoire de recherche en génie civil LAMOMS.

Cet intranet permet essentiellement de :

 Offrir les outils collaboratifs (la messagerie, le forum) pour assurer les échanges entre
les membres du labo ;
 Administrer et gérer les membres organisés dans des équipes et les responsables qui
suivent ces équipes de recherche ;
 Ce site permet aussi aux membres de faire des publications ;

Ce travail nous a permis :

 D‟approfondir nos connaissances théoriques et pratiques en rapport avec les réseaux,


l‟internet, le web et les bases de données …
 D‟acquérir de nouvelles connaissances sur les langages HTML, JAVAScript, le
PHP,le langage de modélisation UML, et aussi d‟utiliser p lusieurs logiciels tels
Macromadia dreamweaver ainsi que le système de gestion de bases de données MySql.
Bibliographie

[01] : Larry L. PETERSON, Bruce S. DAVIE, "Réseaux d’ordinateurs : une approche


système". Vuibert, 1998.

[02] : François LAISSUS, "Cours d'introduction à TCP/IP".

http://www.laissus.fr/cours/cours.html, version 2002.

[03]: George et Olivier GARDARIN, "Le Client-Se rveur".

Eyrolles, 1996.

[04]: G. Gardarin, "Internet/Intranet et les bases de données"

Eyrolles, 2000

[05] : Jim Conallen, "Concevoir des applications Web avec UML"

Eyrolles

[06] : Chantal Morley Jean Hugues Bernard Leblanc, " UML pour l’analyse d’un système
d’information" DUNOD

[07] : G. A. LEIERER, R. STOLL,"Le grand livre PHP 4 et MySQL".

Micro application, 2000.

[08] Pierre-allain MULLER, "Modélisation objet avec UML".

Eyrolles,

[doc] : document LAMOMS

Webiographie

[1] http://www .Wiképédia.com

[2] http://www.ac-nancy- metz.fr/mail/mercury/doc_mercury.zip

[3] http://www.apachefriends.org/

Vous aimerez peut-être aussi