C'è una concezione generale tra molti utenti business e clienti che quando sembra completa, è quasi completa. Come probabilmente saprai, questo è lontano dalla verità. Si può avere un aspetto gradevole, ma senza back-end e alcuni utenti pensano che rendere l'aspetto gradevole sia l'80% del lavoro, non il 20% ( o l'altro 80% ).
Innumerevoli sviluppatori possono raccontare storie horror di questo: ottenere un mockup delle pagine fatte in Microsoft Word usando le schermate di qualche altro strumento, e il cliente dice "così, hai quasi finito?"
È necessario farlo in modo che tutte le parti vengano completate al termine. Cercare di eseguire prima tutto il backend e poi tutto il front-end porterà l'utente finale a pensare che non stai facendo nulla e chiedendoti perché sei pagato quando non c'è niente da mostrare per questo. D'altra parte, il front end è il primo e troverai l'utente finale che apporta cambiamenti e consuma tutto il nostro tempo.
Il caso peggiore con un 'uno prima e l'altro' è quando arrivi all'altra parte, scopri che non si adatta affatto al design.
Quindi, costruisci entrambi. Mostra progressi nel front end, fai in modo che il back end funzioni con quello che stai creando. In molti casi è una buona idea fornire build incrementali e assicurarsi di fare ciò che il cliente desidera (questo entra in Agile). Andare troppo a lungo senza "miglioramenti visibili" può danneggiare la relazione con il cliente (questo è per i casi entrambi di "tutto sembra fatto presto" e "niente è fatto fino alla fine" - è difficile per il cliente per vedere il quadro in fase di scrittura o i test unitari o la disinfezione dei dati come progresso).
Joel ha scritto su questo in Il segreto dell'iceberg, rivelato :
Important Corollary Two. If you show a nonprogrammer a screen which has a user interface which is 100% beautiful, they will think the program is almost done.
People who aren't programmers are just looking at the screen and seeing some pixels. And if the pixels look like they make up a program which does something, they think "oh, gosh, how much harder could it be to make it actually work?"
The big risk here is that if you mock up the UI first, presumably so you can get some conversations going with the customer, then everybody's going to think you're almost done. And then when you spend the next year working "under the covers," so to speak, nobody will really see what you're doing and they'll think it's nothing.
Questo è ancora una volta reiterato nel post del blog Non rendere la Demo un aspetto che ha questo utile grafico:
Notaquiledueopzionigeneralmenteriflettonoilcomando"ottieni l'interfaccia utente" (e poi l'aspettativa è che sarai fatto presto) e "fai il back-end" (e poi il cliente è preoccupato per la mancanza della scadenza ).
How 'done' something looks should match how 'done' something is.
Every software developer has experienced this many times in their career. But desktop publishing tools lead to the same headache for tech writers--if you show someone a rough draft that's perfectly fonted and formatted, they see it as more done than you'd like. We need a match between where we are and where others perceive we are.
Questo articolo riporta anche un punto importante sul tipo di feedback che ottieni con diversi livelli di doneness dell'interfaccia utente. Se hai qualcosa che sembra completo, hai maggiori probabilità di ottenere un feedback su "potresti cambiare il carattere" rispetto a "questo layout non funziona - ci sono troppe schede".
Per coloro che stanno combattendo con questo nel mondo Java Swing, c'è un aspetto grafico chiamato Napkin che rende l'interfaccia utente non completa (anche se lo è).
Lachiavequièfareinmodochenonguardifatto.L'aspettodell'interfacciautenteèunsegnalepermoltiutentiaziendalichel'applicazioneècompleta(anchesesitrattadipochepaginestaticheprivedilogicaodiqualcosacostruitoinungeneratorediinterfacce).
Ulterioriletture(ecollegamentidall'articolo):