publier sur le web : implications techniques et ...bdid-intd.cnam.fr/memoires/2004/dard.pdf · la...

82
CONSERVATOIRE NATIONAL DES ARTS ET METIERS INSTITUT NATIONAL DES TECHNIQUES DE LA DOCUMENTATION MEMOIRE pour obtenir le DESS en Sciences de l’information et de la documentation spécialisées présenté et soutenu par Raphaël Dard le 5 novembre 2004 Publier sur le Web : implications techniques et organisationnelles de la création d’un site Web dynamique. Mise en œuvre au Haut Commissariat des Nations Unies pour les Réfugiés Membres du jury : Madame Brigitte GUYOT – INTD Maître de conférence Monsieur Bernard BONNET – ONISEP Chargé de mission : informatique et développement Cycle supérieur Promotion XXXIV

Upload: others

Post on 23-Aug-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

  • CONSERVATOIRE NATIONAL DES ARTS ET METIERS

    INSTITUT NATIONAL DES TECHNIQUES DE LA

    DOCUMENTATION

    MEMOIRE

    pour obtenir le

    DESS en Sciences de l’information et de la documentation spécialisées

    présenté et soutenu par

    Raphaël Dard

    le 5 novembre 2004

    Publier sur le Web : implications techniques etorganisationnelles de la création d’un site Web

    dynamique.Mise en œuvre au Haut Commissariat des Nations Unies pour

    les Réfugiés

    Membres du jury :Madame Brigitte GUYOT – INTD

    Maître de conférenceMonsieur Bernard BONNET – ONISEP

    Chargé de mission : informatique et développement

    Cycle supérieur Promotion XXXIV

  • 2

    Remerciements

    Parmi les différentes personnes à qui je dois de pouvoir réaliser ce mémoire

    aujourd’hui, je tiens à remercier particulièrement :

    Annie Bauer qui m’a encouragé à réaliser le DESS de l’INTD,

    Andrew Mayne, pour l’opportunité qu’il m’a donné de réaliser un projet

    particulièrement intéressant au sein du Haut Commissariat des Nations Unies pour

    les Réfugiés – projet de site web dynamique qui me permet d’illustrer ce mémoire,

    Karl Steinacker, pour l’impulsion qu’il a donné au projet,

    Bernard Bonnet, pour l’aide précieuse qu’il m’a apporté pour la réalisation de ce

    mémoire,

    Brigitte Guyot, pour ses cours et sa disponibilité, en particulier pour la soutenance,

    Natacha Henrard, pour son soutien permanent,

    et toute l’équipe de l’INTD qui forme le noyau de ce DESS d’ « info/doc ».

  • 3

    Résumé

    Les sites web dynamiques sont constitués de pages créées « à la volée » à chaque

    requête. Dans ce dessein, ces pages puisent leur contenu dans une ou plusieurs bases

    de données. Ces systèmes d’information reposent sur une séparation du contenu et de

    la présentation des pages. La création de ce type de produit implique de recourir à la

    technologie des langages de programmation dits « orientés serveur » et requiert, par

    conséquent, des compétences techniques plus importantes que pour la réalisation de

    sites web dits statiques. Mises à part ces implications techniques, la mise en place

    d’un site web dynamique nécessite une organisation adaptée, à la fois à un mode

    particulier d’édition et à un ensemble de contraintes liées à la publication rapide de

    grandes quantités d’informations.

    Mots clés :

    site web

    publication web

    web dynamique

    projet web

    création web

    site dynamique

  • 4

    Table des matières

    Liste des tableaux..................................................................................................... 7

    Liste des figures....................................................................................................... 8

    Liste des annexes ..................................................................................................... 9

    Introduction ............................................................................................................10

    Première partie : Concepts, étendue du sujet et limites choisies.......................12

    1.1 Eclairages sur le titre de ce mémoire............................................................13

    1.1.1 Publier sur le Web ...............................................................................13

    1.1.2 Implications techniques .......................................................................13

    1.1.3 Implications organisationnelles ............................................................13

    1.1.4 Création...............................................................................................13

    1.2 Que recouvre l’expression « site web dynamique » ? ..................................15

    1.2.1 Le principe ..........................................................................................15

    1.2.2 Publication dynamique.........................................................................17

    1.2.3 Présentation interactive........................................................................17

    1.2.4 Publication dynamique et édition en ligne............................................18

    1.2.5 Applications en ligne et services web ...................................................20

    1.2.6 Note sur la terminologie existante ........................................................21

    1.3 Périmètre choisi...........................................................................................22

    1.4 Bilan sur les recherches d’informations .......................................................23

    1.5 La problématique de mon stage au Haut Commissariat des Nations Unies

    pour les Réfugiés (HCR) .........................................................................................24

    Deuxième partie : Implications techniques .........................................................26

    2.1 Architecture générale des sites web dynamiques..........................................27

    2.2 La base de données : l’entrepôt structuré de l’information du site ................29

    2.2.1 Modélisation des flux d’information et schéma de base de données .....29

    2.2.1.1 Modélisation ....................................................................................29

  • 5

    2.2.1.2 Schéma de base ou « modèle physique » ..........................................29

    2.2.1.3 Flexibilité et évolution .....................................................................29

    2.2.2 L’outil d’exploitation de base de données ............................................30

    2.2.3 Chargement des données et reprise de données existantes ....................30

    2.2.4 Le choix d’une base de données en environnement Web ......................32

    2.3 Le programme passerelle .............................................................................33

    2.4 Le liant ........................................................................................................34

    2.4.1 Fonctionnement d’un langage de programmation orienté serveur .........34

    2.4.2 Les fonctions .......................................................................................35

    2.4.3 Ce qui peut guider le choix d’un langage de programmation ................35

    2.5 Conception de l’interface du site web ..........................................................37

    2.5.1 Les étapes ............................................................................................37

    2.5.2 Quelques outils d’aide à conception .....................................................38

    2.6 Le cas du projet au HCR..............................................................................39

    2.6.1 Le choix des « technologies Web » et la conception du site.................39

    2.6.2 Le travail de la transformation de la source de statistiques au format de

    la base de données...............................................................................................41

    Troisième partie : Implications organisationnelles.............................................42

    3.1 L’équipe du projet et les différents acteurs impliqués ..................................44

    3.1.1 Le personnel technique ........................................................................44

    3.1.2 Le personnel dit « expert métier » ........................................................45

    3.2 Impact du facteur dynamique sur l’organisation du projet de site web..........47

    3.2.1 Les caractéristiques propres........................................................................47

    3.2.2 Entre un projet de site web et de développement d’application.............48

    3.2.2.1 Parallèle avec une méthodologie de conception de site web statique.48

    3.2.2.2 Parallèle avec une méthodologie de conception de logiciel...............50

    3.2.3 L’orchestration ....................................................................................51

    3.2.3.1 Maintien du cap ...................................................................................52

    3.2.3.2 Adaptation du planning et gestion des priorités ....................................52

    3.2.3.3 Communiquer......................................................................................52

    3.2.4 Les facteurs clés de succès et autres garants de la pérennité du produit 53

    3.3 Impact au niveau du département concerné..................................................54

    3.3.1 Un contenu à produire et à publier .......................................................54

  • 6

    3.3.1 Un contenu à produire et à publier......................................................... 54

    3.3.2 Préparer la structure pour les réactions extérieures................................ 54

    3.4 Le cas du projet au HCR................................................................................ 55

    3.4.1 Les sujets soulevés par la mise en œuvre du projet............................... 55

    3.4.2 Une organisation du travail en quatre sous projets ................................ 56

    Conclusion................................................................................................................. 57

    Glossaire .................................................................................................................... 61

    Bibliographie............................................................................................................. 67

    Annexe 1 -Diagramme global d’un projet de site dynamique ................................... 76

    Annexe 2 - Interface d’un assistant au SGBD MySQL (phpMyAdmin).................... 77

    Annexe 3 – Structure des tables du projet au HCR.................................................... 78

    Annexe 4 – Grille (gabarit) pour le positionnement méthodique des éléments de

    l’interface graphique .................................................................................................. 79

    Annexe 5 – Schéma du traitement nécessaire des données, du format source à la base

    de données MySQL.................................................................................................... 80

    Annexe 6 – Exemple d’arborescence logique d’un site web dynamique ................... 81

    Annexe 7 – Schématisation des sources d’information d’un site dynamique dans un

    but organisationnel..................................................................................................... 82

  • 7

    Liste des tableaux

    Tableau 1. - Parallèle avec une méthodologie de conception de site web statique 49

    Tableau 2. - Parallèle avec une méthodologie de conception de logiciel 51

  • 8

    Liste des figures

    Figure 1. – Fonctionnement des balises HTML (pages web statiques) 15

    Figure 2. – Fonctionnement simplifié d’une page web dynamique 16

    Figure 3. – Trois options de présentation d’un même site web 18

    Figure 4. – Exemple de formulaire web servant à écrire un courriel en ligne 19

    Figure 5. – Structure logicielle de site web 27

    Figure 6. – Colonne vertébrale du site web et symboles des niveaux géographiques 40

    Figure 7. – Le personnel technique et ses domaines de compétences 44

    Figure 8. – Les quatre principales parties du projet de site d’information sur les

    camps de réfugiés 56

  • 9

    Liste des annexes

    Annexe 1 -Diagramme global d’un projet de site dynamique 76

    Annexe 2 - Interface d’un assistant au SGBD MySQL (phpMyAdmin) 77

    Annexe 3 – Structure des Tables du projet du HCR 78

    Annexe 4 – Grille (gabarit) pour le positionnement méthodique des éléments de

    l’interface graphique 79

    Annexe 5 – Schéma du traitement nécessaire des données, du format source à la base

    de données MySQL 80

    Annexe 6 – Exemple d’arborescence logique d’un site web dynamique 81

    Annexe 7 – Schématisation des sources d’information d’un site dynamique dans un

    but organisationne l 82

  • 10

    Introduction

  • 11

    L’arrivée de l’Internet et en particulier du World Wide Web1 dans le grand public a

    vu se succéder deux techniques de publications sur ce nouveau support. Comme cela

    arrive fréquemment avec les outils d’invention humaine, il y a un temps pour la

    découverte et les techniques rudimentaires et un autre pour des perfectionnements,

    eux-mêmes possibles grâce à de solides bases.

    C’est ainsi que je considère, à la lumière de mes lectures, la publication sur le Web

    grâce aux sites web dits dynamiques. C’est une évolution de la gestion du contenu

    sur ce nouveau support d’information.

    Ce qui m’a poussé à me pencher sur le sujet de ce mémoire est l’importance

    considérable que revêt, à mes yeux, cette méthode relativement neuve pour gérer

    l’information. En effet, le couple « interface web - base de donnée » constitue déjà la

    base de milliers d’applications permettant aux organismes du monde entier de

    rationaliser la gestion de leur information et de publier rapidement des informations

    chaudes. Nombreux aussi sont les exemples d’entreprises qui souhaitent passer à une

    gestion en temps réel de leurs produits. Mais l’adaptation aux nouvelles technologies

    de l’information et de la communication requiert la connaissance et la maîtrise des

    implications techniques et organisationnelles de la mise en place de ces nouveaux

    outils.

    Pour illustrer mon propos tout au long de ce mémoire, j’ai choisi de conclure

    chacune des parties par l’exemple du projet de site web dynamique réalisé au Haut

    Commissariat des Nations Unies pour les Réfugiés (HCR), à Genève.

    Dans une première partie, le lecteur est invité à considérer l’étendue du sujet et la

    définition de chacun des termes du titre de ce mémoire, ainsi qu’un bilan sur la

    littérature trouvée et étudiée. Les deuxième et troisième parties sont successivement

    consacrées aux implications techniques et organisationnelles de la création de ce type

    de site web.

    Enfin, la quatrième et dernière partie ouvre une réflexion sur l’impact des sites web

    dynamiques sur la gestion des organisations.

    1. : L’abréviation Web est dorénavant utilisée pour World Wide Web (par ailleurs, la distinction estfaite entre le Web et un site web où l’on ne gardera pas la majuscule).• Les mots inscrits en italique sont définis dans le glossaire, en fin de mémoire.

  • 12

    Première partie :

    Concepts, étendue du sujet et limites choisies

  • 13

    1.1 Eclairages sur le titre de ce mémoire

    1.1.1 Publier sur le WebDans le présent document, avec l’expression « publier sur le Web » nous souhaitons

    inclure tout projet de publication de pages hypermédias et destiné à un public cible.

    Cela signifie que nous entendons le format du Web et non pas un réseau

    d’ordinateurs particuliers. Les réseaux intranets, extranets et l’Internet sont, ici, tous

    concernés par cette expression.

    1.1.2 Implications techniquesL’objet de ce mémoire n’est pas de pourvoir le lecteur d’un manuel de mise en place

    d’une base de donnée (BDD) ou d’un site web dynamique. De nombreux travaux,

    qu’ils soient en ligne ou sur papier, font très bien ce travail et il ne s’agit pas là de le

    répéter. En revanche, nous nous attacherons, dans la deuxième partie, à brosser un

    tableau complet des techniques et outils informatiques nécessaires à la mise en ligne

    d’un projet de site web dynamique. Nous verrons également le rôle de ces outils

    informatiques.

    1.1.3 Implications organisationnellesLa création d’un site web dynamique, si celui-ci doit répondre aux besoins d’un

    public particulier et exigeant, nécessite la participation de plusieurs acteurs. Ce

    groupe d’acteurs rassemble initiateur du projet, direction, coordinateurs, experts

    techniques et experts en contenu et futurs utilisateurs. Le terme organisationnel

    recouvre ici l’ensemble des interactions, planifiées et non planifiées, entre ces

    différents acteurs, tout au long de la création de la publication électronique. Il

    recouvre également la coordination du projet.

    1.1.4 CréationNotons dès à présent que nous étudions essentiellement les implications liées à la

    création d’un tel produit et non pas à sa maintenance ou à ses mises à jour. Les

    implications organisationnelles du suivi d’un site web dynamique sont d’un autre

  • 14

    ordre et c’est pourquoi nous ne les aborderons que très brièvement dans la sous partie

    3.2 du présent document.

  • 15

    1.2 Que recouvre l’expression« site web dynamique » ?

    1.2.1 Le principeUn « site web dynamique » est composé de pages web au « contenu dynamique ».

    Cela signifie que, par opposition aux page dites « statiques », tout ou partie du

    contenu des pages est récupéré sur un autre fichier informatique que la page elle-

    même, qu’il s’agisse d’une base de données, de fichiers XML, ou encore d’un autre

    fichier au format différent.

    Mais revenons rapidement sur quelques notions de base. Le langage de base pour

    concevoir des pages destinées à être publiées sur un navigateur web est le langage

    HTML. Ce n’est pas un langage de programmation mais un langage de description

    de pages. Les pages HTML contiennent du texte et des balises encadrant ce texte qui

    servent à indiquer au navigateur la façon dont le texte doit être présenté (grand, petit,

    gras, italique, de couleur, etc.). Le langage HTML est un langage d’affichage et il ne

    permet aucun calcul. Les pages réalisées avec ce langage sont dites « statiques ».

    Figure 1. – Fonctionnement des balises HTML (pages web statiques)

    Navigateur

    Web

    Titre

    Texte

    TitreTexte

    Balise HTML interprétéepar le navigateur

    Document

    HTML

  • 16

    La dynamique des pages web dynamiques vient du fait que chaque demande de

    visualisation d’une page web de ce type provoque une « requête » automatique

    auprès de la source ou des sources de son contenu. On parle ainsi de création de page

    « à la volée » (traduction littérale de l’expression anglaise "on the fly").

    Figure 2. – Fonctionnement simplifié d’une page web dynamique

    Cette technique consistant à puiser de l’information dans un autre fichier que celui

    "lu" par le navigateur représente un intérêt particulier dès lors que le contenu puisé

    par la page peut évoluer dans le temps, à son propre rythme, sans que cela n’ait

    aucun impacte sur d’autres.

    Cette récupération de données se fait au moyen d’un code informatique dont l’une

    des fonctions doit être cette capacité de référence (cf. sous partie 2.4). Ce code ou

    langage informatique permet de disposer d’instructions conditionnelles, pour réaliser

    des traitements différents en fonction de conditions diverses, d’instructions de calcul

    NavigateurWeb

    ref.1

    ref.2

    TitreTexte

    Références au contenutextuel (ou multimédia)

    DocumentDynamique

    Base de

    données

    Source du contenu

  • 17

    et, suivant les langages, d’un jeu d’instructions très diverses pour réaliser toutes

    sortes de tâches, des plus simples aux plus complexes (J.M. Herrelier [06]).

    L’une des premières forces de cette méthode d’édition dynamique vient du fait que la

    présentation peut être séparée du contenu.

    Si le support traditionnel qu’est le papier possédait cette capacité, nous pourrions

    avoir un annuaire dont le contenu se met à jour "automatiquement". Comme les

    pages sont composées de références vers d’autres pages, situées elles-mêmes à des

    emplacements géographiques indépendants et modifiés selon les besoins, il n’est plus

    nécessaire de se procurer un nouvel annuaire. Il est à jour à tout moment, pourvu que

    les différents responsables des données aient le souci et la possibilité de tenir leur

    "portion d’information" à jour !

    Depuis l’apparition des premiers sites dits dynamiques, de nombreuses innovations

    techniques, notamment avec les langages de programmation orientés serveur que

    nous abordons en partie 2.4, sont à l’origine de différents niveaux de dynamicité. Les

    possibilités de traitement, d’organisation et de manipulation de l’information se sont

    multipliées. Nous avons choisi de rassembler ces différents niveaux dans quatre

    sous-ensembles. Nous présentons successivement, ci-après, ces quatre degrés de

    dynamicité. Ce classement vise simplement à distinguer différentes caractéristiques,

    de complexité croissante, rendues possibles grâce aux sites web dynamiques.

    1.2.2 Publication dynamiqueLe premier degré relève du principe simple de publication d’information. Avec d’un

    côté la source de l’information et de l’autre la mise en page et donc la partie

    apparente pour le lecteur ou utilisateur. Dès lors qu’un site web dépasse une certaine

    taille en quantité d’informations, cette séparation du contenu et de la présentation

    s’avère nécessaire si l’on veut éviter un laborieux travail d’édition de pages HTML à

    chaque mise à jour.

    1.2.3 Présentation interactiveLe deuxième niveau comprend la notion de publication dynamique d’information,

    mais donne en plus la capacité au lecteur d’intervenir sur la présentation du contenu.

    Dans ce cas, la publication électronique comporte plusieurs options de présentation

  • 18

    qui ont pour effet de modifier l’affichage de l’information présentée. Dans ces

    options, nous retrouvons parfois des éléments de couleur, des éléments de mise en

    page (maquette), des éléments de quantité d’information par écran (typiquement un

    nombre de lignes), et parfois un ensemble prédéfini de ces composantes dans des

    feuilles de styles complètes que l’on peut choisir parmi une liste (www.standblog.org

    et my.yahoo.com, par exemple). Dans les cas de publication de tableaux de données

    (qu’il s’agisse de nombres ou de mots, noms, etc.) les sites offrant une interface

    configurable permettent de réaliser des tris (alphabétiques, numériques croissants ou

    décroissants, etc.).

    Figure 3. – Trois options de présentation d’un même site web (ici

    www.standblog.org)

    Les entreprises ayant recours au commerce électronique et à la vente en ligne aux

    particuliers ont énormément recours à ces méthodes qui permettent de personnaliser

    l’environnement des prospects et clients. Ils ont en effet tout intérêt à ce que la visite

    des potentiels acheteurs sur leur site web soit une expérience agréable, car

    « personnalisation » rime alors avec fidélisation de la clientèle.

    1.2.4 Publication dynamique et édition en ligneCe que nous choisissons de considérer comme le troisième niveau reprend les mêmes

    caractéristiques que le niveau « publication dynamique », et peut offrir les fonctions

    de manipulation de présentation du deuxième niveau, mais cette fois-ci s’ajoute la

    capacité de l’utilisateur de se transformer en créateur de contenu, voire en auteur.

    En effet, nombreux sont les sites web qui font appel à des systèmes de production en

    ligne, que ce soit au travers de formulaires (méthode la plus courante) ou au travers

    de moyens plus élaborés, comme le téléchargement de fichiers numériques.

  • 19

    Les sites web de gestion de courrier

    électronique en ligne (les

    webmails) sont probablement les

    plus utilisés de cette catégorie.

    Dans ce dernier cas, l’information

    écrite dans des formulaires,

    symbolisant le « corps » des

    courriels, ne fait que transiter par le

    site de gestion de courriel, avant

    d’être expédié dans la boîte aux

    le t t res é lec t ronique d’un

    destinataire.

    Figure 4. - Exemple de formulaire web

    servant à écrire un courriel en ligne

    Un autre sous ensemble de cette catégorie comprend les sites web dont le contenu

    lui-même est écrit en ligne, et c’est également au travers de formulaires que se fait le

    recueil de l’information. Par exemple, le site web Uzine.net (http://www.uzine.net)

    fonctionne de cette façon, avec des rédacteurs géographiquement dispersés, au

    moyen d’un système d’édition collaborative en ligne nommé SPIP

    (http://www.spip.net).

    Parmi les sites dont les utilisateurs peuvent intervenir sur le contenu, nous

    distinguons deux utilisations courantes : la rédaction de texte, et l’entrée de données.

    Dans le premier cas, les sites sont destinés à des lecteurs (webzines, weblogs,

    journaux en ligne, presse, encyclopédies, etc.), dans le second, l’information, saisie

    dans des champs successifs et caractérisés, est généralement destinée à un traitement

    informatique ultérieur. Remarquons que les bases de données sont, depuis bien avant

    l’avènement du Web, les outils logiciels privilégiés pour le traitement d’information

    en grand volume.

  • 20

    Édition collaborative, travail collaboratif

    Dès lors qu’il est possible de participer, en ligne, au contenu d’un site web, c’est à

    dire d’un support commun d’information, la perspective de collaboration en ligne

    s’ouvre et avec elle un champ considérable d’applications.

    Les organisations très dispersées géographiquement découvrent de plus en plus le

    potentiel des solutions de travail collaboratif. La sécurité et les procédures, parfois

    complexes à mettre en place, comptent parmi les freins actuels à ce genre

    d’initiative.

    1.2.5 Applications en ligne et services webLa quatrième catégorie que nous choisissons de rassembler ici se distingue en ceci

    qu’elle fait appel à un développement informatique qui s’apparente au

    développement des logiciels tels que ceux utilisés hors du monde des réseaux, les

    logiciels qui sont installés, localement, sur les machines des utilisateurs. Cette

    utilisation des navigateurs web est née du développement très rapide du Web et fait

    partie d’un mouvement général de migration des logiciels traditionnels vers des

    applications en ligne. Une idée commune pousse le développement de ces

    applications en ligne : donner des outils logiciels de plus en plus performants aux

    utilisateurs connectés. Rendre les ordinateurs dits « clients légers » capables de

    donner à leur utilisateur un accès à des fonctionnalités similaires à celles données par

    les applications traditionnelles sans avoir l’obligation d’installer des logiciels « en

    local » (Daniel [03]), c’est à dire sur le poste de l’utilisateur.

    Cette catégorie comprend non seulement les éléments cités dans les familles

    précédentes, mais elle comporte surtout des programmes réalisés sur mesure et

    destinés à exécuter des opérations qui peuvent être assez complexes.

    Il s’agit bien de sites web dynamiques, mais ces programmes sont mieux décrits par

    l’expression « application en ligne ».

  • 21

    Certaines applications de ce type, de taille relativement petite, réalisant des tâches

    précises, ont été baptisées services web. Remarquons qu’il s’agit d’un autre sens que

    celui donné à la même expression dans le titre du livre d’Arnaud Le Guelvouit

    « Comment concevoir un service Web » [39].

    1.2.6 Note sur la terminologie existanteA un moment où les sites web dynamiques sont à leurs balbutiements, à l’échelle de

    la vie des technologies nées de l’Internet, les appellations se multiplient. Parfois

    « site web dynamique », parfois « site à usage intensif de données », parfois

    « application web » et encore « data web » (G. Gardarin [34]), il n’est pas toujours

    évident de s’y retrouver.

  • 22

    1.3 Périmètre choisi

    Dans la partie 1.2 nous avons présenté rapidement, au travers de quatre catégories,

    les différents niveaux de complexité des sites web dynamiques. Dans le présent

    mémoire, nous nous penchons sur les implications de la création d’un site de

    publication dynamique, sachant qu’il s’agit du tronc commun de ces quatre

    catégories.

    On abordera ces questions dans un contexte de conception, de production et de mise

    en place de site.

  • 23

    1.4 Bilan sur les recherches d’informations

    Mes recherches d’informations sur le sujet de ce mémoire, pourtant menées

    méthodiquement, n’ont été satisfaites qu’à moitié.

    En effet, en ce qui concerne la littérature technique, rien ne semble manquer, bien

    que les différents ouvrages d’intérêt n’emploient que rarement les mêmes termes

    pour parler d’un même sujet (cf. sous partie 1.2.6). Par ailleurs, comme les sites web

    dynamiques font principalement appel à des compétences et métiers traditionnels de

    l’informatique (bases de données, programmation, etc.), nombreux sont les livres

    traitant des sujets qui nous intéressent ici. J’ai également réalisé qu’il existe autant

    d’explications techniques sur les sites web dynamiques qu’il y a de langages de

    programmation permettant d’en réaliser ! Ce n’est, en fait, pas étonnant et ça

    comporte des avantages certains.

    En revanche, sur les aspects organisationnels, on est forcé d’avoir recours à des

    ressources touchant des sujets proches parce que sur le sujet lui-même, il ne semble

    pas y avoir beaucoup de littérature. D’ailleurs, ma bibliographie sur ce deuxième

    volet comporte plus de références, mais m’a moins aidé dans mon travail.

  • 24

    1.5 La problématique de mon stage au HautCommissariat des Nations Unies pour les Réfugiés(HCR)

    Au 4 février 2004, premier jour de mon stage, le responsable de la section en charge

    des données démographiques et géographiques au HCR me confie le projet

    consistant à mettre en ligne des informations statistiques et géographiques sur les

    camps et lieux de passage des réfugiés.

    L'idée, dès le départ, est de faire une page ou une section pour chaque camp dont la

    population est supérieure à cinq mille individus (environ 130).

    Chaque section de camps devra pouvoir contenir cinq à dix pages web.

    L’un des challenges techniques consiste à relier ces pages à une base de données

    statistique (les raisons sont abordées plus loin), sachant que l’ensemble des données

    existe, à ce moment là, sous forme de fichiers de tableur.

    Au terme du premier mois, qui fût l’occasion de rassembler les différents points de

    vues sur la vision de ce produit, l’état de la réflexion est de réaliser des pages

    dynamiques, codées en HTML et PHP et reliées à une base de données MySQL

    (j’explique, en partie 2.6, les raisons de ce choix).

    La problématique sous-jacente consiste à conduire le projet en intégrant au maximum

    les membres du HCR, tout en sachant que le temps de disponibilité des personnes qui

    peuvent accompagner mon projet est une variable, à la fin du premier mois de stage,

    quasi inconnue.

    Cela signifie que le défi technique, relativement simple pour un informaticien, peut

    constituer un travail assez important pour moi si je dois m'en débrouiller tout seul.

    L'inconvénient, dans le cas où je m’occuperais de tout, est que le site (l'ensemble de

    pages) risque d'être plus succinct car je pourrais passer moins de temps sur

    l’organisation de son contenu (arborescence du site et interface graphique).

    L'objectif ultime étant d'apporter un nouveau service d'information aux membres du

    HCR, aux ONG, partenaires et donateurs, les facteurs clés de succès sont avant tout

  • 25

    (il s’agit des objectifs fixés à la fin du premier mois de stage, correspondant lui-

    même à la première partie du stage) :

    • des pages simples, claires et qui parlent au plus grand nombre ;

    • une base de données solide et une solution technique stable ;

    • une maintenance réduite au minimum (processus de mise à jour simple et court) ;

    • une communication efficace au moment de la mis en ligne (au minimum un

    communiqué interne) ;

    • une place de choix sur l'intranet et le site web du HCR (à négocier).

    La première partie du stage a été l’occasion de faire une recherche assez poussée sur

    les projets similaires pouvant exister sur l’Internet, ainsi que de proposer un cahier

    des charges à mon responsable direct.

  • 26

    Deuxième partie :

    Implications techniques

  • 27

    2.1 Architecture générale des sites web dynamiques

    Avant de décrire l’ensemble des implications techniques de la création d’un site web

    dynamique, présentons rapidement la structure générale d’un tel système, afin de

    compléter la sous partie 1.2 .

    Le schéma suivant permet de considérer en un coup d’œil à la fois les différents

    composants logiciel d’un site web dynamique et le cycle d’une requête faite depuis

    un navigateur. Il va également nous permettre de suivre les explications du présent

    chapitre.

    Figure 5. – Structure logicielle de site web

    La figure ci-dessus nous donne la trame nécessaire à l’explication du mécanisme de

    base des requêtes ayant lieu au cœur des sites web dynamiques.

    Dans la partie gauche (1), le navigateur lance une demande de page web vers le

    serveur HTTP. Cette demande est soit une URL fixe, c’est à dire une référence à un

    fichier statique présent sur le serveur (seules les parties 1 et 2 seront concernées),

    soit une URL dynamique, c’est à dire une référence à un fichier (page web) qui n’est

    à priori pas matérialisé, mais doit être créé « au vol ». Dans ce dernier cas, l’URL

    contient un appel au programme applicatif, avec des paramètres identifiant de façon

    unique la page que l’on désire construire. Dans les deux cas, la demande de page est

    NavigateurWeb

    (Client http)

    Serveurhttp

    ProgrammePasserelle

    SGBD&

    Base dedonnéesdonnées

    demande de page paramètres (réf.)

    HTMLHTML

    Requête SQL

    Structure desite Statique

    Structure de siteDynamique

    1 2 43

  • 28

    dirigée vers le serveur HTTP via le réseau. Le protocole HTTP permet à un client de

    se connecter à un serveur, de lui envoyer une requête et de recevoir un document

    HTML en réponse.

    En partie 2, le serveur HTTP est en attente permanente. À l’arrivée d’une demande,

    son action dépend du type de la demande. Dans le cas simple où la demande spécifie

    un fichier HTML existant sur le serveur (avec une URL fixe), l’action du serveur se

    limite à renvoyer le fichier désiré au client. Dans le deuxième cas, le serveur lance le

    programme applicatif (3) en lui passant les paramètres d’appel (cf. sous partie 2.3).

    4 : Le serveur de base de données reçoit des requêtes SQL, les exécute et renvoie les

    données résultat au programme.

  • 29

    2.2 La base de données : l’entrepôt structuré del’information du site

    2.2.1 Modélisation des flux d’information et schéma de base dedonnées

    2.2.1.1 ModélisationDès lors que la majeure partie du contenu d’un site web est stockée dans une base de

    données, on comprend aisément l’importance que revêt l’organisation du contenu de

    cette base. Or, au préalable, on doit arriver à modéliser clairement les entrées et les

    sortis d’informations pour contrôler complètement le contenu des entrepôts

    d’information. Avant cette étape de contrôle du contenu de la base, on aura besoin de

    modéliser dans le détail les flux d’information de l’intérieur de l’organisation, qui

    sont propres à toucher le système d’information à construire. On parle, à cette étape,

    de modèle conceptuel. Un modèle conceptuel élémentaire est présenté en annexe 7.

    2.2.1.2 Schéma de base ou « modèle physique »Pour concevoir l’organisation de l’entrepôt des données, les experts en bases de

    données réalisent ce qu’on appelle le « schéma » de la base de données. C’est dans ce

    schéma que seront présentées les relations entre les différentes entités logiques

    d’information. C’est à partir de ce schéma que la structure réelle de la base de

    données sera réalisée (Ph. Mathieu [09]).

    Ce schéma de la base est aussi appelé « modèle physique » de la base de données.

    2.2.1.3 Flexibilité et évolutionS’il est une chose sur laquelle les experts en création de base de données insistent

    avec force et constance, c’est l’importance de la réflexion en amont permettant la

    conception de la structure d’une base. En effet, nombreux sont ceux qui, à un

    moment ou à un autre, se sont retrouvés avec une base de données ayant une

    structure pas assez bien pensée et qui ont rendu un produit beaucoup plus complexe

    que prévu, voire obsolète. Lorsqu’on se retrouve dans cette situation, le choix est peu

    enthousiasmant : soit on garde la structure du moment et aucune évolution du

  • 30

    système d’information n’est possible (ce qui remet en cause les investissements

    passés et freine certaines activités présentes), soit le schéma de la base est à refaire

    entièrement et c’est tout simplement un travail qui est repris à zéro. Bien sûr, tout

    dépend de la composition et de la structure de chaque base de données. Certaines

    bases atteignent un degré de complexité qui repousse même les informaticiens les

    plus courageux, tandis que d’autres permettent une remise à plat du problème et une

    reconstruction du système.

    Ainsi, la conception d’une base sera mieux faite si le ou les concepteurs ont en main

    un maximum d’éléments concernant les futures applications possibles pour le

    système d’information reposant sur cette base de données. Pour ce faire, les experts

    en la matière s’accordent à dire qu’il est nécessaire, pour les concepteurs, de partager

    cette réflexion en amont avec des experts « métier », c’est à dire les personnes qui

    connaissent le mieux le domaine d’application du futur système d’information (cf. §

    3.1.2 et Comyn-Wattiau [02]) . Ils sont généralement dans la meilleure position pour

    imaginer les caractéristiques du produit idéal, celui vers lequel le système devrait

    tendre, lors d’évolutions postérieures.

    2.2.2 L’outil d’exploitation de base de donnéesAfin de permettre aux informaticiens d’agir sur les bases de données autrement que

    par des lignes de code informatique, des produits ont été créés qui permettent la

    création et la modification des tables et des entrées des bases de données. Certains

    permettent également la visualisation de la structure générale d’une base (par la

    présentation des tables ainsi que des liens entre elles). Les plus connus ont pour nom

    FileMaker Pro et Access, mais ces derniers n’ont pas été créés à l’origine pour les

    bases de données de site web. Un outil d’exploitation de base de données très

    répandu s’appelle phpMyAdmin. Il présente l’avantage d’être gratuit et distribué sur

    l’Internet (annexe 2).

    2.2.3 Chargement des données et reprise de données existantesUne fois la structure de la base de données du site définie et préparée, une étape

    sensible concerne l’alimentation de cette base.

  • 31

    À l’instar de la réalisation de la structure de la base de données, plusieurs méthodes

    existent. L’une d’entre elles consiste à entrer les données une à une dans le système

    de gestion de base de données (SGBD). Pour éviter cette laborieuse méthode, une

    autre consiste à réaliser un téléchargement de fichier. Dans cette deuxième méthode,

    la difficulté réside dans l’obtention d’un fichier de données au format compatible

    avec la base de données elle-même.

    Lors d’une première alimentation de la base, quand la quantité de données est

    conséquente, le chargement des données est rarement manuel en raison du travail

    immense que cela peut représenter. Cependant, lors de la migration de données

    depuis un fonds papier, le choix du passage au format numérique ne laisse que peu

    de choix. Si une solution d’OCR n’est pas envisageable pour une raison ou une autre,

    les responsables du projet se voient contraints de recourir à la saisie pure et simple et

    de mobiliser l’énergie nécessaire (notamment avec l’aide de stagiaires…).

    Mettre la source d’information au format de la base de données

    Lorsque la source des données destinée à être publiée sur le site web dynamique

    provient d’un support numérique, un bon morceau du chemin est parcouru ! S’il

    s’agit d’une base de données, il s’agit d’une grande chance puisqu’en général, la

    structure de ce genre de support, de par sa rigueur, permet une plus grande souplesse

    dans l’étape de migration vers un autre entrepôt de données. En revanche, si les

    données à importer dans la nouvelle base de données proviennent de documents de

    traitements de texte, la tâche consistant à structurer les données peut s’avérer

    laborieuse. Dans le cas où les données sources sont stockées dans des feuilles de

    calcul de tableur (comme Excel de Microsoft), la structure de l’information en

    tableaux peut faciliter grandement le travail de conversion.

    Certains formats de fichiers numériques ont été créés pour les échanges entre

    logiciels (le CSV par exemple) tandis que d’autres (TXT), par les avantages qu’ils

    présentaient, se sont imposés comme des standards et ils remplissent le même rôle de

    passerelle.

  • 32

    2.2.4 Le choix d’une base de données en environnement WebAfin de réaliser un choix judicieux de base de donnée et donc d’un système de

    gestion de base de données pour un site web dynamique, il faut tenir compte de

    plusieurs éléments :

    • La quantité d’information à stocker ;

    • La structure que l’on souhaite lui donner (relationnelle ou non) ;

    • Le budget à disposition pour le projet ;

    • Le service après-vente souhaité ;

    • La main d’œuvre à disposition et son coût pour la maintenance ;

    • Et de plus en plus, la communauté d’utilisateurs accessible sur l’Internet.

    Le marché des bases de données est composé de quelques grands acteurs que l’on

    retrouve en concurrence sur la plupart des projets (Microsoft, Oracle, IBM et Sybase

    sont des acteurs fréquents dans les grands projets, MySQL se retrouve très souvent

    dans les moins grands).

  • 33

    2.3 Le programme passerelle

    Il s’agit de l’élément en partie 3 de la figure n° 5 (structure de site web).

    Le programme passerelle ou programme applicatif a deux tâches principales :

    extraire de la base de données les données nécessaires à la construction de la page

    web demandée et produire la page HTML résultat, à partir de ces données.

    Selon les applications, le protocole utilisé pour les programmes passerelle est soit le

    protocole CGI (Common Gateway Interface – littéralement traduit de l’anglais

    « interface de passerelle commune »), soit une API (Application Programming

    Interface – « interface de programmation d’application ») propriétaire, telle que

    NSAPI de Netscape ou ISAPI de Microsoft.

    Il existe une grande variété d’interfaces d’accès au SGBD : ODBC (Open Database

    Connectivity), JDBC (Java Database Connectivity), OLE-DB, etc. Le choix parmi

    ces interfaces doit tenir compte, entre autres, du SGBD, du langage utilisé pour

    l’implémentation du programme et de l’environnement logiciel existant.

    Lorsque l’on construit un site web dynamique, on a bien sûr la possibilité de jouer

    sur le choix des interfaces (par exemple CGI versus API), mais le point essentiel

    réside dans les décisions de design du programme applicatif concernant la

    méthodologie de mise en œuvre, et les fonctionnalités procurées par le programme.

    Cependant, lors de la création de la majorité des sites web dynamiques, les

    fonctionnalités des programmes passerelle sont considérées après les fonctionnalités

    du langage de programmation orienté serveur (sous partie 2.4). De fait, lors du choix

    du langage, un programme passerelle type accompagne souvent ce langage et le

    choix n’a donc pas toujours besoin d’être réalisé.

  • 34

    2.4 Le liant

    2.4.1 Fonctionnement d’un langage de programmation orientéserveur

    Également appelé langage applicatif ou langage de script, le langage de

    programmation orienté serveur communique avec le programme passerelle (cf. figure

    5) qui lui-même effectue des requêtes directement auprès de la base de données.

    Un langage de script est un langage de programmation qui n’est pas compilé, mais

    interprété. Dans le cadre du Web, il est utilisé pour être exécuté sur un serveur web,

    par le programme passerelle (cf. sous partie 2.3), mais il peut aussi fonctionner sur

    un ordinateur non connecté à un réseau, dès lors qu’il possède un interpréteur adapté.

    Dans un site web dynamique, ce type de langage va donc permettre de lier les pages

    du site web à une ou plusieurs bases de données, ce qui a pour effet d’apporter à ces

    pages le potentiel immense de stockage et d’organisation de l’information de ces

    mêmes bases.

    Dans ce dessein, le langage de programmation orienté serveur véhicule d’autres

    langages, ceux des bases de données (par exemple le SQL) et récupère ainsi les

    informations souhaitées au cœur de ces entrepôts de données.

    Au delà des simples requêtes de bases de données, un langage de programmation

    orienté serveur peut rendre d’autres services comme de réaliser des calculs à partir

    des données récupérées dans une base de données, avant de restituer le résultat du

    calcul à l’utilisateur qui émet la demande. On comprendra alors que les possibilités

    sont immenses.

    Enfin, comme nous l’avons vu dans la partie 1.2.1, ces langages permettent de

    disposer d’instructions conditionnelles. On pourra par exemple présenter un contenu

    particulier à un utilisateur en fonction de son pays d’origine ou de la date à laquelle il

    consulte une même page.

  • 35

    2.4.2 Les fonctionsLes fonctions des langages de programmation pour les pages dynamiques ont pour

    objectif principal de simplifier le travail de programmation.

    Une fonction est ce que l'on peut appeler un sous programme du langage de

    programmation orienté serveur, une procédure. On distingue deux types de

    fonctions : les « fonctions intégrées » (en anglais « built-in ») qui sont incluses par

    défaut avec les versions de la plupart des langages (notamment le PHP) et les

    fonctions définies par le programmeur, dites aussi "fonctions utilisateur".

    Les fonctions ont plusieurs buts :

    • Éclaircir le code en regroupant certaines fonctionnalités d'un programme qui se

    répètent dans une même fonction ;

    • Pouvoir créer des fonctions génériques qui pourront être utilisées dans d'autres

    programmes, ce qui évite de répéter pour chaque projet le même code ;

    • Possibilité d'évolution du code plus facile dans la mesure où lorsque le contenu

    d'une fonction est modifié, les répercussions sont effectuées sur l'ensemble du

    programme sans que l’on ait à le modifier, dans la plupart des cas.

    2.4.3 Ce qui peut guider le choix d’un langage de programmationParmi les différents langages de programmation orientés serveur existants : ASP, C,

    C++, Java, JavaScript, PHP, PERL, VBScript (pour plus de détails, on se reportera

    au livre « Création de pages Web dynamiques » de Ph. Mérigot et J.M. Hérellier

    [06], p.6), plusieurs critères sont à connaître afin de guider son choix.

    Pour un professionnel de l’information, deux solutions se présentent :

    La première est de soumettre au personnel purement technique l’ensemble

    (exhaustif) des fonctionnalités souhaitées pour le futur système d’information

    dynamique. Les personnes tiendront compte de ces pré-requis ainsi que des

    compétences disponibles au sein de l’équipe technique et de l’infrastructure

    logicielle existante dans le parc informatique de l’organisation.

    La seconde solution consiste à confronter la décision de ce choix à plusieurs

    paramètres :

  • 36

    • La complexité de la programmation (certains langages sont très abordables,

    même pour des néophytes de l’informatique - Ph. Rigaux [11]) ;

    • Le nombre d’utilisateurs de ce langage, proportionnellement aux autres (ce

    facteur est important si l’on souhaite avoir accès à une communauté d’utilisateurs

    qui peut s’avérer d’une grande aide, via l’Internet en particulier) ;

    • Savoir si les machines qui accueilleront l’interpréteur du langage (le programme

    passerelle) sont en mesure de traiter un langage plutôt qu’un autre (par exemple,

    les machines fonctionnant avec le système d’exploitation Windows NT seront

    prédisposées à interpréter de l’ASP et celles fonctionnant avec le système Unix

    seront plus aptes à fonctionner avec le langage PHP) .

  • 37

    2.5 Conception de l’interface du site web

    Du point de vue de la perception cognitive, la conception de l’interface du site web

    est toute aussi importante pour les sites web dynamiques que pour les sites web dits

    statiques. Par ailleurs, la grande majorité des éléments de page, venant

    principalement du langage HTML, sont communs entre ces deux types de sites. Par

    conséquent, la réalisation implique les mêmes connaissances et compétences. Si, au

    final, une page dynamique ne comportera pas le même code qu’une page statique,

    l’étape de conception d’une page dynamique, elle, utilisera le même langage HTML,

    pour présenter une maquette visualisable. En effet, une page dynamique ne doit

    servir de maquette pour la simple raison que sa réalisation est beaucoup plus

    laborieuse qu’une simple page au format HTML.

    2.5.1 Les étapesLa réalisation de la maquette HTML comportera au minimum les étapes suivantes :

    • Étapes préalables

    - Connaissance du contenu futur du site ;

    - Connaissance du public cible du site ;

    - Dessin de l’arborescence du site, du plan du site ;

    • Préparation de l’organisation des éléments des pages

    - Dessin d’une grille (ce qu’on appelle le gabarit)

    - Symbolisation des éléments logiques de la page – en tenant compte, si

    possible, des parties qui seront dynamiques et de celles qui seront statiques

    (le contenu des parties dynamiques modifie parfois la présentation et la mise

    en page) ;

    Note 1 : une même page web peut comporter des éléments statiques et

    dynamiques en même temps. On l’appellera toujours page dynamique.

    Note 2 : une application de dessin assez simple peu suffire (PowerPoint de

    Microsoft par exemple).

  • 38

    - Création de l’interface en tenant compte des parties stables (parties

    permanentes, comme les éléments de navigation, les logos, etc.)

    - Multiplication de la grille par le nombre de niveaux dans l’arborescence et

    adaptation ; toujours avec l’application de dessin ;

    - Concevoir une charte graphique ;

    • Conception de la maquette HTML

    - Réaliser une feuille de style en même temps que les trois premiers écrans.

    Pour la feuille de style, il faut avoir l’ensemble des niveaux de titres et

    d’éléments de pages.

    - Montrer la maquette aux intéressés (experts métier (sous partie 3.3.2) et futurs

    utilisateurs) pour glaner des idées et des critiques. Améliorer l’interface à

    plusieurs reprises avant de la soumettre à l’épreuve du comité directeur. Il

    s’agit d’une procédure itérative.

    - Mettre l’interface à l’épreuve de grilles de conseils en ergonomie et

    d’évaluation d’interface web.

    Note : l’avantage de la maquette HTML simple est que si elle est sur le réseau

    informatique, l’ensemble des intervenants peut la visualiser et la tester et les

    améliorations peuvent être faites simultanément par l’auteur. (Par exemple deux

    personnes peuvent se parler au téléphone et être toutes les deux devant un écran

    d’ordinateur et la page web commentée).

    2.5.2 Quelques outils d’aide à conceptionPour la réalisation de la maquette HTML, on pourra utiliser Dreamweaver MX de

    Macromédia (notons que cet éditeur contient plusieurs modules d’assistance à la

    création de pages web dynamiques), HTML Editor de Mozilla ou Frontpage de

    Microsoft. Ces logiciels ont pour point commun d’être des éditeurs wysiwyg, c’est à

    dire qu’ils présentent les pages web, pendant leur création, d’une façon semblable à

    ce à quoi la page ressemblera. D’autres logiciels existent et je ne cite ici que les plus

    répandus.

    Certaines personnes préfèrent de simples éditeurs de texte afin de mieux contrôler le

    code des pages. C’est une question de goût et d’habitude.

  • 39

    2.6 Le cas du projet au HCR

    2.6.1 Le choix des « technologies Web » et la conception du siteDès lors que le sujet de la mission de stage a été donné (cf. sous partie 1.5), le

    nombre de pages web suggéré a été relativement simple à calculer : 130 camps

    comptant entre 5 et 10 pages chacun, en ajoutant à cela les nécessaires pages de

    navigation, nous aurions un site qui tourne autour du millier de pages au minimum.

    La solution de créer les pages une à une était inenvisageable pour deux raisons. La

    première étant que la durée du stage, quatre mois, ne suffirait certainement pas. La

    seconde étant qu’une fois le site web réalisé, avec des pages statiques, il serait si

    laborieux de le mettre à jour qu’on pourrait le considérer comme mort-né. La

    solution d’un site web reposant sur une base de données et générant des pages

    dynamiquement s’est imposée.

    Quand la décision de réaliser un site web dynamique fût prise, le moment du choix

    de la technologie était venu. Ce que j’avais entendu nommer le trio PHP – Apache –

    MySQL semblait pouvoir répondre au besoin que nous avions formulé.

    Le choix de ces technologies était principalement guidé par la contrainte financière.

    Ce projet étant un projet de stage (les stagiaires du HCR ne sont pas rémunérés), il ne

    devait pas coûter d’argent au Commissariat. Aucun budget n’existait pour ce projet et

    c’est pourquoi le choix de logiciels libres, gratuits et au demeurant très fiables,

    semblait le meilleur. Par ailleurs, lors des seules occasions que j’ai eu d’approcher

    l’édition dynamique en ligne, nous avions opté pour ces technologies. Enfin, il s’est

    trouvé que l’équipe technique qui acceptait de nous donner un coup de main sur la

    partie de la programmation était justement en train d’explorer la possibilité d’avoir

    recours à cette technologie de PHP, pour l’intranet de l’organisation en particulier.

    Pour donner son corps au site web, il fallait réaliser son architecture et définir les

    bases de sa logique de navigation.

    Pour ce faire, je suis parti d’une mise en page traditionnelle, bien qu’adaptée au

    format écran (cf. annexe 4), avec la logique de l’organisation des éléments de pages

    de sites web.

  • 40

    En ce qui concerne la logique de navigation, la solution de navigation par zoom –

    telle qu’une personne du HCR l’a décrite – m’est apparue comme la plus logique. En

    effet, puisque la problématique du site concerne des camps de réfugiés dispersés

    géographiquement sur la planète, la navigation par cartes géographiques semblait la

    plus adéquate. En outre, pour ne pas obliger chaque utilisateur à passer constamment

    par l’étape du « zooming » à chaque déplacement dans le site, j’ai décidé de placer

    trois jump-menus comme éléments permanents de page. Les trois menus sont

    géographiques, l’un concerne des régions du monde qui sont concernées par les

    camps de plus de cinq mille réfugiés, un autre les pays concernés et le dernier les

    localisations concernées (souvent les noms des camps eux-mêmes).

    Figure 6. – Colonne vertébrale du site web et symboles des niveaux géographiques.

    À nouveau, lors de la réalisation de la logique du site, j’ai pu constater combien le

    design de la structure du site est imbriqué avec le design des pages elles-mêmes. De

    fait, lors de la présentation du projet d’architecture du site à mon responsable et aux

  • 41

    personnes concernées, j’ai toujours montré la structure générale et le design des

    pages à chaque niveau en même temps.

    Dès que la maquette HTML montrait suffisamment l’idée du site, je l’ai téléchargée

    vers un ordinateur distant, accessible sur le web, afin de permettre à mes

    collaborateurs de le voir et de me transmettre leurs critiques. Il est resté en ligne

    toute la durée de la deuxième partie de mon stage (mi-juin à mi-septembre 2004) et a

    servi de modèle de base à la personne qui s’est occupé de la programmation en PHP.

    (Cette maquette est encore en ligne au moment de la rédaction de ce mémoire à

    l’URL suivante :http://radard.free.fr/RSIP-site001/)

    2.6.2 Le travail de la transformation de la source de statistiques auformat de la base de données

    Les données statistiques à présenter sur le site web étaient, à l’origine, réparties sur

    autant de fichiers Excel que de camps de réfugiés concernés par le projet (130). L’un

    des travaux d’un consultant du HCR fut, entre les deux parties de mon stage, de

    compiler ces fichiers Excel dans un seul, pour des fins d’analyses statistiques. Cette

    démarche de compilation fut une chance pour le projet de site web puisqu’il unifia

    les 130 fichiers et simplifiait du même coup le travail d’importation qui devait suivre

    (cf. annexe 5).

    Le travail de formatage de la source des données (le fichier Excel global) au format

    de la base de données MySQL a alors consisté à passer du format Excel à un format

    ASCII délimité. Le format CSV en est un et c’est celui que nous avons choisi.

    Un autre problème est alors apparu. La compilation des fichiers Excel s’était faite en

    gardant l’ordre des fichiers Excel d’origine. Les données statistiques sur les camps

    étaient en colonnes. Or le besoin pour la base de données et la programmation en

    PHP était d’avoir les données sous forme de lignes. Sans entrer exagérément dans les

    détails, nous avons dû procéder à une transposition des colonnes en ligne. Afin de

    rendre cette transposition automatique, camp par camp, nous avons créé une macro

    Excel qui faisait non seulement cette transposition mais aussi une série de

    modifications nécessaires pour le format visé.

    http://radard.free.fr/RSIP-site001/

  • 42

    Troisième partie :

    Implications organisationnelles

  • 43

    Il ne serait pas très intéressant de détailler point par point les étapes

    organisationnelles de réalisation d’un site web dynamique puisque celles-ci se

    retrouvent pour une grande part dans les étapes de création d’un site web statique,

    sujet très bien documenté aujourd’hui.

    En revanche, il peut s’avérer utile de se concentrer sur ce que la notion de dynamique

    entraîne, en termes d’organisation de projet, et que la publication de site statique ne

    connaît pas. C’est d’autant plus attrayant si l’on considère la relative rareté des

    documents sur ce sujet précis.

    Ainsi, nous passerons assez rapidement sur les étapes communes avec la réalisation

    de sites web statiques et nous nous attarderons sur ce qui fait d’un projet de site web

    dynamique un projet particulier.

  • 44

    3.1 L’équipe du projet et les différents acteursimpliqués

    La création d’un site web dynamique, pour diffuser les informations d’une

    organisation, que ce soit en interne ou en externe, requiert la participation d’un

    certain nombre de personnes aux compétences différentes. Les uns seront les mieux à

    même de fournir une information pertinente pour le contenu du site, les autres auront

    une expertise sur l’organisation de l’information sur ce système de publication et

    d’autres encore auront une connaissance technique nécessaire à la réalisation du

    produit. La quantité de personnes nécessaires à un projet dépendra naturellement de

    la taille ainsi que de la complexité de réalisation du site.

    3.1.1 Le personnel techniqueJ’ai choisi de m’inspirer d’une figure du livre « Les bases de données pour l’Internet

    et l’intranet » de Imad Saleh [12] pour présenter les différentes compétences à

    rassembler autour d’un projet de site web dynamique.

    Figure 7. - Le personnel technique et ses domaines de compétences

  • 45

    En lisant cette figure de gauche à droite, nous avons d’abord les programmeurs qui

    doivent maîtriser au moins un langage de programmation orienté serveur (cf. sous

    partie 2.4) et, par conséquent, qui sont nécessaires à la réalisation des pages web

    dynamiques. Ils prennent la maquette HTML et ses pages statiques comme modèle et

    réalisent le code nécessaire pour rendre ces pages dynamiques.

    Les concepteurs du site web seront ceux qui pensent l’organisation de l’information

    et sa présentation. Une connaissance des sciences cognitives sera la bienvenue ainsi

    qu’une bonne capacité à se mettre dans la peau des futurs utilisateurs.

    Les administrateurs du système de gestion de base de données sont les connaisseurs

    et manipulateurs de la base de données et de sa structure. Ils la créeront en se basant

    sur le modèle conceptuel réalisé en amont par les experts du contenu et les

    concepteurs du site web. Ils seront responsables de la flexibilité du schéma de la base

    (cf. § 2.2.1.3).

    Les administrateurs système et administrateur du réseau, pour les organismes ayant

    un réseau informatique interne, seront ceux dont la responsabilité porte sur

    l’infrastructure d’« accueil » du système d’information dynamique. Les sites web ont

    besoin de pouvoir transmettre des informations selon un protocole qui est à la base

    de l’Internet, le protocole TCP/IP. Ils seront également responsables des capacités

    des ordinateurs à héberger les logiciels nécessaires (serveur web, etc.) ainsi que les

    données que le site devra héberger (la ou les bases de données).

    Le coordinateur ou chef de projet sera à la frontière entre l’équipe technique et les

    experts « métier ». À la fois capable de comprendre l’ensemble des paramètres

    techniques impliqués, il sera responsable de la cohésion de l’équipe et de la bonne

    marche de ce projet de création.

    3.1.2 Le personnel dit « expert métier »Dans le jargon professionnel, la désignation « expert métier » provient probablement

    de l’expression anglo-saxonne « subject-matter-expert » (littéralement « expert de la

    matière du sujet »). C’est des compétences de ce type de personnel que la qualité du

    produit final va grandement dépendre. Il est à même de comprendre les subtilités du

    domaine de l’organisation (ou du département) pour laquelle le site web dynamique

  • 46

    est réalisé. Ce sont les experts métier qui doivent être à l’origine du modèle

    conceptuel du système d’information ainsi que des fonctionnalités du site. Les

    experts métier pourront travailler avec les concepteurs de l’interface pour échanger

    leurs points de vue sur le positionnement des éléments en fonction de leur

    importance relative.

  • 47

    3.2 Impact du facteur dynamique sur l’organisation duprojet de site web

    3.2.1 Les caractéristiques propresUn site web dynamique est plus complexe à réaliser qu’un site web statique. C’est

    sans aucun doute pour cela que les professionnels de l’information qui souhaitent

    passer à cette forme de gestion de contenu de site ont souvent une expérience des

    sites web statiques. Ils ont pu constater les difficultés causées par les mises à jour de

    quantités parfois écrasantes de pages HTML.

    C’est pour cette même raison que les sites web dynamiques font appel à un personnel

    plus technique, comme nous avons pu le voir en partie 3.1. Du point de vue purement

    organisationnel, c’est assez important car les relations entre personnel technique et

    personnel non technique sont parfois difficiles. En effet, l’approche des problèmes

    par ces deux groupes de personnes n’a souvent que très peu de points communs et les

    priorités des uns et des autres sont également différentes. Ainsi, la gestion de projet

    de création de site web dynamique possède une particularité certaine.

    En outre, de par leur nature au contenu et contenant dissociés, les sites web

    dynamiques, présentent une sensibilité accrue. Contrairement aux sites web statiques,

    les personnes en charge du contenu et de sa présence dans la ou les bases de données

    sont différentes des personnes en charge de la mise en page et de l’interface. Cela

    implique une coordination de personnes. Pour un professionnel de l’information (ou

    documentaliste), s’il est en charge, avec une ou deux autres personnes de la présence

    de telles ou telles pages web sur le site web statique du département, il a en main

    tous les éléments. Dans le cas d’un site web dynamique, le nouveau contenu d’une

    page nouvelle devra suivre un tout autre chemin puisqu’il devra être présent sur la

    base de données du site. Or, si ce professionnel de l’information ne connaît pas de

    procédure simple pour mettre à jour la base, il devra compter avec les informaticiens

    disponibles. Notons que ce sujet touche davantage la maintenance que la création du

    site.

  • 48

    3.2.2 Entre un projet de site web et de développement d’application

    3.2.2.1 Parallèle avec une méthodologie de conception de site webstatique

    Prenons l’exemple de la « méthodologie de conception d’un service web » (A. Le

    Guelvouit [39], p.31) :

    Tableau 1

    Fondations pour menerà bien le projet

    Etude préalabled’opportunité

    Définition des basespour la réalisation du

    service web

    Conception informelle

    Conception détaillée duservice

    ➧ Création du comité de pilotage chargé du suivi de projet➧ Mise en place d’une méthodologie de construction, créée etcontrôlée tout au long de l’avancée du projet par le comité

    ➧ Estimation de l’opportunité de développer un serveur/serviceweb : définition des objectifs généraux du futur service

    ➧ Etude de viabilité du projet en fonction des ressourcesexistantes et/ou libérables

    Décision de réaliser, d’ajourner ou d’abandonner le projetChoix d’un mode de développement(interne, externe ou intermédiaire)

    ➧ Définition des responsabilités et des postes de travail➧ Planification du travail : mise en place d’un calendrier➧ Explication des objectifs opérationnels du projet

    ➧ Proposition de solutions envisageables pour développer leprojet

    Evaluation et choix d’une solution de développement

    ➧ Description précise, et autant que faire ce peu, exhaustive dela solution retenue via un cahier des charges

    ➢ Description complète du futur service (contenu,organisation, hiérarchisation, liens entre les pages,graphisme, ergonomie, etc.)

    ➢ Mise en place de l’architecture du service

    Décision de réaliser les spécifications du cahier des charges(avec ou sans révisions)

    A ça stade, rien ne

    diffère de la conception

    d’un site dynamique.

  • 49

    ➧ Réalisation de l’intégralité des pages du serviceweb après accord du comité de pilotage sur lamaquette

    Mise en placed’une maquette

    électronique

    Réalisation duservice dans

    son intégralité

    Mise en oeuvredu projet

    Evaluation duservice

    ➧ Réalisation d’une maquette électroniquereprenant les spécifications décrites dans le cahierdes charges

    ➢ Mise en place de l’architecture, dugraphisme, de l’ergonomie réelle que l’onretrouvera dans le service final mais surun ensemble de pages limité

    Evaluation de la conformité de la maquette auxspécifications du cahier des charges

    Test de la maquette électronique en interne et enexterne

    Ajustement de la maquette en fonction desremarques du comité de pilotage

    ➧ Mise à jour du service web➢ Mise à jour des informations existantes➢ Création de nouvelles pages

    ➧ Mise en oeuvre de la politique de promotion➢ Référencement du service auprès desmoteurs et annuaires de recherché (etautres sources d’informations, etc.)

    Décision de mettre le site en ligne

    ➧ Evaluation du produit “service web”➢ Vérifier si les objectifs qui lui étaientassignés ont été remplis➢ Proposer des solutions aux problèmesou erreurs qui apparaissent➢ Tirer des conclusions sur les méthodeset techniques utilisées pour réaliser leservice : cela permettra d’avoir un regardexpérimenté et d’éviter de refaire lesmêmes erreurs lors de futursdéveloppements.

    Suite de la méthodologie de conception d’un site statique Variations pour un

    site dynamique

    Maquette en HTMLuniquement. Rien dedynamique, pas deprogrammation à ce stade

    Conception du schémade la base de données,fondé sur l’architecturedu site faite auparavant

    Récupération desdonnées et mise auformat pourl’alimentation de la BDD

    Mise en place de lastructure de la base dedonnées (selon schéma)et premier chargementde la BDD

    Programmation despages du site avec lelangage applicatif, calquésur le modèle statique

    Ici, mise à jour de la base

    de données uniquement

    Ici, ajout de lignes dans une

    table de la base de

    données (les pages sont

    créées à la volée). Pour

    d’autres “types” de pages

    ou d’autres sections, il

    faudra programmer de

    nouveaux canevas

  • 50

    3.2.2.2 Parallèle avec une méthodologie de conception de logicielOn a vu que la création d’un site web dynamique requiert une équipe à caractère plus

    technique que la création d’un site web statique pour la simple raison qu’il y a

    nécessité de programmer certains comportement des pages dynamiques. Voyons

    maintenant à quel point cette nécessité de programmer le site rapproche un tel projet

    d’un projet de création de logiciel, par la comparaison avec une synthétique

    méthodologie de programmation (J.CH. Soulie [45]) :

    Méthodologie

    de programmation

    Analyse des besoins :

    • Définir les fonctionnalités du logiciel, établies par le

    client et devant être comprises par l'équipe de

    développement.

    • Cette première étape se conclut par l'élaboration d'un

    cahier des charges : mode d'emploi, limites

    d'utilisation.

    Conception globale :

    • Étape la plus délicate : découpage du projet en

    modules ; chaque module correspondant à un service

    (ou ensemble de services) rendu(s).

    • Chaque module fera l'objet d'une spécification

    précise.

    • Le dossier de spécification fait apparaître la

    décomposition en blocs fonctionnels du projet. Ces

    modules sont spécifiés et les données d'entrée et de

    sortie sont précisées. Les tests d'intégration sont mis en

    évidence.

    Variations pour la conception

    d’un site web dynamique

    Concernant l’analyse des besoins,

    chaque étape est valable pour un

    site web dynamique.

    Les « modules » d’un programme

    informatique peuvent se comparer

    aux fonctionnalités d’un site

    dynamique.

    Ces notions sont transposables au

    projet de site web, mais elles sont

    tout de même plus axées

    développement d’application.

  • 51

    Conception détaillée :

    • Les modules résultant de l'étape sont détaillés : les

    algorithmes sont décrits en pseudo-langage.

    • Ces renseignements sont regroupés dans un dossier

    de conception détaillé.

    Réalisation :

    (codage) du logiciel ; listing complets.

    Tests unitaires :

    validation des modules séparés.

    Tests d'intégration :

    coopération correcte des modules.

    Réception, Validation et Maintenance :

    • Livraison, validation par une utilisation

    opérationnelle.

    • Maintenance (corrections d'erreurs, amélioration, ...).

    L’équivalent de conception

    détaillée de la création d’un logiciel

    peut être ce que l’on appelle les

    spécifications fonctionnelles d’un

    site dynamique. On y notera tous

    les détails sur la présentation de

    l’information, permis par le langage

    de programmation orienté serveur

    (cf. sous partie 2.4).

    L’étape de la réalisation du codage

    à lieu également pour les pages

    dynamiques.

    Mis à part les tests unitaires, toutes

    les autres étapes de la méthodologie

    de programmation sont utiles à la

    création d’un site web dynamique.

    Tableau 2

    Force est de constater que la méthodologie utilisée pour la programmation d’un

    logiciel comporte beaucoup de points communs avec celle dont une équipe créatrice

    de site web dynamique à besoin.

    3.2.3 L’orchestrationComme tout projet informatique ou tout projet intégrant une équipe d’intervenants, la

    création d’un site web dynamique doit être coordonnée par un chef de projet. Cette

    personne est nécessaire ne serait-ce que pour être l’intermédiaire du mandataire. À

    partir d’une certaine taille (projets informatiques conséquents), on pourra également

    avoir recours à différents niveaux de responsabilité tels que les rôles de maître

    d’œuvre et de maître d’ouvrage, à l’instar des projets de travaux publics. C’est une

  • 52

    configuration d’organisation particulièrement fréquente quand l’organisme

    mandataire du service fait appel à un prestataire extérieur.

    3.2.3.1 Maintien du capL’une des principales fonctions du chef de projet est de maintenir son équipe sur la

    voie du projet. Nombreux sont les imprévus et les variations dans les charges de

    travail, les écarts entre les délais prévus et les délais réels. Pendant le déroulement du

    projet, le responsable de projet se doit de garder l’objectif final du site en tête et de le

    rappeler, lorsque nécessaire, aux différents intéressés (B.Boiko [21]).

    3.2.3.2 Adaptation du planning et gestion des prioritésLorsque des imprévus viennent modifier les délais de certaines réalisations, le

    responsable de projet peut adapter le planning en fonction. On pourra se dire : « telle

    partie du projet ne peut avancer pour telle ou telle raison, voyons si telle autre, qui

    devait commencer plus tard, ne peut commencer maintenant, en fléchissant un peu le

    plan de déroulement des opérations ».

    Il est parfois possible de compenser ainsi des freins imprévus. D’autres fois,

    l’enchaînement des tâches fait qu’il est impossible de commencer une opération

    avant d’en avoir fini une autre. Dans ce cas, il faut savoir renoncer à certaines

    fonctionnalités secondaires pour atteindre l’objectif global. Même si toutes les

    caractéristiques ne sont pas là, le produit aura une meilleure chance de rendre service

    à ses utilisateurs s’il a toutes les fonctionnalités essentielles que si ces dernières ont

    été mal réalisées en raison d’autres détails fonctionnels. En somme, il est nécessaire

    de garder une vue d’ensemble et être prêt à réaliser quelques compromis pour

    l’atteinte des grands objectifs.

    3.2.3.3 CommuniquerLa cohésion de l’équipe dépend de la capacité du responsable de projet à

    communiquer. Chacun, en sachant où il en est et où en est le projet, peut se situer et

    adhérer à la mission commune. Un outil que je trouve particulièrement utile pour

    fédérer l’équipe ainsi que pour donner une idée au mandataire de l’avancement d’un

    projet est l’utilisation des schémas et figures symbolisant les échanges

    d’informations, les étapes à suivre, les sous parties du projet, etc (cf. annexes 1 et 7).

  • 53

    Garder une simplicité dans ces moyens de communication est garant d’une bonne

    compréhension par l’ensemble des intervenants. Pour les schémas, on favorisera la

    couleur et les symboles clairs, éventuellement les animations simples que permet par

    exemple le logiciel Powerpoint pour les présentations sur écran ou les projections en

    salle de réunion. Les impressions de diapositives (pages) Powerpoint en couleur,

    même si les animations doivent être laissées à l’écran, sont également un très bon

    moyen pour communiquer les concepts et orientations.

    Il est particulièrement intéressant de fixer, dès le départ du projet, une série de

    rencontres régulièrement planifiées avec les différents acteurs du projet. Des

    aménagements et modifications peuvent être faits par la suite, mais le respect des

    échéances favorisera le résultat du travail commun.

    3.2.4 Les facteurs clés de succès et autres garants de la pérennité duproduit

    À la lumière de la littérature lue sur des sujets connexes, pour garantir la qualité d’un

    produit dynamique d’information en ligne, plusieurs critères devront être respectés :

    • La livraison d’un produit clé en main ne nécessitant plus aucun développement

    pour fonctionner ;

    • L’utilisation du maximum de standards existants de l’informatique du moment

    (en termes de composants logiciels et de langage de programmation) ;

    • Une conception flexible pouvant accepter de nouveaux développements de

    fonctionnalités ou de pages ;

    • Un poste du département concerné à qui est transmise la responsabilité des mises

    à jour du contenu (un poste et non pas une personne, car les personnes sont plus

    mobiles que les postes) ;

    • La formation adéquate des personnes en lien avec la maintenance du site web

    dynamique ;

    • Une documentation claire et complète sur le produit et ses composants (et qu’elle

    soit accessible !)

    • Une charte qualité pour la maintenance du site web

  • 54

    3.3 Impact au niveau du département concerné

    3.3.1 Un contenu à produire et à publierLes sites web dynamiques, s’ils apportent une plus grande flexibilité sur la

    manipulation d’un contenu informationnel conséquent, ils demandent par ailleurs une

    prise de conscience par les fournisseurs de contenu de l’importance de mettre à jour

    l’information publiée.

    Un avantage sur la qualité de l’information transmise, puisqu’on parle d’information

    à jour et à valeur ajoutée importante, apporte donc son lot d’inconvénients si l’on

    considère la charge de travail que cela peut représenter.

    Lorsqu’un produit d’information de ce type est ajouté à une gamme de produits

    d’informations déjà existants, pour un centre de documentation par exemple, il est

    nécessaire de prévoir un aménagement du temps, proportionnel à la fréquence des

    mises à jour nécessaires et au travail qu’elles demandent.

    On pourra argumenter que les informations fournies via un site web dynamique

    seront autant d’informations qui n’auront pas à être données en direct par le

    personnel du département, ce qui allègerait substantiellement la charge de travail

    quotidienne. C’est, en réalité, sans compter le nombre de personnes qui n’ont pas

    accès au réseau informatique sur lequel le produit sera présenté. Bien entendu, ce

    nombre de personnes variera d’un projet à un autre, d’un organisme à un autre et

    d’un département à un autre. Aussi, le public visé par un produit d’information est

    crucial à connaître car il peut être informatisé et connecté à 100% comme à zéro.

    3.3.2 Préparer la structure pour les réactions extérieuresDans les effets prévisibles de la mise en ligne d’un nouveau service d’information,

    on peut compter l’inévitable « feedback », l’expression anglaise qui décrit le retour

    d’impression et la réaction du public au contenu mis en ligne. Comme il est à peu

    près inévitable d’avoir un nombre de réactions proportionnel à la taille du public

    cible, il est sage de prévoir une infrastructure capable de répondre aux demandes

    d’informations subsidiaires ainsi qu’aux réactions.

  • 55

    3.4 Le cas du projet au HCR

    3.4.1 Les sujets soulevés par la mise en œuvre du projetLe département dans lequel j’ai réalisé mon stage était composée d’une dizaine de

    personnes. Deux se sont occupés de me fournir le contenu statistique du site et un

    autre m’a transmis les cartes géographiques. Le responsable de la section m’a aidé à

    nouer les contacts dont j’avais besoin ainsi qu’à poussé le projet aux moments

    nécessaires.

    Ce qui a donné un ton original au projet de site web dynamique sur les camps de

    réfugiés est la position de stagiaire que j’occupais vis-à-vis de l’impact que ce site

    pourrait avoir s’il était effectivement publié sur l’Internet. Grâce à ce contexte et à la

    gentillesse de l’équipe, j’ai bénéficié d’un traitement très satisfaisant et d’une

    attention que les autres stagiaires de l’organisation auraient pu envier ! Tout le travail

    qui était fourni pour l’obtention de ces indicateurs statistiques, et j’étais celui qui

    allait leur donner une visibilité sans égale. C’est ainsi que j’ai ressenti mon

    environnement de travail, en particulier vers la fin du stage.

    Dans ce contexte, dès que nous avons dû compter les ressources (humaines) dont

    nous aurions besoin pour la réalisation du projet, il nous a fallu chercher le personnel

    technique nécessaire (cf. sous partie 3.1.1). Même si le projet ne disposait pas d’un

    budget particulier, sa réalisation rentrait tout de même dans les objectifs de la section

    et il était donc tout à fait normal de faire appel à des techniciens de l’organisation.

    Nous avons présenté notre projet aux équipes en charge de l’intranet et du site web

    de l’organisation (www.unhcr.ch). L’équipe de l’intranet s’est proposée pour

    l’assistance technique dont nous aurions besoin.

    Pendant l’élaboration des pages de la maquette HTML, une personne du département

    a souhaité insister sur l’importance de ne pas impliquer d’autres départements

    comme fournisseurs de contenu pour ne pas créer de problème lors des futures mises

    à jour.

    Comme le site, de l’avis du mandataire (le responsable de stage), perdrait

    énormément de sa valeur ajoutée s’il ne présentait que des données chiffrées, il s’est

  • 56

    installé un petit débat sur ce sujet. Les deux points de vue étaient tout à fait

    défendables, mais notre public cible était trop varié pour que l’on puisse faire

    l’économie d’un peu de texte et de quelques images. De plus l’effort à fournir pour

    centraliser ces éléments est peu important (il nécessite environ une demi-journée par

    an). Les images, servant à illustrer les pages, n’ont pas à être mises à jour.

    3.4.2 Une organisation du travail en quatre sous projetsAu cours de la conception de ce site web, plusieurs « chantiers » étaient en marche.

    Un aperçu des quatre grands chantiers peut être vu en annexe 1 et sur la figure 8. Le

    premier est le chantier de la base de données statistique. Le deuxième est celui du

    serveur web. Le troisième est celui de la structure du site et le quatrième celui de

    l’interface graphique, donc de la maquette HTML et de la programmation en PHP.

    Figure 8. – Les quatre principales parties du projet de site d’information sur les

    camps de réfugiés

  • 57

    Conclusion

  • 58

    Nous avons vu que la mise en œuvre d’un projet de création de site web dynamique

    pose un certain nombre de problèmes. Depuis la reprise des données existantes, qui

    peut nécessiter un grand nombre d’opérations de transformations laborieuses pour

    être mises au format d’une base de données, jusqu’aux