TPG project Fichier

Transcription

TPG project Fichier
Systèmes distribués
Nabil Abdennadher
Année universitaire : 2016/2017
Application de consultation des arrêts des bus TPG
Ce document détaille les fonctionnalités d’une application permettant de consulter le serveur
REST open data des Transports Publics Genevois (TPG) :
http://www.tpg.ch/documents/7289503/0/Opendata_tpg_documentation_utilisateurs_v12.pdf
L’application à développer est composée de deux modules : une application Web (client REST)
et un serveur REST.
1. Application Web
Cette application permet à l’utilisateur de :
1. Créer un compte avec, entre autres, un login et un mot de passe
2. Consulter la liste des arrêtes disponibles
3. S’abonner à un arrêt. Un utilisateur peut s’abonner à plusieurs arrêts
4. Se désabonner d’un arrêt
5. Afficher la liste des bus équipés pour les personnes à mobilité réduite qui s’arrêteront
(on parle des bus) à un arrêt donné
6. Afficher la liste des prochains départs d’un ensemble d’arrêts auxquels l’utilisateur est
abonné. L’utilisateur doit sélectionner les arrêts concernés
7. Trouver la liste des arrêts proches d’une position géographique (longitude, latitude)
récupérée à partir de google map.
2. Serveur REST
Ce module gère une base de données qui contient les utilisateurs inscrits et les arrêts auxquels
ses utilisateurs sont abonnés. Les informations relatives au réseau TPG (arrêts, bus équipés
pour les personnes à mobilité réduite, etc.) sont récupérées à partir du serveur REST open data
des TPG.
Etapes de réalisation du projet :
1. Comprendre la documentation de l’API Open Data des TPG (ce travail commencera le
Lundi 10 Octobre 2016, 14:15 - 15:30)
2. Concevoir les routes de votre futur serveur REST et les documenter en utilisant l’outil
apidoc : http://apidocjs.com/. Le serveur doit être écrit en python. La documentation
apidoc doit être rendu le Lundi 17 Octobre 2016, 15:30.
3. Choisir le gestionnaire de bases de données à utiliser et concevoir votre base de
données.
4. Ecrire le serveur REST et le tester (moyennant un browser) dans les deux cas : XML et
JSON. Chaque binôme doit implémenter les deux versions. Chaque étudiant
implémente une seule version : XML ou JSON. Ce travail doit être rendu le 7 Novembre
2016, 15:30 au plus tard.
5. Concevoir l’interface de l’application Web
6. Ecrire votre application Web (client REST). Ce travail doit être rendu le 14 Novembre
2016, 15:30 au plus tard
7. Utiliser la documentation du serveur REST d’un autre binôme et implémenter un client
REST compatible. Un rapport contenant votre avis par rapport au serveur REST utilisé
doit être rendu à la fin de séance du 21 Novembre 2016. Ce rapport doit préciser les
points suivants :
a. Le serveur REST utilisé respecte-t-il les bonnes pratiques mentionnés dans le
cours ?
b. La documentation est-elle complète ? Avez-vous eu besoin de contacter
directement le développeur du serveur REST pour demander des informations
complémentaires ?