Wczorajsza konferencja EOIF GigaCon była dla mnie kolejną okazją do podzielenia się z jej gośćmi, moimi oraz cudzymi doświadczeniami, cudzymi czyli tymi, których bywam nie raz świadkiem.  Poproszono mnie o wygłoszenie referatu na temat systemów zarządzania przepływem pracy i konsekwencjami korzystania z nich w tak zwanej chmurze (cloud computing). Przy okazji, dla porządku i tytułem wprowadzenia, powiedziałem kilka słów o tym, czym w ogóle tego typu systemy są i jakie są ryzyka ich wdrażania.

BPM – czym jest

Krótkie podsumowanie tego czym jest BPM (Business Process Management). BPM to przede wszystkim zarządzanie, a nie tylko jedno czy kilka zadań połączonych w “logiczny ciąg”. BPM to cała dyscyplina zajmująca się podnoszeniem efektywności organizacji poprzez optymalizację procesów w niej zachodzących. Proces to coś co zachodzi w granicach organizacji łącząc ludzi, zasoby, przepływ informacji, tworzy określoną wartość.

Powyżej mamy definicję zaczerpniętą ze stron firmy Gartner, którą uważam, że jedną z pełniejszych. Dalej mój diagram, który często prezentuję, obrazujący komplet wiedzy jaką należy posiadać by móc mówić o tym, że proces został udokumentowany i zrozumiany. Są to ograniczenia (prawo, wewnętrzne reguły biznesowe) oraz wykonawca procesu dysponujący określona wiedzą, uprawnieniami i narzędziami pracy.

Trzeci diagram, ważny dla zrozumienia tego czym jest “wspomaganie przepływu pracy i dokumentów”, pokazuje ogólna architekturę oprogramowania “workflow”. Oprogramowanie takie składa się, najogólniej rzecz biorąc, z repozytorium dokumentów oraz tak zwanego silnika procesowego (zarządza procesem). Repozytorium to nic innego jak archiwum dokumentów elektronicznych. Silnik procesowy to komponent odpowiedzialny za zarządzanie kolejnością wykonywania zadań i ich przydzielaniem do właściwych osób. Należy także pamiętać, że przepływ pracy w organizacji jest nadzorowany postępem efektów tych prac, te zaś to nic innego jak powstające treści (dokumenty, także w postaci pól różnych formularzy).

Tak więc oprogramowanie nazywane workflow (nie raz documentflow) to nie to samo co oprogramowanie wspomagające BPM. Mam nadzieję, że konfrontacja definicji BPM i architektury tych aplikacji, jasno to pokazuje. Na co należy uważać? Kilka elementów, na które warto zwrócić uwagę w ofertach przed wyborem rozwiązania:

  1. Aplikacja reklamowana jako “obieg faktur kosztowych” (wniosków urlopowych i innych konkretnych typów dokumentów) to najprawdopodobniej proste repozytorium z wbudowanym systemem przekazywania dostępu do dokumentu kolejnym osobom z ustalonej listy. Tego typu aplikacje nadają się do zarządzania (zatwierdzanie i archiwizacja) np. dowodami księgowymi, bardzo prawdopodobne, że jednak nie poradzą sobie, bez dużego nakładu pracy po stronie dostawcy, np. z procesem obsługi zapytań ofertowych czy np. reklamacji, gdyż tu poza dokumentem otrzymanym z zewnątrz, powstają nowe powiązane dokumenty, ich przetwarzanie może zachodzić wieloma różnymi drogami, a sam moduł repozytorium (archiwum dokumentów) najczęściej nie nadaje się do tego typu zastosowań. Tego typu aplikacje bardzo często, poza monitowaniem terminów, nie pozwalają na budowanie rozbudowanych raportów na potrzeby BPM.
  2. Narzędzia do modelowania procesów biznesowych wbudowane w tego typu oprogramowanie, prawie zawsze mają ograniczenia wynikające z architektury danego oprogramowania i zastosowanych wewnętrznych wzorców, często są to tylko tak zwane “maszyny stanowe”, które pozwalają jedynie na budowanie procesów polegających na przełączaniu statusów konkretnych dokumentów (formularzy) w odpowiedzi na definiowane zdarzenia. Stosowanie takiego narzędzia np. na etapie analizy przed-wdrożeniowej, prowadzi często do znacznego ograniczenia zakresu takiej analizy, do wielu zadań są to narzędzia po protu nieprzydatne. Zastosowanie przed wdrożeniem (a zaleca się nawet przed wyborem dostawcy i rozwiązania) narzędzia do analizy i modelowania procesów, pozwalającego na skorzystanie z wszystkich zalet notacji np. BPMN (obecnie praktycznie już standard w takich projektach)  pozwala ocenić na ile ograniczenia konkretnego oprogramowania wpłyną na utratę możliwości zaspokojenia wszystkich potrzeb organizacji.
  3. Repozytorium dokumentów powinno pozwalać na automatyczne wersjonowanie dokumentów, nie powinno pozwalać na przypadkowe usunięcie dokumentu, powinno pozwalać na budowanie wielu, własnych, rozbudowanych systemów metadanych (cechy dokumentów), gdyż jest to standardowy sposób na klasyfikowanie dokumentów (bez tego np. trudno je później wyszukać czy pogrupować).
  4. Narzędzie tego typu powinno pozwalać użytkownikom na samodzielne budowanie kolejnych nowych schematów procesów przepływu pracy bez konieczności angażowania programistów. Workflow, jako aplikacja,  powinno być platformą budowy takich przepływów a nie oprogramowaniem zawierającym wyłącznie “zamówione” procesy. Brak tej cechy, samodzielne budowanie kolejnych przepływów, to praktycznie dyskwalifikacja narzędzia w rozumieniu BPM.

Cloud computing

Regularnie spotykam definicje tego terminu, większość z nich bazuje na różnych formach outsourcingu. Proponuje definicję, która obecnie chyba najtrafniej oddaje to czym jest cloud computing (przetwarzanie w chmurze):

Slajd10

Ta uogólniona definicja podkreśla, że cloud computing to przede wszystkim prostota, wręcza automatyzacja, rozpoczęcia i rezygnacji z korzystania z zasobu. To główna, moim zdaniem, cecha odróżniająca  “chmurę” od znanych już usług w rodzaju SaaS (Software as a Service) czy ASP (Application Service Provider). Warto także zwrócić uwagę na to, że z perspektywy prawnej czym innym jest “dzierżawa oprogramowania” a czym innym jest “usługa przetwarzania”. Innymi słowy czym innym jest wypożyczenie od kogoś (dzierżawa) kalkulatora a czym innymi płacenie komuś za wykonywanie obliczeń, to nie jest to samo. Cloud Computing to często właśnie opłata za przetwarzanie.

Ważna rzecz to bezpieczeństwo. Spotykam się z wieloma opiniami prawnymi na temat tego kto przetwarza dane i kiedy. Samo posiadanie danych i manipulowanie nimi to ich przetwarzanie. Jednak przetwarzanie pliku nie musi oznaczać przetwarzania (dostępu do) jego treści. Zarządca przestrzeni dyskowej niewątpliwie przetwarza nasze pliki, ale czy aby na pewno zawsze przetwarza dane w nich zawarte? Składowanie danych w postaci zakodowanej powoduje, że usługodawca przetwarza nasze pliki (np. wykonuje ich regularne kopie zapasowe), ale czy przetwarza zawarte w tych plikach treści? Nie, jeżeli są to więc np. zakodowane dane osobowe (typowe tak zwane wrażliwe dane) to usługodawca nie przetwarza tych danych (nie operuje danymi osób) a jedynie plikiem zawierającym te dane w postaci zakodowanej, więc nie ma on dostępu do danych osobowych.

Slajd14

 

Moim zdaniem, Ci prawnicy, którzy forsują tezę, że dane zakodowane także należy traktować jako dane przetwarzane, próbują wykazać, że firma wywożąca makulaturę powstałą w niszczarkach dokumentów, przetwarza dane, które tam były zawarte… Na szczęście dla mnie, są także prawnicy zgadzający się ze mną. Problem ten – moim zdaniem – jest efektem tego, że słowo “dane” oznacza zarówno dane cyfrowe jakimi są jakiekolwiek bity na nośnikach, jak i treść zrozumiałą dla człowieka napisaną w jakimś języku (źr. słownik j.p. PWN):

dane 1. ?fakty, liczby, na których można się oprzeć w wywodach? 2. ?informacje przetwarzane przez komputer?

gdzie “informacje przetwarzane przez komputer” to między innymi ich cyfrowa forma jaką jest każdy plik danych na dysku mający nazwę. Tu większość prawników, nie mająca głębokiej wiedzy technicznej, myli się traktując użyte w ustawach słowo “dane” literalnie, zapominając, że ma ono niestety więcej niż jedno znaczenie.

Na zakończenie

Tak wiec BPM to sfera zarządzania organizacją a nie tylko jakieś oprogramowanie, ono może jedynie wspierać to zarządzanie. Zły wybór oprogramowania z reguły prowadzi do pogorszenia sprawności organizacji (przykłady podawał na tej konferencji Pan Piotr Biernacki), nie raz prowadzi to do zarzucenia korzystania z tego oprogramowania. Dlatego kolejność: najpierw wybór oprogramowania i jego dostawcy a potem wdrożenie, najczęściej kończy się porażką lub co najmniej znacznie gorszymi efektami niż oczekiwane (obiecane).

Oprogramowanie workflow, w tak zwanej chmurze, ma wiele zalet, jednak ma także poważną wadę: kłopotliwa integracja z lokalnymi systemami (np. ERP) wynikająca z tego, że dokumenty pokonują zawsze podwójną drogę od naszej lokalizacji do usługodawcy i z powrotem. W przypadku małych firm (mała ilość danych) z reguły nie stanowi to problemu. Dla dużych firm może to być nawet bariera nie do pokonania, dlatego tak zwana “chmura prywatna” czyli lokalna instalacja może być jedynym wyjściem.

Na koniec: zanim zawrzecie Państwo umowę na taką usługę warto się skonsultować z prawnikiem wyspecjalizowanym w tego typu usługach.

Jarosław Żeliński

Jarosław Żeliński: autor, badacz i praktyk analizy systemowej organizacji: Od roku 1991 roku, nieprzerwanie, realizuje projekty z zakresu analiz i projektowania systemów, dla urzędów, firm i organizacji. Od 1998 roku prowadzi samodzielne studia i prace badawcze z obszaru analizy systemowej i modelowania (modele jako przedmiot badań: ORCID). Od 2005 roku, jako nieetatowy wykładowca akademicki, prowadzi wykłady i laboratoria (ontologie i modelowanie systemów informacyjnych, aktualnie w Wyższej Szkole Informatyki Stosowanej i Zarządzania pod auspicjami Polskiej Akademii Nauk w Warszawie.) Oświadczenia: moje badania i publikacje nie mają finansowania z zewnątrz, jako ich autor deklaruję brak konfliktu interesów. Prawa autorskie: Zgodnie z art. 25 ust. 1 pkt. 1) lit. b) ustawy o prawie autorskim i prawach pokrewnych zastrzegam, że dalsze rozpowszechnianie artykułów publikowanych w niniejszym serwisie jest zabronione bez indywidualnej zgody autora (patrz Polityki Strony).

Ten post ma jeden komentarz

  1. jacek2v

    Zanim zaczniemy wdrażać systemy workflow należy odpowiedzieć na pytanie: Czy chcemy wspomagać obieg dokumentów, czy procesy biznesowe?

Możliwość dodawania komentarzy nie jest dostępna.