Académique Documents
Professionnel Documents
Culture Documents
Av. de Provence 6
CH-1007 Lausanne
Fait par
Nicolas Zurbuchen
Sous la direction de
Prof. Pascal Bruegger
à la Haute Ecole d’Ingénierie et d’Architecture Fribourg
3
Table des matières
1 Introduction 9
1.1 Contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.2 Objectifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3 Gestion des documents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.4 Gestion du code source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.5 Planification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.6 Logiciels utilisés . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.7 Structure du rapport . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2 Analyse 13
2.1 Situation actuelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Besoins de l’utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.3 Contraintes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.4 Définition de l’audience . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.5 Eléments hors-projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.6 Analyse du système actuel . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.6.1 SEMS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.6.2 HMMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.6.3 RMMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.7 Diagramme d’utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.8 Etat de l’art des montres connectées . . . . . . . . . . . . . . . . . . . . . 21
2.8.1 Liste des montres connectées . . . . . . . . . . . . . . . . . . . . . 21
2.8.2 Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.9 OS pour montres intelligentes . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.9.1 FitbitOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.9.2 Tizen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.9.3 WatchOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.9.4 Wear OS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.10Etude des biosignaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.10.1Fréquence cardiaque . . . . . . . . . . . . . . . . . . . . . . . . . . 33
5
Zurbuchen Nicolas TABLE DES MATIÈRES
2.10.2Tension artérielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.10.3Saturation en oxygène . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.10.4Glycémie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.10.5Température . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.10.6Chutes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
2.11Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3 Conception 39
3.1 Interface graphique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.1.1 Maquette . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
3.1.2 Thème . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
3.2 Ecran de préférences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
3.3 Capteurs de la montre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3.4 Diagramme de classe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.5 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4 Implémentation 47
4.1 Notifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.1.1 Canal de notification . . . . . . . . . . . . . . . . . . . . . . . . . . 47
4.1.2 Création de notifications . . . . . . . . . . . . . . . . . . . . . . . . 49
4.2 Liste avec différentes vues . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
5 Tests et validations 55
5.1 Procédure de test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.2 Authentification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
5.3 Messagerie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
5.4 Cardiofréquencemètre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
5.5 Suivi d’activité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
5.6 Localisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5.7 Détection de chute . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5.8 Rappels de médicament . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
5.9 Synthèse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
6 Conclusion 71
6.1 Objectifs atteints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
6.2 Points d’améliorations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
6.3 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
6.4 Synthèse personnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
6.5 Déclaration d’honneur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
Annexes 85
A Logiciels utilisés 87
A.1 Android Studio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
A.2 Creately . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
A.3 TeXstudio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
A.4 Microsoft Word . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
A.5 Microsoft Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
A.6 Microsoft PowerPoint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Ce document présente le projet avec ses objectifs ainsi que le travail qui a été réalisé.
1.1 Contexte
Un moyen simple est l’utilisation de montres connectées, peu intrusives, pour suivre
les mouvements des personnes dans le bâtiment et de générer des alarmes en cas de
problèmes. Le personnel soignant est alors immédiatement prévenu et un système de
priorité dans l’intervention est mis en place. Soit la personne de référence intervient
ou alors, en cas de problème plus grave, la personne la plus proche ou un médecin
interviendra.
Un premier prototype de système a été réalisé dans le cadre de trois travaux de Ba-
chelor à la HEIA-FR (Haute Ecole d’Ingénierie et d’Architecture de Fribourg). Ces
trois projets correspondent chacun à une composante du système et sont décrites
ci-dessous :
— HMMA (Health Monitoring Mobile App) est une application mobile destinée au
9
Zurbuchen Nicolas 1.2. OBJECTIFS
1.2 Objectifs
Un aspect important que doit pouvoir réaliser la montre connectée est la mesure des
signaux physiologiques de son porteur. Ces mesures permettront d’avertir les aides-
soignants en cas d’activité inhabituelle. Il s’agira donc de réaliser un état de l’art des
capteurs existants pour la mesure des aspects physiologiques et d’analyser ce que les
montres connectées actuelles sont capables de mesurer.
Le but est aussi de concevoir une interface pour montre connectée adaptée aux per-
sonnes âgées pour que le système soit le plus simple d’utilisation et le moins intrusif
possible. Ces personnes qui sont dans la grande majorité très peu habituée à la tech-
nologie peuvent être réticentes à porter un appareil connecté. C’est pourquoi, il faut
que l’application leur soit bien adaptée.
Ce projet a aussi pour but de préparer le travail de Master qui traite une théma-
tique très similaire qui est la mise en place d’un environnement intelligent chez les
particuliers permettant aux personnes âgées vivant seuls de garder une certaine in-
dépendance. Ce système permet de détecter l’activité courante et de déterminer si
elle est habituelle ou non dans le but de prévenir des aides-soignants.
Les documents réalisés pendant le projet sont tous disponibles sur le portail de la
forge. Il est possible aussi d’y retrouver chaque version afin d’observer leur évo-
lution. Le lien du projet sur ce portail est : https://redmine.forge.hefr.ch/
projects/srma
1.5 Planification
Plusieurs logiciels sont utilisés pour l’analyse du code du prototype et des solutions
trouvées. Une description ainsi que la version de ceux-ci se trouvent en annexe A.
Ce rapport de projet d’approfondissement possède une grande analyse sur les montres
connectées et une partie concernant le développement de l’application mobile. Les
chapitres sont les suivants :
Introduction : Introduit le contexte et pose le but du projet,
Analyse : Présente l’étude réalisée sur le monde des montres connectées,
Conception : Présente la façon dont la solution a été développée,
Implémentation : Expose les problèmes rencontrés et les solutions trouvées,
Tests et validations : Décrit les tests réalisés pour valider le système,
Conclusion : Présente les résultats et le bilan du projet.
Le problème est que les personnes âgées ne sont plus en aussi bonne santé que lors-
qu’elles étaient jeunes. Au fil des ans, elles accummulent des dommages moléculaires
et cellulaires ce qui baisse leur niveau de santé. Cependant, il existe de grandes dif-
13
Zurbuchen Nicolas 2.1. SITUATION ACTUELLE
férences entre les personnes. Certaines peuvent être en très bonne santé à l’âge de
70 ans alors que d’autres doivent être assistées quotidiennement. Cela provient en
général de problèmes de santé tels que la démence, l’arthrose, le diabète, la mala-
die d’Alzheimer et encore la perte de l’audition. Mais il se peut aussi qu’elles soient
tout simplement trop faibles physiquement pour pouvoir s’assumer. Il leur est dès
lors compliqué de vivre dans leur domicile et doivent déménager dans des résidences
spécialisées. [3]
La problématique est alors la suivante : comment est-il possible pour les aides-soignants
et médecins de gérer efficacement ces résidents et d’intervenir au plus vite lorsque
la situation l’exige ?
Pour y remédier, un premier prototype de système a été réalisé dans le cadre de trois
travaux de Bachelor et celui-ci est étudié à la section 2.6.
2.3 Contraintes
L’application mobile pour montre connectée est destinée à être utilisée par des per-
sonnes âgées qui ne sont pas forcément très à l’aise avec ce genre technologie. Il faut
donc que l’application soit le plus simple d’utilisation et qu’elle soit le moins intrusif
possible.
Dans le cadre de ce projet, l’aspect de la sécurité n’est pas pris en compte car cela
peut demander beaucoup de temps. Afin qu’il y ait un minimum de fonctionnalités
implémentées pendant la durée du projet, cet aspect a alors été mis de côté.
mobiles, une destinée au personnel soignant et l’autre aux résidents ainsi qu’un ser-
veur contenant la logique métier. Ces trois parties sont décrites dans les sous-sections
suivantes.
2.6.1 SEMS
Le projet SEMS (Smart Environnement Monitoring System) avait pour but de dévelop-
per le côté serveur du système. Il permet de centraliser les données et de coordonner
les aides-soignants et les résidents utilisant chacun une application mobile qui s’y
connecte.
Son objectif est de recevoir les informations mesurées sur l’état des résidents et de
détecter si un problème a lieu concernant la fréquence cardiaque, la localisation ou
une chute. Un algorithme de traitement des alarmes permet d’identifier le problème,
de lui attribuer une priorité puis de notifier l’aide-soignant adapté. Cette notification
se fait à l’aide d’un système PUSH en utilisant la solution de messagerie Firebase
Cloud Messaging. L’aide-soignant concerné doit alors indiquer s’il est en mesure de
s’occuper de ce problème ou non auquel cas, un autre responsable est sollicité. Il offre
en plus les fonctionnalités suivantes :
— Authentification des aides-soignants et des résidents (connexion et déconnexion),
— Mise-à-jour des informations concernant les aides-soignants (localisation, dis-
ponibilité, numéro de téléphone),
— Mise-à-jour des informations concernant les résidents (localisation, type d’acti-
vité, fréquence cardiaque),
— Envoi et réception de messages entre les aides-soignants et les résidents.
Ce serveur possède une architecture de type REST et les communications des données
sont au format JSON. Il utilise le framework uMove qui permet de définir et représen-
ter un système informatique ubiquitaire. Ce dernier a pour objectif l’intégration de la
prise en charge d’utilisateurs et de la détection de leur situation. Il est notamment
possible de créer un monde comportant des entités ayant des attributs de taille et de
localisation.
De plus, SEMS propose une application Web développée en Angular 2 et offrant une
plateforme de gestion de système. Cela permet à un administrateur d’ajouter des
aides-soignants et des résidents ainsi que de visualiser où se trouve tous les acteurs
du système. La Figure 2.2 présente la page d’accueil de cette application web. Elle
affiche la modélisation d’un étage d’un bâtiment et indique où se trouve les aides-
soignants et les résidents. La sélection d’un acteur affiche en plus son nom et son
identifiant. La recherche permet d’obtenir les informations concernant un des acteurs
du système. Enfin, il est possible d’afficher la liste de toutes les personnes. [4]
2.6.2 HMMA
Le projet HMMA (Health Monitoring Mobile App) avait pour but de développer une
des applications mobiles du système. Celle-ci est destinée aux aides-soignants et elle
leur permet de monitorer les personnes âgées habitant dans le home.
La Figure 2.3 présente une capture d’écran de la vue affichant la liste des résidents.
Il est possible de voir leur activité courante (vélo, pied), leur nom et leur position. Les
onglets du haut permettent de naviguer entre les fonctionnalités de l’application. En
sélectionnant un résident, la vue présente à la Figure 2.4 s’affiche. Celle-ci indique
plus d’informations telles que la date de naissance, la pathologie aindi que la locali-
sation sur une carte. De plus, des onglets permettent de consulter les médicaments
prescrits ou d’échanger des messages. [5]
Figure 2.3 – Liste des résidents Figure 2.4 – Profile d’un résident
2.6.3 RMMA
Le projet RMMA (Resident Moniroting Mobile App) avait pour but de développer la
seconde application mobile du sysètme. Celle-ci est destinée aux résidents du home
et elle permet de suivre leurs mouvements afin de notifier le personnel soignant en
cas de problème.
ainsi que la fréquence cardiaque puis de les transmettre au serveur. Afin de mesurer
la fréquence cardiaque, elle supporte l’utilisation de la ceinture Zephyr qui doit se
placer au niveau du torse du porteur. Elle communique via le protocole Bluetooth
et permet en plus de la fréquence cardiaque de mesurer la distance parcourue, les
calories dépensées et la vitesse. Une API pour Android est mise à disposition afin de
faciliter le développement.
La Figure 2.5 présente l’écran d’accueil après qu’un utilisateur se soit connecté. Cet
écran a pour but d’afficher l’information de l’état actuel du résident (fréquence car-
diaque, activité, localisation). La Figure 2.6 présente quant à elle le menu de configu-
ration où il est possible d’activer ou désactiver les capteurs et d’entrer les valeurs par
défaut de la fréquence cardiaque. [6]
Un diagramme de cas d’utilisation a été réalisé afin de visualiser les actions que
peuvent faire les utilisateurs avec l’application qui est a développer dans le cadre
de ce projet. La Figure 2.7 présente ce diagramme.
Cette sous-section présente une sélection de montres disponibles sur les marchés.
Elles ont été choisies car elles présentent de très bonnes ventes à travers le monde et
qu’elles possèdent toutes au moins un capteur physiologique. Elles sont décrites par
ordre de sortie.
Samsung Gear S3
La plus ancienne montre des cette étude est la Samsung Gear S3 qui est sortie le
18 novembre 2016. Elle existe en deux design qui sont la « Frontier » et la « Clas-
sic », cette dernière étant présentée à la Figure 2.8. Elle fonctionne avec le système
d’exploitation maison de Samsung du nom de Tizen (plus d’informations à la sous-
section 2.9.2). Elle intègre plusieurs capteurs dont un accéléromètre, un baromètre,
un gyroscope, un capteur lumineux ainsi qu’un capteur cardiaque. Il est possible de
l’utiliser avec des smartphones Android ou des iPhones ou même de manière auto-
nome (« standalone »). Grâce à son support de LTE, il est possible de passer des ap-
pels, d’échanger des SMS ou encore d’utiliser des applications accédant à internet.
Cette fonctionnalité permet alors d’avoir un smartphone complet au poignet auquel il
est aussi possible de connecter des écouteurs via Bluetooth.
Comme pour sa version précédente, la Samsung Gear S2, elle possède une lunette ro-
tative qui permet de naviguer dans ses menus. Cela évite d’utiliser des gestes avec le
doigt qui ont tendance à masquer l’écran. Elle peut aussi être utilisée pour prendre/-
rejeter des appels et modifier le volume d’écoute. Cependant, la lunette ne peut pas
effectuer des clics. Les deux boutons physiques sont utilisés pour accéder rapidement
à certaines fonctionnalités de la montre telles que Samsung Pay. Un microphone ainsi
qu’un haut-parleur font aussi partie intégrante de cette montre.
En plus, la Samsung Gear S3 possède les technologies NFC et WiFi et grâce à son
GPS, elle peut suivre les déplacements de son utilisateur. Sa batterie de 380 mAh
tient 3 jours avec une bonne utilisation et peut atteindre les 4 jours avec l’économie
d’énergie.
Son avantage est principalement le fait qu’elle puisse fonctionner de manière auto-
nome. Elle n’est donc plus dépendante du smartphone qui lui est attaché. Concernant
le suivi de personne, elle peut être localisée et son seul signal physiologique qu’elle
enregistre est la fréquence cardiaque. Elle permet aussi de détecter l’activité grâce
à ses autres capteurs. Ses désavantages sont sa taille qui apparaît très grande au
poignet et son manque d’applications disponibles du fait de l’utilisation du système
d’exploitation Tizen. [9] [10] [11]
LG Watch Sport
La LG Watch Sport sortie le 9 février 2017 est présentée à la Figure 2.9 et elle est
l’une des premières montres à utiliser la deuxième version du système d’exploita-
tion Wear OS. Elle est très similaire à la montre Samsung Gear S3 précédemment
décrite. Elle intègre plusieurs capteurs tels qu’un baromètre, un accéléromètre, un
gyroscope, un capteur de lumière ainsi qu’un capteur cardiaque. Il est possible de
l’utiliser avec un smartphone Android ou un iPhone bien qu’avec ce dernier, les fonc-
tionnalités soient limitées (pas d’iMessage ni d’Android Pay, manque d’application
compatible sur iPhone).
Cette montre est très grande (plus que la Samsung Gear S3) ce qui n’est pas adapté
aux personnes avec des poignets fin. De plus, elle peut ne pas être confortable selon
le porteur et son bracelet ne peut pas être changé. Elle possède deux boutons d’ac-
cès rapide à certaines fonctionnalités (par défaut Android Pay et Google Fit) mais ils
peuvent être reconfigurés. Une couronne placée entre les deux boutons permet de na-
viguer dans les menus de la montre. Son fonctionnement est similaire à la lunette de
la Samsung Gear S3 et est inspiré de la couronne existante sur l’Apple Watch Series
2. Cela évite d’utiliser des gestes sur l’écran tactile et ainsi de masquer l’écran bien
qu’il soit possible de l’utiliser de cette manière. De plus, la couronne peut être pressée
pour afficher la liste d’applications. Il sera donc tout de même nécessaire d’utiliser
l’écran tactile pour sélectionner l’option désirée. Mais la couronne facilite et améliore
la rapidité d’utilisation de la montre de manière générale.
l’utilisateur. Concernant sa batterie qui est d’une taille de 430 mAh, elle peut être
utilisée pendant une journée avant de devoir être rechargée.
Ses désavantages sont sa taille qui est vraiment grande et sa batterie qui se vide
extrêmement vite. Ses avantages sont similaires à la Samsung Gear S3 : Le mode
autonome est très pratique, elle possède beaucoup de caractéristiques pour le suivi
de personne mais elle est tout de même limitée en termes de possiblité de mesure de
signaux physiologiques différents.
Une version plus simple de cette montre est sortie à la même période elle se nomme
LG Watch Style. Elle est plus petite et possède moins de caractéristiques (Pas de GPS,
ni de LTE, ni de capteur cardiaque). Elle n’a pas été étudiée car elle ne possède aucun
capteur physiologique. [14] [15] [16]
Huawei Watch 2
La Huawei Watch 2, sortie le 18 avril 2017, est l’une des montres à disposition dans
le cadre de ce projet sur laquelle l’application sera testée et elle est présentée à la
Figure 2.10. Elle très similaire aux deux montres précédemment étudiées en particu-
lier la LG Watch Sport car elle possède le même système d’exploitation, Wear OS. De
ce fait elle est compatible avec les smarpthones Android et les iPhones bien que les
fonctionnalités sur ces derniers soient réduites.
Elle est dotée d’une boussole en plus des traditionnaux accéléromètre, gyroscope,
baromètre et capteur cardiaque. Il existe une version autonome avec le support LTE et
4G avec l’utilisation d’une carte SIM ainsi qu’une version sans ce support. Elle intègre
un GPS, un haut-parleur et un vibreur et gère les communications par Bluetooth, WiFi
et NFC. Ce dernier étant utilisé pour Android Pay.
Concernant le matériel, elle possède deux boutons dont un peut être programmé pour
ouvrir rapidement une application et dont l’autre sert à ouvrir la liste des applications
ou revenir à l’écran d’accueil. Elle ne possède pas de couronne ou lunette de navi-
gation. Il faut donc utiliser l’écran tactile pour réaliser toute action dans la montre.
Cela complique son utilisation et son porteur aura plus de difficulté à voir l’écran à
cause de son doigt. De plus, l’écran est plus petit que les deux autres montres et il est
placé trop à l’intérieur du matériel ce qui fait qu’il est plus difficilement atteignable.
Sa taille de manière général est assez volumineuse mais son bracelet est facilement
interchangeable. Elle est résistante à la poussière et à l’eau grâce à la norme IP68
mais ne peut pas être utilisée pour la natation.
La Huawei Watch 2 possède une batterie de 420 mAh qui lui donne une autonomie
d’une journée pour la version LTE et de deux jours pour la version sans. Un mode spé-
cial pouvant augmenter son autonomie à dix-huit jours existe mais il désactive toutes
les fonctionnalités dites intelligentes. Elle devient alors une montre toute simple.
Ses avantages sont très similaires à la LG Watch Sport mais elle est globalement
moins agréable à utiliser. Elle donne par moment une impression de lenteur à cause
de ses nombreuses caractéristiques et le fait qu’elle ne possède pas un bouton rotatif
rend son utilisation plus fastidieuse. Ses désavantages en plus sont son volume et sa
petite taille d’écran. [19] [20] [21]
L’Apple Watch Series 3 est sortie le 22 septembre 2017 et est présentée à la Fi-
gure 2.11. Son design est extrêmement similaire à sa précédente version, l’Apple
Watch Series 2. Ses caractérstiques sont à quelques détails près les mêmes que les
précédentes montres étudiées. Elle possède un accéléromètre, un gyroscope, un ba-
romètre et un capteur cardiaque. A cela s’ajoute un vibreur, un haut parleur et un
microphone.
Sa grande différence est qu’elle tourne sur la plateforme watchOS qui est le système
d’exploitation développé par Apple. De ce fait, la montre est uniquement compatible
avec des iPhones. Siri, qui fait partie de la montre, peut être utilisé pour obtenir des
informations et il répond au travers du haut-parleur ce qui n’était pas le cas pour
l’Apple Watch Series 2. Cependant, il n’est pas souvent pertinent et l’utilisateur va
vite arrêter de l’utiliser.
Au point de vue matériel, l’Apple Watch Series 3 possède un bouton permettant l’accès
rapide à une application et une couronne rotative fonctionnant de la même manière
que la LG Watch Sport. Elle permet de naviguer dans les applications, de défiler du
texte ou encore de zoomer sur certaines pages. L’écran de la montre ne reste pas
tout le temps allumé pour afficher l’heure mais un coup de poignet l’active tempo-
rairement. Sa batterie peut la faire fonctionner une journée mais dès que des fonc-
tionnalités LTE sont utilisées, elle se vide en quelques heures. Elle suporte l’eau et
la poussière et peut être utilisée pour la natation contraitrement aux autres montres.
Son capteur cardiaque très évolué a la capacité de mesurer précisément la fréquence
cardiaque lors d’activité physique mais aussi lorsque le porteur est immobile.
Ses avantages sont son support de la connexion cellulaire LTE et de son capteur car-
diaque. C’est une montre qui rivalise avec les trois précédemment étudiées mais à
la différence de fonctionner avec watchOS. Ses désavantages sont son manque d’ap-
plication fonctionnant de manière autonome, sa petite batterie et le fait qu’elle soit
uniquement compatible avec les iPhones. [24] [25] [26]
Fitbit Ionic
La FitBit Ionic sortie le 1er octobre 2017 est présentée à la Figure 2.12 et est la
première montre intelligente de la compagnie. Elle est orientée pour les sportifs, c’est-
à-dire qu’elle permet facilement d’enregistrer des sessions de natation, de course, de
cyclisme ou encore les phases du sommeil pendant la nuit. Elle possède un baromètre,
un accéléromètre, une boussole et un capteur cardiaque pouvant fonctionner toute la
journée. Cela rend faisable la mesure de la fréquence cardiaque au repos.
Elle tourne sur un système d’exploitation fait maison, le FitbitOS et fonctionne avec
des smartphones Android ou des iPhones. Elle possède aussi une fonctionnalité de
paiement mais est moins répandue que l’Apple ou l’Android Pay. Elle se connecte au
téléphone via Blutetooth et supporte les protocoles WiFi et NFC. Sa très bonne gestion
de batterie lui permet de tenir pendant 4 à 5 jours mais l’utilisation du GPS va faire
diminuer drastiquement cette durée de vie.
Ses principaux avantages sont sa durée de vie et son bon suivi d’activités. Ses trois
boutons facilitent la navigation dans les menus lorsque l’utilisateur est en train de
faire du sport. Ses désavantages sont le peu d’applications disponibles sur son app
store ainsi que son prix élevé qui s’approche de la Samsung Gear S3. [29] [30] [31]
Omron HeartGuide
Cette dernière montre qui n’est pas encore sortie est présentée à la Figure 2.13. Elle
fait partie de cette analyse car elle sera la première montre intelligente à pouvoir
mesurer la pression du sang. Elle a été annoncée pendant le CES du début de cette
année et c’est pourquoi il n’y a pour l’instant que très peu d’information. Elle devrait
intégrer en plus un capteur cardiaque ainsi que d’autres fonctionnalités classiques
qui peuvent être trouvée chez ses concurrents. Actuellement, elle subit des tests par
la FDA afin d’approuver sa mesure de la pression sanguine. [32] [33]
2.8.2 Limitations
Avec l’étude de ces quelques montres, il est dès lors possible de se rendre compte
des limitations qu’elles pourraient imposer de manière générale suivant les caracté-
ristiques qu’elles possèdent.
Une des plus grandes limitations que possède ces montres est la durée de vie de leur
batterie. La plupart peuvent tenir de deux à trois jours mais tout dépend de l’utilisa-
tion qui en est faite. Cela implique que le porteur devra souvent enlever sa montre
afin de la mettre à charger et que pendant ces périodes aucune mesure ne pourra être
faite. De plus, en l’enlevant souvent, cela augmente le risque que l’utilisateur oublie
de la remettre, en particulier les personnes âgées.
L’écran de ces montres est très petit et il devient vite compliqué de réaliser des ac-
tions. Il est nécessaire alors de limiter le nombre d’actions possibles afin de ne pas
rendre l’application pénible à utiliser. Du fait aussi de ces petits écran tactiles, le
doigt à tendance à gêner l’utilisateur. Certains constructeurs résolvent ce problème
avec des boutons matériels rotatifs ce qui est d’ailleurs plus instinctif pour des per-
sonnes âgées non-habituées à ce type d’écran.
Une autre limitation datant surtout des premières générations de montres intelli-
gentes est la possiblité de leur utilisation sans smartphone associé. Cela forçait les
utilisateurs à avoir deux appareils sur eux. Cette problématique a tendance à être
résolue avec les montres sorties depuis 2017. Dans des bâtiments où une connexion
Wi-Fi est disponible, il est tout-à-fait possible d’avoir des applications fonctionnant
de manière autonome et accédant à internet. Typiquement l’application RMMA pour-
rait être développée dans ce sens. Cela impliquerait qu’il ne sera plus nécessaire au
résident d’avoir un smartphone. Cependant, dès que l’utilisateur va à l’extérieur, il
faut que la montre possède la technologie LTE et cela requiert alors un abonnement
spécifique engendrant des frais supplémentaires. Cela sans compter le fait que cette
technologie consomme énormément de batterie.
Cependant, un grand avantage des ces montres est qu’elles sont en tout temps (sauf
lors des chargements) en contact direct avec son porteur. Cela implique qu’elles
peuvent facilement prendre des mesures physiologiques. Bien qu’actuellement, elles
mesurent uniquement la fréquence cardiaque, cela va évoluer au fil des années. La
Omron HeartGuide va justement dans ce sens. Beaucoup de recherches sont faites
dans ce sens afin de développer des « wearables » pouvant mesurer d’autres signaux
physiologiques dans la finalité de tout pouvoir intégrer dans un seul appareil. [35] [36]
Il a été vu lors de l’étude des montres intelligentes qu’elles utilisent des différents sys-
tèmes d’exploitation suivant le constructeur. Bien qu’une contrainte du projet soit de
développer l’application Waer OS (Android), il est tout de même intéressant d’étudier
les autres existants afin de relever leurs différences.
2.9.1 FitbitOS
Fitbit a décidé de ne pas utiliser Wear OS pour sa montre intelligente car elle veut
un système d’exploitation consommant peu de batterie et supportant des applications
sportives. Ils ont bien réussit avec la Fitbit Ionic qui tient quatre jours d’utilisation. De
plus, le fait d’utiliser Wear OS les limite en termes d’interface et de personnalisation.
2.9.2 Tizen
Ce système d’exploitation sorti en 2012 est développé par Samsung et il est déjà
présent sur plusieurs gammes de leurs produits (montres, télévisions, caméras in-
telligentes). Il fait partie de la famille Linux. Les parts de marchés de Tizen sont
pratiquement identiques à Wear OS et tournent aux alentours des 20%. Pour le dé-
veloppement, il existe un logiciel du nom de « Tizen Studio » et il permet de créer
des applications web avec de l’HTML5 ou des applications natives avec du C/C++.
Tout comme Fitbit, il propose un SDK et des APIs afin de pouvoir utiliser différentes
caractérisques matérielles des produits telles que le cardiofréquencemètre. Il existe
aussi une extension pour Visual Studio permettant le développement avec ce logiciel.
Tizen peut gérer toutes les fonctionnalités classiques retrouvées dans une montre
intelligente. Que ce soit l’affichage de notifications, l’utilisation de gestes ou d’une
lunette rotative pour naviguer ou encore la connexion au réseau LTE. Il n’y pas réel-
lement de différences ave les autres systèmes d’exploitation. En comparaison à Wear
OS, il intègre un assistant beaucoup moins performant (S Voice contre Google Assis-
tant) mais est légèrement plus fluide d’utilisation car il est mieux intégré au maté-
riel. [40] [41]
2.9.3 WatchOS
WatchOS est le système d’exploitation présent sur les montres de la firme Apple, c’est-
à-dire les Apples Watch Series 1, 2 et 3. Il possède la plus grande part de marché avec
un peu plus de 50% et en est actuellement à la quatrième version (watchOS 4.0). Il est
nécessaire de posséder un ordinateur Apple (MacBook, iMac) avec le logiciel Xcode
installé afin de pouvoir développer des applications natives pour montres connectées.
Le langage utilisé est le Swift et c’est un langage maison à la marque. Il est aussi pos-
sible d’utiliser Xamarin afin de développer des applications et le langage utilisé danc
ce cas est le C#. Cependant, il sera tout de même nécessaire d’avoir un ordinateur
Mac afin de compiler le code. Ce système d’exploitation est uniquement compatible
avec les iPhones.
Il n’y a pas de fonctionnalités spécifiques par rapport aux autres systèmes d’exploi-
tation. Le support est le même et la navigation peut se faire de deux manières soit
avec l’écran tactile soit avec la couronne rotative. Le menu d’application est la seule
grande différence car il peut être affichée sous une forme de grille en nid d’abeille ce
qui n’est possible chez les autres. Le design de l’interface est globalement similaire à
celle présente dans les iPhones.
2.9.4 Wear OS
Enfin Wear OS dont la deuxième version est sortie en début d’années 2017 est le
système d’exploitation développé par Google. Anciennement appelé Android Wear, son
nom a changé pendant la durée de ce projet dans le but d’avoir un nom similaire aux
autres systèmes d’exploitation. Une des raisons est le fait que beaucoup d’utilisateurs
ont une montre intelligente Android couplée à un iPhone.
Wear OS propose globalement les mêmes fonctionnalités que les autres systèmes
d’exploitation. Il permet d’afficher des notifications, de contrôler la musique et de
se connecter au réseau cellulaire ou WiFi (pour autant que la montre le supporte). Sa
différence et qu’il peut être utilisé avec tout smartphones qu’ils tournent sous Android
ou iOS bien que sur ces derniers certaines fonctionnalités soient limitées.
Cette section a pour but de présenter les signaux physiologiques les plus communs
que mesurent les médecins lors d’un contrôle médical et d’étudier des « wearables »
pouvant réaliser ces mesures. Pour ce faire, un ami en étude de médecine a été in-
terviewé. Chaque sous-section suivante correspond à une mesure physiologique diffé-
rente.
Une des mesures les plus communes est celle de la fréquence cardiaque. C’est d’ailleurs
celle qui est le plus retrouvée dans les montres connectées grâce à leur cardiofréquen-
cemètre. Il existe beaucoup d’appareils différents permettant cette mesure. Le projet
RMMA utilise par exemple une ceinture qui se porte au niveau de la poitrine.
Deux technologies existent pour réaliser cette mesure. La première est l’utilisation
d’une sangle mesurant les pulsations électriques et la deuxième est l’utilisation d’une
technologie optique. Cette dernière se retrouve dans les montres connectées. De ma-
nière générale, la première technique tend à être plus précise mais une sangle au
niveau du bras peut ajouter du bruit pour la mesure finale à cause des mouvements
du corps. [46] [47]
La tension artérielle est plus compliquée à mesurer mais est aussi une des mesures
les plus basiques que fait régulièrement le médecin. Celui-ci utilise en général une
machine avec un brassard qui se place autour du haut du bras et de l’air est insuflé
dans ce brassard afin de pouvoir mesurer la pression. Ce genre d’appareil n’est pas
fait pour être transporté. Il n’existe actuellement pas de « wearables » permettant de
réaliser cette mesure. Il y a bien la montre connectée Omron HeartGuide présentée
à la sous-section Figure 2.8.1 qui est en cours de développement mais sa fiabilité de
mesure doit encore être prouvée. [50]
L’appareil qui est actuellement le plus portable est le tensiomètre Qardioarm (Fi-
gure 2.20). Il est compacte, léger et discret et se connecte de manière sans fil à un
smartphone qui est par ailleurs requis pour son utilisation. Il est compatible avec
HealthKit développé par Apple. Une application mobile recense toutes les mesures
que ce soit pour la pression sanguine ou pour la fréquence cardiaque.
Certains smartphones tels que le Samsung Galaxy S7 intègre un tel capteur à l’arrière
de son boîtier. Il existe encore peu de « wearables » pouvant effectuer cette mesure
mais la montre connectée Fitbit Ionic est une des premières montres connectées à
le faire (voir la section Figure 2.8.1). La plupart des oxymètres ressemblent à une
pincette qu’il faut mettre un moment au bout du doigt et ils sont reliés à un écran
affichant les valeurs qu’ils mesurent. Cependant, il existe dorénavant des pincettes
Réaliser cette mesure requiert finalement que l’appareil puisse émettre et absorber
un flux lumineux. C’est pourquoi de plus en plus de « wearables » comme des écou-
teurs (Figure 2.22), des bracelets ou encore des brassards peuvent dorénavant effec-
tuer cette mesure.
2.10.4 Glycémie
Le diabète est une maladie qui touche beaucoup de monde et qui nécessite pour
les personnes atteintes de continuellement mesurer leur taux de glycémie dans le
sang. Suivant ce taux, la personne doit prendre un produit en fonction de son type de
diabète. Jusqu’à récemment et cela continue, la mesure de ce taux se fait en se piquant
le doigt avec une aiguille afin de pouvoir récupérer une goutte de sang. Cette action
doit se faire plusieurs fois par jour. Cela est très contraignant pour les personnes
atteintes.
Beaucoup de recherches sont effectuées par rapport à cette pathologie afin de déve-
lopper des nouveaux moyens de mesure. Cela représente un grand challenge car l’ob-
jectif est que la mesure puisse se faire de manière non-intrusive, c’est-à-dire qu’elle
soit réalisée sans percer la peau. La liste suivante présente les différentes technolo-
gies qui existent ou qui sont en cours de développement :
— Une montre connectée du nom de K’Watch Glucose est en cours de développe-
ment et comme son nom l’indique, elle permet de mesurer le taux de glycémie.
Elle le fait grâce à un capteur contenant des micro-aiguilles qui, au contact de
la peau, peut prendre la mesure de la glycémie de façon indolore. [58]
— Un tatouage avec une encre spéciale a été mis au point par l’université de Har-
vard. Il permet d’indiquer le taux de glycémie en changeant de couleur. Son bon
Figure 2.23 – Tatouage indiquant avec des couleurs le taux de glycémie. [61]
2.10.5 Température
Une dernière mesure qui est régulièrement effectuée est la prise de la température
corporelle. Celle-ci peut s’avérer utile dans certains cas mais n’est pas toujours fiable
en particulier chez les personnes âgées. Cette mesure se fait en règle générale avec
un thermomètre qui se place sous le bras au niveau de l’aisselle. D’autres réalisent
cette mesure en les plaçant proche de l’oreille.
2.10.6 Chutes
2.11 Synthèse
3.1.1 Maquette
Des maquettes ont été réalisées afin d’avoir une idée de ce que l’application finale
aura comme visuel. Comme elle a le même objectif que le projet RMMA, celle-ci aura
une interface similaire mais adaptée pour les montres intelligentes et respectant les
exigences de Material Design. Les maquettes ont été réalisées directement dans An-
droid Studio. Cela permet d’avoir un très bon aperçu du rendu de la maquette même
s’il est parfois nécessaire d’ajouter quelques lignes de code.
39
Zurbuchen Nicolas 3.1. INTERFACE GRAPHIQUE
passe sont cachés. Après que l’utilisateur a cliqué sur le bouton de login, un écran de
chargement s’affiche afin d’informer que quelque chose se passe (Figure 3.4).
Figure 3.3 – Entrée du mot de passe. Figure 3.4 – Chargement après login.
Après s’être connecté, le menu principal s’affiche (Figure 3.5). Ce dernier est com-
posé d’une liste qui permet à l’utilisateur de naviguer au travers de l’application. Un
drawer n’a pas été utilisé car cela nécessite d’effectuer des gestes, ce qui posent des
difficultés aux personnes peu habituées à ce genre de technologie. C’est d’ailleurs
pour cette raison qu’un bouton de retour est à chaque fois présent en bas de liste.
Il permettra de revenir d’un écran mais ce comportement est aussi possible avec un
swipe de gauche à droite. La Figure 3.6 présente aussi sous forme de liste les infor-
mations relatives à l’utilisateur. Sa fonctionnalité est similaire à l’écran d’accueil de
l’application RMMA. Il affiche l’état des capteurs et donc l’état du résident.
La Figure 3.7 présente l’écran de la messagerie. Il affiche une liste de messages pré-
définis qui peuvent être envoyés avec une simple pression sur une des lignes. Cela
fonctionne de la même manière que dans le projet RMMA. Cependant, à la place d’uti-
liser un « toast » comme il serait possible de le faire dans une application pour télé-
phone, un écran de confirmation momentané est disponible pour les montres connec-
tées (Figure 3.8). Il s’affiche en plein écran et permet de donner un retour à l’utilisa-
teur que le message a été envoyé.
Les deux dernières maquettes (Figure 3.9 et Figure 3.10) présentent l’écran de ré-
glages qui permet d’activer ou de désactiver des fonctionnalités de l’application. Cela
permet d’économiser la batterie pour des personnes ayant des pathologies moins
graves que d’autres. Cet écran se compose d’une liste contenant des interrupteurs
ainsi qu’un bouton de déconnexion permettant de changer l’utilisateur de la montre.
3.1.2 Thème
Comme l’application a le même objectif que celle du projet RMMA, le but est d’utiliser
le même thème afin que les utilisateurs ne soient pas perdus lorsqu’ils utilisent l’une
ou l’autre. Mais l’objectif est aussi de respecter les contraintes de Material Design
pour Wear OS.
L’application RMMA se compose de 3 couleurs qui sont le blanc pour le fond d’écran,
le bleu comme couleur primaire et du noir/gris pour tout ce qui est du texte. Material
Design pour Wear OS utilise une palette de couleur plus sombre que pour les télé-
phones. Cela permet d’économiser la batterie et est moins intrusif pour l’oeil humain.
cependant une API faisant partie intégrante d’Android et qui permet de réaliser un tel
écran qui va respecter le design utilisé dans d’autres applications (Figure 3.12). Cette
uniformisation fait que l’utilisateur n’est pas perdu entre les différentes applications.
De plus, l’utilisation de cette API automatise la sauvegarde des réglages dans les pré-
férences de l’application. Cette section a pour but de présenter comment fonctionne
cette API.
Cette API se repose sur l’utilisation de la classe mère « Preference » qui est le com-
posant de base permettant de créer les autres réglages tels que des checkbox ou
des interrupteurs. L’utilisation de cette classe impose l’usage d’activités et de frag-
ments spécifiques car les composants de l’interface graphique ne sont pas dérivés
de la classe mère « View ». Il y a aura pourtant moins de code Java à écrire car les
préférences se définissent en XML.
Chaque préférence de l’écran possède une paire clé-valeur qui est utilisée pour sau-
vegarder son état dans les « SharedPreferences ». Cette valeur est ensuite accessible
dans toute l’application. Cela va permettre de vérifier si certaines fonctionnalités
doivent être activées ou non au moment voulu. Les valeurs sauvegardées peuvent
être des types suivants :
— Boolean (notamment avec des interrupteurs)
— Float
— Int et Long (entiers)
android:entryValues="@array/pref_syncConnectionTypes_values"
android:defaultValue="@string/pref_syncConnectionTypes_default"
/>
</PreferenceScreen>
Code 3.1 – Exemple de définition d’un écran de préférences.
Cette API peut réaliser des écrans de paramètres très complexes. Il est notamment
possible de créer des intent avec l’activation d’une préférence où il peut exister plu-
sieurs niveaux de réglages (sous-menus). Un guide complet sur le site web de la do-
cumentation d’Android explique toutes les possiblités qu’offre cette API [67]. Dans le
cadre de ce projet, l’exemple ci-dessus présentant les interrupteurs suffira.
Tous les appareils ne possèdent pas l’ensemble des capteurs supportés par Android.
C’est pourquoi, afin d’avoir une application robuste, il est nécessaire de vérifier lors
de la récupération de l’instance du capteur que ce dernier ne soit pas vide. Dans ce
cas, il faut désactiver la fonctionnalité utilisant ce capteur. Il est aussi possible au
niveau du manifest d’indiquer quels sont les capteurs utilisés et s’ils sont requis ou
non. De cette manière lors du téléchargement de l’application depuis le Play Store,
un message informera l’utilisateur de ce que l’application utilise. Et en cas de cap-
teur requis manquant, l’application ne pourra pas être téléchargée. Cela ajoute une
sécurité.
l’utilisateur l’accès à ce capteur. Cela est le cas lorsque l’application veut accéder à
des données qui font partie de l’intimité de l’utilisateur (par exemple les contacts).
3.5 Synthèse
4.1 Notifications
Depuis l’API 26 d’Android (Android Oreo), l’implémentation des notifications a été mo-
difiée et il est desormais nécessaire d’utiliser des canaux. Les comportements visuels
et audios des notifications ne sont plus assignés à chacune d’elle mais à un canal au-
quel chaque notification doit être assigné. Cela permet à l’utilisateur de choisir quel
canal de notification peut être intrusif ou non. [69]
Le but de cette section est de présenter le code nécessaire à la création d’une notifi-
cation dès l’API 26. Le code qui a été réalisé a été en très grande partie inspirée d’un
exemple de code réalisé par Google pour afficher des notifications sur Wear OS. Le
lien du projet exemple sur GitHub se trouve à la référence [70].
Le Code 4.1 présente avec une méthode dédiée, comment il faut faire pour créer un
canal de notification. Cela se fait avec un objet de la classe « NotificationChannel »
auquel il faut donner un nom, un identifiant et un niveau de priorité. Il est ensuite pos-
sible de lui attribuer d’autres paramètres comme une description, s’il doit faire vibrer
l’appareil ou encore le contenu qu’il affiche lorsque l’appareil est vérouillé. Une fois
configuré, il est nécessaire de créer le canal grâce à l’objet « NotificationManager ».
La méthode retourne l’identifiant du canal qu’il sera obligatoire d’utiliser lors de la
création d’une notification.
47
Zurbuchen Nicolas 4.1. NOTIFICATIONS
// Initializes NotificationChannel.
@SuppressLint("WrongConstant") NotificationChannel
notificationChannel =
new NotificationChannel(channelId, channelName,
channelImportance);
notificationChannel.setDescription(channelDescription);
notificationChannel.enableVibration(channelEnableVibrate);
notificationChannel.setLockscreenVisibility(channelLockscreenVisibility);
notificationManager.createNotificationChannel(notificationChannel);
return channelId;
} else {
// Returns null for pre-O (26) devices.
return null;
}
}
Code 4.1 – Méthode permettant de créer un canal de notification
Dès que le canal est créé, il est possible de créer les notifications avec l’aide de l’objet
« NotificationCompat.Builder ». Il est par exemple possible de lui attribuer un titre, un
contenu, une icône ou encore une couleur (très important dans Wear OS 2.0). Il peut
aussi prendre en paramètre un style de notification suivant le contenu que l’applica-
tion veut afficher (style message, beaucoup de texte). Une notification peut avoir des
actions intégrées et cela se fait avec l’objet « NotificationCompat.Action »qui dans ce
cas est créé au préalable. Celui-ci contient une icône, un titre et un Intent permettant
de lancer une quelconque action dans l’application. Pour terminer, la notification est
envoyée en utilisant la méthode « notifiy() ». Cela n’a pas changé depuis les anciennes
versions. Le Code 4.2 est l’implémentation concrète de l’explication de ce même pa-
ragraphe.
// Build the notification with all the necessary data dans the
action then send it for display
public static void createWearNotifications(Context context,
NotificationData nData, List<NotificationCompat.Action>
actions) {
notificationCompatBuilder
.setContentTitle(nData.getTitle())
.setContentText(nData.getContent())
.setSmallIcon(nData.getIcon())
.setDefaults(NotificationCompat.DEFAULT_ALL)
.setColor(ContextCompat.getColor(context, R.color.accent))
.setCategory(Notification.CATEGORY_REMINDER)
.setPriority(nData.getChannel().getImportance())
.setVisibility(nData.getChannel().getLockscreenVisibility());
NotificationManagerCompat.from(context).notify(nData.getNotificationID(),
notification);
}
Code 4.2 – Méthode permettant de créer et d’envoyer la notification
Il est devenu très commun que les applications affichent des listes avec des cellules
différentes et il en est de même dans le cadre de ce projet. Cependant, cela peut être
compliqué de gérer proprement ce genre de cas. C’est pourquoi, il est intéressant
de mettre en avant une bonne façon de procéder. Cette partie de code a aussi été
inspirée par un projet exemple de Google sur leur GitHub [71].
L’idée est comme toujours de créer une classe qui étend « RecyclerView.Adapter » et
d’y implémenter les méthodes requises (« onCreateViewHolder() », « onBindViewHol-
der() » et « getItemCount() »). Il est dès lors nécessaire d’avoir un moyen pour associer
le type de vue de la cellule aux données. Cela se fait grâce à la méthode « getItem-
ViewType() » qui retourne une nombre entier correspondant à une vue. Cette valeur
est d’ailleurs transmise dans la méthode « onCreateViewHolder » justement dans le
but de créer le bon ViewHolder. Il est nécessair d’implémenter une sous classe de
ViewHolder par vue différente de celulle.
Pour que ce soit simple à réaliser, il est alors intéressant que le modèle contenant les
données soit bien organisé. C’est pourquoi une classe spécifique à été implémentée
et elle contient les données à afficher ainsi qu’un numéro correspondant au type de
vue à créer. De cette façon, il suffit d’avoir une unique liste contenant des objets de
cette classe afin de réunir toutes les informations nécessaires (longueur, type de vue,
données).
//
public class MainRecyclerViewAdapter extends
RecyclerView.Adapter<RecyclerView.ViewHolder> {
return new
VHTitle(mInflater.inflate(R.layout.title_layout, parent,
false));
case AppUtils.IMAGE_TEXT_DOUBLE:
return new
VHImageTextDouble(mInflater.inflate(R.layout.image_text_double_layout,
parent, false));
default:
return new
VHImageText(mInflater.inflate(R.layout.image_text_layout,
parent, false));
}
}
// Gets the type of view for each item according its position
@Override
public int getItemViewType(int position) {
return mItems.get(position).getViewType();
}
4.3 Synthèse
Ce chapitre présente tous les tests qui ont été effectués sur les différents composants
de l’application afin de valider cette dernière. Chaque section correspond à un de ces
composants. L’interface graphique ne possède pas de section à elle seule mais elle est
vérifiée tout au long des tests.
Pour valider chacun de ces composants, les tests ont été réalisés manuellement. L’ap-
plication étant dans sa globalité peu complexe, ce procédé a pu être appliqué. Une
mise en place de tests automatiques est très puissante et permet de gagner du temps
sur le long terme. Cependant, dans le cadre de ce projet, le temps est relativement
court et c’est pourquoi il était plus simple de procéder de cette façon.
5.2 Authentification
Le premier test effectué est la connexion et la déconnexion d’un utilisateur sur l’ap-
plication. Le Tableau 5.1 liste les actions à réaliser pour valider cette fonctionnalité.
Les identifiants donnés pour cette vérification seront utilisés pour tous les tests de ce
chapitre et ils sont les suivants :
— Nom d’utilisateur : 3
— Mot de passe : 3
Prérequis
Pour réaliser les tests suivants, l’application doit être installée sur la montre intelli-
gente mais cette dernière ne doit pas être connectée à internet. Le serveur ne doit
pas être allumé.
55
Zurbuchen Nicolas 5.2. AUTHENTIFICATION
Validations
Résultat
5.3 Messagerie
Ce test permet de vérifier que la messagerie fonctionne. Cela concerne l’envoi de mes-
sages ainsi que la réception de messages au travers des notifications. Le Tableau 5.2
liste les actions à réaliser pour valider cette fonctionnalité.
Prérequis
Pour réaliser les tests suivants, l’application doit être installée sur la montre intelli-
gente et l’utilisateur doit être connecté avec les identifiants donnés à la section 5.2.
Elle doit afficher le menu principal. Le serveur nécessite d’être allumé et d’être prêt
à recevoir des requêtes.
Validations
Résultat
5.4 Cardiofréquencemètre
Prérequis
Pour réaliser les tests suivants, l’application doit être installée sur la montre intelli-
gente et l’utilisateur doit être connecté avec les identifiants donnés à la section 5.2.
Elle doit afficher le menu principal. Le serveur nécessite d’être allumé et d’être prêt
à recevoir des requêtes.
Validations
Résultat
Ce test permet de vérifier que la détection d’activité en utilisant l’API Google « Activity
Recognition » fonctionne. Le Tableau 5.4 liste les actions à réaliser pour valider cette
fonctionnalité.
Prérequis
Pour réaliser les tests suivants, l’application doit être installée sur la montre intelli-
gente et l’utilisateur doit être connecté avec les identifiants donnés à la section 5.2.
Elle doit afficher le menu principal. Le serveur nécessite d’être allumé et d’être prêt
à recevoir des requêtes.
Validations
Résultat
5.6 Localisation
Prérequis
Pour réaliser les tests suivants, l’application doit être installée sur la montre intelli-
gente et l’utilisateur doit être connecté avec les identifiants donnés à la section 5.2.
Elle doit afficher le menu principal. Le serveur nécessite d’être allumé et d’être prêt
à recevoir des requêtes.
Validations
Résultat
Prérequis
Pour réaliser les tests suivants, l’application doit être installée sur la montre intelli-
gente et l’utilisateur doit être connecté avec les identifiants donnés à la section 5.2.
Elle doit afficher le menu principal. Le serveur nécessite d’être allumé et d’être prêt
à recevoir des requêtes.
Validations
Résultat
gyroscope, ces valeurs ne sont pas enregistrées et sont dans la finalité perdues. Il
est difficile pour l’utilisateur de vérifier que les valeurs s’actualisent mais lors de
l’implémentation de cette fonctionnalité, des logs affichaient toutes les valeurs reçues.
Ce dernier test permet de vérifier que les rappels de médicaments utilisant les no-
tifications de la montre fonctionnent. Le Tableau 5.7 liste les actions à réaliser pour
valider cette fonctionnalité.
Prérequis
Pour réaliser les tests suivants, l’application doit être installée sur la montre intelli-
gente et l’utilisateur doit être connecté avec les identifiants donnés à la section 5.2.
Elle doit afficher le menu principal. Le serveur nécessite d’être allumé et d’être prêt
à recevoir des requêtes.
Validations
Résultat
5.9 Synthèse
Ce dernier chapitre clôt ce rapport du projet « SRMA ». Il traite en premier lieu si les
objectifs ont bien été atteints puis enchaîne avec les améliorations possibles ainsi que
les perspectives. Une synthèse personnelle est également présente.
De manière générale, l’application est fonctionnelle mais peut être améliorée et com-
plétée avec d’autres fonctionnalités. Concernant les objectifs principaux, ils ont tous
été remplis à l’exception de l’état de l’art sur les applications et projets similaires à
ce projet. Cela vient du manque de temps à disposition à cause de la surcharge de
travail lors de ce semestre. La cahier des charges à même été réduit en cours de
développement mais cela n’a pas suffit.
Dans l’état actuel, l’application peut déjà être testée et utilisée par des personnes
âgées car elle fonctionne correctement. Il s’agirait dès lors d’observer comment ces
personnes réussisent à l’utiliser.
Il serait aussi intéressant de vérifier l’aspect de sécurité mis de côté dans le cadre de
ce projet. Surtout que le système se compose d’un serveur accessible à distance et
possédant des données sur les utilisateurs.
71
Zurbuchen Nicolas 6.3. PERSPECTIVES
6.3 Perspectives
J’ai eu du plaisir à développer cette application pour montre connectée dans le cadre
du projet d’approfondissement. Il a été très intéressant de pouvoir observer les dif-
férences qu’il y a entre le développement d’applications mobiles pour téléphones ou
pour montres. Il m’a permis d’en apprendre beaucoup sur les différents systèmes
d’exploitation et montres qui existent.
Je suis tout de même un peu déçu d’avoir eu un semestre beaucoup trop chargé en
projets qui a fait que je n’ai pas pu approfondir certains points dans ce projet. Mais
comme je continue ce projet pour mon Travail de Master, j’aurais le temps à ce mo-
ment de m’intéresser à ces quelques points.
Je, soussigné, Nicolas Zurbuchen, déclare sur l’honneur que le travail rendu est le
fruit d’un travail personnel. Je certifie ne pas avoir eu recours au plagiat ou à toutes
autres formes de fraudes. Toutes les sources d’information utilisées et les citations
d’auteur ont été clairement mentionnées.
73
Zurbuchen Nicolas BIBLIOGRAPHIE
[41] Tizen v Android Wear : Which smartwatch OS is right for you ? https://www.
wareable.com/smartwatches/tizen-os-vs-android-wear [Consulté le 11
mars 2018]
[42] https://www.undernews.fr/wp-content/uploads/2017/04/Tizen-
os-566x287.png [Consulté le 6 juin 2018]
[43] Apple Watch v Android Wear : The battle for smartwatch supremacy
https://www.wareable.com/smartwatches/android-wear-vs-apple-
watch-2015 [Consulté le 12 mars 2018]
[44] https://upload.wikimedia.org/wikipedia/commons/1/18/Apple_
watchOS_wordmark.png [Consulté le 6 juin 2018]
[45] https://storage.googleapis.com/gweb-uniblog-publish-prod/
images/WBG_Lockup_Blog.max-1000x1000.jpg [Consulté le 6 juin 2018]
[46] The Best Heart Rate Monitors of 2018 - Consumer Electronics Reviews, Ratings
& Comparisons http://uk.pcmag.com/consumer-electronics-reviews-
ratings/88267/guide/the-best-heart-rate-monitors-of-2018
[Consulté le 6 juin 2018]
[47] Cardiofréquencemètre - Tous les fabricants de matériel médical - Vidéos http:
//www.medicalexpo.fr/fabricant-medical/cardiofrequencemetre-
646.html [Consulté le 6 juin 2018]
[48] http://img.medicalexpo.fr/images_me/photo-mg/83995-8723717.
jpg [Consulté le 6 juin 2018]
[49] https://ro.harmanaudio.com/on/demandware.static/-/Sites-
masterCatalog_Harman/default/dw433f11ad/UA-Heart-Rate-
Headphones--FrontBack-1606x1606px.png [Consulté le 6 juin 2018]
[50] Top smart blood pressure monitors http://gadgetsandwearables.com/
2018/01/16/leading-smart-blood-pressure-monitors/#QardioArm
[Consulté le 6 juin 2018]
[51] https://static.praxisdienst.com/out/pictures/generated/
product/5/800_800_90/qardioarm_blutdruckmessgeraet_132944_
gruppe_5.jpg [Consulté le 6 juin 2018]
[52] https://cdn.shopify.com/s/files/1/1987/7319/products/QA_
lifestyle_1_grande.jpg?v=1527263287 [Consulté le 6 juin 2018]
[53] Best pulse oximeter : Guide to buying a pulse
http: oximeter
//gadgetsandwearables.com/2018/03/22/best-pulse-oximeter/
[Consulté le 6 juin 2018]
[54] Wearable Devices That Have an Oximeter | Wearables List | Vandrico Inc https:
//vandrico.com/wearables/device-categories/components/oximeter
[Consulté le 6 juin 2018]
[55] Withings Pulse - Que veut dire SpO2 ? Quel est le niveau normal de SpO2 ? – No-
kia https://support.health.nokia.com/hc/fr/articles/201494667-
Withings-Pulse-Que-veut-dire-SpO2-Quel-est-le-niveau-normal-
de-SpO2- [Consulté le 6 juin 2018]
[56] http://gadgetsandwearables.com/wp-content/uploads/2016/07/
guide-to-buying-a-pulse-oximeter.png [Consulté le 6 juin 2018]
[57] https://i.pinimg.com/originals/c3/34/a3/c334a3592ff2bd7d00b85e2f54a08fbb.
png [Consulté le 6 juin 2018]
[58] K’Watch Glucose : La montre qui mesure la glycémie - Diabète In-
fos https://diabete-infos.fr/ktrack-glucose-montre-qui-mesure-
la-glycemie/ [Consulté le 6 juin 2018]
[59] Harvard develops blood glucose monitoring tattoo
https://www.
diabetes.co.uk/news/2017/Oct/Harvard-develops-blood-glucose-
monitoring-tattoo-92415627.html [Consulté le 6 juin 2018]
[60] What Happened to the Plans for a Smart Contact Lens for Diabetics ? https://
labiotech.eu/contact-lens-glucose-diabetes/ [Consulté le 6 juin 2018]
[61] https://healthylife.werindia.com/wp-content/uploads/2017/08/
diabetictattoo-healthylife-werindia.jpg [Consulté le 6 juin 2018]
[62] Wearable Devices That Have a Thermometer | Wearables List | Vandrico Inc
https://vandrico.com/wearables/device-categories/components/
thermometer [Consulté le 6 juin 2018]
[63] https://vandrico.com/wearables/sites/default/files/styles/
large/public/zephyr%20shirt.jpg?itok=keFZrQca [Consulté le 6 juin
2018]
[64] https://vandrico.com/wearables/sites/default/files/styles/
large/public/tab_lx_0.png?itok=BfP-Xckq [Consulté le 6 juin 2018]
[65] https://designguidelines.withgoogle.com/wearos/assets/
1cOUnEcpmuCtTX1QqUavEdsgci9Ose9r9/06-blue.png [Consulté le 10
mai 2018]
[66] https://developer.android.com/images/ui/settings/settings.png
[Consulté le 10 mai 2018]
[67] Settings | Android Developers https://developer.android.com/guide/
topics/ui/settings [Consulté le 10 mai 2018]
[68] Sensors Overview | Android Developers https://developer.android.com/
guide/topics/sensors/sensors_overview [Consulté le 10 mai 2018]
[69] Create and Manage Notification Channels
| Android Developers https://
developer.android.com/training/notify-user/channels [Consulté le
11 mai 2018]
[89] http://www.laptopmag.com/images/wp/purch-api/incontent/2013/
09/how_to_transitions_lead_675403.jpg [Consulté le 30 janvier 2017]
81
Zurbuchen Nicolas TABLE DES FIGURES
83
Annexes
85
A. Logiciels utilisés
Un certain nombre de logiciels sont utilisés tout au long du projet pour créer les
différents types de documents ainsi que pour le développement du code. Les sections
suivantes décrivent chacun de ces logiciels.
A.2 Creately
Creately est une web application permettant de réaliser des diagrammes de tout type
grâce notamment à l’utilisation du langage UML. Il a la particularité de pouvoir tra-
87
Zurbuchen Nicolas A.3. TEXSTUDIO
A.3 TeXstudio
La version utilisé est la 2.12.6 (hg 6632 :7777b2b8a906) utilisant Qt (version 5.9.1)
et compilé avec Qt (version 5.9.1 R).
Microsoft Word fait partie de la suite Microsoft Office et est utilisé pour la rédaction de
documents. Son but s’apparente au but de TeXstudio mais fonctionne avec un autre
concept qui est « what you see is what you get » (WYSIWYG). Autrement dit, c’est
une interface utilisateur permettant de composer visuellement le résultat voulu. Il est
utilisé pour réaliser des documents moins complexes que ce rapport comme le cahier
de charges. [81] [82]
La version de Word utilisée est la 1804 (Build 9226.2114) et fait partie de Microsoft
Office 365 ProPlus.
Microsoft Project fait aussi partie de la suite Microsoft Office et permet de planifier le
déroulement d’un projet. Il s’adresse plutôt aux planificateurs. En plus, il est possible
de gérer les ressources ainsi que le budget. Il est le programme le plus utilisé au
monde dans sa catégorie. [84] [85]
Microsoft PowerPoint fait partie de la suite Microsoft Office et permet de réaliser des
présentations sous forme de diaporama. Il est possible d’y intégrer du texte mais aussi
des médias ainsi que d’animer l’ensemble des diapositives. [87] [88]
Il est utilisé, comme cité ci-dessus, pour réaliser les présentations liées à ce projet. La
version de PowerPoint utilisée est la 1804 (Build 9226.2114) et fait partie de Microsoft
Office 365 ProPlus.
Page 1
Diagramme de classe