YMS24

Oprogramowanie YMS - architektura i wymagania techniczne

Oprogramowanie YMS pracuje w przeglądarce, na serwerze aplikacji z bazą SQL Server. Od tego układu zależą wymagania sieciowe, sposób nadawania uprawnień i zakres pracy przy utrzymaniu.

Opublikowano: Zaktualizowano:
yms24.pl/baza-wiedzy/
Wizualizacja placu w module Yard Management - zdjęcie lotnicze terenu z dziewięcioma zielonymi miejscami postojowymi oznaczonymi od 01M do 09M, dwa zajęte przez ciągnik i naczepę, menu Kontenery, Parkowanie, Bramy i Transport wewnętrzny
Oprogramowanie YMS - architektura i wymagania techniczne
W skrócie

Cała obsługa odbywa się w przeglądarce, po stronie stanowisk nie ma czego instalować. Ciężar przenosi się na serwer aplikacji i bazę, więc pytania o wydajność dotyczą liczby równoczesnych sesji i rozmiaru rejestru, a nie parametrów komputerów na bramie.

Układ warstw i co z niego wynika

Aplikacja pracuje w trzech warstwach. Przeglądarka odpowiada za widok i walidację wstępną. Serwer aplikacji wykonuje logikę procesu oraz kontroluje uprawnienia. Baza SQL Server przechowuje rejestr wizyt, kartoteki i reguły zasobów, i to ona rozstrzyga o dostępności okna czasowego.

Podział ma konsekwencję, którą widać przy każdym wdrożeniu. Stanowisko na bramie może być dowolnym komputerem z przeglądarką, bo nie liczy niczego lokalnie. Rośnie za to znaczenie łącza między obiektem a serwerem i to ono wyznacza granicę użyteczności, gdy zakład ma kilka rozproszonych lokalizacji.

Warstwy aplikacji i zakres odpowiedzialności każdej z nich
WarstwaZa co odpowiadaNa co wpływa jej wydajność
PrzeglądarkaWidok, formularze, podpowiedzi pólPłynność pracy operatora
Serwer aplikacjiLogika procesu i kontrola uprawnieńLiczba równoczesnych sesji
Baza danychRejestr, kartoteki, reguły zasobówCzas zapisu zgłoszeń i raportów
Warstwa sprawozdawczaZestawienia i wydrukiObciążenie przy raportach okresowych

Wydzielenie warstwy sprawozdawczej bywa pomijane przy małych instalacjach i wraca w momencie, gdy ktoś uruchamia raport roczny w poniedziałek rano. Zapytanie analityczne czytające te same tabele, na których pracuje brama, zakłada blokady i spowalnia rejestrację wjazdów. Technikę przygotowania wydruków opisuje strona o usługach raportowych SQL Server.

Role i sposób nadawania uprawnień

Uprawnienie przypisuje się roli, a użytkownika wiąże z rolą. Konfiguracja obejmuje dostęp do sekcji menu, prawo wykonania transakcji oraz zakres widocznych danych. Trzeci element bywa pomijany, a właśnie on decyduje o tym, że przewoźnik widzi wyłącznie własne zgłoszenia.

Praktyka pokazuje, że liczba ról w typowym obiekcie nie przekracza sześciu. Więcej oznacza zwykle, że ktoś tworzy rolę pod konkretną osobę, co po roku daje zestaw nadań niemożliwy do zaudytowania. Podział zadań między role pokazuje strona o stanowisku ochrony i obsłudze bramy.

Konto administratora nie powinno służyć do codziennej pracy. Wpisy wykonane z niego są nierozróżnialne w śladzie audytowym, więc pierwsza reklamacja przewoźnika kończy się odpowiedzią, że zmiany dokonał administrator.

Wymagania po stronie infrastruktury

Zestaw wymagań zależy od skali, ale ich struktura jest stała. Serwer aplikacji i baza mogą pracować na jednej maszynie w małych instalacjach; przy kilku obiektach rozdziela się je, żeby raporty nie konkurowały o zasoby z obsługą bieżącą.

  • Serwer aplikacji - środowisko IIS z obsługą aplikacji ASP.NET, wystawione po HTTPS.
  • Baza danych - SQL Server w wersji wspieranej, z kopią zapasową obejmującą dziennik transakcji.
  • Łącze do obiektu - stabilne połączenie ze stanowiskami bramy; przerwa oznacza przejście na tryb awaryjny.
  • Certyfikat i domena - wymagane dla portalu dostępnego przez Internet dla firm zewnętrznych.

Decyzja o instalacji na własnej infrastrukturze albo w modelu usługowym wpływa na to, kto wykonuje kopie zapasowe i aktualizacje. Kryteria porównania zebrano na stronie o wyborze między chmurą a instalacją lokalną, a pracę bez instalacji lokalnej opisuje materiał o wykorzystaniu chmury obliczeniowej.

Co obejmuje utrzymanie po uruchomieniu

Codzienna praca systemu nie wymaga obsługi technicznej. Zakres utrzymania sprowadza się do czterech czynności wykonywanych z różną częstotliwością, z których żadna nie jest ciągła.

  • Kopie zapasowe - pełna oraz dziennik transakcji, z okresowym sprawdzeniem odtworzenia na kopii.
  • Przegląd uprawnień - wyłączenie kont osób, które zmieniły stanowisko lub odeszły z firmy.
  • Korekta siatki okien - po zmianie godzin pracy obiektu albo obsady zmiany.
  • Porządkowanie kartotek - scalanie duplikatów przewoźników, zanim przypnie się do nich historia.

Osobną pozycją jest archiwizacja rejestru. Tabela wizyt rośnie liniowo z ruchem i po kilku latach zapytania raportowe zwalniają. Rozwiązaniem jest przeniesienie zamkniętych wizyt do archiwum z zachowaniem dostępu do odczytu, a nie zwiększanie mocy serwera. Zakres modułów placu, które korzystają z tego rejestru, opisuje strona o programie klasy YMS, a sposób podłączenia urządzeń bramowych - materiał o integracji z kamerami LPR.

Udostępnienie portalu firmom zewnętrznym

Portal przewoźnika musi być osiągalny przez Internet, co zmienia wymagania wobec instalacji. Ruch idzie po HTTPS z certyfikatem wystawionym na domenę obiektu, a nie po adresie wewnętrznym. Konta firm zewnętrznych podlegają osobnym zasadom: mają własną politykę haseł oraz automatyczne wygaszanie po okresie bez aktywności.

Zakres widocznych danych ogranicza się po stronie serwera, nie w interfejsie. Ukrycie kolumny w widoku nie jest zabezpieczeniem, bo zapytanie wykonane bezpośrednio zwróciłoby komplet rekordów. Filtr na poziomie kontrahenta nakłada się w warstwie aplikacji przy każdym odczycie, niezależnie od tego, którym widokiem użytkownik się posłużył.

Dostęp dla firmy zewnętrznej kończy się razem z umową, a nie wtedy, gdy ktoś sobie o tym przypomni. Przegląd kont bez aktywności jest czynnością cykliczną, tak samo jak kopia zapasowa.

Kierowcy korzystają zwykle z osobnej ścieżki, bo ich potrzeba ogranicza się do potwierdzenia przyjazdu i pokazania dokumentu. Rozwiązanie na urządzenie przenośne opisuje strona o oprogramowaniu do awizacji na Android, a wariant bez logowania - materiał o przepustce elektronicznej z kodem QR.

FAQ

Najczęściej zadawane pytania

01

Czy na stanowiskach trzeba coś instalować

Nie. Obsługa odbywa się w przeglądarce, więc stanowisko na bramie może być dowolnym komputerem z dostępem do sieci. Wymagania przesuwają się na serwer aplikacji oraz na stabilność łącza między obiektem a serwerem.

02

Jaka baza danych jest wymagana

SQL Server w wersji objętej wsparciem producenta. Rejestr wizyt, kartoteki i reguły dostępności okien znajdują się po stronie bazy, bo tylko tam kontrola dostępności zasobu działa również dla zgłoszeń przychodzących z integracji, a nie wyłącznie z formularza.

03

Ile ról trzeba zdefiniować

W typowym obiekcie wystarcza kilka: ochrona, magazyn, dyspozytura, przewoźnik oraz administrator. Tworzenie roli pod pojedynczą osobę prowadzi po roku do zestawu nadań, którego nie da się zaudytować ani odtworzyć po zmianie kadrowej.

04

Co dzieje się przy przerwie w łączności z serwerem

Stanowisko bramy przechodzi na ewidencję zastępczą, a wpisy uzupełnia się po przywróceniu połączenia wraz z rzeczywistymi godzinami zdarzeń. Rekordy z tego trybu noszą osobny znacznik, więc raport kompletności nie miesza ich z wpisami bieżącymi.

05

Jak rośnie obciążenie wraz z liczbą obiektów

Decyduje liczba równoczesnych sesji oraz rozmiar rejestru, a nie sama liczba lokalizacji. Przy kilku obiektach rozdziela się serwer aplikacji od bazy, a zapytania raportowe kieruje na warstwę sprawozdawczą, żeby nie zakładały blokad na tabelach obsługujących bramę.

Słownik

Słownik pojęć

Pozostałe pojęcia z obsługi transportu zbiera słownik YMS.

WWarstwa sprawozdawcza
Wydzielone źródło danych dla raportów, dzięki któremu zapytania analityczne nie zakładają blokad na tabelach obsługi bieżącej.
RRola
Zestaw uprawnień do sekcji, transakcji i zakresu widocznych danych, przypisywany użytkownikom zamiast nadań indywidualnych.
DDziennik transakcji
Zapis zmian w bazie wykorzystywany przy odtwarzaniu stanu sprzed awarii; objęty osobną kopią zapasową.
TTryb awaryjny
Sposób prowadzenia ewidencji na bramie przy przerwie w łączności, z uzupełnieniem danych po przywróceniu połączenia.
AArchiwizacja rejestru
Przeniesienie zamkniętych wizyt poza tabele operacyjne z zachowaniem dostępu do odczytu, stosowane zamiast zwiększania mocy serwera.
SSesja równoczesna
Pojedyncze aktywne połączenie użytkownika z aplikacją; ich liczba wyznacza wymagania wobec serwera aplikacji.

Zobacz, co stoi na Twoim placu

Miejsca postojowe, naczepy i kontenery w jednym widoku, z historią wjazdów i wyjazdów.

Wolisz najpierw poczytać? Zobacz, monitoring zajętości placu.

O autorze

Adam Siemiątkowski

Specjalista ds. wdrożeń systemów logistycznych, SoftwareStudio Group Sp. z o.o.

Autor zajmuje się wdrożeniami systemów klasy YMS/VSS w firmach logistycznych i magazynowych. Wszystkie artykuły autora → Profil na LinkedIn →