lunedì 21 luglio 2014

Sfruttando l'utente Modelli mentali di creare efficaci interfacce utente

I principi di grande design dell'interfaccia utente partono da un luogo diverso rispetto dei principi che portano al grande design dell'applicazione. Entrambi finiscono esattamente nello stesso posto, però.

By Peter Vogel2014/07/18

Ammettilo: Se la vostra stanza è fredda e il termostato è impostato per la temperatura più alta che si desidera, si accende il termostato più in alto, non è vero? Lo facciamo perché tutti abbiamo questo modello mentale di termostati che è organizzato attorno "realizzazione" - crediamo che se chiediamo solo nostro forno per fare un po 'di più di quanto vogliamo, quindi il forno ci arriva a quello che vogliamo, più veloce. E 'lo stesso modello mentale vostro capo usa quando si dà una scadenza impossibile ("stirata"): Un termine impossibile ti farà lavorare di più e, forse, incontrare il vero termine che il vostro capo è mantenere da voi.

Come funzionano le cose
, ma non è questo il modo in cui il termostato effettivamente funziona (e probabilmente non è il modo di lavorare, sia, ma il tuo capo non lo sa). Il termostato accende il forno su e lascia via fino a raggiungere la temperatura desiderata ... e poi il termostato dà completamente, chiudendo il forno spento. Il termostato non ottiene il forno a lavorare di più per arrivare a una temperatura, si ottiene solo il forno a lavorare più a lungo . Impostazione del termostato più alto non si fa arrivare alla temperatura desiderata più velocemente. Nel nostro cuore sappiamo che, naturalmente, ma abbiamo impostato la temperatura più alta, comunque. (Detto questo: io capisco che ci fosse un modello di Cadillac che ha funzionato in questo modo in modo che, come hai più vicino alla temperatura desiderata, la ventola che soffia aria calda rallentato Ma quella era l'eccezione, non la regola. , quindi per favore non portarlo nei commenti. prego).

Ora diamo un'occhiata al calendario. Come pensate del vostro programma? Pensi di esso come un elenco ordinato di eventi? Oppure, come molte persone fanno, pensi di vostro programma come un insieme di secchi (Lunedi, Martedì, Mercoledì e così via) con un numero limitato di slot (09:00, 09:30, 10:00 e così via) che può essere riempito? Sotto il cofano, ovviamente, Outlook probabilmente non mantenere il vostro calendario come un elenco ordinato di eventi (che è il motivo per cui si possono avere due eventi programmati per lo stesso tempo) ... ma che non è come voi, o la maggior parte delle altre persone, pensate. Probabilmente avete Outlook configurato per visualizzare la pianificazione utilizzando il modello di benna / fessura, per esempio.

Pubblicità

Un ultimo esempio: Probabilmente pensiamo dei quadranti sulla nostra frigoriferi controllo del "freddo" del frigorifero ottiene quando, in effetti, i quadranti sul controllo del frigorifero quanto calore viene rimosso dal frigorifero. Queste discrepanze tra la nostra comprensione e ciò che sta realmente accadendo, non sono sempre un problema - lo scollamento tra il nostro modello mentale per il nostro frigorifero e il meccanismo di fondo cade in una zona "nessun danno, nessun fallo", per esempio.

Tuttavia, Don Norman, nel suo meraviglioso libro, " La caffettiera del masochista ", parla di tentativo di controllare la temperatura del suo frigorifero freezer quando la disconnessione importava. Il frigorifero aveva due quadranti e Norman presume che una linea controllava la freddezza della parte principale del frigorifero, mentre l'altro quadrante controllava la freddezza del freezer. Egli era in grado di impostare la temperatura interna del congelatore per quello che voleva fino a quando non si rese conto che aveva frainteso come i quadranti lavorati. Si è scoperto che una linea controllata la temperatura globale del frigorifero e l'altra linea controllata come quella fredda è stato distribuito tra il congelatore e il corpo principale del frigorifero. Con questo nuovo modello mentale, Norman è stato finalmente in grado di gestire la temperatura del suo frigorifero. O ha comprato un frigorifero che corrispondeva il suo modello mentale ... non ricordo quale.

Abbinamento Modelli ... e mancanza
Ovviamente, quindi, il modello mentale di un'applicazione e il modello mentale dell'utente devono raggiungere una certa comprensione - anche se, come Outlook e il "nessun danno, nessun fallo" modello per la gestione dei frigoriferi dimostrano, i due non hanno identici. Ma, come ho suggerito in articoli precedenti , tutto dipende da chi sono i vostri utenti siano. Non ci sono regole dure e veloci nel design dell'interfaccia utente.

Ad esempio, pensate della vostra stufa ha muniti di una fonte di riscaldamento centralizzato che è possibile indirizzare ad un luogo o in un altro (fuochi, forno)? Probabilmente no. Ma se si possiede un fornello Aga, si sta andando a correre in problemi reali, se non si pensa in quel modo, perché più o meno, è così che funziona un fornello Aga.

E non fare l'errore di pensare questi esempi non sono correlati alla programmazione: come sviluppatore, avete a che fare con i modelli mentali degli utenti per tutto il tempo. Ad esempio, avete le tabelle del database create per sostenere l'integrità referenziale, il che significa, per esempio, che è necessario aggiungere una riga al vostro tavolo SalesOrderHeader prima di poter aggiungere una riga al vostro tavolo SalesOrderDetail. Tuttavia, i clienti probabilmente pensano delle cose che vogliono acquistare (le righe SalesOrderDetail) prima di pensare a come vogliono avere l'ordinanza (la riga SalesOrderHeader). Costruire un'applicazione che richiede all'utente di fornire informazioni sulla consegna e poi cercare di giustificare che il design per l'utente facendo riferimento alla "integrità referenziale" non è andare a lavorare (non chiedetemi come lo so questo). Dovrete scrivere l'applicazione per rendere il lavoro mentale del modello dell'utente: i dati della prima, intestazioni tardi.

E se non si ottiene mentale giusto modello dell'utente, le cose brutte accadono alle buone aziende. Ho lavorato per una società che ha fatto di gomma specialità. Siamo stati, di fatto, nel settore carta da parati: Quando si esegue fuori di carta da parati a metà una stanza, non si torna a comprare "più wallpaper" - si torna indietro e comprate più dello stesso disegno. Probabilmente torna al negozio hai il primo lotto da e anche cercare di ottenere di più da parati dallo stesso lotto della tintura come sfondo originale. Questo è stato il modello mentale clienti della mia azienda seguirono ei nostri sistemi sono stati istituiti per supportare tale modello mentale.

La mia azienda ha ottenuto acquistata da un'altra azienda che ha fatto della gomma di merce: Era più come vendere le viti di carta da parati. Quando si esegue fuori di viti non avete bisogno di una corrispondenza esatta delle viti che hai usato prima; a comprare di più, probabilmente si va al negozio di ferramenta più conveniente a vostra disposizione. Questo è stato il modello mentale dei suoi clienti e questo è ciò che le applicazioni aziendali sono stati istituiti a sostegno.

La mia azienda commutato ai sistemi software della nuova società ed è stato un incubo. I nostri clienti esistenti sarebbero richiamare, cercando più gomma da un specifico lotto di gomma. Per trovare quella partita, i nostri utenti sono stati ridotti a scorrere i record di produzione cercando di trovare il lotto e quindi correlando le informazioni di produzione con record di inventario, al fine di trovare dove è stato memorizzato tale partita. E mentre i nostri utenti che hanno fatto, i nostri clienti hanno aspettato (con impazienza) al telefono.

Perché Designing Interfaces Matter
Il modello mentale utente potrebbe significare che la scrittura di una singola applicazione potrebbe non essere possibile. Se stai progettando un servizio per aiutare la gente va a vedere un film, ci sono almeno due diversi modelli mentali avresti bisogno di prendere in considerazione. Se si sta sostenendo un fanatico di film, è necessario supportare la ricerca su filmati specifici e fare progetti su come vedere quel film - forse anche un viaggio in un'altra città per farlo. Oppure si potrebbe essere sostenendo spettatori occasionali: qualcuno che decide di andare a vedere un film e poi controlla per vedere ciò che è disponibile. Questi due diversi modelli mentali stanno andando a richiedere due applicazioni diverse.

E non sono solo gli utenti che influenzano l'interfaccia: Dipende anche su storie degli utenti. Quando stavo parlando il calendario e affermando che si pensa ad esso come una serie di secchi e non come un elenco ordinato, c'era probabilmente una voce nella tua testa dicendo: "Aspetta un minuto! A volte penso del mio programma come elenco ordinato: `Devo fare questo, allora devo fare questo, allora ho .... '" E questo è vero: Nel breve periodo (il "cosa devo fare adesso" storia dell'utente), si fa spesso pensare al vostro programma come un elenco ordinato di eventi si deve lavorare.

Tutto questo è il motivo per cui, naturalmente, Outlook consente di guardare il vostro programma come un elenco di eventi e perché a volte utilizzare tale impianto. Si può capire perché il libro di Norman era originariamente chiamata "La psicologia del masochista ".

Che cosa fare (e non fare) dovete fare
così, ancora una volta, ti sto chiedendo di strisciare dentro la testa dei vostri personaggi, questa volta per capire come gli utenti pensano il problema si sta cercando di aiutarli con . Il vostro compito è quello di decidere come l'interfaccia utente esprimerà quel modello mentale per gli utenti.

Sei libero, ovviamente, per presentare agli utenti un, migliore modello mentale più recente per affrontare il problema (come il frigorifero di Norman). Se lo fai, il vostro compito è quello di rendere quel modello chiaro per gli utenti nell'interfaccia utente e, inoltre, hanno l'interfaccia utente dimostrare una ragione convincente per cui l'utente deve cambiare il loro modello mentale. Frigorifero di Norman ha fatto nessuno dei due.

Con ogni probabilità, ci saranno differenze tra il modo in cui l'interfaccia utente presenta il problema e il modo in cui l'applicazione "realmente" funziona. Il tuo prossimo lavoro è quello di colmare questa lacuna con il codice.

Ma come programmatore, che è quello che si dovrebbe fare comunque: L '"io" e "D" delle massime codice SOLID riferimento ai principi Interface segregazione e dipendenza inversione. Nel loro insieme, un modo di guardare a questi due principi è che le interfacce nostre classi espongono dovrebbero essere progettati per il cliente che utilizza tali classi. Le nostre interfacce di classe dovranno esprimere il modo in cui il cliente vuole lavorare e per semplificare la vita del cliente. L'interfaccia non dovrebbe essere una semplice espressione degli algoritmi o strutture di tabelle che la classe incapsula sottostanti.

Quindi davvero non importa se si sta progettando un utente o un'interfaccia di classe: è il design per rendere la vita più facile per il cliente e per abbinare il modo in cui i clienti vogliono risolvere i loro problemi. L'algoritmo sottostante può funzionare in un modo completamente diverso ... ma questo non importa. Si scrive il codice per tradurre tra l'apparenza e la realtà. Questo è il tuo lavoro.

Ehi, siamo i programmatori! Siamo in grado di far funzionare nulla.
Corso Visual Studio - Corso asp.net
Corso C# - Corso PHP - Corso Joomla - Corsi asp.net - Corso Java

1 commento:

  1. The resulting cylindrical merchandise product is usually wiring or piping. The die high precision machining cross-section can have completely different shapes to provide differently way|in another way} shaped elements. Extrusion could be steady to create very long pieces, or semi-continuous have the ability to} create many shorter pieces. To gather the most effective predictions, steel fabricators can begin by a glance at} important statistics for that space of enterprise, be it house building, energy, protection, or some other space. By diversifying the client base and accumulating clients from a variety of|quite so much of|a big selection of} sectors, the cyclical nature of the business can better manage to keep net profits consistent. According to the Bureau of Labor Statistics, approximately 1.425 million employees are employed in steel fabrication.

    RispondiElimina