Software House - jak przebiega współpraca?
Każda profesjonalna firma IT ma swój wypracowany proces projektowy zależny od specyfiki branży w której działa i swojego doświadczenia. Niektóre firmy specjalizują się jedynie w opracowywaniu koncepcji pod kątem użyteczności rozwiązania (UX), inne tylko w programowaniu konkretnych typów usług (sklepy e-commerce, aplikacje mobilne itp.), a jeszcze inne w doradztwie klientom w którą stronę iść (consulting).
I o ile specjalizacja jest zawsze pożądana to zamiast korzystać z usług trzech niezależnych firm, można skorzystać z jednej, która zapewnia wsparcie na każdym etapie procesu tworzenia rozwiązania IT (od kwestii koncepcyjnych, biznesowych, przez graficzne i UX, po wytwarzanie oprogramowania i utrzymania).
Jak można zauważyć, składa on się z dwóch części: konsultingowej i programistycznej.
Konsulting
Pierwsza część jest bardzo przydatna przed wyborem dostawcy usług IT, podczas której (zależnie od etapu, na którym jest klient) możemy pomóc by w ogóle rozpoznać możliwe rozwiązania w obecnej sytuacji firmy.
Następnie pogłębiamy rozmowy na temat najbardziej obiecującego rozwiązania i jeśli spełnia ono wymagania biznesowe to przystępujemy do tworzenia specyfikacji (jeśli jest potrzeba to również makiet UX i innych potrzebnych dokumentów).
Pomiędzy przejściem od etapu konsultingowego do programistycznego pojawia się oferta na wykonanie wspólnie wyspecyfikowanego projektu i w przypadku akceptacji, przechodzimy do kroku drugiego.
Wytwarzanie oprogramowania
Dla większości firm drugi etap jest jedynym etapem, w którym biorą aktywny udział, ale często przez to efekt końcowy nie jest zadowalający. Natomiast gdy firma IT brała udział od początku w rozmowach mających na celu stworzenie projektu IT, nie ma żadnych niedomówień i efekt końcowy ma znacznie większe szanse spełniać oczekiwania biznesowe.
Co do samej części wytwarzania oprogramowania to w zależności od złożoności projektu dzieli się on na mniejsze części (zwane sprintami albo milestone’ami - w zależności od podejścia). I w ramach każdego sprintu/milestone’u wykonuje się mikrocykl Agile polegający na wybraniu funkcjonalności do wykonania, zaprojektowaniu ich graficznemu, zaprogramowaniu, przetestowaniu i wdrożeniu (czy to jako wersja testowa czy już produkcyjna).
Po skończeniu cyklu (jeśli nie był to ostatni) wracamy do początku i ponownie wybieramy funkcjonalności i zaczynamy proces od nowa. Oczywiście w przypadku mniejszych projektów (trwających do 2 miesięcy), ten proces nie jest podzielony na mniejsze. Natomiast by zapewnić sprawniejsze testowanie i udział klienta w projekcie, każda skończona część jest przesyła do testów i akceptacji.
Ponowna iteracja
Mimo że stworzenie strony internetowej czy systemu on-line jest projektem, jego tworzenie, rozwijanie i utrzymanie jest procesem. Dlatego po wdrożeniu naszego projektu IT nie tylko warto go analizować, ale warto się zastanowić co możemy zrobić kolejnego w informatyzowaniu firmy i w transformowaniu jej cyfrowo. Więcej o całym procesie (i dlaczego w ogóle warto) pisaliśmy w artykule jak odnieść sukces dzięki transformacji cyfrowej biznesu.
Być może to będzie rozszerzenie obecnego projektu, może stworzenie komplementarnej części, a może wykonanie czegoś zupełnie nie powiązanego. Warto patrzeć na cały ten proces oczami W. Edwardsa Deminga i jego cyklem PDCA (ang. Plan, Do, Check, Act):
- Planuj
- Działaj
- Sprawdzaj (analizowanie wpływu nowego rozwiązania),
- Usprawniaj (zastanów się co poszło dobrze, co źle, co udało się osiągnąć, czego zabrakło, czy trzeba wykonać kolejne działania itp.)
I na koniec dysponujemy listą wyciągniętych wniosków i możemy przystąpić ponownie do całego procesu.
Podsumowanie
W tym artykule w sposób bardzo zwięzły nakreśliliśmy jak wygląda u nas proces wspierania biznesu, gdzie rozwiązania internetowe są w centrum uwagi, ale tak samo ważne jest dla nas to co się dzieje wokół - zarówno przed, jak i po.
O każdym pojedynczym etapie moglibyśmy rozmawiać godzinami i chętnie podzielimy się wiedzą przy dowolnej okazji.
Natomiast uważamy również, że niezależnie na którym etapie jesteś (i w rozwoju firmy, i w procesie rozpoczynania projektu IT) doświadczony partner technologiczny jest niezbędny i warto stawiać na takiego, który nie tylko stworzy świetne rozwiązanie IT, ale wesprze Ciebie na każdym etapie biznesowym (i doradzi najlepiej dla Ciebie, a nie dla siebie).