Outils pour utilisateurs

Outils du site


cours:plim:projet16_17:gr18:gr18

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
cours:plim:projet16_17:gr18:gr18 [2016/10/19 00:11]
tgrillo [Matériel disponbile]
cours:plim:projet16_17:gr18:gr18 [2017/02/19 16:34] (Version actuelle)
tgrillo [RENDU FINAL]
Ligne 1: Ligne 1:
-====== Projet Groupe ​======+====== Projet Groupe ​18 ======
  
 ==== Présentation du projet ==== ==== Présentation du projet ====
  
-  * Nom 1 : Charles Heitzler +  * Charles Heitzler 
-  * Créneau (AM ou PM) : AM +  * Matin 
-  * Nom 2 : Thomas Grillo +  * Thomas Grillo 
-  * Créneau (AM ou PM) : AM +  * Matin 
-  * Nom du Projet : ActivityWatcher+  * Nom du Projet : __ActivityWatcher__
  
-=== Un scénario d'​illustration du Projet ​===+=== Présentation ​===
  
-Les collègues ​de Bob trouvent qu'il passe plus de temps sur son téléphone ​qu'à travailler. La femme de Bob lui reproche ​de passer son temps devant son téléphone. Il est grand temps pour Bob de prendre conscience du temps passé sur son téléphone afin de pouvoir y remédier.+__ActivityWatcher__ consiste à récupérer la durée d’utilisation ​de chaque application ​sur  
 +le téléphone ​et de produire un rapport hebdomadaire sous forme de barres ​de progressions  
 +les une au dessous des autres.
  
-ActivityWatcher est la solution !+Chaque barre représentant un jour sera clicable et développera toutes les informations  
 +concernant le jour, pour voir quelles applications ont été utilisées et dans quelles  
 +proportions.
  
-Doté d'une ergonomie claire, ActivityWatcher permet à l'utilisateur de faire un rapport hebdomadaire produit en temps réel semaines après semaines. L'​utilisateur aura également ​la possibilité d'accéder au détail ​de chaque journée afin de savoir quelles applications sont les plus chronophages.+L'application proposera des rapports intelligents détaillant les zones géographiques et les heures auxquelles ​l'utilisation a été la plus intensive, ainsi qu'une liste exhaustive des applications utilisées classées par durée, sous forme de listes ou de graphes.
  
-Un code couleur ​basé sur les scores ​de la semaine précédente poussera ​l'​utilisateur à rester dans le vert toute la semaine ​afin de réussir son challenge.+L’avantage et que nous pourrons nous occuper des statistiques indépendamment les une  
 +des autres et ce de manière incrémentale tout au long du projet. 
 + 
 +Le but de cette application est la prise de conscience de l’utilisation de son téléphone  
 +à l’utilisateur pour l’aider à « décrocher ». 
 + 
 +Coté esthétique ce sera très épuré et flat, les barres représentant les jours auront  
 +aussi un code couleur ​de vert à rouge, représentant quelles jours on été critiques. 
 + 
 +Il peut être également intéressant de faire varier ​les seuils du code couleur afin de mettre en place une sorte de challenge pour l'​utilisateur ​en comparant le résultat de chaque jour avec celui de le ou des semaines précédentes. 
 + 
 +=== Sénario === 
 + 
 +Nous sommes lundi et j'​ai ​à ma disposition ​le compte rendu intégral de la semaine ​précédenteJe peux constater que la journée du mardi à été forte en utilisation. Si je développe cette journée : l'​essentiel de l'​utilisation s'est faite dans la zone de Polytech entre 8h et 17h45 ! Soit en cours, et les applications les plus utilisées sont "SMS (30min)"​ et "Clash of Clan (1h30)"​ => Conclusion personnelle : au lieu de jouer je ferais mieux de suivre le cours !
  
 ==== Matériel disponbile ==== ==== Matériel disponbile ====
  
-  * HTC one m8+__HTC one m8__
   * Caractéristiques techniques :   * Caractéristiques techniques :
       * http://​www.gsmarena.com/​htc_one_(m8)-6074.php       * http://​www.gsmarena.com/​htc_one_(m8)-6074.php
Ligne 28: Ligne 45:
       * WLAN Wi-Fi 802.11 a/b/g/n/ac, dual-band, Wi-Fi Direct, DLNA, hotspot ;       * WLAN Wi-Fi 802.11 a/b/g/n/ac, dual-band, Wi-Fi Direct, DLNA, hotspot ;
       * Bluetooth v4.0, A2DP, aptX       * Bluetooth v4.0, A2DP, aptX
-      * GPS  Yes, with A-GPS, GLONASS +      * GPS, with A-GPS, GLONASS 
-      * NFC  Yes (market/​operator dependent) +      * NFC (market/​operator dependent) 
-      * Infrared port  Yes+      * Infrared port
       * Radio Stereo FM radio, RDS       * Radio Stereo FM radio, RDS
       * USB microUSB v2.0 (MHL TV-out), USB Host       * USB microUSB v2.0 (MHL TV-out), USB Host
-  * ASUS ZenPhone+ 
 + 
 +__ASUS ZenPhone__
   * Caractéristiques techniques :   * Caractéristiques techniques :
-      * A déterminer+      * https://​www.asus.com/​fr/​Phone/​ZenFone_2_ZE551ML/​ 
 +      * Android 5.0 
 +      * Accéléromètre/​Boussole/​Gyroscope/​Capteur de proximité/​Capteur de luminosité ambiante 
 +      * WLAN 802.11 a/b/g/n/ac  
 +      * Bluetooth V4.0 
 +      * 4G 
 +      * GPS: GPS/​GLONASS/​QZSS/​SBAS/​BDS 
 +      * NFC 
 +      * Intel® Atom™ Quad Core Z3580 (2.3GHz) 
 +      * 4GB LPDDR3 RAM 
 + 
 +==== Environnement de développement ==== 
 + 
 +  * Android 
 +      * Android Studio 2.2 
 +      * https://​developer.android.com/​reference/​android/​app/​usage/​package-summary.html 
 +      * https://​developer.android.com/​guide/​topics/​location/​strategies.html 
 + 
 +==== Ressouces utilisées ==== 
 +    * Données d'​utilisation de l'API Android 
 +    * Echantillonnage GPS 
 + 
 + 
 +==== Faisabilité ==== 
 +l'​heure actuelle, l'​intégralité des smartphones est équipée de puces GPS plus ou moins performantes. 
 +Le SDK android est probablement l'​environnement le plus documenté et l'​algorithme K-Means dispose de nombreuses implémentations qui ont fait leurs preuves. 
 + 
 +Nous avons fait nos choix en matière de technologies afin d'​optimiser nos chances de réussite dans l'​objectif que nous nous sommes fixé. 
 + 
 +Nos recherches dans ce qui existe dèjà dans ce domaine nous ont conforté dans l'​idée que notre projet est non seulement faisable, mais aussi innovant. 
 + 
 + 
 +==== Algorithme ==== 
 + 
 +Le travaille à effectuer sur les données récupérées relève de la classification. Nous devrons pouvoir détecter d'une part quelles sont les zones dans lesquelles le téléphone est le plus solicité. Nous devons détecter quels sont les crénaux horaires les plus critiques et quels sont les applications les plus utilisées. 
 + 
 +Pour cela nous avons choisi l'​algorithme K-Means, pour des raisons de facilité à mettre en oeuvre, de documentation et d'​efficacité. 
 + 
 + 
 +====== RENDU FINAL ====== 
 + 
 +== Téléchargement == 
 + 
 +Vous trouvez [[https://​www.dropbox.com/​s/​o5fbbowgbrh0tuv/​ActivityWatcher.rar?​dl=0|içi]] une archive RAR contenant les sources ainsi que les exécutables. 
 + 
 +== Application == 
 +Le code source de l'​application se trouve dans le répertoire ActivityWatcher. C'est une application Android, donc le projet doit être importé dans Android Studio. 
 + 
 +Dans l'​archive vous trouverez également le .apk de l'​application installable directement grâce à la commande : 
 +adb install -l activitywatcher.apk 
 + 
 +Note sur l'​application : 
 +Celle-ci peut fonctionner hors connexion grâce à la base de donnée locale du téléphone qui fait tampon. Après expérimentation,​ il suffit replacer le smartphone et le serveur sur le même réseau local en veillant à ce que la configuration soit correcte, puis, de sélectionner le jour de l'​expérimentation dans la liste pour que l'​application lance une synchronisation avec le serveur. 
 + 
 +== Serveur == 
 + 
 +Le backend de notre application qui reçois, traite, et renvoie les données a été réalisé en JEE grâce au framework spring-boot. 
 +Le code source du serveur est disponible dans le répertoire ActivityWatcherBackend. 
 +L'​effort a été fait de changer de type de base de données, pour permettre une exécution simplifier. La base de données mySQL est donc remplacée par un homologue embarqué : H2. 
 + 
 +Il s'agit d'un projet Gradle, importable très simplement dans IntelliJ en tant que projet Gradle. Il faudra effectuer une synchronisation dans le volet Gradle, pour qu'il se charge de télécharger les dépendances. 
 + 
 +Vous trouverez le .jar du server, directement exécutable grâce à la ligne suivante : 
 + 
 +java -jar activitywatcher-backend-1.0.0.jar 
 + 
 +== HOW TO == 
 + 
 +Voici comment installer notre application : 
 + 
 +__Déployer le backend__ 
 +    * Executer activitywatcher-backend-1.0.0.jar sur l'​ordinateur hôte :  
 +    * java -jar activitywatcher-backend-1.0.0.jar 
 + 
 +__Déployer l'​application__ 
 +    * adb install -l activitywatcher.apk 
 +    * Au lancement donner toutes les autorisations nécessaires au fonctionnement de l'​appli (elle les demandes elle même !) 
 +    * Déplier le menu drawer sur la gauche et appuyer sur paramètres pour afficher la popup de configuration du serveur. 
 +    * Entrer l'​adresse IP de l'​ordinateur hôte du serveur et le port 8080. 
 +    * L'​application est prête à être utilisée. 
 + 
 + 
 + 
 + 
 + 
  
-==== Ressouces utilisées dans le Projet ==== 
  
-  * Liste des capteurs mais aussi Data collectés par le Mobile, utilisés pour le projet 
-  * Liste des SDK et API pour l'​accès à ces informations 
-      * Environnement de logiciel : 
-      * Version OS : 
-      * [[http://​example.com|Lien vers la page de doc]] 
-  * Conclusion sur la Fisabilité du Projet 
  
-==== 
  
  
cours/plim/projet16_17/gr18/gr18.1476828680.txt.gz · Dernière modification: 2016/10/19 00:11 par tgrillo