Ressource : Logiciels pour le suivi de projet

Logiciel

Des logiciels, pour la plupart gratuits et libres, sont mis à disposition pour vous aider à réaliser des tâches de votre projet :

  • Un logiciel libre et gratuit de cartographie GEPHI (possibilité de consulter Dana Diminescu)
  • Un logiciel de montage video (consulter Julien Morel)
  • Pour faire les diagrammes fonctionnels, vous pouvez utiliser Visual UNderstanding Environment (VUE) : c’est un logiciel gratuit, libre et multiplateformes, traduit en français. Il est téléchargeable à l’adresse: http://vue.tufts.edu/download/index.cfm?fromvue=1 Il permet de faire un diagramme d’environnement avec les fonctions de votre objet. Des informations sont disponibles à l’adresse: http://vue.tufts.edu/
  • Pour faire les diagrammes fonctionnels-WBS-OBS, vous pouvez utiliser Freeplane : c’est un logiciel gratuit, libre et multiplateformes, traduit en français. Il est téléchargeable à l’adresse : http://sourceforge.net/projects/freeplane . Il permet de faire des diagrammes fonctionnels, WBS et OBS. Informations à http://freeplane.sourceforge.net/mediawiki-1.14/index.php/Main-Page
  • Pour faire les compte-rendus, la matrice RACI ou le budget, vous pouvez utiliser le traitement de texte ou un tableur de types Open Office ou Microsoft Office
  • Pour les PERT et GANTT, les meilleurs logiciels sont payants mais on peut commencer en utilisant GanttProject (équivalent de MSproject) : c’est un logiciel gratuit, libre, multiplateformes et traduit en français. Il permet de créer des diagrammes de GANTT et des réseaux PERT et de calculer le chemin critique. Voici la video d’introduction à GanttProject. Informations sur : http://fr.wikipedia.org/wiki/GanttProject

Fiches d'identité des groupes

N’oubliez pas de déposer les fiches d’identité avant le 5 Octobre à 23h00 sur votre site.
Cette fiche comprendra :
A: une présentation de l’identité du groupe dans sa globalité (disons entre 10 lignes et ce que vous voulez)
B: une présentation individuelle que chacun aura rédigé sur lui-même : son parcours, ses intérêts scientifiques et techniques et les intérêts personnels que vous souhaitez partager avec le groupe.

La forme est très libre, n’hésitez pas à être imaginatifs ! sur WordPress, ajouter des images et des documents multimédia se fait très simplement. Des idées complémentaires pour élaborer cette fiches se trouvent dans les composants CMPSE du site principal (pact.wp.imt.fr) dans la rubrique : Les méthodes pour le démarrage du projet.

Comment faire cela ?

1- vous devez avoir reçu- un e-mail d’inscription à votre WordPress (éditeur de contenu web) sur lequel il vous ai demandé de cliquer pour confirmer.
FAITES LE IMPERATIVEMENT AU PLUS VITE. Si vous n’avez pas reçu ce mail, contacter d’urgence votre tuteur (nom.prenom@telecom-paristech.fr)

2- connectez-vous sur votre site de la forme  https://pact.wp.imt.fr/projet-2011-xx, ou xx représentent les chiffres de votre groupe (par ex. groupe 1-1 donc xx=11).

3- créez une page « Identité du groupe » (ajouter/page), cette page va apparaître dans le menu principal WordPress (cette disposition pourra être modifiée ultérieurement)
Remplir cette page avec les points A et B.

Ressource : Processus Design (design process)

Contacts :
Myriam Davidovici-Nora (77.08, B420), Myriam.Davidovici@telecom-paristech.fr
Annie Gentès (B424), Annie.Gentes@telecom-paristech.fr

Description : Le processus design est une partie intégrante et essentielle du processus d’innovation. Il intervient depuis l’idéation (génération d’idées au début du projet) jusqu’au raffinement du prototype allégé pour aboutir au prototype final que vous présenterez en fin de projet. Quel intérêt de mener une réflexion « design » dans votre projet PACT ?

Penser « Design » (ou Design Thinking) permet de mettre au centre de vos préoccupations dès les premières réflexions (en phase de conception) la notion d’expérience utilisateurs et donc aussi les usages possibles qui pourront être faits de votre objet technologique. Ce sont en effet les usages possibles et les expériences associées (fun, attitude, émotions, ressenti lié à l’utilisation, etc..) que vous souhaitez disposer pour le prototype final qui vont guider vos développements techniques et informatiques (et non l’inverse). De plus, mettre en avant l’expérience utilisateurs permet de vérifier si c’est réalisables et à quelle conditions (comme par exemple, besoin d’accéder à une base de données protégées ou pas, est-il possible de proposer votre objet à d’autres types d’utilisateurs potentiels et que faudrait-il changer ? etc). Le processus Design est une démarche méthodologique de conception qui permet de mettre en oeuvre les bonnes pratiques de la conception de projet.

Le processus design est une méthode qui permet tout au long du projet de raffiner votre objet et de figer au fur et à mesure les caractéristiques importantes à chaque étape du développement. Il contient une certaine flexibilité qui permet une adaptation des réalisations en fonction de vos contraintes (temps, compétences, difficultés rencontrées, etc.). Le processus design se représente par un double diamant décomposé en 4 phases distinctes (voir image ci-dessous) :

DesignProcess

Commentons rapidement chaque phase :

1) Discover : c’est le début de votre projet. Cette phase commence par des idées initiales ou des inspirations dans lesquelles sont identifiées les besoins des utilisateurs (outil = brainstorming réalisé dans une séance avec le tuteur). Pour chaque idée, il faut identifier l’existant afin de se constituer une base de réflexion et une base de connaissance (vous ne partez pas de zéro !) : quelles sont les offres existantes sur le marché ? quelles sont les opportunités d’améliorations ou d’innovations possibles ?

Pour chaque idée, il faut appliquer les 5 questions suivantes qui permettent de définir un scénario d’usages complet qui constitue la colonne vertébrale des usages et de l’expérience que vous allez proposer (outil = Composant « Scénarisation des usages QQOQCP) Qui ? Quoi ? Où ? Quand ? Comment ? Pourquoi ?

Qui ? : qui est l’utilisateur et son profil même si la cible est plus large (être le plus précis possible, on ne s’adresse pas à un utilisateur lambda !!)(par exemple : un jeune de 18-24 ans, les mères au foyer, les ados, les seniors, etc.)

Quoi ? Que fait-il avec votre idée ? que peut-il faire ?que lui proposez-vous comme produit ou comme service ?

Où ? quels sont le(s) endroit(s) , les lieux d’utilisation possible ? (au domicile, dans le métro, dans les entreprises, dans la rue, etc.)

Quand ? A quels moments ou quelle période est-il utilisé ? (le soir, a une heure précise, une saison, un événement associé, .)

Pourquoi ? que recherche l’utilisateur en utilisant votre objet ? quelle expérience vit-il ?

=> cela vous permet d’aboutir à la construction d’un scénario d’usage très détaillée (un contexte d’usage) et donc les fonctions remplies par votre objet. Ces fonctions constituent la base pour réaliser la phase suivante de définition. Dans cette phase qui aboutie à 3 idées possibles , il faut également voir en gros les composants possibles en consultant la liste proposée. Vous êtes prêts pour la foire aux experts du 22 octobre qui vous permettra de choisir la meilleure idée.

Pour réaliser cette première phase, le département SES vous propose de vous encadrer sur le composant « Bonnes pratiques de conception » qui regroupe les 4 étapes suivantes :

  1. Application de la méthode QQOQCP et proposition d’un scénario détaillé d’utilisation
  2. Réalisation d’un benchmark de l’existant autour de votre idée
  3. Réalisation d’un état de l’art scientifique orienté usages (par exemple, que dit la littérature sur les interactions, l’acceptabilité, l’ergonomie, l’IHM, la manipulation, le public de l’objet que vous concevez)
  4. Réalisation d’une enquête de terrain auprès d’un ou plusieurs utilisateurs cible dans le cadre de votre scénario pour vérifier la correspondance entre les usages anticipés par les concepteurs et les usages réels. Sensibilisation aux décalages et détournements d’usages. Elle permet de raffiner votre idée et donc votre scénarisation des possibles (et des souhaitables)

2) Define : il faut réfléchir à la façon dont cette idée sera développée : choix précis des composants associés à votre idée dans la base de composants et validation par les experts associés. Il faut aussi planifier les tâches c’est-à-dire aligner des objectifs avec des tâches et des délivrables (outil = Gantt et comment le construire).

3) Develop : les solutions choisies sont développées en utilisant les méthodes de génie logiciel/les bonnes pratiques de développement enseignées à l’école (voir l’encadrement génie logiciel) mais  aussi en rencontrant les experts des composants choisis qui vous guideront sur les méthodes/contenus qu’ils vous proposent. Cette phase débouche sur la réalisation d’un prototype allégé qu’il faudra aussi tester. Bien que chaque membre de l’équipe avance sur ses composants, il est important de se réunir ou d’échanger régulièrement sur l’avancement global  pour voir s’il y a des problèmes et comment on peut les résoudre mais aussi pour faire en temps utile des changements si de nouvelles informations apparaissent. Le succès de votre projet dépend beaucoup de la qualité et de la fréquence de la communication au sein de l’équipe. Cette phase est suivi par les experts, les encadrants GL et informatique.

4) Define : c’est la phase finale. Il s’agit de finaliser/perfectionner votre objet pour en faire un prototype final présentable et une vidéo du scénario d’usage défini au début. Dans la vraie vie, cette phase débouche par le lancement sur le marché de votre produit/service.

L’idée derrière la forme de diamant est qu’il faut élargir au maximum le champs des possibles avant de sélectionner et de donc de réduire les options. Cela réduit les risques d’erreur dans les choix effectués.

Idéation et brainstorming : Comment faire accoucher une idée de projet ?

Vous serez amenés à tester différentes méthodes avec votre tuteur pour faire « accoucher » d’une idée commune dont le brainstorming (voir wikipedia.brainstorming qui est très bien). L’objectif est d’obtenir dans un temps très court le maximum d’idées (aussi farfelues qu’elles soient). Une personne les note toutes au tableau ce qui permet un maximum de réaction de la part de tous les membres. Celui qui note ne doit pas émettre un jugement mais simplement écrire. Tout le monde est invité à émettre des variantes sur les idées émises et à participer.

La difficulté sera de choisir une idée qui corresponde au mieux aux goûts de TOUTE l’équipe et en même temps qui ne soit ni trop simple (non stimulante), ni trop difficile au risque de décourager rapidement l’équipe. Il faut une idée réalisable et faisable avec les moyens de l’école (matériel et intellectuel) mais ambitieuse quand même et qui soit consensuelle.

Outre le fait de trouver de bonnes idées, le Brainstorming ou remue-méninges a aussi d’autres effets positifs :

  • un effet de team building en renforçant la cohésion du groupe au début du projet
  • il permet de passer concrètement à l’action : une fois le temps écoulé, on sélectionne la meilleure idée compte tenu de ces critères par différentes méthodes possibles (vote, première élimination des idées complètement hors sujet, etc.)

 

Module : Ecrans 3D

Ecrans 3D
proposé par :

  • Jean Le Feuvre, jean.lefeuvre_at_telecom-paris.fr

Description
Afin d’expérimenter la visualisation en relief, Telecom ParisTech dispose d’écrans 3D sans lunettes, offrant 5 point de vues différents pour un surface d’affichage de 19 » et d’une résolution de 1440×900 pixels. Ces écrans doivent impérativement être connectés à une sortie numérique de l’ordinateur; le lien analogique (VGA) introduit en effet du bruit non compatible avec le format d’affichage, cassant ainsi l’effet 3D.

Ressources
Ce logiciel nécessite les bibliothèques Java suivantes:LWJGL: une librairie Java de jeux permettant d’écrire facilement des programmes Java OpenGL slick-util:une librairie d’utilitaires Java permettant de charger rapidement des images pour les manipuler en OpenGL:NYU Media Research Lab, avec une petite animation permettant de comprendre rapidement la technologie.Un bon aperçu du fonctionnement de ces écrans est disponible sur le site de Paul Bourke.Site expliquant comment les images sont générées pour ces écrans.

Les spécifications détaillées de ces écrans sont disponibles ici: SVI_19.

Exemples d’utilisation
  • Affichage en 3D
  • Affichage simultané de contenus différents
Objectifs Pédagogiques
  • Vision stéréoscopique : savoir expliquer les principes de bases de la vision stéréoscopie et de la perception du relief.
  • Dispositifs d’affichages stéréoscopiques : savoir expliquer les différents dispositifs d’affichages, leurs avantages et inconvénients.
  • Application de visualisation en relief: compréhension de la programmation GPU par shader. Etre capable de justifier les choix techniques faits.
Résultats attendus
  • PAN1 :
    • Principes de bases de la vision en relief.
    • Expliquer comment le programme manipule l’écran 3D.
  • PAN2 :
    • Expliquer les principes de bases de la programmation de GPU par shader
    • Livrable: rendu anaglyphe d’un couple stéréoscopique
  • PAN3 :
    • Livrable : Programme OpenGL pour le rendu sur écran 3D, rendu d’un objet simple.
    • Expliquer le fonctionnement de l’afficheur
    • Décrire le fonctionnement et l’intégration du module dans le prototype allégé
  • PAN4 :
    • Analyser comment le module est intégré dans le prototype, quelles pistes d’améliorations seraient à envisager (performance, simplicité,)
    • livrable: Exemple de code permettant l’affichage 3D d’un objet (modèle ou cube ou série d’image) avec variation de l’effet de profondeur.
    • livrable biblio : les principes de fonctionnement de la vision 3D.

Module : Wiimote

La WiiMote
proposé par :

  • Jean Le Feuvre, jean.lefeuvre@telecom-paris.fr
Descriptif
La WiiMote est le contrôleur de la console de jeu Wii.La WiiMote communique avec la console via BlueTooth, et peut par conséquent communiquer avec tout appareil supportant le protocole BlueTooth.
Ressources
  • Vous trouverez de nombreuses ressources bibliographiques traitant de la WiiMote sur internet. Les possibilités offertes par la WiiMote sont nombreuses, comme en témoignent ces vidéos youtube.Vous trouverez par ailleurs de nombreuses ressources sur l’architecture matérielle de la WiiMote sur le site Wiimote Project
  • Il existe un logiciel libre permettant de dialoguer avec la WiiMote depuis un programme Java: http://code.google.com/p/wiiusej/.D’autres logiciels existent mais n’ont pas été testés dans le cadre de PACT.
Exemples d’utilisation du module
  • Suivi de mouvement (accélération)
  • Actionneurs simples entrée (boutons) et sorties (vibreur, haut-parleur, leds).
  • Récupérer l’état de capteurs.
  • Suivi de sources infrarouges ponctuelles
Objectifs Pédagogiques
  • Comprendre le fonctionnement de la wiimote
  • Savoir expliquer les limitations du capteur
Résultats attendus
  • PAN1 :
    • Comment le capteur s’interface avec le programme
  • PAN2 :
    • Principes de fonctionnement de la Wiimote
    • Premiers tests d’interaction avec la Wiimote
  • PAN3:
    • Wiimote intégrée au prototype allégé
    • Justifiez comment le capteur s’intègre dans l’architecture, et les limites éventuelles.

Module : Kinect

La Kinect
proposé par :

  • Jean Le Feuvre, jean.lefeuvre_at_telecom-paris.fr

kinect

Descriptif
La Kinect est un capteur de mouvement développé par Microsoft, afin de servir de contrôleur de jeux à la console XBox 360. La Kinect communique avec la console via USB 2.0, et peut par conséquent communiquer avec tout appareil supportant le protocole USB 2.0.
Ressources
  • Logiciel Java associé : Un logiciel libre permettant de dialoguer avec la Kinect depuis un programme Java a été créé à Telecom ParisTech. Ce logiciel utilise les drivers open-source freenect et la librairie JavaCV, surcouche Java autour de OpenCV ( librairie d’outils pour la vision par ordinateur).Les instructions pour installer JavaCV et OpenCV sont disponibles ici: InstallationJavaCV_Kinect.Les pilotes OpenKinect pour Windows sont disponibles ici: freenect_win32.Une application Java montrant comment manipuler les données vidéo (couleur et profondeur) est disponible (KinectGrabber.java). Attention, cette application ne fait pas la calibration des vues profondeur et couleur, les images restent légèrement décalées.Resources Bibliographiques :OpenKinect : implémentation libre des pilotes logiciels de dialoguer avec la Kinect depuis un ordinateur. Vous trouverez sur ce site de nombreuses ressources liées à la Kinect.OpenNI : utilitaires de développement pour les interactions homme-machine, avec entre autre un support pour la Kinect, utilisé pour la version 2 de la Kinect.
  • Vous trouverez de nombreuses ressources bibliographiques traitant de la Kinect sur internet, ainsi que de nombreux exemples d’applications utilisant ce capteur.
Exemples d’utilisation du module
La Kinect ne fournit comme information que les trames vidéo et profondeur. Un système utilisant la Kinect à par conséquent besoin d’une composante logicielle importante pour analyser ces images afin d’en extraire des informations utiles à l’application, par exemple:

  • détection et suivi des mains, reconnaissance des gestes
  • détection du nombre de personnes
  • analyse de la position d’un corps et calcul du « squelette » ou ensemble de points nécessaires à l’animation d’un avatar.
  • permettre la visualisation en relief de la scène filmée
Objectifs Pédagogiques
  • Capteurs : Principe de base du fonctionnement de la Kinect.
  • Traitement d’image: comprendre les formats images et vidéos, de couleurs et les notions de seuillage et de segmentation.
Résultats attendus
  • PAN1 :
    • Principes de bases du fonctionnement de la kinect
    • Expliquer les interfaces entre Kinect et votre programme
  • PAN2:
    • Premiers tests de lecture depuis la Kinect.
  • PAN3:
    • Lecture et seuillage en profondeur depuis la Kinect.
  • PAN4:
    • Analyser comment la Kinect est intégrée dans le prototype final, quelles pistes d’amélioration seraient possibles ?

Contrôleurs de jeux

Contacts Tuteurs : Jean Le Feuvre

Ces capteurs sont classiquement utilisés comme controleurs de consoles de jeux. Ils sont principalements utilisés dans des applications d’interface homme-machine, parfois sous des formes surprenantes! Vous avez à votre disponibilité les contrôleurs suivants:

Chaines de mesures et de contrôle

Contacts Tuteurs : Tarik Graba, Ulrich Kühne

Vous pouvez intégrer à votre projet des capteurs et des actionneurs qui vous permettront respectivement d’acquérir des données ou de produire une action.

Les Arduino sont des cartes à base de micro-contrôleur (Atmel ATMega) et disposant de différents capteurs et actionneurs.

  • Le LabJack, convertisseur USB analogique/numérique de signal
  • des oscilloscopes
  • capteur de force et/ou d’accélération
  • de microphone carte son
  • de capteurs piézoélectriques

Le site pédagogique de PACT