This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
2016_2017:s3:methodo:td:etudedecas [2016/08/31 13:47] blay [3) Linked In my world] |
2016_2017:s3:methodo:td:etudedecas [2016/09/07 17:18] blay [Principes] |
||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ~~ODT~~ | ||
====== IUT GO ! ====== | ====== IUT GO ! ====== | ||
Line 6: | Line 7: | ||
===== Principes ===== | ===== Principes ===== | ||
- | Chaque groupe travaille en équipes de 3 à 4 étudiants dirigées par un chef de projet qui n'appartient à aucune équipe. | + | Chaque groupe travaille en équipes de 3 à 4 étudiants dirigées par un chef de projet transverse aux équipes. |
Le chef de projet a pour rôle d'identifier les points communs entre les équipes, d'aider les équipes à trouver des solutions et de préparer le travail d'intégration. | Le chef de projet a pour rôle d'identifier les points communs entre les équipes, d'aider les équipes à trouver des solutions et de préparer le travail d'intégration. | ||
Line 12: | Line 13: | ||
Des codes vous seront donnés, vous devez les utiliser pour vous aider à vous intégrer au mieux : | Des codes vous seront donnés, vous devez les utiliser pour vous aider à vous intégrer au mieux : | ||
- | * les codes relatifs à [[https://www.openstreetmap.org/about|OpenStreetMap]] : ce module vous permettra de visualiser les éléments intéressants sur une carte. | + | * les codes relatifs à [[https://www.openstreetmap.org/about|OpenStreetMap]] : ce module vous permettra de visualiser les éléments intéressants sur une carte. Les codes à utiliser (ils ont été enrichis pour vous faciliter les tâches) sont [[https://bitbucket.org/cyrilcecchinel/openstreetmap_iut|ici]]. |
/* http://wiki.openstreetmap.org/wiki/Main_Page | /* http://wiki.openstreetmap.org/wiki/Main_Page | ||
*/ | */ | ||
- | * le module "[[http://sparks-vm26.i3s.unice.fr/repository/iut-public/|Member]]" (correspondant au cas d'étude "Qui est-ce?" ci-dessous) qui vous donne des briques de base pour vous aider à développer vos propres modules intégrant du JSON, des tests unitaires, MAVEN ... | + | * le module "[[http://sparks-vm26.i3s.unice.fr/repository/iut-public/|Member]]" (correspondant au cas d'étude "Qui est-ce?" ci-dessous) qui vous donne des briques de base pour vous aider à développer vos propres modules intégrant du JSON, des tests unitaires, MAVEN. Le code source et les tests associés à ce module sont disponibles [[https://bitbucket.org/cyrilcecchinel/member_service_iut|ici]] ... |
Vos codes doivent : | Vos codes doivent : | ||
- | - être réalisés en utilisant une dépôt GIT (Vous serez individuellement évalués sur vos commit); | + | - être réalisés en utilisant un dépôt GIT (Vous serez individuellement évalués sur vos commit); |
- correspondre à des modules Maven; | - correspondre à des modules Maven; | ||
- respecter les règles de séparation de préoccupations et la qualité de vos codes est un critère d'évaluation. | - respecter les règles de séparation de préoccupations et la qualité de vos codes est un critère d'évaluation. | ||
Chaque module est fourni avec : | Chaque module est fourni avec : | ||
- des tests unitaires; | - des tests unitaires; | ||
- | - une classe de test dédiée que l'on appelle //voir// et qui prend une forme différente en fonction des modules. | + | - une classe de test dédiée et qui prend une forme différente en fonction des modules. |
Les fonctionnalités attendues présentent à la fois de la **valeur** par rapport à notre application cible et une **complexité** de développement. Pour vous aider, des indices vous sont données à titre indicatif, ils peuvent être modifiés lors de l'avancement du projet. | Les fonctionnalités attendues présentent à la fois de la **valeur** par rapport à notre application cible et une **complexité** de développement. Pour vous aider, des indices vous sont données à titre indicatif, ils peuvent être modifiés lors de l'avancement du projet. | ||
Line 30: | Line 32: | ||
**Valeurs :** | **Valeurs :** | ||
- | * ++ signifie très forte valeur : ne pas l'avoir fait perdre 4pts | + | * ++ signifie très forte valeur : ne pas l'avoir fait **perdre 4pts** |
- | * + signifie utile : ne pas l'avoir fait perdre 2 pts | + | * + signifie utile : ne pas l'avoir fait **perdre 2 pts** |
* = signifie tant pis si on ne l'a pas | * = signifie tant pis si on ne l'a pas | ||
**Complexité :** | **Complexité :** | ||
- | * $$ fonctionnalité difficile : + 4 pts | + | * $$ fonctionnalité difficile : **+ 4 pts** |
- | * $ fonctionnalité normale : + 2 pts | + | * $ fonctionnalité normale : **+ 2 pts** |
- | * - fonctionnalité facile : 1 pt | + | * - fonctionnalité facile : **+ 1 pt** |
Au travers des "Histoires utilisateurs (User Stories/US)", vous devrez préciser les fonctionnalités en gérant les cas particuliers (e.g. personne non enregistrée, erreurs de coordonnées). De même les problèmes de propriétés non fonctionnelles comme le nombre d'enregistrements, les temps d'affichage doivent être exprimés sous forme de contraintes et limites. Evidemment une fonctionnalité mal construite ne vous permet d'avoir tous les points et peut vous en faire perdre. | Au travers des "Histoires utilisateurs (User Stories/US)", vous devrez préciser les fonctionnalités en gérant les cas particuliers (e.g. personne non enregistrée, erreurs de coordonnées). De même les problèmes de propriétés non fonctionnelles comme le nombre d'enregistrements, les temps d'affichage doivent être exprimés sous forme de contraintes et limites. Evidemment une fonctionnalité mal construite ne vous permet d'avoir tous les points et peut vous en faire perdre. | ||
Line 128: | Line 130: | ||
==== 4) Tchatche'Car ==== | ==== 4) Tchatche'Car ==== | ||
+ | Objectif : Faciliter le co-voiturage. | ||
- (++, $ ) Enregistrer un voyage : conducteur X, Depart (GPS), Arrivee (GPS), NombreDePassagers possibles, Jour et heure de départ | - (++, $ ) Enregistrer un voyage : conducteur X, Depart (GPS), Arrivee (GPS), NombreDePassagers possibles, Jour et heure de départ | ||
- (+, $ ) Obtenir des informations sur un voyage : conducteur X, Depart (GPS), Arrivee (GPS), NombreDePassagers possibles, Date de départ, nombre de passagers enregistrés | - (+, $ ) Obtenir des informations sur un voyage : conducteur X, Depart (GPS), Arrivee (GPS), NombreDePassagers possibles, Date de départ, nombre de passagers enregistrés | ||
Line 133: | Line 136: | ||
- (++, - ) Quels voyages sont prévus au départ de D ? | - (++, - ) Quels voyages sont prévus au départ de D ? | ||
- (+, - ) Quels voyages sont prévus avec une arrivée en A ? | - (+, - ) Quels voyages sont prévus avec une arrivée en A ? | ||
- | - (+, $ ) Enregistrer un passager sur un voyage donné | + | - (+, $ ) Enregistrer un passager sur un voyage donné. |
- (+, $ ) Quels sont les passagers sur un voyage donné ? | - (+, $ ) Quels sont les passagers sur un voyage donné ? | ||
- (=, - ) Quels sont les voyages faits par X ? | - (=, - ) Quels sont les voyages faits par X ? | ||
- (=, - ) Quels sont les voyages faits par X en tant que conducteur ? | - (=, - ) Quels sont les voyages faits par X en tant que conducteur ? | ||
- (=, $ ) Quels sont les voyages faits par X en tant que passager ? | - (=, $ ) Quels sont les voyages faits par X en tant que passager ? | ||
- | - (=, $) Enregistrer les voyages | + | - (=, $) Enregistrer les voyages dans un fichier. |
- | - (=, -) Charger les voyages non encore réalisés | + | - (=, -) Charger les voyages non encore réalisés qui se trouvent dans un fichier. |
(++,-) voir : Console | (++,-) voir : Console | ||
Line 148: | Line 151: | ||
* vous avez un potentiel de 6*1 + 7*2 = 20 points; | * vous avez un potentiel de 6*1 + 7*2 = 20 points; | ||
==== 5) Place Advisor ==== | ==== 5) Place Advisor ==== | ||
- | + | Objectif : Favoriser l'organisation de voyages | |
- | - (++, -) Enregistrer un point d'intérêt : nom, description, coordonnées | + | - (++, -) Enregistrer un point d'intérêt : nom, description, coordonnées GPS |
- | - (++, -/$) incrémenter ou décrémenter un coefficient d'intérêt associé à un point d'intérêt (j'aime, je n'aime pas) | + | - (++, -/$) Incrémenter ou décrémenter un coefficient d'intérêt associé à un point d'intérêt (j'aime, je n'aime pas) |
- (=, -) Obtenir le coefficient d'intérêt associé à un point d'intérêt | - (=, -) Obtenir le coefficient d'intérêt associé à un point d'intérêt | ||
- | - (+, -) associer un coût de nuité à un point d'intérêt | + | - (+, -) Associer un coût de nuité à un point d'intérêt |
- | - (+, $) calculer le coût d'un itinéraire (somme des coûts des points d'intérêts qui composent l'itinéraire) | + | - (+, $) Calculer le coût d'un "itinéraire"((itinéraire = une liste de points d'intérêts pour l'instant)) (somme des coûts des points d'intérêts qui composent l'itinéraire) |
- | - (=, $) calculer des itinéraires en fonction d'un budget((On prendra en compte le cout des trajets et des distances lors de l'intégration)) | + | - (=, $) Calculer des itinéraires en fonction d'un budget((On prendra en compte le cout des trajets et des distances lors de l'intégration)) |
- (=, $$) En maximisant l'intérêt | - (=, $$) En maximisant l'intérêt | ||
- | - (=, $$) En forçant la présence d'un point d'intérêt | + | - (=, $$) En forçant la présence d'un point d'intérêt donné |
- | - (=, $) En évitant la présence d'un point d'intérêt | + | - (=, $) En évitant la présence d'un point d'intérêt donné |
- | - (++, -) Mémoriser les points d'intérêts | + | - (++, -) Mémoriser les points d'intérêts dans un fichier |
- | - (=, -) Charger les points d'intérêts | + | - (=, -) Charger les points d'intérêts qui se trouvent dans un fichier |
| | ||
(++,-) voir : Console | (++,-) voir : Console | ||
Line 182: | Line 185: | ||
*/ | */ | ||
==== 6) Alice's MAP ==== | ==== 6) Alice's MAP ==== | ||
- | Objectif : Visualiser sur une carte des points donnés. Ce sous-projet est central. Sa réussite va impliquer toute la suite du projet. Contrairement aux autres sous-proets, il repose sur l'utilisation du module fourni. | + | Objectif : Visualiser sur une carte des points donnés. Ce sous-projet est central. Sa réussite va impliquer toute la suite du projet. Contrairement aux autres sous-projets, il repose sur l'utilisation du module fourni. |
Voici les fonctionnalités que vous devez ajouter : | Voici les fonctionnalités que vous devez ajouter : | ||
- | * (++,-) Positionner un point à partir de coordonnées GPS et d'un libellé | + | * (++,-) Positionner un point (Marker) à partir de coordonnées GPS et d'un libellé |
* (=, $) Saisir le point dynamiquement | * (=, $) Saisir le point dynamiquement | ||
* (++, -) Visualiser un chemin (ligne) entre deux markers donnés | * (++, -) Visualiser un chemin (ligne) entre deux markers donnés | ||
Line 200: | Line 203: | ||
Bilan : | Bilan : | ||
* vous pouvez perdre 4*4pts + 2*2points = 20 points; | * vous pouvez perdre 4*4pts + 2*2points = 20 points; | ||
- | * vous avez un potentiel d(au moins 2*1 + 7*2 = 16 points; ((difficile à déterminer. L'évaluation de la complexité des fonctionnalités additionnelles sera réalisée en direct). | + | * vous avez un potentiel d'au moins 2*1 + 7*2 = 16 points; ((difficile à déterminer. L'évaluation de la complexité des fonctionnalités additionnelles sera réalisée en direct). |
/* | /* | ||
Line 257: | Line 260: | ||
- Rechercher qq qui a telles caractéristiques autour de moi : formation, humeur, ... | - Rechercher qq qui a telles caractéristiques autour de moi : formation, humeur, ... | ||
- Rechercher qq avec qui je suis ami/parent/... autour de moi | - Rechercher qq avec qui je suis ami/parent/... autour de moi | ||
- | - Alimenter les reseau avec les covoitureurs en ajoutant un lien co-voiture qui a le nombre de covoiturage | + | - Alimenter les reseau avec les covoitureurs en ajoutant un lien "co-voyageur" |
- A la demande : en passant un co-voiturage | - A la demande : en passant un co-voiturage | ||
- | - Automatiquement à chaque déclaration d'un co-voiturage | + | - Automatiquement à chaque déclaration d'un co-voiturage |
- Visualiser la position de tous ses amis etc | - Visualiser la position de tous ses amis etc | ||
- A chaque saisie de l'humeur on enregistre la position | - A chaque saisie de l'humeur on enregistre la position | ||
- | - Placer un capteur sur une carte | ||
- | - Associer un capteur à une personne | ||
- Visualiser la maison des membres | - Visualiser la maison des membres | ||
+ | - Visualiser les points d'intérêts sur la carte | ||
- | Notation de l'intégration : | + | /* Notation de l'intégration : |
la note du groupe = moyenne des notes des individus (y compris els 0) | la note du groupe = moyenne des notes des individus (y compris els 0) | ||
la note d'un individu : sa note + 0,5*note du groupe / 1,5 | la note d'un individu : sa note + 0,5*note du groupe / 1,5 | ||
+ | */ | ||