| Termin | Definicja |
|---|---|
| Warunki logiczne między zadaniami | Warunki logiczne między zadaniami określają, czy kolejny krok uruchamia się w zależności od wyniku poprzedniego. Jak warunek logiczny steruje uruchomieniem kolejnego zadaniaWarunki logiczne między zadaniami opisują zależność, w której wykonanie jednego kroku wpływa na decyzję o uruchomieniu następnego. Sam fakt zakończenia zadania nie zawsze wystarcza. System automatyzacji może sprawdzić, czy poprzednia operacja zakończyła się powodzeniem, zwróciła błąd, została pominięta albo zakończyła się wynikiem wymagającym dalszej oceny. Dzięki temu przepływ pracy nie musi przebiegać liniowo od pierwszego do ostatniego kroku. Najczęściej stosuje się warunek sukcesu, warunek błędu oraz warunek wykonania niezależnego od wyniku. Przykładowo, zadanie tworzące kopię pliku może uruchamiać kompresowanie tylko wtedy, gdy kopiowanie zakończyło się poprawnie. Jeżeli kopiowanie zgłosi błąd, kompresowanie nie powinno pracować na niepełnym albo nieistniejącym pliku. Osobne zadanie może natomiast zapisać komunikat diagnostyczny zarówno po sukcesie, jak i po błędzie, ponieważ jego celem jest rejestracja wyniku, a nie przetwarzanie danych. Operatory AND, OR i NOT w przepływie pracyWarunek może zależeć od jednego wyniku albo od kilku niezależnych przesłanek. Operator AND oznacza koniunkcję, czyli konieczność spełnienia wszystkich warunków. Zadanie końcowe może więc wymagać jednocześnie poprawnego pobrania danych oraz pomyślnego sprawdzenia ich struktury. Jeśli choć jeden z tych etapów zakończy się błędem, następny krok zostanie zatrzymany albo skierowany do ścieżki obsługi błędu. Operator OR oznacza alternatywę. Kolejne zadanie uruchamia się wtedy, gdy spełniony zostanie przynajmniej jeden z warunków, na przykład gdy dostępny jest plik z lokalnego katalogu albo udało się pobrać jego kopię ze wskazanego źródła. Operator NOT odwraca wynik logiczny i pozwala reagować na brak określonego stanu, na przykład uruchomić inicjalizację wtedy, gdy wymagany plik konfiguracyjny nie istnieje. W praktycznych systemach te operatory są łączone w wyrażenia, dlatego trzeba jednoznacznie określić kolejność oceny. Nawiasy logiczne zapobiegają sytuacji, w której program interpretuje warunek inaczej niż autor przepływu. Statusy zakończenia, dane wyjściowe i ścieżki błędówPodstawą decyzji jest zwykle status zakończenia zadania, często reprezentowany przez kod wyjścia procesu. Kod równy zero jest typowo używany do oznaczenia powodzenia, natomiast wartość różna od zera sygnalizuje błąd lub inny stan wymagający obsługi. Konkretne znaczenie kodów zależy jednak od programu wykonującego zadanie. Sam system orkiestracji nie powinien zakładać, że każda wartość różna od zera oznacza ten sam rodzaj problemu, jeżeli aplikacja rozróżnia brak danych, błąd połączenia i niepoprawne argumenty. Warunek może również korzystać z danych zwróconych przez poprzedni krok. Przykładem jest liczba znalezionych rekordów, obecność określonego pola w pliku albo wartość zmiennej ustawionej podczas przetwarzania. Należy odróżnić brak wyniku od błędu wykonania: pusty raport może być prawidłowym rezultatem, a nie awarią. Warto też przewidzieć ponowienia. Jeżeli zadanie zostanie uruchomione ponownie po przejściowym błędzie, kolejne kroki powinny otrzymać aktualny i spójny status, a nie pozostałość po wcześniejszej próbie. Przydatne są dzienniki zawierające nazwę zadania, identyfikator uruchomienia, spełnione warunki i przyczynę pominięcia kolejnego kroku. Wpływ zależności logicznych na diagnostykę komputeraNieprawidłowo zdefiniowane warunki mogą powodować pozornie losowe zachowanie programu. Zadanie może zostać uruchomione mimo nieudanego przygotowania danych, pominięte z powodu błędnie zinterpretowanego statusu albo wykonane przed zakończeniem zadania, od którego powinno zależeć. Szczególne znaczenie ma to przy kilku równoległych gałęziach. Jeżeli krok końcowy wymaga wyników wszystkich gałęzi, system powinien czekać na ich zakończenie i rozróżniać sukces, błąd oraz anulowanie. W przeciwnym razie powstają niepełne raporty, duplikaty plików lub wyniki zależne od kolejności zdarzeń. Podczas sprawdzania takiego problemu analizuje się definicję zależności, wartości wejściowe, statusy zakończenia i kolejność zapisów w logach. Pomaga ręczne odtworzenie scenariusza sukcesu, błędu oraz braku danych, a także test sprawdzający zachowanie po ponowieniu zadania. Warszawskie Pogotowie Komputerowe wykonuje profesjonalną naprawę laptopów, komputerów PC i ich podzespołów, dlatego w przypadku problemów z aplikacją realizującą taki przepływ można rozpocząć od diagnostyki komputera, systemu i lokalnego środowiska uruchomieniowego. |