next_inactive up previous


MINI PROJET 4

ECOLE POLYTECHNIQUE DE MONTREAL
Département de génie électrique
Section informatique
Cours INF4402: Systèmes répartis sur l'Internet (Hiver 2001)
3 crédits (3-1.5-4.5)

Objectifs

Ce projet vise à introduire l'étudiant au développement d'applications réparties selon le modèle trois tiers, avec un client, un serveur WWW, et un serveur de base de données.

Description

Une grande partie des données institutionnelles comme les dossiers étudiants, les ressources humaines, et les finances, résident dans des bases de données. Ces bases de données servent à structurer les données, contrôler leur accès concurrent, et permettre des requêtes flexibles à l'aide d'un langage de requête normalisé: SQL.

Pour offrir l'accès à ces données par les utilisateurs, le moyen classique était l'attribution de comptes d'accès sur le serveur et le développement d'applications spécialisées. Graduellement, le modèle client-serveur fit son apparition et un module client de l'application spécialisée était installé sur l'ordinateur personnel de l'utilisateur. Finalement, l'approche trois tiers est apparue. Les utilisateurs ont un client WWW standard sur leur ordinateur personnel et accèdent un serveur WWW classique. Ce serveur WWW peut contenir des pages WWW dynamiques qui se connectent au serveur de bases de données et en permettent l'accès.

L'avantage de cette organisation est que seules les pages dynamiques sur le serveur WWW sont des applications spécialisées. Il n'y a aucune installation ou entretien à effectuer sur les ordinateurs personnels des utilisateurs, et les serveurs WWW et SQL sont utilisés sans modification.

Pour ce projet, un serveur WWW donne accès aux pages personnelles des étudiants. Ces pages peuvent accéder un serveur SQL qui contient une petite base de donnée, et devront en lire, traiter et afficher certaines données.

Réalisation

Le serveur WWW du laboratoire de génie informatique, www.info.polymtl.ca, permet l'accès au fichier bar.html placé par un utilisateur foo dans son sous-répertoire www par le URL:

http://www.info.polymtl.ca/~foo/bar.html

De plus, si le fichier se termine par l'extension .php il sera passé à l'interprète PHP qui produira dynamiquement le code HTML retourné au client.

Un fichier PHP de départ test.php.orig est fourni pour ce travail. Il doit être téléchargé, renommé avec une extension .php et placé dans le sous-répertoire www. De plus, il faut s'assurer que ce répertoire est accessible au serveur WWW.

cd
mkdir www
chmod ogu+x . www
lynx -source http://m3.polymtl.ca/dagenais/inf4402/test.php.orig >www/tp4.php

Cette page dynamique ouvre une connexion vers la base de donnée test sur le serveur SQL m3.polymtl.ca. Cette base de donnée contient une table tache définie ainsi:

create table tache(debut datetime, fin datetime, description text);

Chaque tâche a un début, une fin et une description. Le travail consiste en modifier la page dynamique pour qu'elle demande d'entrer une date et, lorsque cette date est entrée, qu'elle affiche un tableau des tâches à accomplir pour la journée en question. La liste des tâches de la journée doit être triée en ordre chronologique. Les périodes inoccupées doivent aussi apparaître dans le tableau et la hauteur de chaque rangée devrait refléter la durée de la tâche ou période inoccupée.

Afin de simplifier le travail, on suppose que les tâches ne peuvent se chevaucher, ni ne peuvent chevaucher deux journées différentes. Le langage SQL contient déjà toutes les fonctions voulues pour l'arithmétique de dates. Par exemple, la requête suivante imprime la durée de chaque tâche dans la base de donnée, en ordre chronologique.

select date_part('epoch',age(t.debut,t.fin)) from tache t order by t.debut;

Evaluation

Ce travail sera évalué interactivement par le chargé de laboratoire. Le chargé de laboratoire sera disponible pendant les périodes de laboratoires ainsi que sur rendez-vous dans les heures qui précèdent la date de tombée de ce mini projet.

L'évaluation consiste en montrer l'exécution de votre page dynamique, et en expliquer le fonctionnement.

Le professeur: Michel Dagenais (A-306.18, tel. 340-4711 etx.4029)


next_inactive up previous
Copyright Michel Dagenais, [email protected], jeu mar 15 10:33:04 EST 2001