Projets 2014-2015

De $1

1. Application mobile de capture des besoins informatiques d'utilisateurs non-informaticiens

Encadrants : Pierre Crescenzo pierre.crescenzo@unice.fr et Isabelle Mirbel isabelle.mirbel@unice.fr

Contexte : L'Ingénierie des Besoins est enseignée en Master MIAGE 1 de l'UNS au semestre 2. Un de ses sous-domaines consiste à recueillir (on dit aussi capturer) les besoins des utilisateurs des actuelles ou futures applications informatiques (pour faire évoluer ou développer celles-ci). Pour cela, des modèles, à base de graphiques ou de scénarios, et des logiciels (1) ont été élaborés.

Travail attendu : Ce projet consiste à concevoir et développer une application mobile (pour tablettes voire smartphones, sous Android) qui permette à un spécialiste de recueillir les besoins sans être bloqué derrière un clavier d'ordinateur. Avec sa tablette ou son smartphone, il pourra interroger les utilisateurs : enregistrement audio ou vidéo, prise de notes libres, commencer à compléter des scénarios, à faire des diagrammes, etc. Le projet comportera obligatoirement une analyse de l'existant pour détecter les concurrents puis s'en inspirer. Le choix des langages, application internes (par exemple, on ne va évidemment pas redévelopper un enregistreur de son : on devra en choisir un existant et l'intégrer) et technologies Android sera réalisé sur propositions des étudiants et validations des encadrants. Des tablettes (Samsung Galaxy Tab 4 10,1" 32 Go) seront fournies aux étudiants pour ce projet.

Pré-requis : Pas de prérequis technique mais un groupe travailleur, motivé et prêt à apprendre pour progresser est attendu.

Réferences : le pré-projet, avant sa rédaction finale

(1) http://istar.rwth-aachen.de/tiki-ind...?page=i*+Tools ou http://www.troposproject.org/node/98

2. Collecte d'information via montres connectées et smartphone pour nourrir un réseau social géolocalisé / temporalisé

Encadrants :  Michel Buffa (buffa@unice.fr) et Amel Ben Othmane

Contexte : Les activités que nous pratiquons tous les jours ne sont pas réparties aléatoirement dans le temps et dans l’espace mais révèlent  des patterns spatio-temporels. Les lieux où vous aviez passé du temps (un site physique ou une page web) régulièrement ou occasionnellement signalent votre style de vie qui est généralement fortement associé à vos caractéristiques socio-économiques, tels que l'âge, le sexe, la profession, et ainsi de suite, pour peu que vous ayez accepté d’être géolocalisé (ce qui est souvent le cas lors de l’installation initiale des logiciels d’un SmartPhone). En d'autres termes, les empreintes spatio-temporelles révèlent une quantité importante d'informations sur les personnes qui les créent. Les réseaux sociaux en ligne et les services de partages d’informations ont générés des volumes importants d’empreintes spatio-temporelles. Ces dernières peuvent être exploitée pour de la publicité ciblée mais aussi, et c’est ce qui nous intéresse ici, pour recommander des activités dans le but d’atteindre un objectif précis.
Par exemple l’activité physique dans un parcours de traitement d’un diabétique peut  servir à faire baisser  la pression artérielle et aide à l’amélioration de l'insulino-sensibilité (et donc produit un effet sur l'équilibre glycémique), etc…Pour atteindre ses objectifs, et en fonction des plusieurs autres paramètres (âge, type de diabète, complication, etc..) le système pourra recommander certains exercices (type, fréquence et intensité). On peut imaginer d’autres scénarios avec des personnes âgées ayant besoin d’une rééducation après une fracture du fémur, avec des sportifs de haut niveau désirant optimiser leurs performances en ayant une préparation physique adaptée, etc.

Objectif : Il s’agit donc de réaliser une plateforme de collecte des données issues de capteurs (parcours géographique, vitesse, distance parcourue, fréquence cardiaque, température du corps, taux de glycémie, etc..) permettant de faire le suivi de l’activité spatio-temporelle et physiologique de la personne. Ces données seront stockées par la suite dans une base de données qui permettra de raisonner sur ces données pour pouvoir effectuer des recommandations. 
La partie collecte des données et visualisation utilisera le framework et les APIs de la plateforme open source SmartCampus (développée par l’équipe de recherche MODALIS localisée à l’EPU templiers).
Le projet devra participer à la création d’un modèle pour ces données et à leur stockage dans une base de données. Une autre tâche consistera à exploiter ces données pour effectuer des raisonnements dessus et donner des recommandations sur les activités à effectuer par la personne. Dans le cas d’un diabétique, d’un insuffisant cardiaque, d’un sportif de haut niveau, on pourra recommander certains parcours, certains objectifs, certains temps à atteindre lors d’un exercice physique, pour atteindre le but « améliorer santé », « améliorer ses performances », etc.

References : http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/Projet_ann%c3%a9e_Miage_2014-2015#Collecte_d%27information_via_montres_connect.c3.a9es_et_smartphone_pour_nourrir_un_r.c3.a9seau_social_g.c3.a9olocalis.c3.a9_.2f_temporalis.c3.a9 

3. Développement d'une plateforme web pour apprendre à jouer des morceaux rock/pop (Garageband simplifié dans une page web!)

Encadrant : Michel Buffa (buffa@unice.fr)

Contexte : Un de vos enseignants a développé une application musicale originale : un lecteur multipistes HTML5 basée sur l'API Web Audio intitulé BHUMP (http://mt5demo.gexsoft.com). Cette application permet de jouer des morceaux rock en mode multipistes, et ainsi isoler les différents instruments. Ce "super lecteur audio" permet de faire des boucles, d'isoler une partie du morceau, etc. Il est déjà utilisé dans des écoles de musique régionales. Voir photo d'écrans. Il est possible par ailleurs de visualiser des partitions de musique multipistes au format guitar Pro directement dans un Canvas HTML5 à l'aide de la librairie JavaScript Alphatab.net. On suhaite synchroniser la lecture audio avec l'affichage des partitions. Idem si on dispose de vidéos pédagogiques. On souhaite syncrhoniser vidéo/partitions et sections dans la musique audio multipiste. Par ailleurs un TER de master info l'an dernier a développé plusieurs instruments de musiques virtuels : une boîte à rythme et un synthétiseurs. Toujours avec l'API Web Audio. Il serait intéressant de pouvoir piloter ces instruments via une interface midi. Ca tombe bien, l'api Web MIDI vient juste d'être implémentée par des navigateurs récents. Vous pouvez tester sur http://www.rivieraproject.fr/ Ces applications fonctionnent également sur tablette et mobiles android ou IOS, c'est tout l'intérêt de HTML5.

Objectif : Il s'agit de complétet le logiciel audio multipiste avec un module de stynchronisation avec partitions et vidéo, et de modifier la GUI en conséquence. Il s'agit de pouvoir ajouter au logiciel multipiste des pistes d'instruments virtuels, pour que ce soit directement l'ordinateur qui gènère les sons lorsqu'on joue de son instrument. Exemples de scénario: Je charge Honky Tonk Woman des Rolling Stones, je branche une interface audio/midi sur mon PC/Mac/Ipad/Iphone/Tablette ou Smartphone Android et je branche soit un clavier maitre (clavier de type piano, mais sans sons), soit une guitare, soit un micro dans une entrée de l'interface. La webapp détecte les évènements midi et joue les sons des instruments virtuels, ou bien détecte les sons de la guitare et traite le signal audio en temps réel pour ajouter des effets.

References : http://miageprojet2.unice.fr/Intranet_de_Michel_Buffa/Projet_ann%c3%a9e_Miage_2014-2015#D.c3.a9veloppement_d%27une_plateforme_web_pour_apprendre_.c3.a0_jouer_des_morceaux_rock_.2f_pop

4. Environnement de travail virtuel immersif

Encadrants : Michel Winter michel.winter@unice.fr et Pierre Crescenzo pierre.crescenzo@unice.fr

Sujet : Les casques à immersion visuelle sont développés à l'heure actuelle essentiellement pour les jeux. Ils sont composés d'un ou de plusieurs écrans placés devant les yeux de l'utilisateur. Divers capteurs permettent de détecter les mouvements de tête de l'utilisateur, ce qui permet d'adapter en temps réel l'image projetée sur l'écran, afin de produire l'illusion d'une immersion dans la scène restituée.
Le plus connu et le plus abouti est certainement l'Oculus Rift (http://fr.wikipedia.org/wiki/Oculus_Rift).
L'objectif de ce projet est de s'approprier l'environnement de l'Oculus Rift et de développer un outil simple qui pourraient tirer partie de l'immersion 3D (mind-mapping 3D, affichage de données 3D, Gantt 3D...) Le choix du développement se fera en fonction de la complexité de l'environnement de développement.
L’utilisation du casque pour visualiser des vidéos 3D 360 est également possible et pourra faire l’objet d’une première étape de prise en main de l’environnement (cf. http://www.panocam3d.com/index.html  http://www.entertherift.fr/news-248-...360-en-3d.html).
Le casque immersif sera commandé en janvier 2015 si une équipe motivée souhaite prendre ce sujet.

5. Prise en main et évaluation WinDev

Encadrant : Michel Winter
Sujet : WinDev (http://www.pcsoft.fr/windev/index.html) est un atelier de génie logiciel (AGL) qui date de 1993. Il en est à sa 20ème version, et il ne cesse de prendre de l’ampleur dans les entreprises (Vinci autoroute, Arianespace, Orange, RSI, …). Il intègre un langage de haut niveau, le WLangage, qui facilite le développement rapide. Une énorme bibliothèque d’objets graphiques permet de faire des applications plus esthétiques que les frameworks habituels. L’objectif de ce projet est d’évaluer la qualité de cet AGL en programmant une petite application orientée gestion de projet. Une version gratuite de l’AGL, WinDev Express sera utilisée.
 

6. Réalisation d’un CRM (Customer Relationship Manager) pour la Miage

Encadrant : Michel Winter, Anne-Claire Daniau
Sujet : Avec le passage du M2 Miage NTDP à l’alternance, le besoin de gérer les contacts avec les entreprises est devenu critique. Tous les aspects d’un CRM d’entreprise ne sont pas nécessaire à la Miage ; les spécifications devront être établies par les étudiants en considérant les objectifs initiaux suivants : Aider le tuteur universitaire à préparer sa visite en entreprise, Aider un responsable de la Miage à résoudre un problème sur un stage, Faciliter les demandes de taxes d’apprentissage avec les entreprises partenaires, Générer des synthèses sur les partenariats pour communiquer auprès des étudiants, des entreprises et du ministère, Faciliter les contacts avec les entreprises pour les demandes de stage ou de contrat-pro…
Après avec établi les besoins et les spécifications de l’application, les étudiants devront décider entre l’utilisation d’un CRM existant (il doit être gratuit) ou le développement d’une application web. Le langage de développement préconisé est PHP ; les fonctionnalités étant relativement simples, des frameworks pourront être utilisés pour faciliter le développement. 

7. Projet SISMAPP

Encadrant : Anne-Marie LESAS amlesas@yahoo.fr

Résumé : Contexte : En 2015 la moitié de la planète aura un smartphone qui embarque toutes sortes de capteurs (GPS, accéléromètre, gyroscope, magnétomètres...) et qui propose de plus en plus de fonctionnalités (écran HD, caméra, NFC, Bluetooth, Wifi...).
Les sismologues sont convaincus que la mobiquité (mobilité + ubiquité d'Internet) des smartphones, et surtout leur connectivité, peuvent potentiellement devenir des stations sismiques mobiles ; les smartphones pourraient contribuer aux études, à la détection et à la surveillance sismographique notamment via des communications avec des capteurs muraux.
La surveillance des tremblements de terre est d’un grand intérêt pour la sécurité publique et les recherches scientifiques. Des séismes majeurs (BIG ONE) sont attendus dans les vingt prochaines années dans des villes très peuplées (Istambul, Mexico, Los Angeles, San Francisco, Tokyo, ..). La détection et l’observation de ces tremblements de terre demandent des infrastructures sophistiquées, coûteuses et difficilement déployables à grande échelle qui pourraient tirer profit de phénomènes de corrélation entre les capteurs des smartphones. Apres un séisme une cartographie temps réel des destructions et l’opérationnalité de réseaux WIFI en mode pair à pair pourraient contribuer de manière efficace et innovante à la gestion de crises (surtout après un BIG ONE comme celui qui a touché Port au Prince en Janvier 2010).

Objectifs du projet SISMAPP :

L’objectif premier de SISMAPP est de réaliser une plateforme ouverte de détection et gestion de crises sismiques (et une application native smartphone) en utilisant d’une part les capteurs des smartphones et d’autre part les capteurs muraux (comme ceux de Stanford).
Les capteurs (accéléromètre, gyroscope et magnétomètre) des smartphones seront utilisés pour la prédiction (aléatoire), la détection, l’observation ou la mesure de tremblements de terre (Android, iOS, W8 et Smartphones) par un phénomène de corrélation dans un environnement réparti en mode P2P. Les points suivants sont étudiés depuis 2012-2013 :

  1. Etude de la centrale inertielle embarquée sur smartphone (accéléromètre, gyroscope et magnétomètre)
  2.  Etude de la fonction Wifi en P2P  (l’activation/désactivation et utilisation en mode terminal ou point d’accès selon le contexte)
  3. Utilitaires d’analyse des capteurs embarquées (Android, iOS et W8) : Analyse des signaux en provenance des capteurs de la centrale inertielle, identification des indicateurs (spécificité du signal en fonction des actions de la vie courante) et création d’une base de données de référence
  4. Etude d’un modèle de corrélation sur fréquence/signature de  tremblements de terre (avec Geoscience Azur et QuakeUP) 
  5. Etude de faisabilité d’un prototype SISMAPP capable de détecter les oscillations des signaux en provenance des capteurs, caractéristiques des prémisses d’un séisme sismique, de leur DETECTION puis d’émettre et recevoir un signal de corroboration par broadcast aux mobiles environnants, et d’informer l’utilisateur d’un danger potentiel le cas échéant ou de dégâts pour un centre d’urgence et de secours
  6. TRILOGIE « SEISMES et mobiquité » : « AVANT, PENDANT, APRES » et l’ OUVERTURE VERS BIG DATA CROWD SOURCING cf. Sandy le 30 Oct. à New York avec Tweeter et Instagram ds cartographie TEMPS REEL de l’Inondation de la ville)


Le focus sera centré sur 3 axes d’innovation qui font l’objet d’un intérêt particulier pour les professionnels :
-    La communication P2P entre périphériques mobiles
-    L’utilisation du capteur fixe pour corroborer la détection d’un séisme ; étudier un système d’alerte M2M entre le(s) capteur(s) fixe(s) environnant(s) et le smartphone
-    La cartographie à partir du serveur : localisation des utilisateurs, consultation des données temporelles (mouvements), et possibilité de notification poussée depuis le tableau de bord

Une équipe TPT de M2 MBDS travaille déjà sur la communication P2P et la cartographie. Il est donc proposé dans le cadre du projet d'année de travailler sur le capteur fixe :
- Développer un serveur capable d'analyser les signaux en provenance du capteur fixe (par une méthode simple de niveaux minima et maxima) : il s'agira d'un serveur Node.JS capable de notifier des utilisateurs connectés via Web Socket.
- Développer une interface mobile sur la plateformede votre choix (Android, Windows Phone, iOS) qui permette de recevoir les notifications d'alerte en provenance du serveur. 

8. Gestionnaire de déduplication

Encadrant : Fabrice Huet (fabrice.huet@unice.fr)

Contexte : La numérisation de tous les fichiers multimédia (photos, vidéos, musiques...) conduit à une accumulation de fichiers qu'il est difficile d'organiser. En effet, il n'existe pas de moyen automatique fiable pour classer les photos par thème ou par personne y apparaissant. Combiné au faible coût du stockage, il n'est pas rare d'avoir plusieurs copies d'un même fichier sur un disque dur. La déduplication est une opération qui consiste à détecter des fichiers identiques pour n'en garder qu'une copie. Elle peut se faire directement au niveau du système de fichiers (par exemple ZFS) ou grâce à un logiciel externe. De base, on peut considérer que 2 fichiers sont identiques si ils ont  exactement le même contenu, à l'octet près. C'est très facile à détecter en comparant le checksum (MD5 ou SHA-1 par exemple) et relativement fiable. Mais pour certains fichiers, on peut aller plus loin. Par exemple une photo peut exister à différentes résolutions, ou avec de légères différences. Dans ce cas, le checksum sera différent alors que les fichiers seront similaires. Pour traiter ce cas, on peut par exemple utiliser du Locality Sensitive Hashing sur une signature de l'image.

Objectif : Le but de ce projet est de construire un logiciel permettant de chercher des fichiers identiques ou similaires sur un système de fichiers. Ce logiciel utilisera une interface Web (HTML5 et JQuery) pour communiquer avec un back-end chargé de l'indexation et la recherche de contenus similaires (Java). Il existe une version initiale de ce logiciel dont il est possible de se servir. Elle fournit, entre autre, la recherche d'images similaires. Le logiciel devra au moins avoir les fonctionnalités suivantes :

  • Gestion de centaines de milliers de fichiers
  • Indexation des fichiers dans une BD de taille réduite
  • Recherche de fichiers identiques ou similaires (images au moins)
  • Recherche de repertoires contenant des fichiers identiques ou similaires
  • Support du drag'n'drop pour chercher dans la base des images similaires à partir d'une image du web

 

9. NotiZ, application Web pour la création de parcours didactiques

Encadrant : Laurent Garcia (Laurent-Pierre.Garcia@ac-nice.fr)

Contexte : NotiZ est une application web qui propose des parcours didactiques (cours en ligne et questionnaires). Ces questionnaires se composent d'items, sans contrainte de forme ni de contenu, items corrigés par la machine.

Travail attendu : Sur une base existante déjà en ligne et fonctionnelle, il s'agit pour ce projet:

  • de doter l'application d'une interface conviviale de composition des items et de la tester sur différents supports (PC, tablettes et smartphones).
  • de poursuivre le développement du module de correction.
  • d'améliorer les performances des serveurs de base de données et de pages dynamiques.
     

Pré-requis : HTML5/CSS3 pour la partie interface; SQL pour la base; java servlets pour le reste.

Référence : www.notiz.fr
 

10. Site Web de diététique

Encadrant : Pierre Crescenzo
Groupe : El hadi Wissam, Massa Florian, Kévin Auchoybur

Intitulé du projet :
Le projet a pour but de créer un site internet de diététique comportant deux parties :

  • Une partie renseignement sur la diététique(conseils, explications, consultation de menus)
  • Une partie composition de menus:

     

L’utilisateur doit pouvoir créer des menus, les menus sont composés de 6 sources obligatoires, une source de protéine(viande, poisson, oeuf, lentilles, soja,  haricots), une source de glucide(pâtes, riz, pain) et une source de lipide(huile d’olive, huile de noix, amande, beurre), à ce menu il pourra ajouter des sources de fibres alimentaire, vitamines et minéraux ( fruits et légumes ), il aura ainsi la mention menu complet. L’utilisateur pourra en fonction de ses  caractéristiques(poids, taille, âge, sexe) calculer son indice de masse corporel ainsi que son indice de masse graisseuse(ne s’appliquant pas à une personne
musclé).

En fonction de ses caractéristiques l’utilisateur pourra consulter ses apports journaliers, voir le nombre de kcalories pour un menu, sa quantité de protéines, glucides, lipides,fibres, vitamines et minéraux. Un commentaire automatique lui dira si cela est adapté à son alimentation selon son gabarit.

Pour faire un menu l’utilisateur aura une liste d’ingrédients classés par catégories. Il existe donc 6 catégories : Protéines, glucides, lipides, fibres, minéraux, vitamines, chaque aliment peut appartenir à une ou plusieurs catégories.
Un menu doit être composé des 6 catégories, ça ne veut pas dire qu’il doit y avoir 6 aliments, il peut y en avoir moins; exemple : les lentilles sont très riches en fibres, c’est à la fois une source de protéines et de glucides, les lentilles appartiennent donc à 3 catégories, en rajoutant de l’huile d’olive pour la catégorie lipides et un fruit pour couvrir les vitamines et minéraux, ce qui me fait un totale de 3 aliments pour avoir un menu équilibré(donc la mention menu complet)

Les utilisateurs auront un compte. Sur son compte un utilisateur pourra stocker une liste de menus(un menu étant une liste d’ingrédients). Il pourra modifier son poids lorsque celui ci changera. Le site comportera une partie forum, l’utilisateur pourra créer une rubrique, il pourra également visiter d’autres rubriques et pourra supprimer la rubrique qu’il a crée. Les rubriques sont constituées d’un titre et d’un ensemble de messages postés
 

Partie conception : langages : php, html, css, jquery
Base de données : MySQL

L’existant :
Il existe des sites internet qui proposent de calculer l’indice de masse graisseuse et corporel, il
existe aussi des sites internet proposant des menus mais aucun ne permet de créer son propre
menu à partir d’ingrédients, l’idée serait de combiner les fonctionnalités existante et de rajouter
le choix de créer son menu.

Historique :
Nous allons de plus en plus vers une tendance où manger bien est important, ce qui était moins le
cas avant, on voit de plus en plus apparaître des aliments diététique, les gens font de plus en plus
attention à ce qu’il mange prenant conscience des risques de mal nutrition qui ont frappé le
monde ses dernières années. Le but est donc de créer quelque chose qui permet aux gens de bien
choisir leurs aliments et de leurs donner une touche de créativité concernant l’alimentation.

11. Outil pour la recherche de stage

Encadrant : Fabrice Huet

Groupe : Abdellatif BEDJBEDJ, Maxence CHAZARRA et Mazen GHARBI.

 
« Quel étudiant n’a pas passé un nombre infini d’heures devant son ordinateur à chercher un stage ? En vain, après avoir envoyé le même CV à un nombre incalculable d’entreprises pour se rendre compte des semaines, voire des mois plus tard qu’il ne correspondait pas au profil recherché par l’entreprise en question ? »
 
Cette lutte récurrente chez les étudiants (en particulier en école de commerce) nous a amenée à penser à un outil de recherche de stage qui consisterait à mettre en relation des étudiants et des entreprises par l’intermédiaire d’un site web dont le principe serait d’apparier des profils proposés à des profils recherchés. Il existerait aussi une application mobile afin de pouvoir avoir accès au service à tout moment (application iOS et Android).
 
Ce projet est un projet que nous voulons réaliser en commun avec un groupe de travail de SKEMA Nice Sophia Antipolis, qui s’occuperait de l’aspect commercial du projet. Ce projet est intéressant pour la communication de la formation MIAGE : ce groupe de travail a reçu l’aval de l’administration de SKEMA, et a l’appui de l’incubateur lié au réseau SKEMA et de différents investisseurs.
 
Concernant les aspects techniques de ce projet, voici la liste (non exhaustive) des outils, langages et techniques que nous souhaitons mettre en place pour ce projet :
  • HTML5 / CSS3 / JS / PHP / SQL (MySQL ou autre) ;
  • Respect de la CNIL (données) ;
  • Application RESTful ;
  • Objective-C ou SWIFT ;
  • 3 repos Git (Site Web / App iOS / App Android) ;
  • Java (Android).

 

12. GeTinTouch (ou TinT) !

 

Encadrant : Justine Rochas

Groupe : Nicolas GAUCHE, Karim ARIFA et Kevin ELSENBERGER
Sous forme d'une application Android avec pour description et cahier des charges initial:
 
But: Mettre en relation des personnes via un groupe virtuel afin de leur permettre de garder contact lors d'une sortie, randonnée, excursion, voyage, journée ski...

 
Cahier des charges partiel :
- Création d'un groupe
- Rejoindre un groupe
- Administrer groupe (1 à N admins)
- Localisation GPS
- Transmission des informations en réseau P2P (3G/Wifi/BlueTooth/SMS)
   (chaque utilisateur est un relais potentiel pour d'autres utilisateurs)
- Afffichage en direct des positions des autres personnes du groupe
  (ou dernière position connue)
- Meeting points
- Rappels (Horaire)
- Messages groupés et privés
- Gestion de POI (POints d'Intérêts)
- Serveur Web pour la gestion