[WEB] Ergonomie - solution 'scénario'
Ce post fait partie d'une série de quatre, relatifs au même problème.
Introduction - l'ergonomie : ni une science ni un art, mais une méthodologie.
Présentation - le problème concret
Solution 1 - une solution pratique et rapide
Solution 2 - la vraie méthode propre (si applicable)
-------------------------------------------------------------------------------------------
Voici la fin de notre série hautement philosophique : le problème de l'ergonomie d'une liaison N-N dans une web application.
DEUXIEME METHODE : SCENARIO
La deuxième solution maintenant : je l'ai faite au boulot et je suis en cours d'implémenter la première, parce que c'est bien voire nécessaire de pouvoir faire les deux.
Il faut considérer comment ce choix de liaison N-N se place dans les étapes d'utilisation de l'application. Les professionnels appellent cela les 'user persona' et le scénario.
C'est pas facile de tout prévoir mais nous sommes des développeurs Agiles que diable ! On a bien un contact avec le client, ou le feedback des utilisateurs si le déploiement aussi se fait de manière incrémentale, ou encore des bêta-testeurs si l'entreprise y a pensé (ça doit être rare mais pourquoi pas).
Alors profitons-en (en plus, ça fait sérieux ^^) !
Si on se rend compte par bonheur que toute étape de choix est précédée par la consultation d'une fiche du client, de la saisie de son numéro, ou ce genre de trucs, on peut stocker ça dans la session (attention aux perfs) ou les params (attention aux accès directs à la page) pour que le champ soit pré-saisi à l'avance.
Par exemple, en haut de chacun de mes fiches client, il y a un lien vers chaque 'objet associé' (compte rendu de RDV, alerte dans son calendrier perso, liste de ses comptes...). Il suffit de rajouter 'créer un compte' sur cette barre et voila !
On peut aussi stocker dans la session le dernier compte actif, pour pouvoir suivre encore mieux le déroulement et proposer un accès rapide de plus. Pour ce genre de choses, le plugin acts_as_toucher m'a l'air très prometteur [voir en bas de page]
Bref, en stockant tout cela, on peut ajouter un lien très explicite : "Lier le compte numéro 424242 avec Monsieur Alfred Dupont".
Certes, avec ma méthode actuelle, quand tu créera un compte à partir d'une fiche client, il ne pourra y avoir qu'un seul client pré-rempli, et ca ne fait que déplacer le problème pour le moment où on aura besoin de lier deux clients.
Mais c'est peut-être déjà pas mal : puisque que les comptes joints ne sont pas excessivement fréquents, on apprécie quand même d'avoir la vie facilitée dans la plupart des cas.
Hé oui, hormis la volonté de faire tout à la perfection, nous sommes dans la vraie vie et on ne va pas perdre temps, argent et peut-être performance pour un cas rarissime.
[Note sur le plugin Acts as Toucher]
Je devrais bientôt le mettre en place au boulot et je contacterai peut-être le développeur pour ajouter une propriété 'action effectuée'. Car savoir que l'enregistrement a été "touché" c'est bien, mais savoir pour quoi (lecture/écriture) c'est mieux. Je n'ai pas bien regardé le code ceci dit, et une combinaison subtile de ce plugin et de created_at / updated_on pourrait peut-être bien déjà faire l'affaire.
Merci de m'avoir lu jusque là :)
- Sly
- 15:43
- > Lien permanent
- > Commentaires
- > Abus ?


![[LANG][ESOTERIC] GOTO++](images_/carre1.gif)
![[WEB] Ergonomie - solution 'scénario'](images_/carre3.gif)
![[SECU] Philo 1](images_/carre2.gif)