Pour commencer, un fait amusant: avant de commencer les travaux, tout le groupe de projet, et ceci: directeur produit, directeur artistique, chef de projet, analyste, designer, iOS, développeurs Android et spécialiste QA, Ascona a fait don de ses appareils intelligents, apparemment, afin que nous puissions mieux dormir et travailler de manière plus productive. Directement de l'usine, des oreillers, des trackers de sommeil, la base du lit sont arrivés à notre bureau d'Izhevsk - tout cela devait être connecté. Nous avons en fait dormi sur ces oreillers - et c'est le moment où je suis prêt à les recommander avec passion. Je ne pouvais plus revenir à mon ancien hivernant synthétique, et une fois le projet terminé, j'ai acheté des oreillers intelligents pour toute la famille (Ascona ne me paie pas pour la publicité, ce qui est dommage).
C'est le cas lorsque le client s'est occupé de ses développeurs et, par conséquent, nous avons fait une application cool. Mais tout d'abord.
Approche produit
Ascona développe des solutions pour un sommeil confortable et sain depuis plus de 30 ans. En combinant l'expertise accumulée et les technologies modernes, l'entreprise a entrepris de créer un produit qui aiderait à rendre le sommeil plus efficace - avec cette idée, le client nous est venu.
Qu'est-ce que la chambre intelligente? C'est un écosystème d'appareils allant des sommiers contrôlables aux lampes et rideaux intelligents. Avec son aide, vous pouvez créer une atmosphère individuelle dans la chambre à coucher qui convient le mieux à un sommeil confortable.
Après avoir étudié l'idée du service, nous avons invité nos collègues à agir par étapes et à utiliser une approche produit dans le développement. Il était très approprié pour la mise en œuvre d'une telle tâche. Nous ne nous sommes pas appuyés sur les savoirs traditionnels ou le FT, mais sur la vision du produit, son objectif ultime. Et quelle fonctionnalité serait nécessaire pour cela a été décidé dans le processus.
Pour commencer, nous avons prévu de créer une application MVP. Après la première version, nous évaluerons les commentaires des utilisateurs et leurs demandes, et étendrons progressivement les fonctionnalités et connecterons de nouveaux appareils.
Nous avons organisé le travail sur Scrum, en sprints de deux semaines, et n'avons pas séparé la conception, le développement et les tests en étapes distinctes. Puisque toute l'équipe a été complètement immergée dans le projet dès le début, nous avons travaillé selon le schéma: d'abord, nous coordonnons toutes les solutions, idées, fonctionnalités à l'intérieur, puis seulement nous les donnons au client pour approbation.
Toutes les deux semaines, nous avons organisé une démo pour le client: il a montré des solutions toutes faites, discuté des plans pour les prochains sprints. Grâce à cette approche, nous avons toujours eu l'opportunité d'évaluer les résultats intermédiaires et d'ajouter de nombreux détails utiles au projet.
Comment nous avons transformé une idée en produit
Lors de la première rencontre avec le client, nous avons déterminé les principaux scénarios d'interaction avec l'application et la procédure de connexion des appareils.
Le MVP comprend trois appareils:
Oreiller intelligent - un oreiller intelligent qui surveille la fréquence cardiaque et respiratoire d'une personne;
Sleep-dot est un petit capteur qui surveille le niveau d'humidité et la température de l'air dans la pièce, ainsi que le moment où une personne s'endort;
sommier Ergomotion, qui se compose de plusieurs sections avec un angle variable et peut faire des massages.
Nous collecterons des données sur l'oreiller et le slip-on, sur la base desquelles nous pourrons évaluer la qualité du sommeil et les raisons de sa détérioration. Les données de ces appareils nous aideront à tracer les phases de sommeil dans l'application. Et pour le sommier, nous implémentons un panneau de commande pratique dans l'application.
Lors de la même réunion, nous avons esquissé une carte approximative du parcours client, mais au début du travail, on avait le sentiment qu'elle n'était toujours pas fermée, car beaucoup n'était pas visible au début. Au début, notre imagination était limitée aux solutions qui étaient déjà disponibles, donc de nombreuses idées intéressantes sont déjà arrivées dans le processus. Par exemple, en travaillant sur MVP, j'ai vu une fonctionnalité qui distinguera notre application des solutions similaires. Les appareils enfichables transmettent beaucoup de données différentes à l'application, mais en eux-mêmes, leur valeur n'est pas si grande pour l'utilisateur et il n'est pas facile de les comprendre. Nous avons décidé que notre application devrait fournir à l'utilisateur non seulement une notation, mais également des conseils personnalisés sur la façon d'améliorer son sommeil. Cette idée s'inscrit parfaitement dans les objectifs et la vision produit d'Ascona,le client a donc fait appel à ses experts du sommeil - spécialistes impliqués dans la prévention et le traitement des troubles du sommeil - pour travailler sur les recommandations.
En trois sprints, nous avons implémenté la première version fonctionnelle de l'application, qui s'est connectée à un oreiller intelligent et a collecté des données en temps réel. Après un mois et demi, nous avons complètement clôturé ce scénario en implémentant la connexion, l'intégration des utilisateurs, la configuration, la surveillance de l'état, la génération de rapports et des recommandations individuelles.
Pour trois autres sprints, nous avons développé un scénario similaire pour connecter un point de glissement et basculer entre les appareils.
Il nous a fallu un peu plus de temps pour connecter la base. Premièrement, la pandémie a fait ses propres ajustements - l'équipe a dû se rendre au bureau selon un calendrier strict pour tester les appareils. Et deuxièmement, pour nous connecter, nous devions écrire nos propres bibliothèques.
Développement: que faire s'il n'y a pas de SDK
Ce n'est pas notre première expérience avec des appareils, mais dans ce projet, nous avons dû connecter des appareils qui ne pouvaient pas être reprogrammés. Afin de rendre le fonctionnement pratique et une interface intuitive de l'application, nous avons soigneusement étudié le fonctionnement de chaque appareil. Toute l'équipe, sans exception, a testé des oreillers et des points de glissement, a appris à manipuler la base. Il était important pour nous de comprendre comment les utilisateurs interagissent avec les appareils, ce qui peut causer des difficultés, comment résoudre des situations anormales, par exemple, lorsque la batterie d'un gadget est épuisée et qu'il cesse de répondre aux commandes de l'application.
Nous avions même nos propres mèmes: «envoyer la commande à la base» et «réinitialiser l'oreiller».
Le plus dur était peut-être pour les développeurs.
Au début des travaux, ils n'avaient pas de SDK pour les appareils. Tenter de décompiler l'application native nous a donné 16K lignes de code avec des commentaires en chinois.
Ici, la compétence de recherche sur Github s'est avérée utile - les gars ont trouvé le SDK pour l'oreiller et le point de glissement là-bas, mais le SDK pour la fondation a dû être écrit par nous-mêmes.
La documentation contenait un certain nombre d'erreurs, lors de l'écriture du code, il y avait des difficultés pour se connecter via Bluetooth. J'ai même dû renifler le trafic pour trouver des écarts avec la documentation. Ils étaient petits, mais ils ont affecté le fonctionnement de l'application.
Nous avons emballé tous les développements dans des bibliothèques, que nous avons ensuite utilisées avec succès pour travailler sur l'application. Si vous souhaitez les tester et comprendre de manière indépendante le travail de la fondation, écrivez dans les commentaires. Nous les publierons en libre accès s'il y en a beaucoup qui le souhaitent.
Nous avons écrit des applications en utilisant une architecture propre, il était important pour nous de prévoir une évolution supplémentaire du produit.
Refonte à mi-projet
Les designers ont été parmi les premiers à rejoindre le projet. Dès le départ, nous avons choisi les couleurs sombres familières à de nombreux trackers de sommeil. L'écran sombre ne fatigue pas vos yeux lorsque les lumières sont éteintes et ne ralentit pas la production de mélatonine.
Tout avait l'air convaincant et le client était d'accord sur les dispositions.
Mais après quelques sprints, alors qu'il était déjà possible de travailler avec l'application et l'oreiller, il est devenu clair que le design manquait d'expressivité et que ce que nous voulions construire à partir des concurrents ne «captait» pas visuellement.
Nos concepteurs ont complètement repensé l'ensemble du fonctionnement de l'application et de certains scripts personnalisés.
Tout d'abord, nous avons ajouté plus d'animations: battements de cœur, respiration, indicateurs de score et graphiques. Nous avons mis en évidence les accents dans les rapports, rendu la navigation plus compréhensible. Dans la nouvelle version, la palette de couleurs est restée sombre, mais est devenue plus contrastée et il y avait plus d'air entre les éléments. Le design est devenu plus clair et plus compréhensible, expressif.
C'est l'un des avantages incontestables de l'approche produit. Si l'équipe comprend que les décisions actuelles n'apporteront pas le résultat souhaité, elles peuvent être modifiées.
Grâce à cette immersion de l'équipe dans le projet, de nombreuses idées réussies sont nées. Par exemple, en testant le fonctionnement de la base, notre concepteur a décidé que le contrôle d'inclinaison habituel des sections sous la forme des boutons + et -, comme sur une télécommande de télévision, n'est pas très pratique sur un écran de smartphone. Et il a suggéré de les remplacer par des curseurs. Nous avons accepté cette option avec le client, ayant décidé qu'un tel élément deviendrait une autre fonctionnalité de notre application.
Dans l'application, nous avons ajouté la possibilité d'enregistrer des préréglages - paramètres de base individuels. Il n'y a pas de telles fonctionnalités dans la télécommande d'usine.
Nous avons recherché plusieurs solutions en dehors de l'application. Par exemple, que faire si l'appareil est mort? Et comment pouvez-vous aider l'utilisateur à éviter de telles situations? Notre application demande périodiquement aux appareils le niveau de charge. S'il est bas, l'indicateur correspondant s'affiche sur la carte de l'appareil. Ainsi, l'utilisateur aura le temps de recharger son appareil à temps.
Test: ramenez le travail à la maison
L'application a été testée en continu, dès le tout premier sprint.
Nous avons d'abord testé la conception. Notre designer a rassemblé les prototypes les plus cliquables pour des problèmes controversés, nous les avons testés au sein de notre équipe.
Dès que la toute première version de l'application est apparue avec un script pour connecter un oreiller, ils ont commencé à le tester sur de vrais appareils, en suivant chaque étape de l'application. Tout le monde a participé à ce processus - développeurs, concepteurs et spécialistes de l'assurance qualité.
Les testeurs devaient littéralement devenir des appareils intelligents. Des données réelles étaient nécessaires pour vérifier les recommandations, et elles ne peuvent être obtenues que pendant le sommeil. Les gars devaient rapporter des oreillers et des piluliers à la maison, connecter des appareils la nuit, faire des tests et tout vérifier le matin. Si quelque chose n'allait pas et que le test ne fonctionnait pas, la prochaine opportunité de test n'apparaîtrait que la nuit.
Après avoir connecté tous les appareils à l'application, nous avons élargi le groupe d'utilisateurs en incluant les employés d'Ascona qui disposaient des appareils nécessaires dans les salons. Des collègues ont utilisé l'application et nous ont fait part de leurs commentaires.
De leur part, nous n'avons reçu presque aucun commentaire sur le fonctionnement de l'application. Cela suggère que le travail d'équipe de notre côté a été productif - nous avons créé un produit de haute qualité, pratique et compréhensible.
Et après?
Maintenant, l'application est déjà dans les magasins. Il se connecte à trois appareils intelligents, recueille des informations à partir d'un oreiller et d'un slip-dot. En analysant les lectures des appareils, l'application explique à l'utilisateur les causes possibles d'un mauvais sommeil ou d'un endormissement tardif et donne des recommandations individuelles. À l'avenir, nous améliorerons les recommandations, en tenant compte de l'historique des lectures au cours des dernières semaines - elles deviendront encore plus précises et personnalisées.
Dans l'application, nous recueillons automatiquement les commentaires des utilisateurs: le système d'analyse intégré surveille un certain nombre de mesures, à partir desquelles nous apprenons quelles fonctionnalités sont les plus souvent utilisées, lesquelles n'ont pas suscité l'intérêt des utilisateurs, là où les difficultés surviennent le plus souvent. Ainsi, dans les prochaines étapes du développement de produits, nous nous appuierons non seulement sur notre propre vision, mais également sur le Big Data qui démontre les demandes et les exigences des utilisateurs.