W przeszłości projektowałem i obserwowałem, jak inni projektują wiele systemów i widziałem, jak proces ten przebiega na wiele różnych sposobów, ale wspólne dla mnie jest to, że początkowa architektura powinna przynajmniej planować istnienie większości głównych funkcji.
Na przykład widziałem system sterowania HVAC, który nie miał koncepcji modernizacji budynków, podłóg, pokoi itp., A wynik był tak brzydki, jak tylko się da. Lub mobilne urządzenie muzyczne zbudowane z komponentów lepiej dopasowanych do (nie inteligentnego) zegarka kieszonkowego. Nie trzeba dodawać, że produkty końcowe w obu przypadkach nie były ulubieńcami klientów.
Kiedy mówisz „koncepcja”, jest to tylko jeden krok od „pomysłu”, a koncepcja może być bardzo rozmyta. Biznes zwykle dba o koncepcje. Klienci zwykle dbają o UX - koncepcję wprowadzoną w życie w sposób łatwy i przyjemny w użyciu oraz wnoszący pewną wartość poprzez jego użycie.
Musisz wykonać „koncepcję” przed jakimkolwiek programowaniem, nie wyobrażam sobie otwarcia studia wizualnego (lub twojego IDE z wyboru) i losowego pisania kodu, aby zobaczyć, dokąd zmierza.
Nie możesz wykonać pełnego projektu (i nie powinieneś) przed kodowaniem, ale powinieneś mieć przybliżony szkic tego, jaki byłby przepływ pracy użytkownika.
Projektowanie i kodowanie UX dość często się nawzajem nawzajem zużywa, prawdopodobnie będziesz zmuszony zastosować pewne zwinne podejście do niczego poza najmniejszymi projektami jako sposób na uwzględnienie tego faktu w podejściu do pracy. Więc nie myśl, że jesteś najgorszym z programistów, jeśli nie widziałeś tego wszystkiego naraz - nikt nie może, a ludzie, którzy myślą, że potrafią, to ci, którzy po prostu ignorują wystarczająco dużo problemu, aby mogli twierdzić, że mają kompletność obrazek.
Jeden przykład, aby nadać rozmiar coś dużego. Koncepcja: „Utwórz wizualne narzędzie oparte na chmurze, które umożliwia firmom integrację platform oprogramowania”. Brzmi świetnie i można zacząć pisać materiały marketingowe i sprzedawać je, zanim jeszcze tam będą. Musisz to mieć przed kodowaniem.
Wstępne projektowanie: „Mają kształty i strzałki, takie jak w Visio, aby opisać logikę; mają możliwości wtyczek, aby umożliwić połączenia z różnymi platformami (SAP, SF, bazy danych ...); mają konsolę monitorującą, w której można wyszukiwać dane przechodzące przez system; mieć sposób wizualnego opisywania danych i przekształcania jednego formatu na inny ". Kolejny świetny marketingowy blob. Daje również kilka pomysłów na to, co ważne, powinien mieć tak szorstki szkic przed kodowaniem.
Projekt / Kod: „Poproś projektanta HTML hostowanego w przeglądarce z takimi i takimi funkcjami; zakoduj backend w Javie, aby można go było uruchomić na dowolnym istniejącym serwerze; zdefiniuj struktury danych i UX do zapytań lub modyfikacji w razie potrzeby; zaplanuj odzyskiwanie po awarii, błąd raportowanie, rejestrowanie audytu; kontrola wersji planu; kontrola dostępu do planu; .... ”- im dokładniejsza lista, tym bardziej nierealistyczne jest przewidywanie wszystkich.
... jednak należy być świadomym co może wyglądać mniej więcej w przybliżeniu, lub twój produkt końcowy może mieć naprawdę bezużyteczne implementacje, które ostatecznie zabijają świetnie brzmiącą koncepcję - powiedz, że twój projektant wizualny wymaga 40 " ekran, aby pokazać przepływ pracy w świecie rzeczywistym, lub nie można przeszukiwać dzienników poza dokładnym dopasowaniem ciągu ograniczonym do jednego z 20 pól w dzienniku itp. itp. Nie ma dobrego sposobu, aby temu zapobiec poza wykonaniem implementacji - niektórym się uda, innym się nie uda.