Cyfrowa transformacja nie by?aby mo?liwa bez zaufanego i niezawodnego partnera technologicznego – nale?y wi?c wybra? go m?drze i odpowiedzialnie. Pojawia si? jednak wiele w?tpliwo?ci i pyta?, które nale?y zada? przed podj?ciem decyzji – istnieje przecie? ryzyko niskiej jako?ci otrzymanego oprogramowania. Co je?li wpadniesz w pu?apk? prawn? na etapie podpisywania umowy? Co z utrzymaniem kontroli nad projektem i uzyskaniem wgl?du w bie??c? prac? zespo?u?
Wybieraj?c odpowiedniego dostawc?, pod uwag? nale?y wzi?? m.in. do?wiadczenie w bran?y, umiej?tno?ci zarz?dzania projektami i kultur? organizacyjn?. Co jeszcze? Jan Matulewicz, Head of Software House Cybercom Poland przedstawia 12 rzeczy, które nale?y wiedzie? decyduj?c si? na outsourcing rozwoju oprogramowania.
1. Rozmiar firmy, lokalizacja i do?wiadczenie w bran?y
Sprawdzenie jak wygl?da siedziba firmy, gdzie si? znajduje i ile osób jest w niej zatrudnionych pozwala okre?li?, czy wspó?pracujesz z godnym zaufania partnerem. Nale?y te? upewni? si?, ?e firma jest stabilna finansowo. ?wiadczy to o jej dojrza?o?ci, do?wiadczeniu i sprawnym zarz?dzaniu. Daje równie? poczucie bezpiecze?stwa, ?e firma poradzi sobie z ka?dym problemem. Wa?na jest równie? jej skala w rozumieniu liczby programistów – czy odej?cie jednego z nich sprawi, ?e projekt stanie w miejscu?
2. Uko?czone i bie??ce projekty, referencje od klientów
Nale?y zawsze sprawdzi? dla kogo firma pracowa?a i nadal pracuje. Czy to du?e i rozpoznawalne marki czy tylko ma?e, lokalne biznesy? Kluczowa jest weryfikacja referencji – czy s? prawdziwe i nadal aktualne? Czy firma pracuje przy pomocy interesuj?cych ci? technologii i czy ma do?wiadczenie w pracy z innymi firmami z twojej bran?y? Na tym etapie dobrze b?dzie te? zobaczy? demo aplikacji, które potencjalny partner ma w swoim portfolio.
3. Stopie? zaawansowania w zakresie zarz?dzania projektami i formy kontaktu z firm?
Sukces przedsi?wzi?cia zale?y od tego, czy firma outsourcingowa ma kompleksowe do?wiadczenie w zarz?dzaniu projektami. Zawsze zadawaj pytanie: czy wybrany partner biznesowy ma kompletny zespó? scrumowy – czy mo?e zaoferowa? wy??cznie pomoc programistów, czy równie? managerów projektu, jako?ci czy trenera agile (Zapytaj o certyfikaty!). Przy wsparciu takiego zespo?u pozostanie ci wy??cznie podstawowy nadzór nad projektem. Zawsze zwracaj uwag? na sposób, w jaki firma radzi sobie ze sprawami organizacyjnymi i czy ma kontakt z u?ytkownikiem ko?cowym, ?eby zrozumie? jego potrzeby i oczekiwania. Warto?ci? dodan? jest gwarancja, ?e partner ma mo?liwo?? identyfikacji problemu klienta poprzez np. organizacj? warsztatów.
4. Kultura organizacyjna
Fundamentem kultury organizacyjnej s? warto?ci wyznawane przez firm?, przek?adaj?ce si? na realizacj? wizji oraz misj? organizacji. Najlepiej zapyta? o nie wprost. To, czy faktycznie maj? wp?yw na funkcjonowanie firmy mo?na okre?li? podczas pierwszej rozmowy z osob? ze sprzeda?y czy zespo?em deweloperów po stronie dostawcy. Konflikty w kulturze organizacyjnej pojawiaj? si? na przyk?ad kiedy jedna firma zarz?dza projektami w modelu kaskadowym, druga w modelu elastycznym. Mog? one zaowocowa? nieporozumieniami pomi?dzy klientem a dostawc?, zarówno w zakresie oczekiwa?, jak i wymaga? projektowych, czego efektem mo?e by? pora?ka projektu.
5. Elastyczny czy kaskadowy model biznesowy?
Wybór metodologii tworzenia projektu jest bardzo istotnym jego etapem. Po pierwsze – zastanów si?, czy oczekujesz zmiennego, dynamicznego ?rodowiska czy stabilnej pracy? Jak zaplanujesz godziny, zakres i koszty prac – z góry, czy dasz sobie pewne pole do zmian? Analiza oczekiwa? pomo?e dobra? model biznesowy, który przyniesie najwi?ksze korzy?ci twojej firmie.
Model elastyczny (Agile)
Metodologia Agile pozwala klientowi na kontakt z dostawc? na ka?dym etapie projektu i utrzymanie pe?nej kontroli nad bie??cymi pracami. Kluczowe dla podej?cia Agile jest dostarczenie MVP – produktu o minimalnej op?acalno?ci (minimum viable product), ju? na samym pocz?tku projektu. Klient widzi namacaln? cz??? wci?? niegotowego oprogramowania, które jest ulepszane i dopracowywane na dalszych etapach. Dzi?ki temu ju? we wczesnej fazie prac mo?na okre?li?, czy produkt ko?cowy b?dzie korzystny dla biznesu, czy lepiej przerwa? prace, nie marnuj?c pieni?dzy na ich kontynuacj?. Okre?lanie zakresu prac na podstawie bie??cych danych pozwala równie? na uwolnienie du?ej dozy kreatywno?ci.Przy wyborze Agile, akceptowaln? form? rozliczenia projektu jest metoda Time&Material. Czemu jest tak op?acalna? Unikasz tworzenia pe?nej specyfikacji i okre?lania konkretnej sumy z góry – otrzymujesz rachunek za godziny pracy twojego zespo?u projektowego i wszelkie zmiany nie s? tak kosztowne jak przy innych typach rozlicze?.
Model kaskadowy (Waterfall)
Dla tego typu zarz?dzania projektem zakres prac i wymaga? jest sta?y i znany od samego pocz?tku. Powiniene? jednak wiedzie?, ?e ten model rozwoju oprogramowania nie daje ?adnej mo?liwo?ci wgl?du w bie??ce prace oraz ich kontroli. Otrzymujesz gotowy produkt pod koniec trwania projektu. Do tego czasu wprowadzanie jakichkolwiek zmian mo?e by? zbyt czasoch?onne i uci??liwe, a czasami wr?cz niemo?liwe. Istnieje ryzyko, ?e efekt b?dzie mocno odbiega? od tego, co zosta?o zamówione. Model kaskadowy zak?ada rozliczenie na zasadzie Fixed Price, co równie? mo?e sta? si? pewnego rodzaju pu?apk?. Cena zostaje ustalona z góry dla ca?ego projektu (na bazie harmonogramu prac i twoich wymogów),a produkt mo?e nie spe?ni? oczekiwa?.
6. Fizyczny dystans
Im mniejszy fizyczny dystans, tym lepiej – to oczywiste. Dystans geograficzny nie powinien jednak automatycznie wyklucza? firmy z grona twoich dostawców IT. Jak mo?esz upewni? si?, ?e nie spowoduje problemów komunikacyjnych? Po pierwsze, sprawd? czy firma ma odpowiednie narz?dzia do organizacji wideokonferencji i czy wyra?a ch?? do spotkania od czasu do czasu w twoim biurze. Kontakt osobisty mo?e znacznie przyspieszy? prace. Pomo?e te? osi?gn?? lepsze porozumienie co do twoich potrzeb. Kiedy wybierasz dostawc? operuj?cego w innej strefie czasowej, dobrze jest dowiedzie? si? jak radzi sobie z tym wyzwaniem i czy mo?e dostosowa? si? do twoich godzin pracy.
7. Mo?liwo?ci zdalnego zarz?dzania zespo?em
W zdalnym zarz?dzaniu zespo?em kluczow? rol? odgrywa do?wiadczenie. Warto wi?c zapyta? potencjalnego dostawc? jak d?ugo pracowa? w takim ekosystemie i jakich u?ywa? narz?dzi. Nale?y równie? dowiedzie? si? jak? stosuje metodologi? i jak rozwi?zuje problemy zwi?zane z koordynacj? pracowników w ró?nych lokalizacjach.
8. Czas utworzenia zespo?u deweloperów (development team)
Co powinno ci? zmartwi? w tej materii? “Zespó? b?dzie dost?pny w ci?gu trzech miesi?cy”. Je?li s?yszysz co? takiego, mo?e to oznacza?, ?e firma nie posiada dla ciebie ?adnego zespo?u i b?dzie go dopiero rekrutowa?. To stwarza ryzyko, ?e zespó? nie zostanie zgromadzony na czas, cz?onkowie nie b?d? umieli ze sob? wspó?pracowa? i mog? nie rozumie? kultury organizacyjnej firmy, co mo?e mie? wp?yw na twój projekt. “Przydzielimy zespó? natychmiast!” – taka wiadomo?? równie? powinna by? alarmuj?ca. Mo?e oznacza?, ?e dostawca planuje wyselekcjonowanie deweloperów z innego projektu (co mo?e czeka? w przysz?o?ci równie? twój projekt) lub z?o?y zespó? z ludzi bez odpowiedniego do?wiadczenia i umiej?tno?ci. Dobrym komunikatem powinno by? to, ?e zespó? nie zostanie zgromadzony od razu, ale z pewno?ci? w mniej ni? 3 miesi?ce.
9. Rozwi?zania end-to-end
Je?li dostawca mo?e zagwarantowa?, ?e zapewni Ci kompletny zespó? programistów, testerów, ekspertów UX, specjalistów ds. chmury lub bezpiecze?stwa oraz mened?erów projektu, mo?esz powiedzie?, ?e jest to firma godna zaufania.
10. Partnerzy technologiczni i jako?? dostarczanej us?ugi
Dowiedz si? czy potencjalny dostawca posiada partnerów technologicznych, kim s? ci partnerzy i jakie s? ich relacje z dostawc?. Pozwoli ci to okre?li? czy firma jest stabilna, mo?e zagwarantowa? odpowiedni? jako??, zna nowoczesne technologie i efektywnie ich u?ywa.
11. Kwestie prawne – umowa ramowa
Na etapie selekcji dostawcy nale?y sprawdzi? jaki rodzaj umowy ramowej firma stosuje. Umowa ramowa to forma kontraktu dotycz?cego gotowo?ci do zlecenia i wykonania us?ugi. Warto wi?c zapyta? przysz?ego partnera biznesowego o wzór takiej umowy, kryteria odst?pienia od niej i o to, jak b?d? przebiega? prace programistyczne. Umowa ramowa jest puntem wyj?cia do pracy z danym wykonawc?, pozwalaj?c na ustalenie warunków wspó?pracy.
12. Znajomo?? RODO, bezpiecze?stwo danych
Znajomo?? Rozporz?dzenia o Ochronie Danych Osobowych jest kluczowa dla sprawdzenia, czy twój potencjalny dostawca oprogramowania dzia?a zgodnie z obowi?zuj?cym prawem. Dobrze, je?li firma podpisuje umow? powierzenia przetwarzania danych osobowych.
Mo?esz równie? zapyta? w jaki sposób dostawca dba o w?asno?? intelektualn? klientów, jak zarz?dza informacjami wewn?trz organizacji, chroni poufne dokumenty, z jakiej formy ?rodowiska technicznego korzysta, czy istnieje mo?liwo?? zdalnego dost?pu do prac projektowych i czy dost?p ten jest chroniony przed niechcianymi u?ytkownikami. Warto równie? sprawdzi?, co zawiera zaproponowana przez dostawc? umowa o zachowaniu poufno?ci (NDA) i jak szybko ma zosta? podpisana.
Dwana?cie powy?szych punktów to tylko podstawowa lista zagadnie? i z pewno?ci? nie wyczerpuje tematu. Bior?c pod uwag?, ?e stawk? jest zarówno ch?? cyfryzacji firmy, jak i ogromny bud?et zaanga?owany w takie przedsi?wzi?cie, warto dobrze przemy?le? dobór odpowiednich partnerów.