Académique Documents
Professionnel Documents
Culture Documents
Projet TP de POO
Indications
- Dans la création des classes, respecter le principe dd’encapsulation: déclarer tous les attributs
« private » et prévoir les accesseurs nécessaires.
- Prévoir une méthode toString dans chaque classe pour renvoyer la description textuelle d’un
objet de la classe
- Les affichages à l’écran et les messages doivent être explicites
- Il est demandé d’utiliser un menu pour le choix des options à exécuter.
- Les données de test (ligne, station, tronçon, …) doivent être sensées (données réelles avec des
noms corrects) et peuvent être introduites directement par programme pour le remplissage des
structures.
Enoncé
Dans ce projet, on s’intéresse à la gestion du réseau de transport urbain dans une ville intelligente (smart
city). Dans la ville, sont offerts plusieurs moyens de transport (métro, tramway, bus, train), par ces
moyens de transport plusieurs lignes sont desservies.
Une ligne de transport comporte deux stations spécifiques : station de départ et station d’arrivée, elle est
composée d’un ensemble de tronçons. Une ligne est identifiée par un code unique et est rattachée à un
seul moyen de transport.
Une station est identifiée par un code unique et possède des coordonnées spatiales (longitude, latitude)
sur la carte du réseau.
Un tronçon relie deux stations consécutives, il possède un numéro unique, une station de début, une
station de fin et une longueur (kilométrage).
1. Définir la classe MoyTransport qui décrit les moyens de transport à l’aide d’une énumération.
Pour chaque moyen de transport, on précisera l’heure de début, l’heure de fin (dans la
journée) et le nombre de voyageurs moyen dans la journée.
1 S. BOUKHEDOUMA
On pourrait changer la station de départ et/ou d’arrivée, on pourrait ajouter/modifier/supprimer
une station intermédiaire (ce sui impliquera l’ajout/modification/suppression d’un tronçon sur
la ligne).
3. Donner l’implémentation de la classe Station comportant un numéro, un nom, des
coordonnées spatiales et la ligne d’appartenance et un type (principale, secondaire). Deux
stations sont égales si elles ont les mêmes coordonnées spatiales. Elles auront forcément le
même nom.
Une station principale est une station de correspondance où on peut avoir plusieurs moyens de
transport (i.e les voyageurs peuvent descendre dans une station principale pour changer le
moyen de transport)
4. Un tronçon relie deux stations consécutives sur une ligne. Donner l’implémentation de la
classe Tronçon définie par un numéro, une station de début et une station de fin, un
kilométrage (nombre de km sur le tronçon) et l’état du tronçon qui peut être Bon, moyen, ou
dégradé. On doit avoir la possibilité de fusionner deux tronçons consécutifs (dans le cas où on
supprime une station sur une ligne, on aura la fusion de deux tronçons).
L’ajout d’une station sur une ligne donnée, impliquera l’ajout/modification de tronçons sur la
ligne.
Par ailleurs, une application de géo-localisation permet à tout moment d’estimer la durée pour aller
d’une station A à une station B. On simulera une méthode CalculerDurée qui donnera à tout moment la
durée de déplacement sur un tronçon selon le moyen de transport utilisé.
5. Dans chaque ligne, on a un ensemble de navettes (bus, tram, métro, train) qui desservent la
ligne. La navette possède un numéro unique, une marque et une année de mise en circulation.
Donner l’implémentation de la classe Navette en précisant le lien avec la Ligne.
Ecrire une ou plusieurs méthodes de remplissage permettant de remplir les structures de données
nécessaires (Lignes, Stations, Tronçons, Navettes) en faisant le lien entre les données
Il s’agira de :
- Créer un ensemble (collection) de lignes pour les différents moyens de transport (les
données introduites doivent êtres sensées et correctes)
- Pour chaque ligne, préciser les stations
- Un ensemble de tronçons
- Un ensemble de navettes assurant le transport sur les lignes
Requêtes sur les données (Il faudra utiliser un menu à choix multiples pour l’exécution des
requêtes)
2 S. BOUKHEDOUMA
On devra pouvoir afficher le nouveau contenu des structures après chaque opération de mise à
jour
Que doit-on doit modifier dans la conception des classes si l’on doit considérer qu’il existe des lignes
permanentes (c’est à dire des lignes en service même les jours de week-end et les jours fériés) en
précisant les horaires de service pour ces jours spécifiques ? Ces horaires peuvent changer dans l’année.
3 S. BOUKHEDOUMA