Kiedy beton przyjeżdża w złej kolejności, stoi cała budowa
System, który pokazuje kierownikowi budowy, gdzie w tej chwili jest każda dostawa i co wjedzie na plac w następnej godzinie.
Na dużej budowie w jednym tygodniu potrafi pojawić się kilkadziesiąt dostaw od kilkunastu dostawców. Stal zbrojeniowa, prefabrykaty, beton, okna, instalacje. Każda z nich zajmuje miejsce, dźwig i ludzi. Jeśli przyjadą w złej kolejności albo dwie naraz, jedna czeka, druga blokuje wjazd, a ekipa stoi.
Co się działo wcześniej
Kierownik budowy wiedział, co zamówił, ale nie wiedział, co dojedzie dzisiaj. Awizacje szły mailem i telefonem, często dzień wcześniej, czasem godzinę przed przyjazdem. Dostawca potwierdzał termin, ale nie zawsze go dotrzymywał, a informacja o opóźnieniu docierała wtedy, gdy ciężarówka już stała pod bramą.
Skutki są wszędzie takie same i każdy kierownik budowy je zna. Materiał ląduje w przypadkowym miejscu, bo docelowe jest zajęte, a potem trzeba go przenosić drugi raz. Przestoje ekip czekających na materiał, który jest na placu, tylko nikt nie wie gdzie. Uszkodzenia przy wielokrotnym przekładaniu. I ryzyko wypadku, bo w wąskim przejeździe mija się wózek widłowy z betonowozem.
Nasz klient, polska firma od logistyki budowlanej, miał na to pomysł i szukał zespołu, który zrobi z niego działający produkt.
Co zbudowaliśmy
System do awizacji i śledzenia dostaw, w którym plac budowy jest widoczny jako plan, a nie jako lista pozycji.
Awizacja z oknem czasowym. Dostawca rezerwuje konkretne okno i konkretne miejsce rozładunku. Jeśli okno jest zajęte, widzi to przy rezerwacji, a nie przy bramie.
Podgląd placu. Kierownik widzi na planie strefy rozładunku, drogi dojazdowe i to, co jest w nich zajęte w danej godzinie. Konflikt dwóch dostaw w tym samym miejscu wychodzi przy planowaniu, nie na budowie.
Śledzenie w dół łańcucha. Pozycja z zamówienia jest widoczna przez cały czas: zamówiona, w drodze, na placu, wbudowana. Pytanie „gdzie są te okna” przestaje wymagać trzech telefonów.
Historia zdarzeń. Każda zmiana terminu, każde opóźnienie i każdy rozładunek zostaje zapisany. Przy rozliczeniu z dostawcą albo przy sporze o opóźnienie nie trzeba odtwarzać przebiegu z pamięci.
Jak to zmienia pracę
Wartość nie leży w tym, że system wie więcej niż kierownik budowy. Leży w tym, że wie to w tym samym momencie co on i pokazuje to wszystkim naraz – dostawcy, kierownikowi, brygadziście.
Najwięcej zmieniają dwie rzeczy. Pierwsza to zderzenie planu z rzeczywistością jeszcze przed przyjazdem, bo przesunięcie dostawy o dwie godziny w systemie kosztuje kliknięcie, a przesunięcie ciężarówki stojącej przed bramą kosztuje pół dnia. Druga to zapis, kto co awizował i kiedy faktycznie przyjechał. Na budowie, gdzie każde opóźnienie ma później swoją wersję wydarzeń, to jest materiał, nie opinia.
Nie mamy od klienta zmierzonych oszczędności i ich tu nie podajemy. Z naszego doświadczenia przy tej skali główny zysk bierze się z dwóch miejsc: z mniejszej liczby przestojów ekip i z rzadszego przenoszenia materiału po placu.
Dlaczego zrobiliśmy to w ten sposób
Taki system żyje dłużej niż jedna budowa i przez ten czas zmieniają się zasady: inne strefy, inne typy dostaw, inne role w firmie. Dlatego logikę aplikacji oparliśmy na zdarzeniach, czyli „zaawizowano”, „przesunięto”, „rozładowano”, a nie na tabelach z aktualnym stanem. Dzięki temu dołożenie nowej reguły nie wymaga przebudowy tego, co już działa, a każde pytanie o przeszłość ma odpowiedź w danych.
Pokaż stos technologiczny
- NestJS
- TypeScript
- TypeORM
- RxJS
- CQRS
- DDD
- Swagger
- Jest