Ślad po procesie

Myślę, że można powiedzieć, że wraz z końcem września kończy się okres intensywnych wyjazdów wakacyjnych i powrotów. Jedni korzystali z samochodu, inni roweru, autobusu, statku, pociągu czy samolotu. Niektórzy skorzystali ze wszystkich, inni z jednego środka transportu a inni z kilku. Pierwszym krokiem był zakup lub rezerwacja biletu, samodzielnie lub przez biuro podróży, elektronicznie lub bezpośrednio w punkcie sprzedaży. W zależności od potrzeb, możliwości, każdy wybierał to, co mu pasuje. Pasażer decydował się na: wybór przewoźnika/linii (1), wybór kierunku (2), daty (3), miejsca startu (4) lub też innych parametrów podróży. Następne kroki zależały od wybranego środka transportu.

Pewnie niektórym pasażerom/turystom to dziś została przy torbie pamiątka z podróży samolotem. Jest to można powiedzieć ślad z realizacji pewnego procesu (wskazanego poniżej). Przyglądając się temu fragmentowi papieru można znaleźć takie informacje jak: (a) nazwisko pasażera, (b) liczba i waga bagażu, (c) data wydruku, (d) oznaczenie miejsca wylotu, (e) oznaczenie samego lotu, (f) oznaczenie miejsca docelowego, (g) data i godzina wylotu oraz (h) dodatkowe oznaczenia. Dodatkowo jest na nim kod kreskowy.

przelot450px

Ten ślad zawiera informacje pochodzące z procesu rezerwacji przelotu wykonywanego samodzielnie lub przez biuro podróży, rozszerzone o informacje pochodzące z odprawy, takie jak data wydruku oraz te, dotyczące bagażu. Przykładowy proces generujący przytoczone atrybuty został zaprezentowany na powyższym diagramie.

Informacje zawarte na tym pasku (bo często jest to długi wąski pasek) pozwalają szybko zweryfikować gdzie powinien trafić bagaż i czy został skierowany prawidłowo. Dodatkowo za pomocą naklejek z powtórzeniem kodu kreskowego, systemy na lotnisku mogą właściwe pokierować bagaż przez systemy sortowania bagażu. Także na samej płycie lotniska te paski lub kody są używane przez obsługę do weryfikacji, a także pewnie identyfikacji załadowanych sztuk bagażu (bo stojąc przy oknie i obserwując załadunek, można zauważyć, że na taśmie bagażowej przy samolocie jest czytnik, o ile dobrze zauważyłem, który skanuje każdą sztukę bagażu).

Można powiedzieć, że z punktu widzenia pasażera jest to ślad po odbytej podróży samolotem, natomiast z punktu widzenia lotniska jest to element zarówno kontrolny, jak i sterujący. Dodatkowo w momencie “zagubienia” bagażu można przypisać bagaż do odpowiedniej linii i przybliżyć się do powiązania bagażu do właściciela.

Reklama

Przechadzka po szachownicy po raz drugi

Przy okazji omawiania wzorca Odwiedzający skorzystałem z przykładu przechodzenia skoczkiem przez wszystkie pola szachownicy tak, aby każde pole odwiedzić tylko raz, zaczynając z różnych miejsc na szachownicy. Mechanizm szuka kolejnych pól, przechodzi dalej lub cofa się, jeżeli nie jest możliwe dalsze przejście. Rozwiązanie takiego problemu istnieje i pewnie nie jeden pasjonat szachów próbował to zrobić na kartce lub szachownicy. Szachownica zaprezentowana jest na poniższych diagramach. Zaznaczone są także przykładowe przejścia.

Wyobraźmy sobie, że każde pole szachownicy umieszczamy na grafie w węźle, a te węzły, które można ze sobą połączyć, łączymy krawędzią, stosując “wirtualną” odległość opartą o 2 kratki w pionie lub poziomie i 1 odpowiednio w poziomie lub pionie. W taki sposób można rozwiązać także inne sytuacje, np. łączenie wykładowców i przedmioty lub inne sytuacje biznesowe. Fragment takiego grafu jest zaprezentowany na poniższym diagramie.

szach_animated

W tym przykładzie w zależności od położenia pola na szachownicy, dany węzeł grafu ma 2 (kolor czerwony), 3 (kolor zielony), 4 (kolor szary), 6 (kolor niebieski) lub 8 (kolor żółty) wyjść. Na powyższym diagramie takie miejsca grafu zosały odpowiednio oznaczone kolorami. W zależności od węzła, od którego rozpoczynamy wędrówkę, mamy więcej lub mniej możliwości zmiany kierunku. Na animacji droga przechodzi przez różne punkty – rozpoczyna się w punkcie z 2 wyjściami (A1), potem przechodzi przez punkty z 6, 8, 4 wyjściami a kończy w punkcie z 4 wyjściami (F8). Nie przechodzi przez punkt z 3 wyjściami.

szachownica_obszary

Powyższe zadanie to tzw. poszukiwanie ścieżki Hamiltona na nieskierowanym grafie, czyli takim, w którym po każdej krawędzi można przejść w 2 strony. Z racji, że każdemu z węzłów można przypisać jeden z dwóch kolorów i nie ma połączenia/krawędzi między dwoma węzłami tego samego koloru, jest to równocześnie graf dwudzielny. W publikacjach można znaleźć różne algorytmy wyszukiwania takiej ścieżki. Więcej można przeczytać o powyższym problemie choćby we wpisie na anglojęzycznej wersji Wikipedii. Niestety w polskiej wersji informacje te są bardzo ograniczone.

Statusy cząstkowe czy o kluczowych etapach?

Ostatnio zamawiając wybrany produkt przez internet, proces zaówienia wyglądał jak zwykle, czyli wybór produktu, określenie parametrów dostawy oraz płatności, a na koniec płatność za pomocą wybranej usługi. Po chwili na skrzynce znalazłem informację z potwierdzeniem zamówienia. Wybrałem dostawę za pomocą firmy kurierskiej, więc wystarczyło czekać na dostawę w szacowanym terminie –  kilka dni.

Następnego dnia dostaję maila od firmy kurierskiej z informacją: “czekamy na przygotowanie przesyłki”. Po kilku godzinach – “odebraliśmy przesyłkę, powiadomimy o czasie dostawy kolejnym mailem”. Następnego dnia – “planowane dostarczenie w podanej lokalizacji i przedziale czasowym”. Otrzymałem także informację o tym, że mogę zmienić szczegóły dostawy – lokalizację i przedział czasowy. Na koniec, gdy kurier dostarczył mi przesyłkę i potwierdziłem podpisem odbiór, dostałem maila, że “przesyłka dostarczona”. Poszczególne statusy oraz powiązane kroki procesu zostały przedstawione na poniższym diagramie.

statusyczastkowe450px

Można powiedzieć, że zamiast „zwykłych” statusów o etapach (złożone, wysłane, w trakcie oraz dostarczone) z procesu przekazywane były Klientowi statusy cząstkowe. Te cząstkowe statusy były okazją dla firmy do udostępnienia dodatkowej możliwości elektronicznej zmiany szczegółów dostawy. Podobnie można było dokładnie zauważyć moment zmiany podmiotu odpowiedzialnego za realiazcję procesu – między przygotowaną przesyłką (strona zamawiającego na diagramie) a odebraną przesyłką (strona dostarczającego na diagramie). W takich procesach często na koniec występuje ankieta, pozwalająca na ocenę procesu.

Szczerze mówiąc zacząłem się zastanawiać, z jaką szczegółowością chciałbym być informowany o przebiegu realizacji procesu – mógłbym otrzymać numer przesyłki smsem, z możliwością jej śledzenia. Mając na uwadze, że czas realizacji był 1-2 dni, tak częste statusy wydawały się nadmiarowe, ponieważ gdybym sprawdził pocztę dopiero po kilku dniach zobaczyłbym 3-5 wiadomości dotyczącej przesyłki. Jeżeli okres realizacji byłby dłuższy, np. od momentu złożenia zamówienia do przygotowania przesyłki był okres kilku dni lub tygodni, to pewnie oceniłbym to inaczej. Korzyścią z rozwiązania było to, że dokładnie wiedziałem, gdzie jest przesyłka i mogłem się przygotować na jej odbiór od kuriera.