Na początek garść dobrych praktyk, które pomagają zawęzić kryterium poszukiwania odpowiedniego partnera w biznesie:
- Research – sprawdź, czy software house może pochwalić się realizacją projektów podobnych do Twojego. Przez pryzmat odpowiedniego portfolio zobaczysz, czy firma rozumie Twój biznes i cel, jaki chcesz osiągnąć.
- Opinie klientów i oceny współpracy na Clutch + referencje klientów na stronie
- Czynnik ludzki – sprawdź, czy między Tobą i potencjalnym partnerem biznesowym jest nić porozumienia. Nic nie zaszkodzi projektowi tak jak brak tzw. chemii.
Poznaj również etapy, czyli kamienie milowe współpracy.
Współpraca z software housem Da Vinci Studio – jak działamy?
Każda firma posiada swoje sprawdzone praktyki, metody i tak zwany know-how. W tym artykule przybliżymy, jak podchodzimy do współpracy projektowej.
Faza demo/prediscovery – spotkanie startowe
- Wprowadzenie do projektu
Podczas tego etapu odbędziesz rozmowę z naszym leadem, CTO i CEO – aby jak najlepiej pomóc w rozplanowaniu i osadzeniu projektu. Warto, abyś miał pierwszy zarys specyfiki projektu, zakres i przybliżony czas realizacji. Poza tym zastanów się, ile środków możesz zainwestować oraz kogo z Twoich specjalistów będziesz potrzebować i w jakim zakresie czasu.
- Wzajemne rozpoznanie
Przed tym spotkaniem warto abyś wiedział czego chcesz – pod względem sposobów komunikacji, częstotliwości i formy. Przygotuj punkty dot. Twojego biznesu oraz historii projektu (jeśli jest on w toku). Na spotkaniu poznasz nasz stack technologiczny i zaplecze specjalistów. PM oraz liderzy technologiczni projektu odpowiedzą na pytania dotyczące planowanego projektu, zidentyfikują początkowe wymagania projektowe oraz potencjalne wyzwania. My opowiemy o tym jak wygląda development, testowanie i tworzenie dokumentacji. Poza tym wspólnie ustalimy kolejne kroki i harmonogram. Po tym spotkaniu będziesz znać sposób, w jaki się rozliczamy i raportujemy.
- Przedstawienie celów biznesowych
Wartość rynkowa to nie tylko wielofunkcyjne oprogramowanie, ale przede wszystkim oprogramowanie, które spełnia potrzeby Twojego klienta. Dlatego pokaż nam swój model biznesowy, główne cele projektu i opisz grupę docelową. Dzięki takim informacjom nasz zespół developerski ustali listę priorytetów specyfikacji i dobierze odpowiednią strategię.
Faza rozpoznania (ang. discovery)
- Event storming
Dzięki event stormingowi skonkretyzujemy informacje o Twojej domenie biznesowej i produkcie. Przygotuj się na kilkugodzinny warsztat, na którym nietechnicznym językiem porozmawiasz z programistami, analitykiem biznesowym, PMem, UX designerem oraz solution architektem. Ty wcielisz się w rolę eksperta domenowego i przedstawisz biznes od podszewki. Zaangażuj też swoich specjalistów, które przedstawią kluczowe procesy – aby możliwe było wyłapanie zależności, powiązań i blokerów w projekcie już na tym etapie. Na spotkaniu będzie także facilitator – osoba znająca techniki event stormingu, aby odpowiednio nim pokierować. Event storming da podstawy do stworzenia dokumentacji w formie historii użytkownika (ang. user story). Poza tym będziemy znać także złożoność projektu, problematyczne elementy i co ważne – to jak ma zachowywać się Twój produkt podczas użytkowania poszczególnych modułów/funkcjonalności.
- Wybór sposobu pracy i zespołu
Na tym etapie ustalimy finalne harmonogramy, ramy współpracy, dopniemy zasady komunikacji i zasady oddawania kolejnych iteracji projektu. Poza tym na podstawie zdobytej wiedzy dobierzemy ludzi – pod kątem potrzebnych kompetencji i doświadczenia. Dostaniesz także pierwszy zarys roadmapy oraz wstępną priorytetyzację tasków.
- Podsumowanie ustaleń – umowa
Aby każda ze stron miała klarowny obraz współpracy, na tym etapie podpisujemy umowę. Oprócz specyfikacji funkcjonalnej w umowie znajdzie się kosztorys lub informacja o rozliczaniu się wg. time & material. Więcej o rozliczaniu się z software house – tutaj. Nie obejdzie się także bez umowy dotyczącej: przetwarzania danych, praw autorskich i klauzuli poufności.
Faza trzecia – przejście do działania
- Zaangażowanie zespołu projektowego
Kiedy wszystko jest klarowne i dograne, rozpoczyna się praca nad projektem. Każda osoba w projekcie zna swój zakres obowiązków, harmonogram i tech stack. Dzięki takiemu podejściu każdy utrzymuje wysoką motywację i chęci do działania. W końcu każdy specjalista, który odczuwa realny wpływ na biznes, czy tworzenie wartości dla klienta potrafi być bardzo skuteczny i zmotywowany. Wybierając nas, masz gwarancję zmotywowanego zespołu.
- Standaryzacja pracy
Swój cel możesz osiągnąć różnymi drogami, ale najlepsze metodyki w wytwarzaniu oprogramowania to te zwinne – Agile, framework Scrum, Lean Development, czy zastosowanie Kanbana. Dzięki zwinnym metodologiom priorytety są na bieżąco ustalane, zarządzanie zmianą łatwe, a wszystkiemu przyświeca dostarczenie klientowi wartości. W wytwarzaniu oprogramowania wybieramy najnowsze technologie, które są rozwijane, stabilne i łatwe w utrzymaniu. Stosujemy także dobre praktyki. Na przykład, testowanie na poziomie oprogramowania, testy jednostkowe, komentarze w kodzie, code review (czyli sprawdzanie każdej linijki kodu przed dodaniem jej do oprogramowania).
- Iteracje i usprawnienia
Dzięki planningowi i działaniu w tzw. sprintach, mających co tydzień lub dwa tygodnie “sprint review” prace projektowe są dużo wydajniejsze. Projekt, mimo swojego zakresu, czy poziomu skomplikowania osadzony we frameworku, który posiada swoje części składowe budowane krok po kroku. Dzięki temu, wprowadzanie poprawek, czy zwinne usuwanie awarii jest możliwe. Modyfikacji ulega jedynie jeden lub kilka elementów, a nie cały projekt.
Faza czwarta – projekt na produkcji, transfer wiedzy i maintenance
- Wdrożenie
W tej fazie następuje instalacja na serwerach bądź infrastrukturze docelowej oraz integracja z produkcyjnymi wersjami narzędzi. Kiedy wszystkie funkcjonalności zostaną przetestowane i projekt zostanie oddany, zespół prezentuje Ci finalne demo produktu – to, co udało się zrobić. Project manager odpowiada wtedy na wszystkie pytania i weryfikuje, jaki jest dalszy plan działania (np. development tego, czego nie udało się zrobić).
- Transfer wiedzy
Dzięki tzw. knowledge transfer otrzymujesz od nas know-how w zakresie funkcjonowania produktu i zdobywasz wiedzę dotyczącą korzystana z poszczególnych funkcjonalności. Nasz zespół projektowy odpowiada na Twoje pytania związane jakąkolwiek częścią produktu. Knowledge transfer dotyczy też kwestii biznesowych.
- Szkolenia i support
Na dalszym etapie życia projektu dostarczamy dodatkowe szkolenia dla nowych pracowników, czy szkolenia dotyczące niuansów. Oferujemy także support – zarówno w kwestiach technicznych jak i nietechnicznych.