Jak przygotować specyfikację projektu IT
Poruszone tematy:
Rozpoczynając współpracę z software house nad budową produktu cyfrowego, powinniśmy przedstawić wykonawcy nasze wymagania. Służy temu dokument specyfikacji technicznej projektu. Jak go przygotować, aby zawierał najważniejsze informacje?
Napisz o swojej firmie
Wykonawca powinien zdawać sobie sprawę z naszego kontekstu biznesowego. Należy napisać, czym zajmuje się firma i jakie produkty oferuje. Ważna jest informacja o modelu sprzedaży oraz tym, kto jest naszym klientem. Opiszmy również, z kim konkurujemy na rynku.
Dla software house cenna będzie wiedza, czy do tej pory nasza firma stworzyła już jakieś aplikacje, czy inne produkty cyfrowe. Czasem będzie trzeba zadbać o to, by korespondowały ze sobą np. pod względem technologicznym. Wspomnijmy również o swoim zespole - jakie są jego kompetencje (np. czy są w nim informatycy), kto może zajmować się współpracą z software house i w jakim zakresie.
Wskaż potrzebę
Opiszmy, czym ma być ogólnie produkt oraz dlaczego powstała potrzeba jego stworzenia. Może to być np. chęć poszerzenia sprzedaży przez Internet za pomocą aplikacji mobilnej. Pojawiła się ona u nas, ponieważ zaobserwowaliśmy podobne działania u konkurencji lub chcemy wykorzystać powszechność wykorzystywania smartfonów przy dokonywaniu zakupów online.
Zdefiniuj użytkownika docelowego
Podstawową kwestią jest, dla kogo przeznaczony będzie produkt. W pierwszym punkcie wspomnieliśmy już o specyfice naszego klienta. Pora precyzyjnie opisać target nowego rozwiązania.
W tym celu najlepiej opierać się na własnych badaniach rynku, w których zdefiniowane są projektowane postacie użytkowników, czyli tzw. persony. Każdą z nich określa się takimi cechami jak dane demograficzne, zainteresowania, aspiracje, potrzeby czy np. sposób korzystania z technologii.
Wylicz funkcjonalności i zamieść projekt
Na tym etapie tworzenia opisu projektu skupmy się na konkretnych funkcjach, jakie mają pojawić się w produkcie. Tutaj nie będzie najważniejsza nasza inwencja, ale potrzeby przyszłego użytkownika. To on powinien być w centrum uwagi. Odnośmy się także do rozwiązań konkurencji, które mogą być dla nas wzorem lub przywołać pomysły na funkcjonalności pozwalające "przebić" ich rozwiązania.
Najlepszym sposobem na przedstawienie przyszłego produktu jest rozrysowanie jego projektu. W tym celu możemy wykorzystać programy do tworzenia makiet, które w prosty sposób pomogą nam zwizualizować pomysł (są to np. Figma czy Balsamiq).
Na projekcie powinny pojawić się wszystkie ekrany np. aplikacji. Na każdym z nich obok konkretnych elementów, np. przycisków, możemy umieścić opis, czemu mają one służyć. Ekrany warto opisać także na zasadzie wędrówki poznawczej użytkownika.
Pod każdym z nich umieśćmy tekst zawierający informacje, jakie czynności na danym etapie użytkownik miałby wykonywać. Np. "użytkownik przesuwa karuzele produktów i klika wybrany produkt. Następnie dodaje go do schowka lub koszyka".
Zamieść specyfikację techniczną
W przypadku, gdy mamy konkretne wymagania dotyczące technicznych aspektów aplikacji, wymieńmy je. Będzie tak np. jeśli nasz zespół jest przeszkolony w obsłudze konkretnego systemu CMS lub e-commerce, wiemy na jaką platformę chcemy stworzyć aplikację mobilną czy jakiego typu. Wypiszmy konkretne technologie, jakie powinny być zastosowane.
Oczywiście nie musimy tego robić, jeżeli nie mamy sprecyzowanych wymagań w tym zakresie. Wtedy wystarczy, że zdamy się na fachowe doradztwo software house, który zaproponuje nam optymalne rozwiązania technologiczne.
Określ budżet i harmonogram
Wykonawca powinien wiedzieć, jakimi środkami na projekt dysponujemy. Podajmy kwotę, w której chcielibyśmy się "zmieścić", gdyż wtedy software house będzie mógł zaproponować konkretne rozwiązania. Określi także czy nasz budżet jest odpowiedni dla realizacji pomysłu, czy też należy go zmodyfikować (pomysł lub budżet). Poinformujmy także software house, kiedy chcielibyśmy, aby produkt został ukończony.
Tu trzeba dodać, że precyzyjne określenie budżetu i harmonogramu jest możliwe w przypadku rozliczenia Fixed Price, czyli ze stałą ceną. Kiedy rozliczany jest czas przeznaczony na budowę produktu (model Time & Material), czynniki te określa się orientacyjnie, ponieważ proces ma dynamiczny charakter, oparty na iteracjach.
Im dokładniej, tym lepiej
Przedstawiając swoją wizję wykonawcy dobrze, abyśmy byli jak najbardziej precyzyjni. Im lepiej opiszemy projekt, tym współpraca będzie łatwiejsza. Trzeba także pamiętać, że oczekując od software house przedstawienia dokładnej wyceny i harmonogramu projektu (czyli w modelu Fixed Price), wykonawca powinien mieć maksimum wiedzy na temat naszych wymagań.
Oczywiście nie musimy być specjalistami od tworzenia produktu cyfrowego, aby zlecić jego wykonanie. Ekspertem jest tu software house i z jego pomocą możemy uszczegółowić naszą wizję, a także rozwinąć ją o nowe, podpowiedziane przez niego propozycje.
Najlepszym rozwiązaniem będzie przeprowadzenie warsztatów projektowych, podczas których omawia się wszystkie kwestie potrzebne do rozpoczęcia prac nad produktem. Dzięki warsztatom współpraca z software house będzie przebiegała znacznie sprawniej, bez nieporozumień i wątpliwości. Zmniejszy się także ryzyko, że produkt nie spełni naszych oczekiwań, ponieważ będą one bardzo dokładnie określone.