Site icon Blog ARC Optimizer

Développer avec le design


Comment faire en sorte que les mondes du développement logiciel et de la conception UX / UI travaillent ensemble sur des objectifs communs.

Le pourcentage d'équipes de développement travaillant avec des équipes de conception d'expérience utilisateur (UX) et d'interface utilisateur (UI) n'a cessé d'augmenter , passant de la compétence exclusive des grandes organisations à devenir un élément essentiel du processus de développement logiciel, même pour la plus petite des équipes, l'importance de ces rôles est devenue universellement acceptée. Malheureusement, une intégration harmonieuse de tous ces rôles n'a pas suivi le même rythme. Dans cet article, nous allons passer par certains des pièges (évitables) en essayant d'amener ces équipes qui parlent différentes langues à travailler vers un objectif commun.

Table of Contents

Identifying Development Weakness (s) [19659005] Créer un logiciel avant l'inclusion des analystes et des concepteurs était incroyablement facile … et souvent incroyablement mauvais. De nombreux développeurs, ayant travaillé avec le même ensemble d'utilisateurs, avec les mêmes objectifs commerciaux, suivant les mêmes flux de travail, avaient l'impression que leur compréhension des besoins fonctionnels suffisait à construire le logiciel requis. Les conceptions sont devenues une surabondance d'interfaces à onglets, un méli-mélo de boîtes de dialogue modales et non modales, et des piles de champs d'entrée dans aucun ordre discernable. Les applications créées ont permis aux utilisateurs d'accomplir leurs tâches, mais ont été accompagnées de combats sans fin avec le système lui-même.

Le rôle du développement

Les développeurs sont maîtres de leur environnement: API, frameworks, langages, bibliothèques, meilleures pratiques et des modèles de programmation cohérents leur permettent de structurer les applications de manière à permettre une modification relativement facile et l'ajout de nouvelles fonctionnalités. Les applications avec une taille et des dimensions de portée inimaginables dans les premiers jours de la programmation sont maintenant la norme, et la création de tout logiciel capable de se développer nécessite le respect de normes qui deviennent l'élément critique d'apprentissage pour les codeurs débutants qui entrent dans le domaine. [19659008] Le développement moderne a atteint le point où chaque niveau d'une application à n niveaux peut être échangé contre une nouvelle technologie avec une réécriture minimale de la base de code existante. En fait, avec de nouvelles plates-formes et de nouveaux cadres apparaissant chaque mois, les développeurs ont les mains pleines pour essayer de se tenir au courant de la pointe de la technologie, de peur que leurs compétences ne deviennent obsolètes. Cela laisse très peu de temps pour se concentrer sur les aspects de la conception de logiciels qui vont au-delà de l'architecture sous-jacente et des normes de codage, dont l'une est la plus cruciale pour l'utilisateur final: l'interface utilisateur.

The Limits of Development

As les développeurs se concentrent sur le bon fonctionnement de la machinerie de l'application et sont aussi à l'épreuve du futur que possible à l'époque, la construction réelle de l'interface devient une seconde pensée et est généralement abordée du point de vue du système, plutôt que de l'utilisateur . Le temps et l'expertise nécessaires pour comprendre pleinement les flux de travail et les processus qui assemblent la journée d'un utilisateur au bureau ne sont pas disponibles pour un développeur qui doit consacrer son temps à son propre monde. Bien qu'il soit possible pour certains individus de posséder la capacité de combler le fossé eux-mêmes, la grande majorité ne le peut pas et ne le fait pas.

Cela a conduit la communauté du logiciel à créer des solutions prédéfinies au problème – des thèmes prédéfinis visuellement attrayants qui peuvent être incorporé avec quelques lignes de code et des directives d'interface utilisateur qui fournissent des paradigmes de navigation et d'entrée qui réduisent la surcharge mentale de la conception de l'interface à l'équivalent de suivre les instructions d'assemblage de meubles IKEA. Le produit final, comparé aux colonnes de champs d'entrée sur un fond gris cuirassé, est esthétiquement beau, avec une charge cognitive quelque peu minimisée en raison de l'utilisation de modèles d'interaction populaires.

Mais cette "taille unique- toute «mentalité aboutit au même succès superficiel que toute autre chose portant cette étiquette – c'est mieux que rien, mais elle ignore les nuances et les particularités qui peuplent les tâches de chaque utilisateur final dans l'environnement spécifique de leur entreprise. Les développeurs ne sont pas préparés pour résoudre ce genre de problèmes, mais font de leur mieux dans des environnements qui manquent de ressources de personnes capables, en utilisant ces approches prédéfinies pour au moins éliminer une partie du «combat» du système. [19659013] Reconnaître les points forts de la conception

Alors que les développeurs se concentrent sur les interactions entre différents systèmes et bibliothèques, les concepteurs se concentrent sur les interactions entre l'utilisateur et le système dans son ensemble – du logiciel réel à l'environnement dans lequel ils se trouvent, à l'équipement ils travaillent, les personnes auprès desquelles ils recueillent des données et à qui ils font rapport. Avec une vue holistique de chaque utilisateur du système, les concepteurs créent des modèles d'interaction et des visualisations qui visent une approche intuitive de chaque flux de travail.

Utile et utilisable

L'itération minimale viable de tout produit est celle qui est au moins utile à certains utilisateurs de base, et c'est ce filigrane bas qui est le noyau sur lequel tout le reste est construit. Alors que le développement introduit fonctionnalité après fonctionnalité, il devient le devoir du design de traduire cela en convivialité. Ils doivent s'assurer que quiconque interagit avec le logiciel ne connaîtra jamais un moment «perdu» – qu'il puisse toujours annuler, revenir, changer quelque chose d'il y a plusieurs étapes, changer les choses en gros – d'une manière qui a du sens pour sa compréhension du problème.

Les humains ont tendance à graviter vers la paresse ou, plus doucement, le chemin de la moindre résistance. Ils essaieront de résoudre les problèmes de la manière la plus évidente pour eux, et il incombe au concepteur de trouver ce chemin et de l'aider à l'introduire dans le logiciel sans se fier aux conseils et à la documentation. Les produits qui "fonctionnent juste" sont très rapidement adoptés par le public cible, tandis que la voie du développement est jonchée de bonnes idées qui ont souffert d'une mauvaise exécution.

Le développement se demandera souvent pourquoi le design propose des solutions qui ne sont pas "éteintes". l'étagère »et nécessitent beaucoup plus de personnalisation et de création de nouveaux modes d'interaction. Une partie du travail de conception consiste à éviter la pile de déchets en traduisant l'utile en l'utilisé, et cela ne peut être réalisé qu'en modifiant l'application pour l'utilisateur au lieu de l'inverse. Reconnaître cette priorité aidera les développeurs à mieux comprendre leurs homologues et changera la lumière dans laquelle ils voient les décisions de conception prises.

Attrayant et souhaitable

Généralement, la première pensée que les gens ont dans leur esprit quand ils entendent le mot design est le monde esthétique, le côté composé de couleurs, de motifs, de textures et de styles. Le logiciel n'est pas différent, et la conception visuelle joue un rôle important et percutant dans le succès ou l'échec d'une application.

L'esthétique est la clé pour augmenter le plaisir d'utiliser un logiciel, et tandis que les aspects individuels qui constituent la conception visuelle semblent beaucoup aspect moins complexe à intégrer, ils peuvent contenir des personnalisations plus difficiles à implémenter que les interactions des concepteurs UX.

Alors que les couleurs dans les applications de type tableau de bord sont évidentes dans leur importance, la possibilité de personnaliser la taille / le placement / la couleur / le poids du texte peuvent permettre aux concepteurs de transmettre très rapidement de nombreuses informations. De plus, ces éléments d'interface utilisateur de type tableau de bord peuvent être analysés en plusieurs sections, qui peuvent toutes être utilisées pour présenter des données à l'utilisateur final.

Pensez à quelque chose d'aussi simple qu'une jauge, découpée dans l'aiguille (couleur et longueur), les différentes tranches, les différentes sections dans chaque tranche, la taille de chaque section. Toutes ces modifications peuvent prendre une jauge assez simple et la transformer en quelque chose d'aussi complexe à développer qu'un flux de travail entier.

Fusion

Maintenant que nous avons une bonne compréhension de l'endroit où les deux groupes peuvent le mieux fléchir leurs muscles respectifs, comment fait-on en sorte que les choses se passent le plus harmonieusement possible? Quelle que soit la phase du projet, chaque équipe a une valeur critique à ajouter: nous voulons éviter les transferts aveugles et les tâches cloisonnées, et donner à chacun un sentiment d’action pendant le processus.

Bien que cela introduit des frais généraux, il faut être une boucle de rétroaction de la part du producteur principal à chaque étape du projet à toutes les autres équipes. Ci-dessous, nous discuterons de l'un des moyens d'organiser le flux d'informations et des commentaires attendus de chaque équipe à chaque étape.

Voice of Reason

Pendant la phase initiale, après que les utilisateurs ont été interrogés et que les exigences ont été recueillies. , les concepteurs commenceront à créer des wireframes. Ces croquis simples et de faible fidélité offrent un moyen facile de communiquer une interaction souhaitée, et c'est lors de leur création que le développement peut ajouter leur voix.

Les interactions qui semblent superflues, ou qui pourraient être remplacées par une solution plus facilement implémentable, sont souvent des points de discorde lorsqu'il y a une communication limitée entre la conception et le développement – trop souvent, les développeurs sont obligés de tenter de mettre en œuvre des fonctionnalités qui n'ont pas été correctement évaluées à l'avance. Pour éviter ce genre de scénarios, un exemple de flux de travail qui suscite des commentaires de tous les responsables de l'application est le suivant:

  • UX Designer esquisse un filaire et identifie tous les domaines d'interaction et les résultats attendus, avec UI Design remplissant les attentes de la façon dont les éléments seront stylisés.
  • Le développeur examine le wireframe avec UX pour mesurer la faisabilité de toutes les fonctionnalités non standard et pour mettre en évidence les alternatives disponibles pour examen. Si le développeur ne gère que le frontend, les sous-étapes suivantes se produisent:
    • Le développeur vérifie auprès des équipes de base de données et de logique métier si les données requises existent et / ou peuvent être stockées, et sont dans un format consommable pour l'application.
    • Ces équipes déterminent l'effort de présentation ou de stockage les nouvelles données et les transmettre au développeur d'interface utilisateur.
    • Le développeur estime l'effort requis pour les nouvelles interactions et présente les résultats (y compris les commentaires de la base de données et des équipes de logique métier) aux concepteurs et au gestionnaire de projet.
    • Au cas où de tout impact majeur sur le calendrier du projet, les concepteurs et le gestionnaire de projet rencontrent le propriétaire du projet pour discuter de l'impact et de la viabilité des alternatives disponibles. Le propriétaire du projet peut alors décider de ce que le budget ou le calendrier autoriseront, et si les alternatives valent le compromis.

Avec ce workflow de conception, tout le monde a eu la possibilité de fournir sa contribution lorsqu'elle est d'une valeur maximale: les développeurs ne se retrouvent pas avec des wireframes et des guides de style qui ne peuvent pas être implémentés dans les délais impartis et les contraintes budgétaires, et les concepteurs n'ont pas l'impression que leur vision a été compromise.

L'inconvénient est qu'il y a une augmentation considérable de la temps nécessaire pour les ressources de développement à tous les niveaux impliqués. L'équivalent de 10 à 15% du temps alloué au wireframing doit être égalé par le temps de ces équipes. Selon la taille du projet, cela peut sembler un investissement important, mais cela doit être considéré comme une assurance contre les problèmes qui surgissent bien une fois la conception terminée.

Voice of Guidance

Bien que la plupart des tâches de conception UX et UI soient terminées une fois que les wireframes et le guide de style ont été approuvés, leur contribution est encore nécessaire une fois le développement commencé. Tout comme le développement fournit des commentaires pendant la phase de conception, l'équipe UX et UI est sur place pour s'assurer que leur vision est réalisée.

Des problèmes peuvent survenir pendant le développement en raison d'une mauvaise communication plus tôt (par exemple, des données supposées être présentes ne sont pas , les estimations pour l'ajout de fonctionnalités étaient désactivées, les éléments existants ne sont pas aussi personnalisables que prévu, etc.) – plus le temps passé à effectuer la surveillance pendant la phase de conception est important, moins il y a de risques de problèmes. Cependant, en cas de revers, la conception devrait être impliquée pour construire des résolutions qui sont incorporées dans le schéma complet, et pas seulement boulonnées.

En raison de l '«assurance» achetée lors de la conception, les frais généraux de l'UX et de l'interface utilisateur pendant le développement sont beaucoup plus petit: environ deux heures par semaine du calendrier de développement pour chaque concepteur impliqué dans le projet. Au fur et à mesure que les équipes travaillent ensemble sur de plus en plus de projets, le besoin de ce type de supervision de la conception en phase de développement commence à diminuer. pour engendrer la bonne volonté entre ces équipes. Rien ne va plus vite que de voir une ou deux personnes accepter les éloges d'une application étonnante, facile à utiliser et belle alors qu'il y a plusieurs groupes dont les contributions passent inaperçues et méconnues. Les responsables de chaque groupe doivent être appelés, ainsi que toutes les personnes dont le travail est extraordinaire. S'assurer que le crédit est attribué en bonne et due forme fait partie de ce qui aide ces équipes à mieux travailler ensemble dans le cadre de projets futurs.

Conclusion

Le temps est l'ingrédient essentiel pour que les équipes de conception et de développement travaillent (et jouent ) bien ensemble: temps dans les tâches de chacun, temps passé à écouter les exigences et les attentes de chacun, et temps passé de projet en projet.

Inversement, plus ces équipes sont isolées les unes des autres, plus la relation sera mauvaise , aboutissant à des applications qui ne sont que des conglomérats de compromis. En comprenant les limites qui font partie de la réalité de chaque rôle, les autres groupes ont une meilleure idée des raisons pour lesquelles certaines décisions sont prises, créant ainsi de l'empathie et de la reconnaissance.





Source link
Quitter la version mobile