De quelles compétences avez-vous besoin pour une bonne conception d'interface utilisateur/d'interaction/fonctionnelle dans les applications Web ?

StackOverflow https://stackoverflow.com/questions/21869

Question

Lorsque vous développez des applications Web à partir de zéro, quelles sont les compétences nécessaires pour produire des produits utilisables et riches en interactions ?

  • Faites-vous d'abord le prototype d'interface utilisateur ?
  • Utilisez-vous les User Stories ?
  • Une méthodologie agile ou une bonne pratique que vous recommanderiez ou préconiseriez activement ?

En bref: Quelles compétences vous permettent de passer de la collecte des exigences à AmazingWebApp™ ?

Enfin:Des livres que vous recommanderiez ?

Était-ce utile?

La solution

Un bon sens du design.C'est une chose difficile à comprendre pour un programmeur.Parfois, un programmeur aura une bonne idée de ce qui fonctionne, mais pas de la manière de créer ce qui fonctionne le mieux ou bien.Cela nécessite principalement la capacité de tout prendre et d'être prêt à le déplacer librement jusqu'à ce que quelque chose fonctionne.

La façon dont je le fais est de découvrir comment si quelqu'un où le faire, quelle serait l'idée la plus logique et la plus courante de la façon dont une tâche serait accomplie en ligne ou hors ligne, puis de voir comment reproduire cela.Pensez court, bref, clair, accessible et logique.Si vous pouvez le remettre à quelqu'un sans aucune instruction et qu'il peut faire tout ce que vous voulez qu'il fasse et plus encore, cela fonctionne.S'ils ont besoin d'instructions pour effectuer des tâches quotidiennes sur votre application, c'est une mauvaise conception.

Je dirais également de jeter un œil à d'autres applications qui vous intéressent à un niveau que vous ne réalisez peut-être même pas, mais qui fonctionnent simplement pour une raison quelconque et essayez de reproduire cela.

Autres conseils

Je pense que la meilleure chose à faire est d'utiliser simplement le logiciel.

Lorsque je travaille sur des applications, j'ai tendance à leur envoyer un e-mail à la maison à la fin de la semaine (parfois plus tôt), à m'éloigner du "mode travail", à l'installer normalement (c'est-à-direpas exécuté à partir de votre IDE), puis utilisez-le.

Il est difficile de s'éloigner du "mode test" et d'"oublier" que vous connaissez l'application.Mais une fois qu'on s'y met, ça peut être VRAIMENT utile et très révélateur (et oui, parfois déchirant quand on réalise que cette "petite fonctionnalité sympa" est vraiment nulle et doit être réimplémentée !).

Mon patron dit que je suis « anal » en matière de convivialité.J'aime ça :)

Je pense qu'un certain type de prototypage visuel (même s'il est réalisé avec HTML et CSS) est préférable.Ma tentation est de commencer à coder et de m'inquiéter de l'interface plus tard, et c'est généralement ce qui conduit à quelque chose de vraiment nul (pour moi, du moins).Je développe ce ©FONCTIONNALITÉ MERVEILLEUSE et je finis par précipiter l'interface pour pouvoir disposer rapidement des outils nécessaires pour accéder à mon code.

J'oublie où j'ai entendu cela, mais, pour l'utilisateur final, votre interface EST votre application.Si vous essayez de plaire à l'utilisateur, vous devez commencer par l'interface et la laisser dicter les fonctionnalités que vous fournirez.

Les meilleures pratiques dépendent des talents des membres de l’équipe.

Tout d'abord, écrivez toujours des user stories (faites-en un événement d'équipe, si possible), chargez-les sur LighthouseApp.com ou votre système de billetterie préféré - les 10 à 20 premiers suffisent pour démarrer.

Si vous disposez d’un UI designer, un prototype des pages peut être utile.Mais, si le développeur de logiciels possède des compétences HTML/CSS décentes, je préfère parvenir le plus rapidement possible à un prototype fonctionnel avec une interface utilisateur/HTML/CSS propre.Cette sortie pourrait être confiée à un « concepteur Web moderne » qui peut retravailler/décorer le HTML/CSS.Le concepteur doit travailler sur la même base de code que le développeur via le système de contrôle de code source.

Certains "concepteurs de la vieille école" seraient offensés par la suggestion de "décorer le site" et insisteraient pour remettre un fichier Photoshop à un programmeur.Cela peut convenir pour un simple site Web marketing, mais je n'aime pas le processus de création d'une AmazingWebApp™.

les gars ici donnent d'excellents conseils.

il y a une distinction entre « visuellement joli » et « fonctionnel » (ou facilité d'utilisation).vous pouvez en fait avoir l'un sans l'autre.ce forum est un bon exemple, il a une très grande convivialité mais franchement il est moche - désolé pile, je t'aime toujours cependant :)

la réalité est que tu as besoin compétence pour faire de bonnes interfaces.cela vient avec des années de pratique.je suis généralement engagé pour venir concevoir l'intégralité de l'interface utilisateur d'une nouvelle application.je vois rarement des programmeurs ou des graphistes avec ce genre de compétences (c'est un marché étroit).J'ai découvert à l'université que j'avais un sens naturel pour l'HCI, la conception d'interface utilisateur et l'analyse d'utilisabilité.j'ai développé ces compétences en faisant beaucoup de lecture et en acquérant de l'expérience en faire beaucoup de conception d'interface utilisateur. donc, tout ce que je dis, c'est, préparez-vous à travailler dur si vous voulez vraiment devenir bon en conception d'interface utilisateur.vous pouvez faire tout ce que vous voulez, mais si vous passez du temps à étudier la conception de l'interface utilisateur, cela signifie que vous ne passez pas de temps à apprendre l'agilité avec Ruby on Rails, ou quelle que soit la technologie la plus tendance.

quelques conseils généraux :

  • si vous créez des applications logicielles Web (par opposition aux sites Web de présence de petites entreprises), le prototypage lo-fi est excellent.Rassemblez un groupe de personnes, une pile de papier de boucherie et des marqueurs de couleur, et vous serez étonné du nombre d'écrans que vous pouvez dessiner en quelques jours.

  • votre logiciel devrait être évident.votre logiciel ne devrait pas avoir besoin d'un manuel d'utilisation.le CMS que j'ai développé n'a pas de manuel d'utilisation, j'ai quelques dizaines de clients qui l'utilisent et aucun d'entre eux ne m'a jamais demandé de manuel.

  • regardez ce que font les « grands garçons ».si ebay a son champ de recherche comme celui-ci :'[......] (Recherche)' alors faites le vôtre comme ça aussi (plutôt que non standard mais ok :'Recherche:[......] (Aller)'.).c'est ce qu'on appelle moyens financiers.vous utilisez la familiarité des gens avec d'autres systèmes pour leur donner un coup de pouce sur le fonctionnement de votre propre système.

je recommanderais ce livre:

j'ai aussi quelques articles de blog qui devraient vous aider :

Certaines des choses que nous faisons :

  1. Beaucoup de prototypes, explorant différents concepts à la fois sur papier, dans Photoshop et parfois des implémentations réelles
  2. Réduisez les choses, soyez itératif.N'essayez pas de terminer l'intégralité de l'application et de la perfectionner du premier coup (car vous savez dans votre cœur que cela n'arrivera pas)
  3. La clarté plutôt que l'intelligence, c'est l'une de mes dernières questions que je me demande lorsque je travaille sur l'expérience utilisateur. Bien sûr, les icônes et les choses qui tournent peuvent être superbes, mais sont-elles claires et concises ?
  4. Concentrez-vous sur les objectifs des utilisateurs : c'est une tendance assez courante chez les développeurs de se concentrer sur un écran à la fois, une tâche à la fois.N'oubliez pas que ce n'est pas ainsi que pense quelqu'un qui utilise votre application, il a un objectif en tête, alors essayez de vous y mettre autant que possible.
  5. Utilisez le logiciel que vous créez autant que possible, il n'y a pas de meilleur moyen de voir ses défauts, ses lacunes et ses problèmes que d'en faire l'expérience vous-même.

@Brian Warshaw - je pense que c'était issu d'une conversation qu'Aza Raskin a faite, cette vidéo je pense

Concevoir une interface utilisateur complètement innovante est assez difficile pour la plupart des programmeurs (c'est juste moi ?).Ce que je trouve utile dans la création/conception d’une interface utilisateur pour les applications Web, c’est toujours de rechercher des interfaces utilisateur agréables, faciles à utiliser et élégantes que vous trouvez lorsque vous naviguez sur Internet ou que vous utilisez toute autre application de bureau.Si vous trouvez simplement l'interface utilisateur la plus efficace (conçue par quelqu'un d'autre, à un autre endroit) pour la tâche à accomplir, vous pouvez alors faire du bon travail en mettant en œuvre et en créant une meilleure expérience utilisateur pour votre application.Par exemple, lorsque je tape cette réponse, j'aime la façon dont elle affiche un aperçu en temps réel de la réponse, avec une option pour "masquer l'aperçu" - je voudrais certainement utiliser un type d'interaction similaire lors de la création d'une interface de forum utilisateur .

Déterminer ce que vous construisez et ce que représente votre produit est une clé essentielle pour créer une application réussie.J'ai récemment écrit un article de blog sur la collecte des exigences qui en parle un peu.Vous pouvez le lire ici :Comment améliorer vos compétences en matière de collecte d'exigences.

Voici également quelques principes de haut niveau que je respecte pour m'assurer de créer le bon produit avec une expérience agréable :

Connaître la différence entre l'utilisateur et le client.Les propriétaires d’entreprise qui approuvent le projet brillant sont généralement les clients.Cependant, une erreur dévastatrice est la tendance à les confondre avec l’utilisateur.Le client est généralement la personne qui reconnaît le besoin de votre produit, mais l'utilisateur est la personne qui utilisera réellement la solution (et qui se plaindra très probablement plus tard d'une exigence à laquelle votre produit n'a pas répondu).Aller vers plus d'une personne

Parce que nous sommes tous humains et que nous avons tendance à ne pas nous souvenir de tous les détails atroces.Vous augmentez vos chances de trouver des exigences manquées à mesure que vous parlez à plus de personnes et effectuez des vérifications croisées.

Évitez les promotionsLorsqu’un utilisateur demande quelque chose de très spécifique, méfiez-vous.Remettez toujours en question les préjugés et voyez si cela améliorera vraiment votre produit.

PrototypeN'attendez pas le lancement pour montrer ce que vous avez à l'utilisateur.Réalisez fréquemment des prototypes (vous pouvez même les appeler des versions bêta) et obtenez des commentaires constants tout au long du processus de développement.Vous découvrirez probablement plus d’exigences en faisant cela.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top