4 Baseny, linie, komunikaty i dane
Efekty uczenia się: W4, W5, U1, U3, U5 · Treści programowe: 3, 5 · Czas: Nauka 40 min, Wyzwanie 50 min
4.1 Nauka
Środowiska do modelowania procesów
Diagram BPMN można narysować na kartce, ale w pracy zawodowej modele powstają w programach. Programów do modelowania jest wiele. Różnią się ceną, sposobem pracy i tym, co potrafią zrobić z modelem poza samym rysunkiem.
| Narzędzie | Rodzaj | Licencja | Do czego się nadaje |
|---|---|---|---|
| bpmn.io (demo.bpmn.io) | edytor w przeglądarce | otwarta | szybkie szkice, nauka, podgląd plików .bpmn |
| Camunda Desktop Modeler | program na komputer | otwarta, bezpłatny | modele opisowe i analityczne, modele wykonywalne dla silnika Camunda |
| Bizagi Modeler | program na komputer | bezpłatny modeler, płatna platforma | dokumentacja procesów, publikacja opisów w organizacji |
| SAP Signavio Process Manager | usługa w chmurze | komercyjna | repozytorium procesów dużej organizacji, praca zespołowa, analizy |
| ARIS | program i usługa w chmurze | komercyjna | architektura całej organizacji: procesy, struktura, systemy, ryzyka |
| Visual Paradigm | program na komputer | komercyjna, ma wersję bezpłatną | modelowanie w wielu notacjach (BPMN, UML i inne) |
| draw.io (diagrams.net) | ogólny program do rysowania | otwarta | szybkie rysunki z kształtami BPMN |
Narzędzia komercyjne oferują przede wszystkim repozytorium procesów: wspólne miejsce, w którym setki modeli są ze sobą powiązane, mają właścicieli, wersje i historię zmian. To ważne w dużej instytucji, np. w uczelni, która prowadzi dokumentację wielu procedur. Narzędzia otwarte wystarczają do nauki notacji i do pracy z pojedynczymi modelami. W kursie używamy dwóch otwartych narzędzi: demo.bpmn.io (spotkanie 3) i Camunda Desktop Modeler (od dziś).
Plik .bpmn i wymiana modeli
Specyfikacja BPMN 2.0 opisuje nie tylko symbole, ale także format pliku. Model zapisuje się w języku XML, zwykle w pliku z rozszerzeniem .bpmn. Plik ma dwie części:
- część semantyczną: jakie są elementy procesu, jak się nazywają i jak są połączone;
- część graficzną (BPMN DI, Diagram Interchange): gdzie każdy element leży na rysunku i jak biegną linie.
Dzięki wspólnemu formatowi model zbudowany w jednym programie można otworzyć w innym. W praktyce wymiana nie zawsze przebiega bez strat. Niektóre programy zapisują własne rozszerzenia, inne pomijają część graficzną albo zapisują ją niezgodnie ze specyfikacją. Wtedy po otwarciu w innym programie diagram jest pusty albo poprzestawiany. draw.io w ogóle nie zapisuje pliku BPMN XML, tylko własny format rysunku. Wygląda jak BPMN, ale żaden inny program nie odczyta z niego procesu.
Dobra praktyka jest prosta. Jeśli instytucja wybiera narzędzie do dokumentowania procesów, sprawdza, czy model zapisany w tym narzędziu otwiera się poprawnie w innym, np. na demo.bpmn.io. Dokumentacja procesów ma żyć dłużej niż umowa z jednym dostawcą oprogramowania.
Instalacja Camunda Desktop Modeler
Camunda Desktop Modeler (dalej: Modeler) jest bezpłatny i nie wymaga konta. Stan na październik 2026: aktualna jest wersja 5.52.
- Wejdź na stronę camunda.com/download/modeler i pobierz wersję dla swojego systemu.
- Windows: rozpakuj archiwum
.zipdo wybranego folderu, np.Dokumenty\Camunda Modeler, i uruchomCamunda Modeler.exe. Program nie wymaga instalacji ani uprawnień administratora. - macOS: otwórz pobrany plik
.dmgi przeciągnij program do folderu Aplikacje. Przy pierwszym uruchomieniu system może zapytać, czy na pewno chcesz otworzyć program pobrany z internetu. - Utwórz nowy diagram: w menu File wybierz nowy plik typu BPMN diagram dla platformy Camunda 8 (ten sam wybór jest na ekranie powitalnym programu).
Modeler pyta o platformę (Camunda 7 albo Camunda 8), bo potrafi przygotować model do uruchomienia w silniku. Do spotkania 12 ten wybór nie ma znaczenia. Rysujemy czysty BPMN, a ustawienia wykonawcze w panelu po prawej stronie zostawiamy puste. Wybieraj Camunda 8, żeby Twoje modele były gotowe na blok D kursu.
Kilka czynności przyda się od razu:
| Czynność | Jak |
|---|---|
| zmiana typu elementu (np. zadanie → zadanie użytkownika) | kliknij element, potem ikonę klucza (Change element) |
| dodanie następnego elementu | kliknij element i wybierz kształt z małej palety obok niego |
| dodanie linii | kliknij basen i wybierz Add Lane above/below |
| zapis modelu | menu File, polecenie zapisu (Save File As), plik .bpmn |
| eksport rysunku | menu File, polecenie eksportu obrazu (Export As Image), format SVG albo PNG |
Plik .bpmn to model, a SVG to tylko jego obraz. W zadaniach oddajesz zawsze oba pliki.
Współpraca: kilku uczestników w jednym diagramie
Na spotkaniu 3 modelowaliśmy procesy jednej organizacji. Procesy informacyjne rzadko jednak kończą się na progu instytucji. Biblioteka zamawia książkę w innej bibliotece, archiwum odpowiada osobie z zewnątrz, kancelaria wysyła pismo do ministerstwa. Diagram, który pokazuje kilku uczestników i wymianę informacji między nimi, nazywa się współpracą (collaboration).
Każdy uczestnik (participant) ma na diagramie swój basen (pool). Basen to duży prostokąt z nazwą uczestnika na lewej krawędzi. Wewnątrz basenu leży proces tego uczestnika. Basen odpowiada na pytanie „czyj to proces?”. Uczestnikiem jest organizacja albo samodzielny system, który ma własny proces: „Biblioteka uczelniana”, „Archiwum Państwowe”, „Wydawca”.
Najważniejsza zasada współpracy: procesy w różnych basenach są od siebie niezależne. Biblioteka nie steruje pracą innej biblioteki. Może tylko wysłać jej wiadomość i czekać na odpowiedź.
Basen zamknięty
Często nie znamy wnętrza procesu partnera albo nie chcemy go pokazywać. Wiemy tylko, że partner dostaje od nas wiadomości i coś nam odsyła. Wtedy rysujemy basen zamknięty (black-box pool): pusty basen z samą nazwą. Przepływy komunikatów dochodzą do jego krawędzi.
Basen zamknięty to uczciwy sposób powiedzenia „nie wiemy, jak to działa u nich”. Nie należy w takiej sytuacji zgadywać kroków partnera. Model, w którym połowa zadań jest wymyślona, wprowadza w błąd. W typowym modelu procesu informacyjnego basen własnej organizacji jest otwarty i podzielony na linie, a baseny partnerów, klientów i urzędów są zamknięte.
Linie: kto wykonuje pracę
Basen dzieli się na linie (lanes). W innych książkach i programach spotkasz też nazwy „pula” (basen) oraz „tor” albo „pas” (linia); oznaczają te same elementy. Linia odpowiada na pytanie „kto to robi?”. Linia to rola, dział albo system: „Bibliotekarz wypożyczalni”, „Kierownik oddziału”, „System biblioteczny”. Nie wpisujemy nazwisk, bo proces ma działać także wtedy, gdy pracownik odejdzie albo jest na urlopie.
Zasady są proste:
- każdy element procesu leży w dokładnie jednym linii
(E030, W031); - linie nie są osobnymi procesami, więc między liniami jednego basenu płynie zwykły przepływ sekwencji;
- system informatyczny, który sam wykonuje czynności, może mieć własną linię. Wtedy od razu widać, które kroki są zautomatyzowane.
Linie a ludzie w organizacji
Linie pokazują więcej niż podział obowiązków. Pokazują, kto trzyma informację i ile razy sprawa przechodzi z rąk do rąk. Każde przejście strzałki z linii do linii to przekazanie (handoff). Przy przekazaniu sprawa czeka w kolejce u kolejnej osoby, a część wiedzy o niej może zostać tylko w głowie poprzedniej. Proces z dziesięcioma przekazaniami jest zwykle wolniejszy i bardziej podatny na błędy niż proces z trzema.
Analizując linie, warto zadać pytania o ludzi, a nie tylko o czynności:
- Grupy i ich kompetencje. Która grupa ma wiedzę potrzebną w danym kroku? W bibliotece akademickiej wiedza o zasobach innych bibliotek jest zwykle w jednym dziale, a wiedza o potrzebach czytelników w innym.
- Subkultury zawodowe. Bibliotekarze, informatycy i administracja uczelni mają różne zwyczaje, słownictwo i priorytety. Strzałka między ich liniami to także miejsce, w którym mogą się źle zrozumieć.
- „Bohaterowie” organizacji. W wielu instytucjach jest osoba, którą wszyscy pytają, „bo ona wie, jak to się załatwia”. Na diagramie widać to jako linię, przez którą przechodzi zaskakująco wiele strzałek, albo jako krok opisany słowami „konsultacja z panią X”. Taka osoba jest dla organizacji skarbem, ale też ryzykiem. Gdy zachoruje, proces staje.
Model z dobrze dobranymi liniami jest więc narzędziem rozmowy o kulturze informacyjnej organizacji: o tym, kto dzieli się wiedzą, a kto ją gromadzi.
Przepływ sekwencji a przepływ komunikatów
W diagramie współpracy są dwa rodzaje strzałek. Ich pomylenie to najczęstszy błąd początkujących.
| Przepływ sekwencji (sequence flow) | Przepływ komunikatów (message flow) | |
|---|---|---|
| wygląd | ||
| znaczenie | „potem następuje” | „wysyła informację do” |
| łączy | elementy jednego procesu, także w różnych liniach | elementy różnych basenów albo same baseny |
| może przekroczyć granicę basenu | nie (E006) |
tak, zawsze ją przekracza |
| może łączyć linie jednego basenu | tak | nie (E008) |
Przepływ komunikatów łączy zadanie, zdarzenie wiadomości albo krawędź basenu. Nie może wychodzić z bramki ani do niej wchodzić (E009). Bramka tylko kieruje ruchem wewnątrz procesu, więc niczego nie wysyła ani nie odbiera.
Typowe miejsca, z których wychodzi i do których dochodzi przepływ komunikatów:
- zadanie wysyłania (czarna koperta) albo zwykłe zadanie, w którym ktoś wysyła pismo;
- zdarzenie końcowe z wiadomością, gdy proces kończy się wysłaniem odpowiedzi;
- zdarzenie początkowe z wiadomością, gdy proces zaczyna się od przyjścia wniosku;
- pośrednie zdarzenie wiadomości (biała koperta), gdy proces czeka na odpowiedź partnera.
Dane w procesie
Proces informacyjny przetwarza dokumenty i rejestry. BPMN ma na to trzy elementy:
| Element | Wygląd | Kiedy używać | Przykład |
|---|---|---|---|
| obiekt danych (data object) | dokument, który istnieje w trakcie tej sprawy | zamówienie, wniosek, odpowiedź | |
| stan danych (data state) | nazwa stanu w nawiasie kwadratowym pod nazwą obiektu | ten sam dokument w kolejnych stanach | Zamówienie [złożone], Zamówienie [wysłane] |
| magazyn danych (data store) | rejestr, który istnieje dłużej niż proces | katalog, kartoteka czytelników, ewidencja kwerend |
Dane łączy się z zadaniami linią kropkowaną zakończoną grotem, czyli asocjacją danych (data association). Strzałka od zadania do danych znaczy „zadanie tworzy albo zapisuje”, a od danych do zadania „zadanie czyta”. Dane nigdy nie są połączone przepływem sekwencji (E005). Obiekt danych nie „wykonuje się”, więc nie może stać w kolejce kroków.
Nie trzeba rysować każdego dokumentu przy każdym kroku. Wybierz te dane, które pokazują coś ważnego: gdzie dokument zmienia stan, z jakich rejestrów korzysta proces i gdzie zostawia ślad. Diagram przeładowany danymi przestaje być czytelny.
Przykład: wypożyczenie międzybiblioteczne jako współpraca
Rozbudujmy model z poprzednich spotkań. Biblioteka uczelniana nie ma książki, więc zamawia ją w innej bibliotece. Nie wiemy, jak pracuje biblioteka udostępniająca, więc jej basen jest zamknięty.
Rysunek 4.1: Wypożyczenie międzybiblioteczne jako współpraca dwóch bibliotek: linie, basen zamknięty, przepływy komunikatów i dane.
Przeczytaj diagram, zwracając uwagę na kilka miejsc:
- Sprawa przechodzi przez trzy linie. Powiadomienie czytelnika wykonuje system, ale między linią systemu a linią bibliotekarza płynie zwykły przepływ sekwencji, bo to wciąż jeden proces jednej biblioteki.
- Z basenu biblioteki wychodzą dwa przepływy komunikatów. Zamówienie wysyła zadanie wysyłania, a przesyłkę odbiera pośrednie zdarzenie wiadomości. Proces czeka na nim, aż przesyłka dotrze.
- Zamówienie zmienia stan: najpierw jest złożone, potem wysłane. Rejestr wypożyczeń jest magazynem danych. Zapisuje do niego system przy rejestracji zamówienia i bibliotekarz przy wypożyczeniu.
- Model nie mówi, co się stanie, gdy biblioteka udostępniająca odmówi albo nie odpowie. Do tej luki wrócimy na spotkaniu 5.
Policz przekazania: czytelnik → system → bibliotekarz → system → bibliotekarz. Już w tak prostym procesie sprawa czterokrotnie zmienia linię.
4.2 Wyzwanie
Polecenie: zbuduj w Camunda Modeler model współpracy procesu „Kwerenda genealogiczna w archiwum państwowym” na podstawie tabeli kroków.
Dane wejściowe: tabela kroków w opisie zadania Z1 (dodatek D).
Wymagania:
- basen „Archiwum Państwowe” z liniami Kancelaria, Archiwista, Kierownik oddziału;
- „Wnioskodawca” jako basen zamknięty;
- przepływy komunikatów wszędzie tam, gdzie archiwum wymienia informację z wnioskodawcą;
- rozgałęzienia nazwane pytaniami, gałęzie opisane „tak” i „nie”, nazwane zakończenia;
- co najmniej jeden magazyn danych i jeden obiekt danych pokazany w dwóch stanach.
Praca: indywidualnie. Najpierw 10 minut na kartce: zaznacz w tabeli kroki, które wymieniają informację z wnioskodawcą, i ustal dla nich typ elementu. Potem modelowanie w Camunda Modeler. Na końcu sprawdź model w parze: osoba obok czyta Twój diagram na głos, krok po kroku, bez zaglądania do tabeli.
Rezultat: pliki z1-kwerenda.bpmn i z1-kwerenda.svg.
Czas: 50 minut. Model, którego nie skończysz na zajęciach, dokończ w domu.
Zadanie Z1 na Pegazie. Model z tego wyzwania oddajesz jako zadanie Z1 (waga 10%). Termin upływa przed spotkaniem 5. Polecenie, tabela kroków i kryteria oceny są w dodatku D.
Na co zwrócić uwagę
- Wnioskodawca jest poza archiwum, więc wszystko, co do niego trafia, to przepływ komunikatów. Między liniami archiwum jest wyłącznie przepływ sekwencji.
- Krok, w którym archiwum czeka na uzupełnienie wniosku, to miejsce oczekiwania na wiadomość. Zastanów się, jaki element pokazuje „czekanie” najlepiej.
- Po wezwaniu do uzupełnienia proces wraca do oceny wniosku. Pętlę rysuje się strzałką wstecz, a w miejscu powrotu stawia się bramkę wykluczającą, która scala ścieżki.
- Przed oddaniem otwórz plik
.bpmnna demo.bpmn.io. Jeśli otwiera się poprawnie, prowadzący też go otworzy.
4.3 Pytania sprawdzające
- Czym różni się basen od linii? Podaj po jednym przykładzie z procesu kwerendy archiwalnej.
- Kiedy rysujesz basen zamknięty? Dlaczego nie warto zgadywać kroków procesu partnera?
- Dlaczego między liniami jednego basenu nie wolno rysować przepływu komunikatów? Jaki kod błędu zgłosi walidator?
- Między jakimi elementami może przebiegać przepływ komunikatów, a między jakimi nie może?
- Czym różni się obiekt danych od magazynu danych? Do której kategorii należy „ewidencja kwerend”, a do której „odpowiedź na kwerendę”?
- Co mówi liczba przekazań między liniami o sprawności procesu i o roli poszczególnych osób w organizacji?
- Dlaczego instytucja wybierająca narzędzie do modelowania powinna sprawdzić, czy jego pliki otwierają się w innych programach?