COCO ponovno udara

Vjerojatno bismo trebali prestati davati COCO-u ideje.
Prethodni eksperiment trebao je biti dovoljan.
Prava aplikacija.
Prava navigacija.
Korisnici.
Uloge.
Baze podataka.
Jezici.
Dokazi.

Ozbiljna studija slučaja.
Jasan zaključak.
Onda je netko to pokazao: Logistics in Motion.
To je vjerojatno bila greška.


Počelo je s tri skladišta
Ništa posebno uzbudljivo.
Tri DEMO skladišta.
  • Kalsdorf bei Graz.
  • Wiener Neustadt.
  • Klagenfurt.
Sintetički podaci.
Nikakvih informacija o kupcima.
Nikakve proizvodne zalihe.

Točno onakvo okruženje u kojem se ništa važno ne bi trebalo dogoditi.
Zatim je odabrano prvo skladište.
I aplikacija je stekla kontekst.
Od tog trenutka, svaki je zaslon imao još jedno pitanje pridodano.

Pripada li ovo još uvijek istom skladištu?
Mijenja li jezik samo sučelje?
Ostaje li proces na istom koraku?
Slaže li se zaliha i dalje?
Pokazuje li referenca dokumenta i dalje na pravi događaj?
Vidi li operater točno ono što je potrebno za sljedeću akciju?


Odjednom, zanimljivi dio više nije bio zaslon.
Bio je to kontinuitet između zaslona.

COCO to obično radi.

Logistika nije skup zaslona
Izvana, skladišni softver može izgledati varljivo jednostavno.
Roba stigne.
Uskladišti se.
Netko je naruči.
Kompletira se.
Otprema se.
Gotovo.

Osim što se između stiglo i otpremljeno krije čitav operativni svijet.
Očekivano.
Primljeno.
Provjereno.
Dostupno.
Rezervirano.
Premješteno.
Kompletirano.
Blokirano.
Ispravljeno.
Otpremljeno.
Revidirano.


Fizičko kretanje je važno.
Ali prijelaz stanja je ono što to kretanje čini razumljivim softveru.
A kada te dvije stvarnosti prestanu odgovarati, netko na kraju ima loš dan.

Flow.

Skladište je lakše razumjeti kada je kretanje vidljivo, ne samo zabilježeno.
Zato naš logistički rad nikada zapravo nije počinjao s izbornicima, kontrolnim pločama ili tehnologijom.
Počinje s materijalnim Flow-om.

Gdje informacija ulazi?
Gdje se mijenja?
Gdje se može izgubiti?

Gdje je netko prisiljen pitati drugu osobu što se dogodilo?
Gdje ručni korak tiho postaje najslabiji dio inače automatiziranog procesa?
Ponekad je odgovor novo sučelje.
Ponekad integracija.
Ponekad skener.
Ponekad jednostavno bolji model stanja.

Više softvera nije automatski bolji softver.
Cilj nije automatizacija radi automatizacije.
Cilj je proces koji ostaje razumljiv.

Control. Clarity. Flow.

Proces počinje prije prvog knjiženja.
Prije prijema robe.
Prije kompletiranja.
Prije kretanja zalihe.
Prije prve transakcije.
Flow postavlja vrlo osnovno pitanje:
U kojem skladištu radimo?
Zvuči gotovo trivijalno.
Nije.
Kontekst skladišta pripada svemu što slijedi.
Zaliha.
Dokumenti.
Lokacije.
Kompletiranje.
Premještanja.
Povijest revizije.
Iznimke.

Proces može izgledati savršeno zdravo dok djeluje u pogrešnom kontekstu.
To je točno onakav problem koji screenshot rijetko otkriva.
I točno onakva granica koju COCO voli propitivati.

Jezik je jednostavan dok to ne prestane biti
Njemački.
Engleski.
Hrvatski.
Norveški.
I drugi.

Korisnički profil definira dostupne jezike.
Operater mijenja jezik dok je aplikacija aktivna.
Sučelje se odmah mijenja.
Poslovni proces ne smije.
Ta razlika je bitna.
Skladište se ne pomiče jer se promijenila riječ za skladište.
Nalog za kompletiranje ne kreće ispočetka jer je korisnik odabrao drugi jezik.
Rezervacija ne nestaje.
Iznimka odjednom ne pripada drugoj transakciji.
Proces ostaje gdje jest.
Mijenja se samo njegov prikaz.
To zvuči očito.

Dok ne shvatite koliko aplikacija tretira promjenu jezika gotovo kao novu sesiju.

Višejezična poslovna aplikacija ne bi trebala.
Stanje prikaza može se mijenjati.
Poslovno stanje mora ostati stabilno.
To čini promjenu jezika iznenađujuće korisnim regresijskim testom.
Mala značajka.
Vrlo dobra linija loma.
COCO voli linije loma.

Korak po korak, aplikacija počinje akumulirati povijest
Roba stigne.
Proces napreduje.
Prijem robe se knjiži.
Zaliha se mijenja.
Stanje skladišta odražava novu stvarnost.
Kompletiranje počinje.
Zaliha postaje rezervirana.
Operater dobiva zadatak.

Mobilni prikaz svodi cijeli proces na ono što je bitno u tom točnom trenutku:
Pozicija.
Lokacija skladištenja.
Količina.
SSCC.
Operater.
Ništa više.
Ništa manje.
To je bitno.
Mobilno sučelje nije drugi poslovni proces.
To je drugi prikaz istog procesa.
Skladišna aplikacija smije znati sve.
Komisionar to ne mora.
Clarity ne znači uvijek prikazivati više informacija.
Ponekad clarity znači imati disciplinu da se sakrije gotovo sve.

Onda netko skenira pogrešnu lokaciju
Ovdje logistički tok rada postaje zanimljiviji od popisa značajki.
Očekivana lokacija je jedna stvar.
Skenirana lokacija je druga.
Flow se zaustavlja.
Ne ruši se.
Zaustavlja se.
Postoji razlika.
Stanje procesa ostaje vidljivo.
Pogođena zaliha ostaje razumljiva.
Iznimka postaje eksplicitna.

Kontekstualna pomoć objašnjava ono što je relevantno za trenutnu situaciju.
Korisnik rješava odstupanje.
Proces se nastavlja.
Ovaj trenutak govori više o operativnom softveru nego nekoliko stranica screenshotova idealnog puta.
Prava logistika nije teška kada je sve ispravno.
Prava logistika postaje teška kada je nešto gotovo ispravno.
Koristan sustav to ne skriva iza zelene kontrolne ploče.
Daje iznimci stanje.

Razlog.
Povijest.
I put naprijed.


Dokumenti pamte ono što ljudi zaborave

Kako tok rada napreduje, reference se počinju akumulirati.
ASN.
Prijem robe.
Kretanje skladišta.
Kompletiranje.
Otprema.
Flow.
Zanimljiv dio nije to što dokumenti postoje.
Zanimljiv dio je da pričaju istu priču kao proces.
Zašto je ova zaliha ovdje?
Koji je prijem uveo?
Koja ga je operacija rezervirala?
Koje ga je kompletiranje potrošilo?
Koja ga je pošiljka premjestila van?
Je li iznimka riješena prije sljedećeg koraka?
Koje je bilo aktivno skladište?
Što se dogodilo prije trenutnog stanja?
Kada su stanje i dokumentacija proizvedeni istim procesom, sljedivost postaje lakše povjerljiva.
Kada nisu, ljudi u konačnici počinju rekonstruirati povijest.
Obično u Excelu.
Obično pod pritiskom.
Obično nakon što je nešto već pošlo po zlu.
COCO preferira dokaze prije tog trenutka.
Očito, COCO također putuje
Bila je još jedna mala promjena između izvršavanja.
Ubuntu je imao svoje izvršavanje.
Red Hat Enterprise Linux 10 preuzeo je sljedeće.
COCO je nastavio.
Bez ceremonije.
Bez posebnog „Red Hat načina".
Bez prepisanog toka rada.
Bez pogodno pojednostavljenog testa.
Isti Flow.
Drugačije tlo ispod.
Ranije izvršavanje COCO-a već je testiralo aplikaciju na Ubuntu Linuxu.
Trenutno se premjestilo na Red Hat Enterprise Linux 10.
Drugačije desktop okruženje.
Drugačije sistemske biblioteke.
Drugačije pakiranje.
Drugačije operativno okruženje.
Isto skladište.
Ista poslovna stanja.
Isti prijelazi zalihe.
Iste promjene jezika.
Ista logika iznimki.
Isti dokazi.
To je prilično lijep način za testiranje cross-platform softvera.

Ne najavljujte da je cross-platform. Premjestite ga. Zatim pogledajte što se pokvari.

Stanje jezika.
Kontekst skladišta.
Ponašanje dijaloga.
Vrijeme.
Teme.
Prijelazi procesa.
Rukovanje iznimkama.
Dokazi.
Operativni sustavi imaju iznenađujuće kreativne načine izlaganja pretpostavki.

Ubuntu je izložio neke.
Red Hat izlaže druge.
To je korisno.

Jer multi-platform inženjerstvo nije sposobnost pokretanja izvršne datoteke dvaput.

To je sposobnost promjene okruženja bez promjene značenja procesa.
Skladišnom operateru ne bi trebalo biti bitno je li aplikacija pokrenuta na Ubuntuu ili Red Hatu.
Ni nalogu za kompletiranje ne bi trebalo biti bitno.
Niti reviziji.
Ako razlike platforme počnu mijenjati poslovno ponašanje, softver nije istinski cross-platform.
On je samo prenosiv.
COCO se čini znatno više zainteresiranim za prvu definiciju.
Mi također.

COCO ne odlučuje što znači ispravna logistika
Ovaj dio je bitan.
COCO ne postaje skladišni stručnjak samo zato što može pratiti skladišni tok rada.
Ljudi i dalje definiraju ispravnost.
Ljudi odlučuju kada zaliha postaje dostupna.
Ljudi definiraju što znači blokirana isporuka.
Ljudi odlučuju tko smije ispraviti količinu.
Ljudi definiraju koje kretanje zahtijeva reviziju.
Ljudi odlučuju kako izgleda valjano rješenje iznimke.
Ljudi odlučuju kada je pošiljka istinski dovršena.
Zadatak COCO-a je drugačiji.

Ponoviti.
Promatrati.
Usporediti.
Zapamtiti.
Ostaviti dokaze.


Zatim to ponoviti nakon promjene softvera.
I opet.
I opet.
Bez dosade.
Bez odlučivanja da je prošlotjedni rezultat vjerojatno još uvijek valjan.
Bez preskakanja dosadne iznimke jer je ručak za dvanaest minuta.
Glamurozna budućnost AI testiranja sadrži iznenađujuću količinu ponavljanja.
Mi to smatramo značajkom.

Dokazi mijenjaju razgovor
Tradicionalno testiranje često završava sasvim razumnom rečenicom:
„Radilo je kad sam ga testirao."

COCO zanima sljedeća rečenica.

Što je točno radilo?
Koje skladište?
Koji korisnik?
Koji jezik?
Koje stanje procesa?
Koji redoslijed?
Koji dokument?
Koja vrijednost zalihe?
Što se dogodilo neposredno prije koraka testiranja?
Što se promijenilo neposredno nakon?
Može li drugi inženjer razumjeti rezultat bez pitanja osobe koja je izvela test?
Tu regresijsko testiranje postaje više od ponovljenog klikanja.
Jedan zaslon može biti ispravan dok je proces pogrešan.
Prozor kompletiranja može izgledati savršeno dok je zaliha već odstupila.
Dokument može postojati dok se stanje koje ga je trebalo stvoriti nikad nije dogodilo.
Aplikacija može prikazivati 100% dok revizija tiho ne slaže.
COCO prati Flow jer je u Flow-u mjesto gdje te proturječnosti postaju vidljive.

Negdje između Controla i Flowa
Ovdje postoji zanimljiva simetrija.
Dobar logistički softver pokušava smanjiti neizvjesnost unutar operacije.
Dobro testiranje pokušava smanjiti neizvjesnost o softveru koji ga izvodi.
Jedno pita:
Gdje je artikl?
Drugo pita:
Kako znamo da softver to još zna?
Jedno pita:
Je li ovo kretanje dovršeno?
Drugo pita:
Koji dokaz dokazuje da se stanje ispravno promijenilo?
Jedno pita:
Može li sljedeća smjena nastaviti?
Drugo pita:
Može li sljedeći inženjer razumjeti što se dogodilo?
Različita pitanja.
Isti instinkt.
Učiniti stanje vidljivim.
Sačuvati obrazloženje.
Smanjiti količinu znanja koje postoji samo u nečijoj glavi.
Možda je to veza koju izvorno nismo planirali.

Inženjerska izvrsnost bez transparenta
Nitko ne klikne na gumb Engineering Excellence.
Ne postoji takav.
I vjerojatno ne bi ni trebao postojati.
Inženjerska izvrsnost pojavljuje se neizravno.
Kontekst skladišta preživi promjenu jezika.
Isti proces preživi drugu Linux platformu.
Kretanje zalihe ostaje sljedivo.
Mobilni komisionar vidi točno ono što je potrebno i ništa drugo.
Iznimka prekida proces bez uništavanja njegovog stanja.
Prozor pomoći objašnjava trenutni kontekst umjesto prikazivanja generičke dokumentacije.
Lanac dokumenata slaže se s operativnim slijedom.
Sljedeći inženjer može razumjeti što se dogodilo bez pitanja osobe koja je slučajno bila prisutna.
Ima dovoljno teatra dostupnog u modernom softveru.
AI može generirati impresivne demonstracije.
Kontrolne ploče se mogu animirati.
Brojevi se mogu kretati.
Videi mogu izgledati vrlo uvjerljivo.
Ništa od toga ne dokazuje da dvije operacije zalihe ne mogu tiho proizvesti pogrešan rezultat.
Ništa od toga ne dokazuje da se iznimka i dalje može rekonstruirati tjednima kasnije.
Ništa od toga ne dokazuje da skladišni radnik, dispečer, i developer gledaju istu operativnu istinu.

Inženjerska izvrsnost počinje na manje fotogeničnom mjestu.

S dosljednošću.
S dokazima.
S granicama.


S voljom da se dosadni dijelovi ostave dosadnima.
Nevidljiva pouzdanost rijetko proizvodi najdramatičniji screenshot.
Dok ga namjerno ne počnete tražiti.

Control. Clarity. Flow.
Control znači znati koje je skladište, koji je proces, i koje je stanje aktivno.
Clarity znači razumjeti što se promijenilo, kada se promijenilo, i zašto.
Flow znači omogućiti da se operacija nastavi bez gubitka priče iza nje.
To funkcionira za logistiku.
Funkcionira za testiranje softvera.
Funkcionira iznenađujuće dobro za samo inženjerstvo.
Prvi Flow eksperiment dao je COCO-u Administration.
Korisnici.
Uloge.
Baze podataka.
Jezici.
Zatim mu je netko dao skladište.
Zatim više jezika.
Zatim mobilno kompletiranje.
Zatim zalihu.
Zatim premještanja.
Zatim iznimke.
Zatim dokumente.
Zatim drugi operativni sustav.
U ovom trenutku, vjerojatno bismo trebali prestati dodavati stvari.
Vjerojatno nećemo.

Control. Clarity. Flow.

Ubuntu je imao svoj red.

Red Hat ima trenutni.

Flow se nastavlja kretati.

COCO nastavlja gledati.
I negdje usred posljednjeg izvršavanja, postalo je očito da postoji još jedno pitanje koje čeka iza ovog.

Mi znamo što je to.
COCO zna što je to.
Vi ne znate.
Još.


Mogli bismo vam reći.

Ali onda biste možda prestali provjeravati je li se pojavio novi Insiders članak.
A to bi upropastilo eksperiment.

Objavljeno: 28.08.2026