Nous construisons des apps faciles à utiliser. Chaque app passe par une phase de conception au cours de laquelle UI et UX et définir le flux d'utilisateurs et la logique. Les adaptations d'écran et l'ergonomie jouent ici un rôle central. Dans le processus de création du wireframe, également appelé wireframing, il ne s'agit pas de l'image graphique finale mais plutôt de l'image de conception logique de l'application. Nous nous posons ici les questions suivantes :
Quelles actions physiques l'utilisateur doit-il effectuer pour réaliser telle ou telle action fonctionnelle ? Le nombre d'actions est-il suffisamment faible au regard de l'importance et de la fréquence de cette action ? le premier écran affiché met-il en évidence les actions fonctionnelles que l'application veut privilégier ? Idéalement, ces panneaux devraient montrer comment se matérialisent les transitions entre les écrans, les attentes lorsque le traitement est en cours, la manière dont les messages d'erreur sont affichés : Comment l'application doit-elle indiquer graphiquement qu'un chargement de données collectées sur Internet est en cours, que ce traitement doit se faire sur l'écran suivant ou sur l'écran à partir duquel l'action a été effectuée, qu'une fenêtre modale doit être affichée ou qu'un message temporaire doit apparaître en cas d'erreur ?
Les paramètres par défaut d'une application bien conçue devraient, à notre avis, satisfaire au moins 9 utilisateurs sur 10. La cinématique et l'ergonomie d'une application sont essentielles à cet égard. Dans le cadre du wireframing, nous développons des solutions aux questions suivantes, entre autres :
- Comment les erreurs sont-elles traitées ?
- Quelles erreurs l'application doit-elle ignorer ?
- Que se passe-t-il lorsque vous essayez de résoudre le problème ?
- Les données doivent-elles être temporairement stockées localement lorsqu'il n'y a pas de connexion internet ?
- Faut-il mettre en place une règle de mise en cache spécifique ?
- À quoi ressemble la synchronisation (en termes d'utilisation hors ligne) ?
Nous définissons également l'interaction avec les services web. Le transport des informations doit être optimisé pour éviter que la bande passante du réseau, les temps de chargement et les performances de l'unité centrale ne souffrent. Nous vérifions la granularité des services web pour chaque application Android qui communique avec un serveur. Nous nous chargeons de la compatibilité de la mise en page (consommation, mise en place) et de l'adaptation de la présentation des données (parseurs JSON et natifs).