==== Plateformes Mobiles, Wearable Computers et Spécificités du développement pour terminaux Mobiles ==== == Supports : == {{:cours:plim:elim_cours_introduction_2h_2017_2018.pptx|Support du Cours d'introduction générale}} * Durée : 3h * Intervenant: Jean-Yves Tigli * Outils Logiciels : Deux grandes familles peuvent être distinguées dans le cadre des applications mobiles : - Les applications "nomades" où le terminal mobile permet d'accéder aux applications qui nous sont chères (Twitters, Facebook, Web, etc...]. - Les applications "wearable" où le terminal mobile est avant tout un collecteur d'informations capteurs qui vient augmenter le champs des possibles en matières de services fournis à l'utilisateur. Ainsi, ce sont les informations collectées sur l'environnement physique de l'utilisateur qui sont au cœur de nouvelles applications innovantes. Dans ces deux cas, un grand nombre de spécificités sont à prendre en compte dans la méthodologie de développement de tels applications qui souvent conduisent à la mise en œuvre d'outils logiciels supplémentaires. On peut ainsi distinguer des spécificités communes telles que : * La consommation d'énergie * L'intermittence des connexions et la Gestion de Cache * Des variations ergonomiques dans l'UI liées à la morphologie et aux capacités du terminal mobile mais aussi au contexte utilisateur * Le stockage et la distribution des données * Les modalités de commercialisation de ces applications et les business modèles parfois complexes liés aux consommations de services tiers * Les diversités des terminaux mobiles, des Frameworks et les capacités à factoriser les développements On peut pointer des spécificités liées à la seconde famille d'applications : * La qualité et la robustesse des informations capteurs qui nécessitent une étude basée sur un scénario applicatif, des expérimentations réelles et non des jeux de données simulées. * Une attention toute particulière à la méthodologie de test in vivo, aux informations pertinentes à collecter et au traitement souvent statistique à pratiquer sur ces données. * Pour toutes ces raisons, ces applications mettent souvent en œuvre des algorithmes par apprentissage devant les difficultés à obtenir un modèle robuste des capteurs et des interactions entre terminal mobile et environnement physique. Ce module est donc organisé pour : * compléter votre formation de base en génie du logiciel avec les spécificités de ce type des terminaux mobiles avec des interventions et tutoriaux adaptés * s'appuyer et compléter vos compétences en développement d'UI avec des tutoriaux * mener un projet de bout en bout en respectant une méthodologie spécifique et adaptée à l'immersion d'applications logicielles dans un environnement réel et physique. Afin de s'assurer que vous soyez confrontés à cette difficulté, votre projet s'appuiera sur un algorithme d'apprentissage même si ça n'est bien sûr pas le centre de cette formation. Un spécialiste vous guidera dans le choix de cet algorithme et son implémentation sera fournie par des librairies sur étagère. Il se base sur des outils logiciels du marché et en majeure partie sur des interventions de professionnels du domaine. == Références == [[http://www.zdnet.fr/actualites/chiffres-cles-les-ventes-de-mobiles-et-de-smartphones-39789928.htm|Analyse du marché en 2016]] [[http://www.zdnet.fr/actualites/chiffres-cles-les-os-pour-smartphones-39790245.htm|Analyse du marché des OS pour Smart Phones]] [[http://www.arca-computing.fr/application-mobile-natif-ou-cross-plateforme-app-ou-web-app-thats-the-question/|Comparaison des types de développement sur Mobile]] [[http://www.lahautesociete.com/blog/developpement-mobile-cross-platform/|Développement pour Mobiles cross-plateform]] [[http://www.journaldugeek.com/2012/09/13/developpement-mobile-choisir-son-environnement-de-developpement/|Développement mobile : choisir son environnement de développement]] [[http://www.mobizel.com/2015/06/developpement-dune-application-mobile-native-generee-23/|Développement d’une application mobile native générée]] [[http://www.kanefx.com/2015/12/10/applications-mobiles-titanium-phonegap-xamarin-lequel-choisir-lequel-utiliser/| Applications mobiles – Titanium, PhoneGap, Xamarin : lequel choisir ? Lequel utiliser ?]] [[https://www.esup-portail.org/wiki/display/PROJESUPMOBILE/Frameworks+mobiles+cross-platform|Frameworks mobiles cross-platform]]