Programiści są leniwi, klienci też — nie chce im się skarżyć na interfejs. Zaczynaj budowanie aplikacji od interfejsu, a nie od warstwy funkcjonalnej. I rób to z głową.
Przykładem jest system płatności online Protx, który podłączamy właśnie do serwisu jednego z klientów. Po przejściu do formularza dokonywania płatności, naszym oczom ukazuje się okienko z napisem credit card number, enter without the spaces.
Jeśli projektant tego systemu wiedział doskonale, że wszystkie numery kart kredytowych posiadają separatory w postaci spacji lub myślników, to czemu kazać je usuwać użytkownikowi, zamiast wyczyścić je po stronie serwisu?
To wzorcowy przypadek zwalania pracy na użytkownika w sytuacji, w której komputer poradziłby sobie znacznie lepiej. Wpisywanie numeru karty bez separatorów powoduje też, że łatwiej o błąd — cyfry nie są pogrupowane i łatwo przeoczyć pomyłkę.
Jeśli masz zamiar oczekiwać od użytkownika wprowadzenia jakichś danych, to zrób co w twojej mocy, żeby przyjąć możliwie dużo popularnych formatów. Powyższy przykład jest o tyle idiotyczny, że na samej karcie numer zawiera spacje, a system wymaga wpisania go w zupełnie nietypowym formacie.
Technorati Tags: application, interface, design, input, validation, usability


by Cthulhu
25 sty 2006 at 20:02
Zgadywanie w jakim formacie wpisać jakieś dane to moja ulubiona zabawa ale z tymi numerami to już przegięcie. Ja zawsze jak wpiszę numer karty/konta to sprawdzam czy jest poprawny — dostałbym cholery jakby to wszystko zlało się w jednego inta..
by mcv
25 sty 2006 at 22:47
Może nie znają podziału na warstwy prezentacji, logiki i źródła informacji?
by Tomash
27 sty 2006 at 17:25
Aplikacji nie buduje się od interfejsu — ten zazwyczaj zostawia się na koniec. Aplikację buduje się od zaprojektowania, najpierw warstwy logicznej, a potem interfejsu przyciętego do tej warstwy logicznej. Że ktoś jest palant i ominął etap projektowania albo zrzuca większość pracy na użytkownika — no jasne, do kanału z nim. Ale proszę bez odważnych, wywrotowych tekstów w stylu „zaczynaj aplikację od interfejsu”, bo wtedy dopiero zacznie się tragedia ;)
by Patrys
27 sty 2006 at 17:36
Interfejst to nie tylko przyciski i inputy, to cały schemat interakcji z użytkownikiem.
Powtórzę przykład z kalkulatorem:
Programując kalkulator nie zaczynasz od implementacji wydajnego algorytmu ONP, a potem nie mówisz użytkownikowi, że znak się wciska po parametrach. Najpierw projektujesz schemat interakcji (co użytkownik może zrobić, w jakich okolicznościach, w jakim formacie), a dopiero potem dostosowujesz do tego warstwę logiki.
Logika to warstwa, która ma za zadanie tylko połączyć model z widokiem, do jej prawidłowego stworzenia potrzebne są makiety tych ostatnich.
by lu
30 sty 2006 at 23:58
„Aplikacji nie buduje się od interfejsu — ten zazwyczaj zostawia się na koniec.” — zalezy w jaki sposob tworzona jest aplikacja, jesli masz dobrze „uchwycone” wymagania interfejs moze powstawac rownolegle.
„Że ktoś jest palant i ominął etap projektowania albo zrzuca większość pracy na użytkownika — no jasne, do kanału z nim.” — a to jest juz mala przesada z tym palantem. Pokaz swoje I komercyjne projekty kolego, od razu byles geniuszem??? Moze poprostu klient nie szanuje uzytkownika, i nie zalezy mu na jego wygodzie, moze mu spieszylo sie z oddaniem systemu?