25.10.2014 Views

Najczęściej spotykane problemy Co zrobić, jeśli mamy kilka ...

Najczęściej spotykane problemy Co zrobić, jeśli mamy kilka ...

Najczęściej spotykane problemy Co zrobić, jeśli mamy kilka ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

1<br />

Najczęściej <strong>spotykane</strong> <strong>problemy</strong> ☺<br />

Jak zmienić język aplikacji? ............................................................................................... 2<br />

Jak powiązać generator z punktem startowym? ............................................................ 3<br />

<strong>Co</strong> zrobić, jeśli <strong>mamy</strong> <strong>kilka</strong> generatorów powiązanych z różnymi punktami<br />

startowymi?............................................................................................................................. 5<br />

Jak zmienić nazwę generatora?.......................................................................................... 6<br />

Jak można uruchomić symulację?.............................................................................................. 6<br />

Jak poprawnie zdefiniować atrybut? ................................................................................ 7<br />

Czy jest istotne, kiedy w czynności atrybut przyjmie określoną wartość?............. 8<br />

<strong>Co</strong> zrobić, żeby uzyskać wartości całkowite na wyjściu funkcji? .......................... 10<br />

Jeżeli decyzja nie jest decyzją statystyczną…? ........................................................... 11<br />

Jak zdefiniować i wykorzystać własny typ dla atrybutu …? ................................... 12<br />

Jak wyświetlić okno Eksploratora projektu, żeby można było przełączyć się np.<br />

z raportu do mapy procesu? .............................................................................................. 15<br />

Czy zasób „Pracownik” jest nam potrzebny?............................................................... 16<br />

<strong>Co</strong> można zrobić transakcjami na wejściu? ............................................................................ 17<br />

<strong>Co</strong> można zrobić transakcjami po wykonaniu zadania? ......................................................... 20<br />

A co, jeśli jakimś cudem liczba klientów nagle się zwiększyła, chociaż nie<br />

duplikowaliśmy transakcji…?.......................................................................................... 22<br />

Gdzie znaleźć informacje o wykorzystaniu zasobów?............................................... 23<br />

Jak zmienić ilość jednostek zasobu?............................................................................... 24<br />

<strong>Co</strong> oznacza parametr „licznik” definiowany we właściwościach czynności w<br />

karcie „Zasoby”? ................................................................................................................. 25<br />

Jakie jeszcze informacje można znaleźć w raporcie? ................................................ 25<br />

Jak zmienić jednostki czasu w raporcie?....................................................................... 28<br />

Wyświetlanie wyników symulacji w diagramie.......................................................... 30<br />

Tworzenie harmonogramów .................................................................................................... 31<br />

Definiowanie harmonogramu................................................................................................... 31<br />

Czym są atrybuty?.................................................................................................................... 38<br />

Lokalizacje atrybutów.............................................................................................................. 39<br />

Atrybuty transakcji: Priorytet i Blokada .................................................................................. 41<br />

Przykład.................................................................................................................................... 42<br />

przygotowanie: dr inż. Marzena Grzesiak


2<br />

Jak zmienić język aplikacji?<br />

Otwieramy dowolny plik w iGrafx, np. Proces. Wybieramy z menu opcję Tools,<br />

a następnie z listy rozwijalnej Options. W karcie General z w polu Aplication<br />

language z listy wybieramy język polski.<br />

Po ustawieniu języka aplikacji należy ją zamknąć ponownie uruchomić, aby<br />

nowe ustawienia zostały pobrane.<br />

przygotowanie: dr inż. Marzena Grzesiak


3<br />

Jak powiązać generator z punktem startowym?<br />

Po pierwsze trzeba w<br />

Ustawieniach<br />

generatora podać<br />

nazwę punktu<br />

startowego. Domyślnie<br />

generator rozpoczyna<br />

wprowadzanie<br />

transakcji w punkcie o<br />

nazwie Start.<br />

Można tą nazwę<br />

zmienić na własną,<br />

pamiętając, że nie<br />

można używać w<br />

nazwach np. spacji. ☺<br />

przygotowanie: dr inż. Marzena Grzesiak


4<br />

Po drugie, we właściwościach<br />

czynności odwzorowującej wejście<br />

klienta w karcie Wejścia ustawiamy<br />

parametry wprowadzania transakcji na<br />

Korzysta z punktu początkowego<br />

oraz z listy wybieramy nazwę tego<br />

punktu początkowego (zamówienie).<br />

przygotowanie: dr inż. Marzena Grzesiak


5<br />

<strong>Co</strong> zrobić, jeśli <strong>mamy</strong> <strong>kilka</strong> generatorów powiązanych z różnymi punktami startowymi?<br />

Kolejny generator należy powiązać z innym punktem startowym (o innej nazwie) analogicznie, jak poprzednio.<br />

przygotowanie: dr inż. Marzena Grzesiak


Jak zmienić nazwę generatora?<br />

Należy zaznaczyć generator, którego nazwę chcemy zmienić, a następnie<br />

kliknąć na przycisk „Zmień nazwę”. Po wprowadzeniu nowej nazwy<br />

zatwierdzamy ją przyciskiem OK.<br />

Jak można uruchomić symulację?<br />

• Tryb uruchamiania przeprowadza symulację przez określony czas lub<br />

dopóki wszystkie transakcje nie zostaną przetworzone.<br />

• Tryb śledzenia wyświetla graficznie przepływ transakcji przez diagram<br />

procesu ze zmieniającymi się kolorami czynności.<br />

Zadanie<br />

Wykonanie symulacji w<br />

trybie uruchamiania<br />

Wykonanie symulacji w<br />

trybie śledzenia<br />

Procedura<br />

Na pasku narzędzi Model należy kliknij ikonę<br />

Lub<br />

W menu Model wybierz opcję Przebieg, a następnie Start.<br />

Na pasku narzędzi Model kliknij opcję , następnie ikonę na<br />

pasku Śledzenie.<br />

Lub<br />

W menu Model wskazać polecenie Przebieg i wybrać opcję<br />

Śledzenie, a następnie nacisnąć przycisk na pasku Śledzenie.


7<br />

W menu Sterowanie należy wybrać stosowne polecenia, aby<br />

zmienić kolory śledzenia oraz ustawić lub usunąć punkty<br />

zatrzymania.<br />

Aby pozostawić tryb Śledzenie, na pasku Model naciśnij<br />

przycisk .<br />

Lub<br />

W menu Model wybierz opcję Przebieg, a następnie Śledzenie.<br />

Jeżeli symulacja jest uruchomiona w trybie śledzenia, można nieco przyspieszyć<br />

proces przesuwając suwak na pasku narzędzi.<br />

Jak poprawnie zdefiniować atrybut?<br />

Definiując atrybuty musimy pamiętać o kolejności działań. Ważne jest, aby<br />

wykonać następujące kroki:<br />

1. zdefiniować atrybut (Model/ Atrybuty) – podajemy nazwę oraz typ atrybutu;<br />

typ atrybutu określa, jakiego rodzaju wartości atrybut będzie mógł<br />

przybierać; może to być wartość liczbowa, wartość logiczna (prawda/fałsz,<br />

tak/nie) lub inna; wówczas należy zdefiniować własny typ i zbiór wartości<br />

dla danego typu;<br />

2. przypisać wartość (karta Atrybuty we właściwościach czynności); należy<br />

zwrócić uwagę na moment czasowy w czynności, kiedy atrybut przyjmuje<br />

określoną wartość (popatrz na kolejne pytanie ☺) ; wartość ta może być stała<br />

(wpisujemy ją w polu wartości), należąca do określonego typu (wybieramy<br />

określoną wartość z listy rozwijalnej w polu wartości) lub opisana<br />

wyrażeniem (za pomocą kreatora definiujemy to wyrażenie);<br />

3. wykorzystać atrybut posiadający określoną wartość (np. do kierowania na<br />

kolejne stanowiska lub do powielenia transakcji).<br />

Kolejność wykonywania powyższych kroków jest bardzo istotna w przypadku<br />

atrybutów transakcyjnych. W diagramie trzeba także zwrócić uwagę na to, aby<br />

atrybut był wykorzystywany w czynności występującej po czynności, w której<br />

atrybutowi przypisano wartość. W przypadku pozostałych atrybutów<br />

(lokalizacja: tor, proces lub scenariusz) nie jest to już istotne.<br />

przygotowanie: dr inż. Marzena Grzesiak


8<br />

Jeżeli spróbujemy przypisać wartość lub wykorzystać atrybut, który nie został<br />

zdefiniowany, iGrafx zgłosi błąd.<br />

Często błędy są spowodowane faktem, że wpisujemy nazwę atrybutu, zamiast ją<br />

wkleić.<br />

Zaznaczenie/<br />

„odznaczenie”<br />

powoduję uaktywnienie<br />

lub dezaktywację<br />

przypisania wartości<br />

atrybutowi<br />

Lokalizacja atrybutu. W<br />

przypadku istnienia innych<br />

atrybutów (np. procesowych,<br />

scenariuszowych) z listy<br />

wybieramy lokalizacje<br />

atrybutu któremu w danym<br />

momencie przypisujemy<br />

wartość.<br />

Wybierana z listy nazwa<br />

atrybutu, któremu<br />

przypisujemy wartość.<br />

W tym polu wpisujemy<br />

wartość, jaką w danej<br />

czynności ma przypisaną<br />

dany atrybut. Na liście<br />

rozwijalnej opcja:<br />

- - oznacza<br />

automatyczne zwiększenie<br />

wartości atrybutu o 1 przy każdym<br />

przejściu przez daną czynność;<br />

- - oznacza<br />

analogicznie, zmniejszenie<br />

wartości o 1.<br />

Czy jest istotne, kiedy w czynności atrybut przyjmie określoną<br />

wartość?<br />

Najczęściej ma to znaczenie. W programie iGrafix istnieje możliwość<br />

przypisania wartości atrybutowi w różnych momentach w trakcie realizacji<br />

czynności.<br />

Na wejściu<br />

Po wejściu<br />

Przed<br />

zadaniem<br />

Po zadaniu<br />

Na wyjściu<br />

Gdy transakcja rozpoczyna czynność. Zanim jeszcze cokolwiek<br />

zostanie wykonane na rzecz transakcji, atrybut ma przypisywana<br />

wartość.<br />

Po zebraniu danych. Czasami transakcję są gromadzone na<br />

wejściu, a dopiero potem jest atrybutowi przypisywana wartość.<br />

Przed rozpoczęciem zadania, ale po uzyskaniu wszystkich<br />

zasobów. Transakcja jest „gotowa” na realizację zadania, ale<br />

jeszcze przed jego rozpoczęciem atrybut uzyskuje określoną<br />

wartość.<br />

Po zakończeniu zadania. Po zrealizowaniu zadania i<br />

zdefiniowaniu ewentualnych innych działań (karta Po<br />

ukończeniu), mogą być atrybutowi przypisywane określone<br />

wartości.<br />

Czynność została zakończona. Atrybut ma przypisywaną wartość<br />

tuż przed opuszczeniem czynności, np. po zdefiniowaniu<br />

dodatkowych parametrów na wyjściu (decyzja, rozpakowanie<br />

itd.)<br />

karta Wejścia karta Zadanie karta Wyjście<br />

przygotowanie: dr inż. Marzena Grzesiak


9<br />

Jeżeli czynność nie ma określonego czasu trwania, parametrów na wejściu,<br />

wyjściu oraz nie są wymagane żadne zasoby do jej wykonania, moment, w<br />

którym atrybut przyjmie wartość nie jest tak istotny. Ważne jest wówczas tylko<br />

to, aby atrybut ten uzyskał wartość w danej czynności.<br />

Użyteczna informacja ☺<br />

Nawet, jeśli zdefiniujemy wartość atrybutu, a potem zdecydujemy, że chcemy<br />

zmienić moment czasowy, kiedy atrybut ma przypisywaną wartość, nie musimy<br />

go usuwać i wpisywać jeszcze raz. Wystarczy metodą „przenieść i upuść” za<br />

pomocą myszy dokonać zmiany.<br />

przygotowanie: dr inż. Marzena Grzesiak


10<br />

<strong>Co</strong> zrobić, żeby uzyskać wartości całkowite na wyjściu funkcji?<br />

Zdarza się, że wartość, którą chcemy uzyskać powinna mieć wartość całkowitą,<br />

np. klient zamawia całkowitą liczbę pizz lub kupuje całkowitą liczbę par butów<br />

;).<br />

Wartości uzyskiwane przy wykorzystywaniu standardowych funkcji (np.<br />

Between, NormDist, ExponDist) w wyrażeniach są wartościami rzeczywistymi.<br />

Chcąc uzyskać wartość całkowitą powinniśmy zaokrąglić uzyskaną liczbę.<br />

Można to zrobić stosując jedną z poniższych funkcji:<br />

• Ceiling (Num) – zaokraglenie “w górę”<br />

• Floor (Num) – zaokraglenie “w dół”<br />

• Round (Num; NumDigits) – zaokrąglenie „matematyczne”,<br />

gdzie Num – oznacza wartość liczbową, a NumDigits – liczbę miejsc po<br />

przecinku.<br />

O czym trzeba pamiętać wybierając jedną z powyższych funkcji?<br />

Jeżeli klient zamawia od 2 do 6 sztuk wyrobu, to funkcją właściwą do określenia<br />

tej liczby będzie funkcja Between. Uzyskaną wartość powinniśmy następnie<br />

przedstawić jako liczbę całkowitą.<br />

Ze względu na inny sposób zaokrąglania, sposób definiowania argumentów<br />

funkcji Between będzie różny:<br />

0 1 2 3 4 5 6 7<br />

Przykładowo:<br />

zostanie wylosowana liczba z przedziału (3;4), to funkcja Ceiling zaokrągli tą<br />

wartość do 4, funkcja Floor do 3, a funkcja Round do 3 (jeśli wylosowana<br />

wartość nie jest większa od 3,5) lub do 4 (jeśli wylosowana wartość jest większa<br />

lub równa 3,5).<br />

Należy zatem uwzględnić ten fakt definiując argumenty Min i Max funcji<br />

Between:<br />

• zaokrąglając wartość przy pomocy funkcji Ceiling będzie to 1,01 oraz 6;<br />

• zaokrąglając wartość przy pomocy funkcji Floor będzie to 2 oraz 6,99;<br />

• zaokrąglając wartość przy pomocy funkcji Round będzie to 1,5 oraz 6,49;<br />

oraz 0 jako liczba miejsc po przecinku.<br />

W przykładzie przyjęto dwa miejsca po przecinku jako zapewniające nam, w<br />

stopniu zadowalającym, „równe” prawdopodobieństwo wylosowania<br />

poszczególnych wartości całkowitych w przedziale.<br />

10/10 przygotowanie: dr inż. Marzena Grzesiak


11<br />

Jeżeli decyzja nie jest decyzją statystyczną…?<br />

Atrybuty w zadaniu 1 służą przypisaniu transakcjom (tu: klientom lub<br />

zamówieniom od klienta) pewnych charakterystyk. W zadaniu 1 taką<br />

charakterystyką może być:<br />

• rodzaj wyrobu (typ: wartość lub zdefiniowany własny typ) ,<br />

• ilość zamawianych wyrobów (typ: wartość).<br />

Jak zatem uzależnić wyjścia w decyzji sortującej zamówienia od wartości<br />

atrybutu?<br />

Można to zrobić we właściwościach czynności decyzyjnej. Zaznaczenie opcji<br />

Wyrażenie spowoduje pojawienie się pola, w którym wpisujemy wyrażenie, na<br />

podstawie którego podejmujemy decyzję.<br />

Aby uniknąć błędów<br />

przy wpisywaniu<br />

nazw atrybutów<br />

najlepiej użyć opcji<br />

„Wklej atrybut”. W<br />

oknie zostaną<br />

wyświetlone<br />

wszystkie<br />

zdefiniowane<br />

atrybuty.<br />

11/11 przygotowanie: dr inż. Marzena Grzesiak


12<br />

Zatwierdzamy poszczególne okna przyciskiem OK.<br />

Błędy w symulacji mogą powstać, jeżeli atrybuty będą miały niewłaściwie<br />

przypisane wartości, bądź wartości te będą przypisane w niewłaściwych<br />

czynnościach.<br />

Jak zdefiniować i wykorzystać własny typ dla atrybutu …?<br />

W tym celu należy w oknie dialogowym Dodaj nowy atrybut (lub Modyfikuj<br />

atrybut) wybrać przycisk Zdefiniuj typy.<br />

12/12 przygotowanie: dr inż. Marzena Grzesiak


13<br />

Następnie wpisujemy nazwę typu i wartości dla tego typu.<br />

Za pomocą przycisku Dodaj dodajemy nowy typ do listy istniejących.<br />

Zatwierdzamy nowy typ przyciskiem OK.<br />

Do nowego atrybutu przypisujemy zdefiniowany nowy typ.<br />

Przypisanie wartości atrybutu<br />

13/13 przygotowanie: dr inż. Marzena Grzesiak


14<br />

Analogicznie, jak wcześniej (str. 8) z tym, że wartość dla atrybutu jest<br />

wybierana z listy.<br />

Wykorzystanie nowego typu w czynności decyzyjnej<br />

W czynności decyzyjnej kryterium decyzyjnym będzie wartość atrybutu<br />

opisująca rodzaj wyrobu.<br />

Jeżeli dodatkowo w polu Tekst wybierzemy z listy nazwę typu, to wartości<br />

danego typu staną się opisami gałęzi i sortowanie transakcji (kierowanie na<br />

poszczególne stanowiska) będzie się odbywało „automatycznie”.<br />

14/14 przygotowanie: dr inż. Marzena Grzesiak


15<br />

Na gałęziach wychodzących z czynności decyzyjnej pojawiają się również opisy<br />

zgodne z wartościami dla danego typu.<br />

Jak wyświetlić okno Eksploratora projektu, żeby można było<br />

przełączyć się np. z raportu do mapy procesu?<br />

Wyświetlenie diagramu procesu<br />

Jeśli chcemy przełączyć się do mapy procesu należy:<br />

1. Wybrać z menu Plik punkt Składniki.<br />

2. W oknie Eksplorator - Składniki... wybrać Proces 1 (klikając dwukrotnie).<br />

15/15 przygotowanie: dr inż. Marzena Grzesiak


16<br />

Klikając dwukrotnie na nazwę procesu w oknie Eksploratora przechodzimy np.<br />

do wcześniej rysowanego diagramu.<br />

Czy zasób „Pracownik” jest nam potrzebny?<br />

W naszym przykładzie w zasadzie NIE. Zasób „Pracownik” jest zasobem<br />

domyślnym w aplikacji.<br />

iGrafx przypisuje go automatycznie do obsługi czynności wstawianych do<br />

diagramu. Jeżeli nie usuniemy go z obsługi czynności, które nie wymagają<br />

zasobów, będzie on spowalniał realizację całego procesu.<br />

16/16 przygotowanie: dr inż. Marzena Grzesiak


17<br />

Można go wykorzystać jako np. magazyniera – przypisujemy go wówczas do<br />

tych czynności, za realizację których odpowiada magazynier, a usuwamy tylko<br />

z pozostałych.<br />

<strong>Co</strong> można zrobić transakcjami na wejściu?<br />

Można czynność zdefiniować jako czynności startową.<br />

W sekcji Modelowanie w karcie Wejścia można również zdefiniować reguły<br />

gromadzenia transakcji.<br />

Po pierwsze należy zdefiniować typ gromadzenia transakcji/ danych, czyli<br />

wybrać pomiędzy:<br />

• złącz - gromadzi wiele transakcji w jednej transakcji; poszczególne<br />

transakcje są usuwane; nie ma możliwości przywrócenia stanu transakcji<br />

sprzed połączenia (są np. kasowane wszystkie wartości atrybutów);<br />

17/17 przygotowanie: dr inż. Marzena Grzesiak


18<br />

• wsad - gromadzi transakcje w pojedynczej transakcji; transakcja ta<br />

wprowadza czynność, gdy warunek utworzenia zadania wsadowego<br />

zostanie spełniony; poszczególne transakcje można następnie wycofać z<br />

zadania wsadowego (można je np. rozpakować po wykonaniu<br />

określonego zadania);<br />

• grupa - gromadzi transakcje w nazwane grupy transakcji; transakcje<br />

mogą być pojedynczo wprowadzane do czynności, ale oznaczane są<br />

nazwą grupy;<br />

• bramka - opóźnia przetworzenie transakcji do czasu spełnienia<br />

ustalonych dla bramki warunków; gdy warunki te zostaną spełnione,<br />

bramka otwiera się i dozwolone jest wprowadzanie pojedynczych<br />

transakcji do czynności, aż warunek przestanie być spełniany lub<br />

wprowadzone zostaną wszystkie transakcje.<br />

Po drugie trzeba zdefiniować opcje gromadzenia (tabela poniżej).<br />

Element<br />

Wg liczby<br />

Wg<br />

wyrażenia<br />

Wg czasu<br />

Wg<br />

komunikatu<br />

Opis<br />

Transakcje są łączone, grupowane wsadowo, grupowane lub kolejkowane<br />

(bramka), aż zostanie zgromadzona ich określona liczba, następnie mogą<br />

przejść dalej.<br />

Można wprowadzić liczbę lub kliknąć przycisk kreatora wyrażeń, aby<br />

utworzyć wyrażenie.<br />

Kliknięcie pola wyboru Maksymalny czas oczekiwania pozwala określić<br />

maksymalny czas oczekiwania transakcji. Jest to czasami istotne, np. jeśli<br />

dowozimy pizzę zbierając najpierw zamówienia do określonej ilości z<br />

każdego miasta, to możemy ograniczyć czas oczekiwania na komplet<br />

zamówień, żeby klient nie dostał zimnej pizzy. ☺<br />

Transakcje są łączone, grupowane wsadowo, grupowane lub kolejkowane do<br />

chwili spełnienia warunków wyrażenia.<br />

Transakcje kolejkowane za pomocą bramki są zatrzymywane aż do spełnienia<br />

warunku wyrażenia, następnie transakcje (znajdujące się na czele kolejki) są<br />

przepuszczane dalej po jednej w danym momencie do czasu, gdy warunek<br />

przestanie być prawdziwy.<br />

Transakcje są łączone, grupowane wsadowo, grupowane lub kolejkowane do<br />

upłynięcia określonego czasu.<br />

Zdarzenie - z listy zdarzeń należy wybrać zdarzenia (na przykład:<br />

Tygodniowo), co spowoduje przetwarzanie wszystkich transakcji co tydzień,<br />

w poniedziałek rano.<br />

Okresowe - należy określić odstęp czasu rozpoczynający się na początku<br />

symulacji.<br />

Odroczone - dotyczy tylko zbiorów uzyskanych z użyciem opcji<br />

Bramkowanie wg czasu. Należy określić odstęp czasu, o który opóźnione<br />

zostanie wprowadzenie wszystkich oczekujących transakcji do czynności.<br />

Transakcje są łączone, grupowane wsadowo, grupowane lub kolejkowane do<br />

momentu odebrania przez czynność określonego komunikatu.<br />

Wg<br />

Transakcje są łączone, grupowane wsadowo lub grupowane, gdy zebrana<br />

18/18 przygotowanie: dr inż. Marzena Grzesiak


19<br />

składowej<br />

atrybutu<br />

Cała rodzina<br />

Cała grupa<br />

Ścieżki<br />

wejściowe<br />

zostanie co najmniej jedna składowa każdej zdefiniowanej wartości atrybutu.<br />

Transakcje są łączone, grupowane wsadowo lub grupowane, gdy zebrana<br />

zostanie co najmniej jedna składowa każdej zdefiniowanej wartości atrybutu.<br />

Atrybut transakcji musi mieć inny typ niż Wartość, ponieważ liczba<br />

składowych typu musi być określona i skończona. Jeśli składowa nie pojawia<br />

się, czynność nadal na nią czeka.<br />

Transakcje są łączone, grupowane wsadowo, grupowane lub kolejkowane, aż<br />

nastąpi zgromadzenie wszystkich członków określonej rodziny<br />

Transakcje są łączone aż do zebrania wszystkich członków grupy.<br />

Należy wybrać nazwę grupy z listy.<br />

W przypadku zbiorów typu Zadanie wsadowe, Grupa lub Bramka, należy<br />

określić, czy wszystkie transakcje będące członkami grupy są grupowane<br />

wsadowo, grupowane lub kolejkowane.<br />

Łączenie transakcji z poszczególnych ścieżek wchodzących (wchodzących<br />

linii łączących) do czynności.<br />

Opcji tej należy użyć, gdy dla każdego wymaganego wejścia czynność ma<br />

oddzielną linię łączącą. Używamy tej opcji, kiedy jest istotne, aby z każdej<br />

gałęzi wchodzącej do czynności weszła transakcja, a nie jest istotne np., aby<br />

transakcje te pochodziły z jednej rodziny.<br />

Jeśli liczba linii łączących nie odpowiada liczbie wymaganych transakcji<br />

łączenia należy użyć innych opcji łączenia, grupowania wsadowego,<br />

grupowania lub bramki.<br />

Opracowanie na podstawie: pomoc programu iGrafx<br />

Po trzecie można zdefiniować, dla jakich transakcji przeznaczone jest<br />

definiowane wejście:<br />

Przy czym:<br />

- Wszystkie – oznacza, że wchodzące transakcje są gromadzone<br />

niezależnie od rodziny;<br />

19/19 przygotowanie: dr inż. Marzena Grzesiak


20<br />

- Ta sama rodzina – oznacza, że wejście jest przeznaczone dla transakcji z<br />

tej samej rodziny;<br />

- Raz na rodzinę – oznacza ograniczenie gromadzenia transakcji do<br />

określonej liczby i gromadzenie jest przeprowadzane tylko jeden raz na<br />

rodzinę; dowolny członek rodziny, który przybędzie po zebraniu podanej<br />

liczby dla tej rodziny, zostanie odrzucony.<br />

<strong>Co</strong> można zrobić transakcjami po wykonaniu zadania?<br />

Zdarza się, ze po wykonaniu danej czynności/ zadania transakcje poddawane są<br />

pewnym operacjom. Przykładem takiej operacji było rozpakowanie wcześniej<br />

utworzonego wsadu (zbieranie zamówień do jednego miasta, a potem ich<br />

rozwożenie pod poszczególne adresy). Należy wówczas na stronie Zadania<br />

wybrać kartę Po ukończeniu, aby zdefiniować wykonywane działanie.<br />

W poniższej tabeli przedstawiono charakterystykę poszczególnych opcji:<br />

Element<br />

Brak<br />

Opis<br />

Nie zdefiniowano działania wyjścia.<br />

Duplikuje transakcję, tak aby mogła przejść każdą ścieżką wychodzącą z<br />

czynności.<br />

Duplikuj<br />

Liczba - umożliwia wprowadzenie liczby transakcji do utworzenia przez<br />

duplikację.<br />

Nowa rodzina - umożliwia przypisanie zduplikowanych transakcji do nowej<br />

rodziny.<br />

Duplikuj wg<br />

wyrażenia<br />

Duplikuje transakcję według liczby wyrażeń typu atrybutu. Nieliczbowe<br />

typy atrybutów transakcji muszą zostać wyświetlone na listach nazw<br />

20/20 przygotowanie: dr inż. Marzena Grzesiak


21<br />

atrybutów i wyrażeń.<br />

Do każdej utworzonej transakcji przypisywana jest niepowtarzalna wartość<br />

wyrażenia. Transakcje duplikowane można potem łączyć według wyrażeń<br />

atrybutów.<br />

Atrybut - wybór atrybutu.<br />

Nowa rodzina - umożliwia przypisanie zduplikowanych transakcji do nowej<br />

rodziny.<br />

Nazwy wyrażeń - wyświetla wyrażenia wybranego atrybutu.<br />

Powoduje anulowanie transakcji lub wszystkich wyrażeń rodziny transakcji.<br />

Anulowane transakcje nie opuszczają czynności i nie są liczone jako<br />

ukończone w ostatecznych statystykach raportu.<br />

Zawsze - zatrzymuje wszystkie transakcje, które rozpoczęły czynność.<br />

Anuluj<br />

Wyrażenie - zatrzymuje tylko transakcje, których wartości są równe<br />

wyrażeniu.<br />

Anuluj transakcje - anulowanie transakcji.<br />

Anuluj wyrażenia - anulowanie wyrażeń rodziny transakcji. Wyrażenie<br />

można anulować zamiast lub oprócz transakcji.<br />

Rozpakuj<br />

Komunikat<br />

Rozpakowuje transakcje wcześniej połączone wsadowo.<br />

Transakcja generuje komunikat zwalniający zdarzenie, które powoduje<br />

kontynuację procesu, jeśli zdarzenie to oczekiwało na komunikat lub<br />

powoduje zmianę przepływu w celu obsługi wyjątku.<br />

Nazwa - umożliwia wybór zdefiniowanego komunikatu.<br />

Dodawanie, definiowanie, usuwanie lub edycja komunikatów.<br />

Partner - symbol, z którym wybrana czynność wymienia komunikaty.<br />

Obsługuje warunki wyjątkowe występujące w procesie.<br />

Usterka<br />

Zawsze - zatrzymuje wszystkie transakcje, które rozpoczęły czynność. Na<br />

przykład, jeśli kredyt nie został przyznany, wszystkie zlecenia pochodzące z<br />

firmy ubiegającej się o kredyt zostają wstrzymane.<br />

Wyrażenie - zatrzymuje tylko transakcje, których wartości są równe<br />

wyrażeniu.<br />

Nazwa - umożliwia wybór zdefiniowanej usterki.<br />

21/21 przygotowanie: dr inż. Marzena Grzesiak


22<br />

Dodawanie, definiowanie, usuwanie lub edycja usterek.<br />

Anuluj<br />

Kompensuj<br />

Transakcja anuluje transakcję biznesową, korzystającą z tej czynności.<br />

Transakcja sygnalizuje, że wymagana jest kompensacja i uruchamia<br />

dowolną powiązaną czynność (czyli odwraca czynność).<br />

Źródło: pomoc programu iGrafx<br />

A co, jeśli jakimś cudem liczba klientów nagle się zwiększyła,<br />

chociaż nie duplikowaliśmy transakcji…?<br />

Zapewne utworzyliśmy rodzinę transakcji i zapomnieliśmy potem transakcje<br />

połączyć…<br />

W naszym przykładzie utworzenie rodziny miało miejsce po rejestracji, gdzie<br />

transakcja „zamówienie” została powielona na dwie transakcje typu „rodzaj<br />

wyrobu” :<br />

Rodzina transakcji powstała wskutek wyprowadzenie z czynności „rejestracja”<br />

więcej niż jednej gałęzi.<br />

Transakcje pochodzące z jednej rodziny, czyli dotyczące zamówienia mogą<br />

zostać połączone np. w czynności odzwierciedlającej podanie pizzy:<br />

W tym celu należy odpowiednio zdefiniować parametry dla transakcji na<br />

Wejściu:<br />

22/22 przygotowanie: dr inż. Marzena Grzesiak


23<br />

lub<br />

Gdzie znaleźć informacje o wykorzystaniu zasobów?<br />

W raporcie w karcie Zasoby.<br />

23/23 przygotowanie: dr inż. Marzena Grzesiak


24<br />

Jak zmienić ilość jednostek zasobu?<br />

1. W oknie dialogowym Zdefiniuj zasoby należy w polu Użycie wybrać z listy<br />

rozwijalnej Uczestnik.<br />

2. W polu licznik można zmienić domyślną wartość „1” na inną.<br />

24/24 przygotowanie: dr inż. Marzena Grzesiak


25<br />

Ta liczba będzie nas informowała o tym, ile Maszyn typu 1 jest w naszym<br />

zakładzie.<br />

<strong>Co</strong> oznacza parametr „licznik” definiowany we właściwościach<br />

czynności w karcie „Zasoby”?<br />

Ten parametr informuje nas, ile jednostek zasobu jest przydzielonych do obsługi<br />

jednej transakcji (klienta, zamówienia itp.). Jeżeli w naszym zadaniu<br />

zmienilibyśmy w czynności odzwierciedlającej wykonywanie operacji na<br />

stanowisku 1 tą liczbę dla zasobu Maszyna 1 z wartości domyślnej „1” na np.<br />

„2” to by oznaczało, że do wykonania tej operacji są potrzebne<br />

RÓWNOCZEŚNIE DWIE MASZYNY. ;)<br />

Jakie jeszcze informacje można znaleźć w raporcie?<br />

Podczas przeprowadzania symulacji program iGrafx wprowadza informacje<br />

zdefiniowane w oknach Proces oraz Scenariusz wykonuje symulację, a jej<br />

wynik wyświetla w oknie Raport.<br />

Cztery zakładki okna Raport (Czas, Koszt, Zasób oraz Kolejka) zawierają<br />

zestawy powszechnie używanych statystyk wychwyconych podczas symulacji.<br />

Możliwe jest kopiowanie i wklejanie istniejącego składnika raportu lub<br />

tworzenie nowego składnika przy użyciu menu Raport. Element ten pojawi się<br />

w pustej zakładce Niestandardowy.<br />

Do zakładki Niestandardowy można dodać składnik raportu (tablicę lub wykres)<br />

przez skopiowanie i wklejenie istniejącego składnika raportu lub przez<br />

utworzenie nowego składnika raportu przy użyciu menu Raport. Przycisk<br />

Domyślny pojawi się obok zakładek okna Raport, w przypadku zmiany jednego<br />

25/25 przygotowanie: dr inż. Marzena Grzesiak


26<br />

z domyślnych składników raportu. Należy nacisnąć przycisk Domyślny, aby<br />

wyzerować składniki raportu na stronie i przywrócić ustawienia domyślne.<br />

Kategorie statystyk w oknie Raport:<br />

Zakładka Raport<br />

Opcja Czas<br />

Opcja Koszt<br />

Opcja Zasoby<br />

Opcja Kolejka<br />

Opcja<br />

Niestandardowy<br />

Zawartość i Opis<br />

Zawiera dane statystyczne mierzące czas w trakcie symulacji. Wyświetla<br />

ogólne czasy transakcji i czasy klasyfikowane według działu, procesu i<br />

czynności.<br />

Zawiera statystyki kosztów powiązanych z transakcjami, czynnościami i<br />

zasobami.<br />

Zawiera dane statystyczne związane z wykorzystaniem zasobu,<br />

klasyfikacje czasu zasobu oraz koszty czynności i zasobu.<br />

Są to statystyki zbierane w momencie, gdy transakcje czekają na<br />

przetworzenie w działaniach w związku z gromadzeniem zasobów,<br />

danych wejściowych lub innymi ograniczeniami.<br />

Opcja może zawierać świeżo zdefiniowane statystyki lub statystyki<br />

skopiowane i wklejone z innych stron.<br />

Źródło: pomoc programu iGrafx<br />

Dane statystyczne są następnie organizowane na każdej stronie raportu według<br />

następujących kategorii:<br />

Typ Statystyki<br />

Dane<br />

Transakcja Gromadzone dla każdej transakcji, która zostanie przetworzona.<br />

Zasób Gromadzone dla każdego zasobu wykorzystanego w procesie.<br />

Czynność Gromadzone dla każdej czynności w procesie.<br />

Monitor Dane gromadzone dla każdego monitora określonego w procesie.<br />

Niestandardowy Dane zebrane do wszystkich zdefiniowanych przez użytkownika statystyk.<br />

Źródło: pomoc programu iGrafx<br />

26/26 przygotowanie: dr inż. Marzena Grzesiak


27<br />

iGrafx klasyfikuje podstawowe statystyki w zależności od ich zastosowania: do<br />

transakcji, zasobów lub czynności.<br />

iGrafx zbiera podstawowe statystyki dotyczące czasów procesu, kosztów,<br />

zasobów i kolejek. Można również utworzyć własne statystyki użytkownika.<br />

Podstawowe statystyki są kategoryzowane w zależności od ich zastosowania: do<br />

transakcji, zasobów lub czynności.<br />

Transakcja Zasób Czynność<br />

Licznik zakończenia<br />

Czas cyklu<br />

(średni, całkowity)<br />

Czas pracy<br />

(średni, całkowity)<br />

Czas oczekiwania<br />

(średni, całkowity)<br />

Czas oczekiwania na zasób<br />

(średni, całkowity)<br />

Czas zablokowania (średni,<br />

całkowity)<br />

Czas nieaktywności (średni,<br />

całkowity)<br />

Czas obsługi<br />

(średni, całkowity)<br />

Koszt (VA, NVA,<br />

Praca, Wyposażenie)<br />

Liczba pracowników (Licznik)<br />

Wykorzystanie zasobu (Wykorz.<br />

%)<br />

Czas zajętości (średni, całkowity)<br />

Czas bezczynności<br />

(średni, całkowity)<br />

Czas niewykorzystania (OOS)<br />

Czas nieaktywności<br />

(średni, całkowity)<br />

Nadgodziny (OT)<br />

Koszty (całkowite, standardowe,<br />

nadgodzin, zajętości)<br />

Czas cyklu (średni,<br />

całkowity)<br />

Czas pracy (średni,<br />

całkowity)<br />

Czas oczekiwania (średni,<br />

całkowity)<br />

Koszt (VA, NVA, BVA)<br />

Czas oczekiwania transakcji<br />

(średni, całkowity,<br />

maksymalny)<br />

Czas transakcji w czynności<br />

(śred., maks.)<br />

Transakcje<br />

Źródło: pomoc programu iGrafx<br />

Aby wyświetlić porady zawierające szczegóły dotyczące statystyk, należy<br />

umieścić kursor na nagłówku statystyki w raporcie. Porady nie wyjaśniają<br />

podsumowań (min, maks, średni oraz całkowity).<br />

Poniższe tabele opisują najbardziej typowe domyślne statystyki raportu.<br />

Czas pracy<br />

Czas oczekiwania na<br />

zasób<br />

Czas zablokowania<br />

Czas zakumulowany podczas wykonywania pracy (czas wyświetlania<br />

karty Zadanie)<br />

Czas zakumulowany podczas oczekiwania na zasób (strona Zasób)<br />

Czas zakumulowany podczas gromadzenia (karta Wejścia) oraz<br />

27/27 przygotowanie: dr inż. Marzena Grzesiak


28<br />

opóźnienia (karta Zadanie)<br />

Czas nieaktywności<br />

Zakumulowany czas oczekiwania na zasób, który jest nieaktywny lub<br />

poza harmonogramem.<br />

Źródło: pomoc programu iGrafx<br />

Czas cyklu<br />

Czas obsługi<br />

Czas oczekiwania<br />

Czas oczekiwania na<br />

obsługę<br />

Czas zablokowania + Czas oczekiwania na zasób +Czas<br />

nieaktywności + Czas pracy<br />

Czas zablokowania + Czas oczekiwania na zasób + Czas pracy<br />

Czas zablokowania + Czas oczekiwania na zasób + Czas<br />

nieaktywności<br />

Czas zablokowania + Czas oczekiwania na zasób<br />

Źródło: pomoc programu iGrafx<br />

Czas zajętości<br />

Czas bezczynności<br />

Niewykorzystany<br />

Czas<br />

nieaktywności<br />

Płatny czas pobierania zasobu, takiego jak Aktywny oraz Działający<br />

(czas wyświetlania strony Zadanie).<br />

Płatny czas aktywności zasobu w harmonogramie, ale nie jest<br />

równoznaczny z czasem zajętości.<br />

Opłacony lub nieopłacony czas zaplanowanej aktywności zasobu oraz<br />

kiedy jest niedostępny.<br />

Pozostały czas, gdy zasób nie jest zaplanowany jako dostępny lub<br />

Niewykorzystany.<br />

Źródło: pomoc programu iGrafx<br />

Jak zmienić jednostki czasu w raporcie?<br />

Każda tabela umieszczona w raporcie zawiera informacje podane w jednostkach<br />

czasu dobieranych automatycznie przez program iGrafx. Jednostki te podane są<br />

w nawiasie nad tabelą. Jeżeli chcemy je zmienić należy dwukrotnie kliknąć na<br />

tabelę, w której chcemy zmienić jednostki czasu lub z menu podręcznego<br />

(uruchamianego prawym przyciskiem myszy wybrać Element).<br />

28/28 przygotowanie: dr inż. Marzena Grzesiak


29<br />

W oknie dialogowym Edytuj element raportu w karcie Formatowanie można<br />

wybrać żądaną jednostkę czasu.<br />

W tej samej karcie można również określić maksymalną wyświetlaną liczbę<br />

wierszy w danej tabeli raportu (domyślnie ustawioną na 25) lub zaznaczyć<br />

opcję Nieograniczona, co pozwoli na wyświetlanie wszystkich wierszy, które<br />

dotyczą danej statystyki.<br />

29/29 przygotowanie: dr inż. Marzena Grzesiak


30<br />

Wyświetlanie wyników symulacji w diagramie.<br />

Analiza wyników symulacji odczytanych bezpośrednio z czynności jest<br />

użyteczna szczególnie, jeśli występują jakieś błędy i chcemy zlokalizować<br />

(przynajmniej w przybliżeniu) miejsce, w którym one powstają.<br />

Wyniki te można odczytać we właściwościach czynności w sekcji<br />

Modelowanie w karcie Ostatnia symulacja.<br />

Pierwsza liczba informuje nas o tym, ile transakcji zakończyło realizację<br />

analizowanej czynności (tu: 45 klientów zostało przez kelnera zaprowadzonych<br />

do stolików).<br />

30/30 przygotowanie: dr inż. Marzena Grzesiak


31<br />

Tworzenie harmonogramów<br />

Definiowanie harmonogramu<br />

Harmonogram w iGrafx’ie możemy tworzyć lub modyfikować w oknie<br />

Zdefiniuj harmonogram dostępnym z menu Model/Harmonogramy lub<br />

klikając na ikonę na pasku narzędzi.<br />

Domyślnym harmonogramem jest harmonogram Standardowy (zobacz:<br />

Ustawienia przebiegu).<br />

Jak zdefiniować nowy harmonogram?<br />

1. Po wybraniu przycisku Dodaj pod listą istniejących harmonogramów pojawi<br />

się okno, w którym należy podać nową nazwę harmonogramu i ją zatwierdzić.<br />

2. Dla nowego harmonogramu trzeba teraz zdefiniować, w które dni będzie on<br />

obowiązywał:<br />

- mogą być one wybrane z listy lub podane przez użytkownika (należy wybrać<br />

przycisk obok listy dni);<br />

- w oknie Określ dni należy dodać zakres dni dl harmonogramu; aby tego<br />

dokonać należy wybrać przycisk Dodaj (w lewym dolnym rogu), następnie<br />

zdefiniować nazwę dla zakresu dni, np.:<br />

31/31 przygotowanie: dr inż. Marzena Grzesiak


32<br />

- w oknie Określ dni należy wskazać myszką dni obowiązujące w danym<br />

harmonogramie (będą one zaznaczone na zielono), np.;<br />

- zatwierdzamy dni przyciskiem OK.<br />

Uwaga!<br />

Jeżeli w nowym harmonogramie nie dodamy nowego zakresu dni, a będziemy<br />

modyfikować np. Dni_Powszednie, to trzeba pamiętać, że za każdym razem<br />

wprowadzając zmiany modyfikujemy również inne harmonogramy, które<br />

wykorzystują ten właśnie zakres dni.<br />

3. Dla tego harmonogramu należy także zdefiniować godziny pracy w każdym<br />

dniu wskazanym wcześniej:<br />

- mogą być one wybrane z listy lub podane przez użytkownika (należy wybrać<br />

przycisk obok listy godzin);<br />

- w oknie Zdefiniuj godziny należy podać własny zakres godzin definiując<br />

wcześniej nazwę dla podanego zakresu w oknie Dodaj nowy Godzina ;);<br />

- potem wprowadzamy czas rozpoczęcia oraz czas zakończenia (z klawiatury<br />

lub za pomocą pasków przewijania);<br />

32/32 przygotowanie: dr inż. Marzena Grzesiak


33<br />

- zatwierdzamy podany zakres godzin przyciskiem OK.<br />

Zatwierdzamy cały harmonogram przyciskiem OK.<br />

Uwaga!<br />

Jeżeli w nowym harmonogramie nie dodamy nowego zakresu godzin, a<br />

będziemy modyfikować np. Godziny_Standardowe, to trzeba pamiętać, że za<br />

każdym razem wprowadzając zmiany modyfikujemy również inne<br />

harmonogramy, które wykorzystują ten właśnie zakres godzin.<br />

Jak zmodyfikować istniejący harmonogram?<br />

Modyfikacji harmonogramu dokonujemy poprzez zmianę dni i godzin<br />

obowiązujących w danym harmonogramie wybieranym z listy.<br />

Wybierając przycisk<br />

wartości.<br />

dla dni lub godzin wprowadzamy odpowiednie<br />

Przypisanie harmonogramu<br />

Harmonogram może być przypisany do:<br />

- całego procesu (jako domyślny w Ustawieniach przebiegu);<br />

- zasobu:<br />

- czynności:<br />

33/33 przygotowanie: dr inż. Marzena Grzesiak


34<br />

- generatora:<br />

Wybrane przykłady definiowania harmonogramów<br />

1. chcemy wprowadzić przerwę w ciągu dnia - definiujemy wówczas<br />

<strong>kilka</strong> rozpiętości godzin (przycisk Wstaw), a jeden z nich oznaczamy<br />

jako Czas niewykorzystania (opłacony lub nie) ☺;<br />

34/34 przygotowanie: dr inż. Marzena Grzesiak


35<br />

2. obowiązują różne godziny pracy: inne od poniedziałku do piątku, a<br />

inne w weekend – definiujemy dwa harmonogramy z innym zakresem dni<br />

i innym zakresem godzin<br />

3. klienci pojawiają się z różną częstotliwością w ciągu dnia –<br />

definiujemy tyle harmonogramów, ile trzeba ☺; możemy je potem<br />

połączyć w harmonogram złożony, np.:<br />

a. definiujemy harmonogram dla godzin szczytu (w dni tygodnia, w<br />

które pracuje pizzeria i w godzinach od 18 do 21)<br />

35/35 przygotowanie: dr inż. Marzena Grzesiak


36<br />

b. definiujemy drugi harmonogram dla godzin poza szczytem (w dni<br />

tygodnia, w które pracuje pizzeria i w pozostałych godzinach pracy,<br />

czyli: 10-18 i 21-22)<br />

Można teraz zdefiniować dwa generatory z inną częstotliwością pojawiania się<br />

klientów oraz innym, przypisanym do niego, harmonogramem. Oba generatory<br />

mogą być przypisane do jednego punktu startowego w procesie.<br />

36/36 przygotowanie: dr inż. Marzena Grzesiak


37<br />

<strong>Co</strong> zrobić, żeby definiować jak najmniej harmonogramów?<br />

Można zauważyć, że godziny szczytu i poza szczytem składają się w godziny<br />

otwarcia pizzerii, więc nie trzeba by było definiować nowego harmonogramu<br />

pracy pizzerii, a złożyć go z istniejących.<br />

W tym celu należy:<br />

1. Zdefiniować nazwę harmonogramu (przycisk Dodaj w oknie Zdefiniuj<br />

harmonogram).<br />

2. Wybrać przycisk Złożony w oknie Zdefiniuj harmonogram.<br />

3. Wskazać z listy harmonogramy, które chcemy połączyć (najpierw „szczyt”, w<br />

kolejnym kroku – „poza_szczytem”).<br />

4. Usunąć niepotrzebne harmonogramy z listy (pierwszy, domyślnie<br />

wstawiony).<br />

5. Zatwierdzić oba okna dialogowe przyciskiem OK.<br />

37/37 przygotowanie: dr inż. Marzena Grzesiak


38<br />

Nieco więcej o atrybutach…<br />

Czym są atrybuty?<br />

Atrybuty przypominają zmienne programistyczne, a mogą przekazywać<br />

informacje i zarządzać przepływem transakcji w trakcie procesu. Atrybuty mogą<br />

na przykład określać czas trwania czynności na podstawie specyfiki transakcji,<br />

kontrolować przepływ określonych transakcji przez wyjście decyzyjne lub<br />

ustalać ogólne elementy sterujące, które dotyczą wielu transakcji lub czynności.<br />

Atrybuty mają następujące charakterystyczne cechy:<br />

Typ<br />

Opis<br />

38/38 przygotowanie: dr inż. Marzena Grzesiak


39<br />

Położenie Cecha ta określa zakres wartości atrybutu.<br />

Typ<br />

Wartość<br />

Nazwa<br />

Zakres wartości, który można przypisać do danego atrybutu; podobnie do typu<br />

danych zmiennej programowania.<br />

Musi należeć do zakresu typu atrybutu. Na podstawie wartości atrybutu można<br />

wpływać na wiele aspektów modelu, włącznie z przepływem transakcji.<br />

Jednoznacznej identyfikuje atrybut w miejscu położenia.<br />

źródło; pomoc programu iGrafx<br />

Lokalizacje atrybutów<br />

Dowolne wyrażenie ustawienia czynności lub atrybutu w modelu może mieć<br />

dostęp do atrybutu po jego nazwie. Jednakże zakres wartości atrybutu zamyka<br />

się w granicach wyznaczonych przez położenie atrybutu Transakcja, Czynność,<br />

Zasób lub Scenariusz.<br />

Niektóre wyrażenia ustawień atrybutów mogą być ograniczone przez położenie,<br />

dla którego dostępne są nazwy atrybutów do przypisania.<br />

Położenie<br />

Transakcja<br />

Opis<br />

Atrybuty te są powiązane z transakcjami, które przepływają przez proces podczas<br />

symulacji. Zmiana wartości atrybutu w jednej transakcji nie powoduje zmiany<br />

wartości tego samego atrybutu w innych transakcjach.<br />

Można jednak ustawić wartości atrybutu Transakcja dla transakcji należących<br />

jednocześnie do tej samej rodziny transakcji, korzystając ze specjalnego<br />

przedrostka (.F) przed nazwą atrybutu.<br />

Transakcje mogłyby przedstawiać zamówienia na produkty, a atrybuty transakcji<br />

mogłyby zawierać rozmiar zamówienia.<br />

Scenariusz<br />

Atrybuty te są globalne w obrębie scenariusza. Jeżeli jakaś czynność jest zawarta<br />

w bieżącym scenariuszu i zmieni się wartość atrybutu scenariusza, zostanie ona<br />

również zmieniona dla wszystkich elementów tego scenariusza. Zmiana atrybutu<br />

scenariusza nie powoduje jednak zmiany wartości tego atrybutu w innych<br />

scenariuszach.<br />

Można na przykład policzyć transakcje przetwarzane przez czynność i<br />

wykorzystać te obliczenia w innej części modelu.<br />

Czynność<br />

Atrybuty czynności mogą być wykorzystywane do przechowywania informacji o<br />

czynności podczas symulacji. Jeżeli na przykład każda transakcja posiada atrybut<br />

"waga", możliwe jest przechowywanie wagi całkowitej czynności, więc wiadomo<br />

jaką wagę całkowitą przetworzyła czynność. Atrybuty czynności można<br />

inicjować przy użyciu Wartości danych symbolu użytkownika.<br />

Aby zdefiniować atrybut czynności, należy użyć okna dialogowego Zdefiniuj<br />

atrybuty. Aby przypisać wartość do atrybutu czynności, należy użyć okna<br />

39/39 przygotowanie: dr inż. Marzena Grzesiak


40<br />

dialogowego Właściwości - strona Atrybuty.<br />

Zasób<br />

Atrybut Zasób można używać do przechowywania informacji o pojedynczym<br />

zasobie podczas symulacji. Na przykład zasób może mieć atrybut Umiejętność,<br />

który zwiększa się po użyciu zasobu do zadania. Wartości atrybutu Zasób<br />

inicjalizuje się w sekcji Inicjalizacja w oknie dialogowym Zdefiniuj zasoby -<br />

zakładka Atrybuty. Można je używać jako wyrażenia, takie jak Warunek, podczas<br />

pozyskiwania zasobu w oknie dialogowym Właściwości - zakładka Zasoby.<br />

Do przypisania atrybutu do zasobu służy okno dialogowe Zdefiniuj zasoby -<br />

zakładka Atrybuty.<br />

źródło; pomoc programu iGrafx<br />

Atrybuty czynności<br />

Atrybuty czynności mogą rozróżniać czynności według właściwości<br />

użytkownika, takich jak liczba poszczególnych typów transakcji, które przeszły<br />

przez czynność podczas symulacji.<br />

Wartość domyślna atrybutu czynności wynosi 0, ale można inicjalizować<br />

wartości dla poszczególnych czynności. Aby zainicjować atrybut czynności,<br />

należy dodać dane użytkownika o tej samej nazwie co atrybut czynności.<br />

Następnie na dowolnej czynności można użyć okna dialogowego Właściwości,<br />

strony Dane użytkownika, aby przypisać wartość statyczną do tej nazwy Dane<br />

użytkownika.<br />

Po rozpoczęciu symulacji wartość początkowa atrybutu czynności jest ustawiana<br />

na tej czynności na statyczną wartość Dane użytkownika. Podczas symulacji<br />

alokacje atrybutu mogą modyfikować wartość tego atrybutu czynności, ale<br />

statyczne przypisanie Dane użytkownika dla tej czynności nie zmienia się.<br />

Można także przypisać wartości w dowolnym punkcie cyklu życia transakcji<br />

przechodzącej przez czynność, korzystając z okna dialogowego Właściwości,<br />

strony Atrybuty albo gdy dowolny zasób zostanie pobrany lub zwolniony w<br />

oknie Zdefiniuj zasoby, na karcie Atrybuty.<br />

40/40 przygotowanie: dr inż. Marzena Grzesiak


41<br />

Określanie atrybutów zasobu<br />

Atrybuty zasobu umożliwiają dostosowanie funkcjonowania zasobu. Można na<br />

przykład ustawić różne poziomy kwalifikacji w zależności od toru, w którym<br />

jest używany, lub określić, że zasób zostanie pobrany pod pewnymi warunkami,<br />

na przykład poziom umiejętności >5.<br />

1. Na pasku narzędzi Model kliknij narzędzie<br />

lub z menu Model wybierz polecenie Zasoby.<br />

2. Zostanie wyświetlone okno dialogowe Zdefiniuj zasoby.<br />

3. Na karcie Lista zasobów wybierz zasób, a następnie kliknij kartę<br />

Atrybuty. Jeżeli karta nie jest widoczna, kliknij przycisk Wyświetl<br />

alokacje w prawym dolnym rogu okna dialogowego.<br />

4. Określ wartość atrybutu.<br />

Atrybuty pozyskiwania zasobu<br />

Atrybuty zasobów mogą rozróżnić zasoby według właściwości użytkownika,<br />

takich jak poziom umiejętności i doświadczenie, w celu dokładnego określenia,<br />

które zasoby pozyskać w czynności lub obliczenia czasu trwania czynności. Na<br />

przykład poziom umiejętności może być różny dla zasobu w różnych torach.<br />

Domyślną wartością atrybutu zasobu jest 0, ale można przypisać wartości<br />

początkowe dla różnych zasobów oraz tworzyć przypisania, kiedy zasób jest<br />

pozyskany lub zwolniony, korzystając z zakładki Atrybut w oknie dialogowym<br />

Określ zasób.<br />

Atrybuty transakcji: Priorytet i Blokada<br />

Predefiniowane atrybuty transakcji Priorytet i Blokada mogą mieć wpływ na<br />

przepływ transakcji przez proces. Atrybuty Priorytet i Blokada można przypisać<br />

do rodziny transakcji, aby poszerzyć wartość priorytetu lub blokady na<br />

wszystkie składniki rodziny transakcji. Na przykład w modelu Przetwarzanie<br />

zlecenia, po ustaleniu priorytetów przetwarzania zleceń przez dział Sprzedaży,<br />

41/41 przygotowanie: dr inż. Marzena Grzesiak


42<br />

wszystkie powiązane składniki rodziny (np. kontrola kredytowa i kolejność<br />

wykonywania pracy) otrzymują te same wartości priorytetów.<br />

Priorytet<br />

Określa kolejność przetwarzania transakcji.<br />

• Transakcja o wyższym priorytecie jest przetwarzana przed wszystkimi<br />

transakcjami o niższych priorytetach.<br />

• Dwie transakcje o tym samym priorytecie są przetwarzane zgodnie z<br />

regułami kolejkowania.<br />

• Transakcja o wyższym priorytecie nie może korzystać z zasobów<br />

Blokada<br />

oddalonych od aktualnie przetwarzanych transakcji (transakcji<br />

pozyskanych), chyba że ustawiono prawo pierwszeństwa.<br />

Zmienia kolejność przetwarzania transakcji, może także działać w połączeniu z<br />

atrybutem priorytetu, przez co tworzone są dwa poziomy uporządkowania.<br />

• Transakcja z prawem pierwszeństwa może uzyskiwać zasoby ze<br />

wszystkich transakcji o takim samym lub niższym priorytecie, nawet jeśli<br />

zasoby te są już wykorzystywane.<br />

• Jeżeli dwie transakcje mają takie same priorytety, jako pierwsza<br />

przetwarzana jest transakcja z prawem pierwszeństwa.<br />

• Jeżeli dwie transakcje mają takie same priorytety i obie mają prawo<br />

pierwszeństwa, wtedy przeprowadzane są zgodnie z porządkiem kolejki.<br />

Przykład<br />

Rozpatrzmy przykład sklepu obuwniczego, w którym klienci pojawiają się co 8<br />

do 15 minut zgodnie z rozkładem normalnym. Po wejściu do sklepu wybierają<br />

buty, co zajmuje im od 5 do 20 minut. Klienci mogą kupić do trzech par butów<br />

(mogą nie kupić żadnej pary). Ilość butów kupowanych przez klientów możemy<br />

zapisać przy pomocy zdefiniowanego wcześniej atrybutu transakcyjnego.<br />

Obecnie chcemy stwierdzić:<br />

42/42 przygotowanie: dr inż. Marzena Grzesiak


43<br />

1. Ile par butów zostało w sklepie?<br />

2. Czy dostawa co tydzień 200 par butów jest wystarczająca?<br />

3. Ilu klientów kupiło więcej niż 2 pary butów?<br />

Musimy w tym celu zdefiniować odpowiednie atrybuty. Nie mogą być to<br />

atrybuty transakcyjne, bo te dotyczą transakcji, czyli w naszym przykładzie –<br />

klienta.<br />

Atrybuty, które dotyczą całego modelu powinny być zdefiniowane jako atrybuty<br />

scenariuszowe. Definiuje się je wybierając z menu Model/ Atrybuty i<br />

określając Lokalizację jako Scenariusz.<br />

Odejmowanie ze stanu magazynowego<br />

Nazwę i ty atrybutu definiujemy analogicznie, jak dla atrybutów transakcyjnych.<br />

Dodatkowo podajemy wartość początkową atrybutu scenariuszowego która<br />

może być opisana liczbą bądź wyrażeniem. Załóżmy, że początkowa liczba<br />

butów w sklepie wynosi 200.<br />

Musimy również odzwierciedlić fakt ubywania butów w miarę, jak klienci je<br />

kupują. W tym celu od aktualnej liczby butów w sklepie musimy odjąć tyle par,<br />

ile kupił klient.<br />

W właściwościach czynności „wybieranie towaru” przez klienta definiujemy<br />

odpowiednią wartość atrybutu – po zadaniu (bo dopiero po wyborze klient<br />

ewentualnie kupuje buty ☺), czyli od wartości bieżącej atrybutu<br />

scenariuszowego odejmujemy wartość atrybutu transakcyjnego.<br />

43/43 przygotowanie: dr inż. Marzena Grzesiak


44<br />

Utwórz<br />

wyrażenie<br />

Dostawa towaru<br />

Możemy postąpić dwojako:<br />

a. założyć, że co tydzień jest realizowana dostawa tak, że ilość butów w<br />

sklepie będzie wynosiła 200 (praktycznie: uzupełniamy o tyle par, ile<br />

zakupili klienci)<br />

b. założyć, że przywozimy 200 par, niezależnie od tego, ile par<br />

sprzedaliśmy.<br />

Jak należy postąpić w sytuacji a?<br />

1. Definiujemy częstotliwość dostaw – co tydzień. (w Generatorze,<br />

pamiętając o przypisaniu go do innego punktu startowego).<br />

44/44 przygotowanie: dr inż. Marzena Grzesiak


45<br />

2. Wiążemy generator z punktem startowym.<br />

3. Ustalmy, że wartość atrybutu scenariuszowego opisującego ilość par<br />

butów w sklepie wynosi 200 (tyle, ile wartość początkowa). Można to<br />

zrobić Generatorze w karcie Inicjalizacja Atrybutu lub we<br />

właściwościach czynności w karcie Atrybuty. (popatrz na rysunki<br />

poniżej)<br />

45/45 przygotowanie: dr inż. Marzena Grzesiak


46<br />

LUB<br />

Jak należy postąpić w sytuacji b?<br />

Musimy zwiększyć liczbę butów w sklepie (bieżąca wartość atrybutu<br />

scenariuszowego) o liczbę par w dostawie (200). Można to zdefiniować,<br />

analogicznie jak w sytuacji powyżej, w Generatorze lub we właściwościach<br />

czynności.<br />

46/46 przygotowanie: dr inż. Marzena Grzesiak


47<br />

LUB<br />

47/47 przygotowanie: dr inż. Marzena Grzesiak


48<br />

Zliczanie klientów<br />

Jeżeli chcemy policzyć tych klientów, którzy kupili więcej niż 2 pary butów (de<br />

facto: 3 ☺), to powinniśmy:<br />

- oddzielić klientów, którzy kupili mniej butów (w decyzji za pomocą<br />

wyrażenia; wyrażeniem jest atrybut opisujący liczbę par zakupioną przez<br />

klienta);<br />

- przy przejściu każdego klienta, który kupił 3 pary butów zwiększać poprzednio<br />

zapamiętaną ich liczbę.<br />

W tym celu musimy zdefiniować atrybut scenariuszowy (pamiętamy, że<br />

atrybut transakcyjny „chodzi” razem z transakcją, a klient niekoniecznie musi<br />

wiedzieć, ile par butów kupił inny klient ☺). Początkowa wartość tego atrybutu<br />

wynosi 0.<br />

Następnie we właściwościach czynności definiujemy parametry w karcie<br />

Atrybuty tak, aby wartość tego atrybutu scenariuszowego automatycznie<br />

zwiększała się o 1 przy każdym przejściu super klienta. Uzyskujemy takie<br />

działanie wybierając z listy rozwijalnej w polu Wartość opcję .<br />

48/48 przygotowanie: dr inż. Marzena Grzesiak


49<br />

Jak uzyskać odpowiedzi na postawione wcześniej pytania?<br />

Oczywiście trzeba przeprowadzić symulację (np. dla 1 miesiąca) i dodać<br />

odpowiednie informacje do raportu. Informacje dotyczące atrybutów<br />

scenariuszowych nie są standardowo wyświetlane.<br />

Jak dodać do raportu informacje o atrybucie scenariuszowym?<br />

W raporcie w karcie Użytkownika wybieramy z menu podręcznego<br />

(otwieranego prawym przyciskiem myszy) opcję Dodaj element.<br />

49/49 przygotowanie: dr inż. Marzena Grzesiak


50<br />

Następnie wybieramy z listy statystykę, którą chcemy wyświetlić, czyli<br />

dotyczącą atrybutów scenariuszowych oraz określamy pozostałe opcje/<br />

parametry.<br />

50/50 przygotowanie: dr inż. Marzena Grzesiak


51<br />

Wybierając przycisk Dalej przechodzimy do okna Struktury, w której<br />

określamy sposób wyświetlenia wyników (wiersze/kolumny).<br />

Wybierając przycisk Dalej przechodzimy do okna Formatowanie, w którym<br />

możemy wybrać sposób wyświetlenia wyników (wykres/tabela).<br />

Zakończ powoduje wyświetlenie danych dotyczących atrybutu zgodnie z<br />

określonymi w poszczególnych opcjach parametrami.<br />

51/51 przygotowanie: dr inż. Marzena Grzesiak


52<br />

Podobnie postępujemy w przypadku atrybutu zliczającego klientów, którzy<br />

zakupili 3 pary butów. W oknie Statystyki należy wybrać w Podsumowaniu<br />

Wartość ostateczna, aby uzyskać żądaną informację.<br />

W rezultacie możemy, na przykład, wyświetlić wyniki, jak przedstawiono<br />

poniżej.<br />

Wartość ujemna dla atrybutu oznaczającego liczbę par butów w sklepie oznacza,<br />

że klienci kupowali buty mimo, że ich nie było…, czyli dostawa 200 par butów<br />

tygodniowo jest za mała.<br />

Spróbuj tak dobrać wielkość dostawy, aby uniknąć podobnej sytuacji.<br />

52/52 przygotowanie: dr inż. Marzena Grzesiak

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!