Primjer iz prakse

Modernizacija 12 godina starog skladišnog sustava bez zaustavljanja kamiona

Distributer je vodio cijelo skladište na softveru starijem od nekih svojih zaposlenika. Evo kako smo ga zamijenili dio po dio — bez velikog naglog prelaska, bez izgubljenih pošiljki — i što bismo opet učinili na isti način.

Have a nice dayHave a nice day13 min čitanja
Modernizacija 12 godina starog skladišnog sustava bez zaustavljanja kamiona

Najopasniji softver u malom poduzeću je onaj koji radi. Ne onaj neispravan alat na koji se svi žale — taj se na kraju zamijeni. Opasan je onaj dvanaest godina star sustav koji nitko ne voli, ali svi o njemu ovise, onaj koji se pokreće s bež kućišta u kutu i vodi skladište još od prije nego što je polovica tima zaposlena. Radi. Sve do dana kad gotovo prestane raditi i kad svi odjednom shvate da cijelo poslovanje balansira na njemu.

Ovo je priča o jednom takvom sustavu i o tome kako smo ga zamijenili. Klijent je regionalni distributer — nekoliko tisuća proizvodnih artikala, jedno skladište, oko trideset ljudi u skladištu i uredu. Anonimizirali smo ih i zaokružili brojke, ali oblik projekta točno je onakav kakav se dogodio. Ako sjedite na zastarjelom sustavu kojeg se bojite dirnuti, ovako otprilike izgleda razumna modernizacija iznutra.

U ovoj priči nema herojskog ponovnog pisanja, nema vikenda kad smo pritisnuli prekidač i sve je bilo novo. Cijela poanta — ono što je sve to učinilo uspješnim — jest da se ništa dramatično nije dogodilo. Kamioni su se i dalje utovarivali. Skladište je jedva primijetilo kako mu se tlo pomiče pod nogama. To je cilj kod rada sa starim sustavima i vrijedi razumjeti zašto.

Situacija: sustav koji drži na okupu pamćenje jedne osobe

Skladište je radilo na prilagođenom sustavu izgrađenom oko 2013. od strane programera koji je odavno otišao. Obavljao je osnovni posao — praćenje zaliha, ispis lista za komisioniranje, slanje narudžbi van — i običnog dana radio je sasvim dobro. Problem zapravo nije bio softver. Problem je bilo sve ono što je naraslo oko softvera kako bi ga se održalo upotrebljivim.

Tijekom desetljeća tim je potiho izgradio sustav iz sjene od ljepljive trake: tablicu za stanja zaliha koja je softver pogrešno prikazivao, drugu tablicu koja je prvu usklađivala sa stvarnošću, WhatsApp grupu u kojoj je voditelj skladišta označavao artikle koje sustav nije mogao prikazati i tiskanu mapu zaobilaznih rješenja koju su novi zaposlenici morali napamet naučiti. Ništa od toga nije bilo zapisano na jednom mjestu. Sve je živjelo u glavi voditeljice operacija, smirene žene u pedesetima koja je tu bila četrnaest godina i bila je, funkcionalno, sama dokumentacija.

Kad nas je vlasnik prvi put nazvao, nije to bilo zbog pada sustava. Bilo je to zato što je ona objavila da želi otići u mirovinu za dvije godine, a on je izračunao i shvatio da će dana kad ona ode, znatan dio toga kako skladište zapravo funkcionira izaći kroz vrata s njom. To je češći okidač za modernizaciju od bilo kakvog tehničkog kvara: ne to da se sustav pokvari, nego spoznaja da ljudi koji ga krpaju neće biti tu zauvijek.

Rizik nije bio stari sustav. Rizik je bio to što je znanje koje ga je održavalo na životu živjelo u jednoj osobi koja je htjela otići u mirovinu.
ono što vlasnik isprva nije mogao naglas izgovoriti

Simptomi koje su svi prestali primjećivati

Kad smo prva dva dana proveli samo promatrajući rad skladišta, troškovi starog sustava bili su posvuda — ali postali su toliko uobičajeni da ih nitko više nije označavao kao probleme. Za brojke o zalihama pretpostavljalo se da su pogrešne za predvidiv iznos, pa je svaka velika narudžba prolazila ručnu fizičku provjeru 'za svaki slučaj'. Novim zaposlenicima trebali su tjedni da postanu korisni jer je velik dio posla bio nezapisano znanje. A sustav je radio na operacijskom sustavu toliko starom da se više nije mogao zakrpati, na mreži za koju je vlasnik u sebi znao da je sigurnosni incident koji samo čeka da se dogodi.

  • Točnost zaliha kretala se oko 80%, pa su zaposlenici ručno dvostruko provjeravali stanja za sve važno — satima dnevno, tiho.
  • Logika lista za komisioniranje nije mogla obraditi trenutni raspored skladišta, pa su komisioneri hodali rutom koju im je mapa govorila, a ne zaslon.
  • Mjesečno usklađivanje zaliha oduzimalo je dvjema osobama gotovo tri dana.
  • Samo je jedno računalo moglo pokretati administracijski dio softvera i da je crknulo, nitko nije imao jasan plan.
  • Ništa nije bilo povezano s mrežnim kanalom narudžbi koji je tvrtka dodala 2019. — te su se narudžbe ručno prepisivale.
Kut skladišnog ureda sa starim bež stolnim računalom na kojem se vrti zastarjeli softver, okruženo rukom pisanim ljepljivim papirićima, tiskanom mapom zaobilaznih rješenja i šalicom kave, toplo dokumentarno svjetlo
Pravi sustav nije bio na zaslonu — bio je u ljepljivim papirićima, mapi i pamćenju jedne osobe.

Što namjerno nismo učinili

Očiti potez — onaj koji bi mnogi dobavljači predložili — jest kupiti veliku gotovu platformu za upravljanje skladištem, prebaciti sve preko jednog vikenda i isključiti stari sustav u ponedjeljak ujutro. Vidjeli smo da taj pristup dovoljno puta krene po zlu da ga ne bismo predložili za ovakvo poduzeće. Naglo presijecanje pretpostavlja da potpuno razumijete stari sustav. Uz desetljeće nedokumentiranih zaobilaznih rješenja, nitko nije razumio — čak ni oni koji su ga vodili.

Drugi primamljiv potez jest potpuno prilagođeno ponovno pisanje od nule: uzmete sve što stari sustav radi, izgradite ga čisto iznova i pošaljete novi. To zvuči odgovorno i klasičan je način da spalite godinu dana i velik proračun dok poslovanje čeka, zamrznuto, na zamjenu koja se stalno odgađa. Nevolja je u tome što ponovno pisanje mora reproducirati svaku osobitost prije nego što može krenuti — uključujući one osobitosti za koje se nitko ne sjeća da su ključne dok ne nedostaju.

Stoga nismo učinili nijedno. Prema starom sustavu nismo se odnosili kao prema nečemu što treba srušiti, nego kao prema nečemu što treba okružiti i polako zamijeniti — jednu sposobnost po jednu, uz stari sustav koji je cijelim putem ispod radio kao sigurnosna mreža. Neglamurozno. Ujedno i jedina inačica ovoga koja pouzdano funkcionira.

Pristup: zadavite stari sustav, nemojte ga raznijeti

Među programerima postoji uvriježen naziv za ovaj obrazac — pristup 'davitelja', nazvan po penjačici koja raste oko stabla dok se ne uzmogne uspraviti sama, a izvorno stablo potiho nestaje. Stari sustav ne zamijenite jednim potezom. Gradite nove dijelove oko njega, usmjeravate stvarni rad na njih jedan po jedan i puštate stari sustav da se smanjuje dok ono što ostane ne bude dovoljno maleno da se isključi bez da itko zadrži dah.

Za ovo skladište to je značilo unaprijed dogovoriti redoslijed: koju ćemo sposobnost prvu oguliti, koju ostaviti za kraj i — što je presudno — pravilo da u svakoj fazi, ako bi se novi dio loše ponašao, možemo se istog dana smjesta vratiti na stari način. Nijednom koraku nije bilo dopušteno biti točka bez povratka sve do samog kraja. To jedno pravilo omogućilo je vlasniku da spava i omogućilo je skladišnom osoblju da vjeruje projektu umjesto da se protiv njega bori.

  1. 1
    Mapirajte što sustav zapravo radi
    Tri tjedna praćenja skladišta i ureda kako bismo dokumentirali stvarni tijek rada — uključujući svaku tablicu i svako zaobilazno rješenje iz mape. Zapisali smo sustav koji je postojao, a ne onaj koji je opisivala izvorna specifikacija.
  2. 2
    Popravite podatke prije nego što ih premjestite
    Proveli smo potpuno fizičko brojanje zaliha i prema njemu očistili bazu podataka proizvoda. Migracija prljavih podataka u novi sustav samo vam daje brži pogrešan odgovor — pa je ovo došlo prije nego što je ijedan novi softver dotaknuo podatke.
  3. 3
    Prvo zamijenite najbolniji dio
    Izgradili smo novi modul za praćenje i brojanje zaliha, pokretali ga usporedno sa starim i povjerili mu se tek kad su se brojke poklapale sa stvarnošću puni mjesec.
  4. 4
    Povežite kanale koje je stari sustav ignorirao
    Zatim smo mrežni kanal narudžbi izravno spojili na nove podatke o zalihama, dokrajčivši ručno prepisivanje koje je tiho postojalo od 2019.
  5. 5
    Ogulite ostatak, pa povucite staru jezgru
    Komisioniranje, izvještavanje i usklađivanje prešli su jedno po jedno. Kad na starom sustavu gotovo ništa stvarno više nije radilo, naposljetku smo ga isključili — dotad već nebitan događaj.
Čista ilustracija u stilu dijagrama na kojoj novi moderni softverski sloj raste oko i postupno zamjenjuje staru kutiju zastarjelog sustava, sa strelicama koje pokazuju kako se rad preusmjerava dio po dio, uredan ravni stil
Okružiti, preusmjeriti, smanjiti: stari sustav nastavio je raditi kao sigurnosna mreža dok o njemu gotovo ništa stvarno više nije ovisilo.

Dijelovi koji su bili istinski teški

Bilo bi nepošteno prikazati ovo kao glatko. Tehnički rad bio je lagan dio. Teški dijelovi bili su ljudski i proceduralni i isti su ti teški dijelovi gotovo na svakom projektu sa starim sustavom.

Nedokumentirano pravilo koje je pokvarilo funkciju

Dva tjedna od početka usporednog rada novog modula zaliha, brojke su za jednu kategoriju proizvoda počele odstupati i nismo mogli vidjeti zašto. Nakon dana kopanja, voditeljica operacija je gotovo usput spomenula da se određeni rasuti artikli broje po paleti, a ne po komadu, i da je stari sustav imao skrivenu ugrađenu konverziju koju nitko desetljeće nije dokumentirao. Toga nije bilo ni u jednoj specifikaciji. Živjelo je samo u njezinoj glavi i u mapi. Nikad to ne bismo pronašli samo iz koda — jedino pokretanjem oba sustava jedan uz drugi i pitanjem zašto se ne slažu. To je cijeli argument za usporedni rad u jednoj anegdoti.

Pridobivanje skladišnog osoblja

Skladišno osoblje preživjelo je više od jednog dobronamjernog 'poboljšanja' koje im je pogoršalo dan, pa su projekt dočekali s razumnom sumnjom. Nismo se s time borili prezentacijom. Odabrali smo komisionera koji se najglasnije žalio, sjeli s njim jedno jutro i pregradili zaslon za komisioniranje oko toga kako je on zapravo hodao skladištem. Čim je počeo braniti novi sustav u sobi za odmor, ostali su ga slijedili. Na projektima sa starim sustavima najžešći kritičar, jednom pridobiven, postaje vaš najbolji zagovornik — a to ne možete kupiti dopisom.

Nikad nismo tvrdili da je novi sustav bolji. Pustili smo da se brojke mjesec dana poklapaju sa stvarnošću, a onda smo pustili najglasnijeg skeptika da to kaže umjesto nas.
kako je uvođenje zapravo prihvaćeno

Rezultati, godinu dana poslije

Oprezni smo s blistavim brojkama prije i poslije jer svako poduzeće mjeri drukčije i vaše će se razlikovati. Stoga ih shvatite kao iskrene, zaokružene brojke s jednog projekta, koje pokazuju oblik povrata, a ne obećanje. Glavna poruka manje se tiče bilo koje pojedinačne mjere, a više toga što je prestalo biti zastrašujuće.

MjeraPrijePoslijeUčinak
Točnost zaliha~80%~98%Ručne dvostruke provjere uglavnom nestale
Mjesečno usklađivanje~3 dana, 2 osobe~pola dana, 1 osobaOtprilike tjedan rada natrag svaki mjesec
Mrežne narudžbe ručno prepisaneSvakaNijednaKanal sada izravno hrani zalihe
Vrijeme da novi zaposlenik postane koristanNekoliko tjedanaNekoliko danaZnanje je sada u softveru
Jedno krhko administracijsko računaloDaNeRadi bilo gdje, uredno sigurnosno kopirano
Zaokružene, ilustrativne brojke s jedne modernizacije skladišta tijekom dvanaest mjeseci.

Brojka do koje je vlasniku bilo najviše stalo nije bila ni na jednom grafikonu. Bilo je to to da kad je voditeljica operacija zaista otišla u mirovinu — nekoliko mjeseci ranije nego planirano, kako se pokazalo — skladište se nije ni zaljuljalo. Znanje koje je nekoć živjelo u njezinoj glavi sada je živjelo u sustavu na kojem se bilo tko mogao obučiti u nekoliko dana. Izvorni razlog za cijeli projekt potiho je i potpuno riješen.

Svijetlo moderno skladište u kojem osoblje koristi ručne skenere i tablete, sa zidnim zaslonom koji prikazuje jasne nadzorne ploče zaliha uživo, mirno i organizirano, toplo prirodno svjetlo
Godinu dana poslije: isto skladište, isti tim, ali znanje sada živi u sustavu umjesto u pamćenju jedne osobe.

Ako sjedite na ovakvom sustavu

Većina vlasnika sa zastarjelim ključnim sustavom istodobno osjeća iste dvije stvari: rizično ga je zadržati, a zastrašujuće ga je zamijeniti. Oboje je istina. Pogreška je pustiti da pobijedi drugi strah, jer rizik starog sustava ne ostaje na istome — tiho raste svake godine, kako se ljudi koji ga razumiju približavaju odlasku, a platforma na kojoj radi sve više izlazi iz podrške.

Ne morate birati između 'pustite ga na miru i molite se' i 'kladite se na tvrtku velikim ponovnim pisanjem'. Srednji put — okružite ga, zamijenite ga dio po dio, zadržite stari kao mrežu dok novi ne zasluži povjerenje — sporiji je i daleko manje herojski. Ujedno je to inačica koja ne zaustavlja kamione. Ako iz cijele ove priče treba zapamtiti jednu stvar, to je ta.

Imate stari sustav kojeg se bojite dirnuti?

Ako vam skladište ili kontrola zaliha rade na softveru kojem više ne možete potpuno vjerovati — ili ga više potpuno ne razumijete — pogledajmo ga zajedno. Mapirat ćemo što zapravo radi i pokazati vam put s najmanjim rizikom do moderne zamjene, dio po dio.

Pogledajte kako moderniziramo skladišne sustave

Česta pitanja

Možete li doista zamijeniti skladišni sustav bez prekida rada?
Da — to je cijeli razlog za pristup dio po dio umjesto noćnog prelaska. Stari sustav nastavlja raditi kao sigurnosna mreža dok se svaka nova sposobnost gradi, testira usporedno i prihvaća tek kad se poklapa sa stvarnošću. Ni u jednom trenutku do samog kraja ne postoji trenutak kad se skladište ne može vratiti na stari način. Učinjeno ovako, osoblje jedva primjećuje migraciju.
Zašto jednostavno ne kupiti gotov sustav za upravljanje skladištem?
Ponekad je to pravi odgovor i reći ćemo ako jest. No gotove platforme pretpostavljaju da se vaši procesi poklapaju s njihovim pretpostavkama. Poduzeće s desetljećem specifičnih, nedokumentiranih zaobilaznih rješenja često otkrije da standardni proizvod pristaje 80%, a bori se s preostalih 20% — upravo dijelom koji je važan. Tu odluku vrijedi donijeti promišljeno, a ne podrazumijevano.
Koliko traje ovakav projekt?
Za distributera s jednim skladištem ove veličine, planirajte u mjesecima, a ne tjednima — ovaj konkretni trajao je otprilike godinu od početka do kraja, namjerno bez žurbe. Metoda dio po dio mijenja brzinu za sigurnost: na papiru je sporija od naglog prelaska, ali ne nosi rizik zamrznutog poslovanja koje čeka zamjenu koja nikad zapravo ne krene.
Koji je najvažniji prvi korak?
Iskreno dokumentiranje onoga što trenutni sustav zapravo radi — uključujući svaku tablicu i zaobilazno rješenje koje je naraslo oko njega — a zatim čišćenje podataka. Oboje se događa prije nego što se izgradi ijedan novi softver. Skok ravno na novu tehnologiju način je na koji projekti modernizacije naslijede sve stare probleme i budu okrivljeni za njih.
Što se događa sa znanjem koje živi u glavi jednog ključnog zaposlenika?
Njegovo bilježenje jedan je od glavnih ciljeva, a ne nuspojava. Praćenjem te osobe i kodiranjem njezinih nedokumentiranih pravila u novi sustav, poduzeće prestaje ovisiti o bilo kojem pojedincu da bi skladište radilo. U ovom slučaju ključni zaposlenik otišao je u mirovinu tijekom projekta, a poslovanje se nastavilo bez prekida — što je upravo ishod radi kojeg je modernizacija i provedena.
Have a nice day
Have a nice day
Uredništvo

Have a nice day softverski je studio koji pomaže malim i srednjim poduzećima u digitalizaciji — automatizacija, umjetna inteligencija i softver po mjeri koji radi u svakodnevnom poslovanju, a ne samo na slajdovima.

Povezane usluge