User Tools

Site Tools


2014_2015:s3:concprogobjet:td:td5

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
2014_2015:s3:concprogobjet:td:td5 [2014/10/07 20:39] – created blay2014_2015:s3:concprogobjet:td:td5 [2015/03/02 17:38] (current) – [Questions] blay
Line 1: Line 1:
 +====== Réutilisation ======
 + 
 +Nous voulons gérer un réseau routier.
 +Un ''réseau Routier'' est composé de ''PointRoute'' et d'''Arcs Routiers''.
 +On veut savoir pour un réseau routier les chemins possibles entre deux points routes.
 +
 +La modélisation initiale imaginée est celle du diagramme ci-dessous.
 +
 +{{ :2014_2015:s3:concprogobjet:td:reseauroutier.jpg?direct&300 |}}
 +
 +
 +Voici le jeu de données à utiliser :
 +<code>
 +        AR[A8-23:[ Villeneuve:]->[ Sophia:]]
 + AR[N7-14:[ Villeneuve:]->[ Sophia:]]
 + AR[A8-7:[ Villeneuve:]->[ Cagnes:]]
 + AR[N7-14:[ Sophia:]->[ Villeneuve:]]
 + AR[A8-23:[ Sophia:]->[ Villeneuve:]]
 + AR[A8-7:[ Cagnes:]->[ Villeneuve:]]
 + AR[A8-13:[ Cagnes:]->[ Nice:]]
 + AR[A8-13:[ Nice:]->[ Cagnes:]]
 +</code>
 +
 +Voici des exemples de chemins :
 +
 +**de Nice a Sophia :** 
 +  - [dist.=34, paths=[AR[A8-13:[ Nice:]->[ Cagnes:]], AR[A8-7:[Cagnes:]->[ Villeneuve:]], AR[N7-14:[ Villeneuve:]->[ Sophia:]]]]
 +  - [dist.=43, paths=[AR[A8-13:[ Nice:]->[ Cagnes:]], AR[A8-7:[ Cagnes:]->[ Villeneuve:]], AR[A8-23:[ Villeneuve:]->[ Sophia:]]]]
 +
 +**de Sophia a Nice :** 
 +  - [dist.=34, paths=[AR[N7-14:[ Sophia:]->[ Villeneuve:]], AR[A8-7:[ Villeneuve:]->[ Cagnes:]], AR[A8-13:[ Cagnes:]->[ Nice:]]]]
 +  - [dist.=43, paths=[AR[A8-23:[ Sophia:]->[ Villeneuve:]], AR[A8-7:[ Villeneuve:]->[ Cagnes:]], AR[A8-13:[ Cagnes:]->[ Nice:]]]]
 +
 +**de Sophia a villeneuve :** 
 +  - [dist.=14, paths=[AR[N7-14:[ Sophia:]->[ Villeneuve:]]]]
 +  - [dist.=23, paths=[AR[A8-23:[ Sophia:]->[ Villeneuve:]]]]
 +
 +**de Sophia a Cagnes :** 
 +  - [dist.=21, paths=[AR[N7-14:[ Sophia:]->[ Villeneuve:]], AR[A8-7:[ Villeneuve:]->[ Cagnes:]]]]
 +  - [dist.=30, paths=[AR[A8-23:[ Sophia:]->[ Villeneuve:]], AR[A8-7:[ Villeneuve:]->[ Cagnes:]]]]
 +
 +
 +
 +Pour cela on vous donne les classes suivantes :
 +     - Le package {{ :2014_2015:s3:concprogobjet:td:graphex.zip?direct&300 |grapheX}} duquel ont été extraits les classes utiles à notre problème; ce package a été récupéré sur le web à l'"X"
 +     - Le package {{:2014_2015:s3:concprogobjet:td:parcours.zip|parcours}} a été créé pour vous simplifier la tâche et vous permettre de gérer des graphes comportant des sommets reliés par plusieurs arcs.
 +
 +Les 2 diagrammes suivants ont été obtenus par reverse Engineering:
 +{{ :2014_2015:s3:concprogobjet:td:graphex.jpg?direct&300 |}}
 +{{ :2014_2015:s3:concprogobjet:td:parcours.jpg?direct&300 |}}
 +
 +
 +===== Questions =====
 +   - Imaginer comment vous pourriez définir un réseau routier comme un graphe : quels sont les sommets? quels sont les arcs? etc. Compléter/Modifier le diagramme de classe donné au début pour réseau routier avec ces informations. Faire cet exercice sur papier.
 +   - Dessiner le diagramme de séquence qui, à partir d'un réseau, vous permet d'obtenir tous les chemins entre deux points routes ordonnés sur la distance entre les noeuds. Faire cet exercice sur papier.
 +   - Ecrivez les tests et les codes correspondants. Vous avez comme hypothèse qu'il n'existe pas deux arcs différents entre deux même points qui ont exactement la même distance.
 +   - Nous voulons prendre en compte dans notre modélisation, les faits suivants, que devons-nous modifier? 
 +         - un point route est en ville ou à la campagne, 
 +         - un point route est déterminé par une coordonnée GPS
 +   - Nous voulons calculer les distances entre deux points routes à partir des coordonnées GPS pour associer une distance à un arcRoutier, que devez-vous faire?
 +   - Nous voulons à présent utiliser cette modélisation pour obtenir les chemins les plus courts, les chemins qui ne passent pas par l'autoroute, .... A vous !
 +
 +
 +
 +
 +<box round rgb(150,290,190) rgb(198,226,150) 75%|Rendu en fonction du groupe de TD Pour le Groupe 2 le 30/11 à 23h59 (Pour S3D: pas de rendu, notation en TD) > 
 +  * Mettez un mail à votre encadreur avec soit l'adresse où récupérer le TD soit le TD lui-même
 +  * Dans votre répertoire de projet, sous TD6, se trouvent (s'il y a des doutes sur le répertoire de livraison, mettez un mail à votre encadreur) : 
 +       - Un document contenant 
 +             * votre modèle final (Tout le monde n'aboutit pas au même modèle, c'est certain) (merci de l'intégrer dans un document pour que nous n'ayons pas à ouvrir différents modèles dans différentes versions de l'outil).
 +             * des explications sur les raisons de ce modèle (dont vous êtes très fiers) et les leçons apprises.
 +       - Les codes et les tests. 
 +</box>
 +
 +
 +
 +<html>
 +<!--
  
 ====== Polymorphisme ====== ====== Polymorphisme ======
Line 75: Line 153:
 Nous n'aborderons, hélas, pas les aspects distribués. Nous n'aborderons, hélas, pas les aspects distribués.
  
 +!--> 
 +</html>
2014_2015/s3/concprogobjet/td/td5.1412714396.txt.gz · Last modified: 2014/10/07 20:39 by blay