Skróty te ozna­cza­ją odpo­wied­nio (w j.ang): Business Process Management oraz Business Process Management Software. Budzą one wie­le nie­po­ro­zu­mień i nie­zro­zu­mie­nia. Pierwsze to Zarządzanie pro­ce­sa­mi biz­ne­so­wy­mi” rozu­mia­ne jako dzia­łal­ność zwią­za­na z zarzą­dza­niem orga­ni­za­cją. Drugie to Oprogramowanie [słu­żą­ce] do zarzą­dza­nia pro­ce­sa­mi biz­ne­so­wy­mi” czy­li jakaś apli­ka­cja, któ­rej wewnętrz­ne dzia­ła­nie jest opi­sa­ne procesami.

Ten wpis zapew­ne wywo­ła wie­le kon­tro­wer­sji, gdyż opi­su­ję tu przy­czy­ny, dla któ­rych moim zda­niem, sys­te­my BPMS nie two­rzą war­to­ści doda­nej. Nie widzę sen­su ich sto­so­wa­nia w wer­sji pro­cess engi­ne”, moim zda­niem nie zastą­pią nawet czę­ści typo­wych aplikacji”.

Ale po kolei… Niedawno po raz kolej­ny zosta­łem zapy­ta­ny o… no wła­snie. O co?

[czy­tel­nik]:
Panie Jarosławie,
ostat­nio zda­rzy­ło mi się przejść przez parę ele­men­tar­nych pytań, któ­re przez wie­lu są pomi­ja­ne. Wszyscy mówią o sze­ro­kim spoj­rze­niu na biz­nes, o pro­jek­to­wa­niu pro­ce­sów, zależ­no­ści pomię­dzy nimi. Racja. To wszyst­ko da się zro­bić np. w Visual Paradigm. Później jed­nak chciał­bym przejść do BPMS i powo­łać do życia jeden z opi­sa­nych wcze­śniej pro­ce­sów. Jak utrzy­mać rela­cję pomię­dzy mode­lem pro­ce­sów np. w Visual Paradigm, a tym co się dzie­je w sil­ni­kach procesowych?

Jarosław Żeliński:
Przede wszyst­kim war­to pamię­tać, że:
– śro­do­wi­skiem (kon­tek­stem) dla mode­li ana­li­tycz­nych pro­ce­sów (non-exe­cu­ta­ble w BPMN) jest mode­lo­wa­na orga­ni­za­cja (w tym kon­tek­ście pule na mode­lu współ­pra­cy są organizacjami),
– śro­do­wi­skiem (kon­tek­stem) dla maszy­no­wych mode­li pro­ce­sów (exe­cu­ta­ble) jest ser­wer BPMS (tu na mode­lu współ­pra­cy pula­mi są ser­we­ry BPMS, moto­ry procesów”).

Powyższe powo­du­je, że dany model albo jest biz­ne­so­wy albo maszy­no­wy (wyko­ny­wal­ny). Często jest tak, że jed­na fir­ma (orga­ni­za­cja) ma tyl­ko jeden ser­wer BPMS, ale im więk­sza fir­ma tym bar­dziej praw­do­po­dob­ne, że będzie ich wię­cej (np. oddziałowe).

Tak więc pierw­szy krok to zade­kla­ro­wa­nie jaki kon­tekst mają dane mode­le (ich sys­tem z dekom­po­zy­cją). Jeżeli zade­kla­ru­je­my, że two­rzy­my mode­le wyko­ny­wal­ne, to w struk­tu­rze mode­li trze­ba trzy­mać dys­cy­pli­nę pre­cy­zji mode­lo­wa­nia by ich eks­port np. do XPDL gene­ro­wał popraw­ne pliki.

[czy­tel­nik]:
Chodziło mi o podej­ście BPM (jako spo­sób zarzą­dza­nia fir­mą) i o wyko­rzy­sta­nie narzę­dzi infor­ma­tycz­nych. W narzę­dziach BPMS nie ma moż­li­wo­ści zobra­zo­wa­nia wie­lu mode­li pro­ce­sów oraz śle­dze­nie zależ­no­ści mię­dzy nimi. Musimy to robić w innym narzę­dziu. Z Pana wypo­wie­dzi wyni­ka, że jeże­li nie wyko­rzy­stu­je­my żad­ne­go inne­go narzę­dzia oprócz BPMS, to nie jest moż­li­we mode­lo­wa­nie cało­ścio­we­go obra­zu przed­się­bior­stwa. Co jeże­li klient chce wpro­wa­dzać BPM (świa­do­mie) i zaczy­na od 1,2 pro­ce­sów – koń­czy na 50 pro­ce­sach. Powinienem utrzy­my­wać dodat­ko­wo archi­tek­tu­rę w VP? Czy trzy­mać po pro­stu odręb­ne pro­ce­sy w BPMS?

Jarosław Żeliński:
Teraz (chy­ba) rozu­miem, pozo­sta­je podzie­lić to na dwa pro­jek­ty (mode­le):
– ana­li­za i mode­lo­wa­nie pro­ce­sów w fir­mie (tu BPM rozu­mia­ny jako zarządzanie),
– wyma­ga­nia na opro­gra­mo­wa­nie worl­flow (tu BPMS jak aplikacja).

Pierwsze to mode­le ana­li­tycz­ne, wie­lo­po­zio­mo­we itp.. pro­ce­sów biz­ne­so­wych. Drugie to dia­gra­my przy­pad­ków uży­cia (UC) dla BPMS i pro­ce­so­wo (mode­le wyko­ny­wal­ne) opi­sa­na imple­men­ta­cja tych UC z uży­ciem BPMS.

Nie da się tego seman­tycz­nie mode­lo­wać na jed­nym spój­nym mode­lu procesów.

[czy­tel­nik]:
Jeżeli chcę mode­lo­wać szer­szy kon­tekst orga­ni­za­cji (wie­le powią­za­nych pro­ce­sów, top-down), to muszę użyć CASE i nic inne­go. Czyli do wdro­że­nia BPM (jako sty­lu zarzą­dza­nia fir­mą) muszę wyko­rzy­stać CASE (bo chcę i muszę mieć sze­ro­ki obraz). Błędem jest myśle­nie i pisa­nie o wyko­rzy­sta­niu w tym celu BPMS – widzia­łem dzie­siąt­ki arty­ku­łów o tym, że praw­dzi­wy BPM bez BPMS nie ist­nie­je, że są nie­roz­łącz­ne. BPMS jako two­rze­nie kon­kret­nej apli­ka­cji opar­tej na wybra­nej per­spek­ty­wie pro­ce­so­wej jest po pro­stu wyni­kiem ana­li­zy wyko­na­nej przy uży­ciu CASE. Nie ma rela­cji ani bez­po­śred­nie­go prze­ło­że­nia CASE na BPMS. Można oczy­wi­ście pró­bo­wać impor­to­wać, expor­to­wać, ale to zawsze wią­że się z ryzy­kiem pogu­bie­nia infor­ma­cji bądź przy­rzą­dze­nia pięk­ne­go spa­ghet­ti. Sprowadza się to do tego, że aktu­ali­za­cja i utrzy­ma­nie pro­ce­sów w dwóch narzę­dziach jest bar­dzo pra­co­chłon­ne i nikt zapew­ne tego nie robi:). Wizerunek CASE-owych narzę­dzi tra­ci tro­chę uro­ku w tym kontekście 😉

Jarosław Żeliński:
Nie tyl­ko moim zda­niem błę­dem jest utoż­sa­mia­nie BPM z BPMS, pierw­sze to stra­te­gia wewnętrz­na fir­my dru­gie to apli­ka­cja. Zresztą, każ­da apli­ka­cja reali­zu­je jakieś swo­je wewnętrz­ne sce­na­riu­sze, dru­go­rzęd­ne zna­cze­nie ma to czy to motor BPMN czy nie… (wie­le sys­te­mów BPMS korzy­sta z wła­snych, innych innych niż BPMN, notacji).

Co do uwa­gi o przy­dat­no­ści narzę­dzi CASE, nie zgo­dzę się. Jest bez­po­śred­nia rela­cja BPM a BPMS: aktyw­no­ści w mode­lach pro­ce­sów orga­ni­za­cji (BPM) to przy­pad­ki uży­cia apli­ka­cji BPMS, te są niczym innym jak zada­nia­mi użyt­kow­ni­ka” w BPMN. VP radzi sobie z tym bar­dzo dobre, jed­nak wyma­ga to popraw­ne­go mode­lu sys­te­mo­we­go a kon­kret­nie oddziel­ne­go mode­lo­wa­nia orga­ni­za­cji i oddziel­ne­go apli­ka­cji i jej wewnętrz­ne­go mecha­ni­zmu dzia­ła­nia. To razem moż­na śla­do­wać” ale trze­ba zbu­do­wać sobie dobry szkie­let dla całości.

Tyle dys­ku­sja. W czym pro­blem? Najpierw po raz kolej­ny model war­stwo­wy SOA:

SOA_OMG_model

Na naj­wyż­szym pozio­mie mamy mode­le pro­ce­sów biz­ne­so­wych (Business Proces, obec­nie mode­lo­wa­ne z regu­ły z uży­ciem dia­gra­mu pro­ce­sów nota­cji BPMN i reguł biz­ne­so­wych), niżej abs­trak­cje usług (Business Services, mode­lo­wa­ne z uży­ciem przy­pad­ków uży­cia UML), dalej kom­po­nen­ty apli­ka­cyj­ne (Components, obec­nie mode­lo­wa­ne z uży­ciem dia­gra­mu kom­po­nen­tów UML). Zasoby ope­ra­cyj­ne (Operational Resources, na samym dole), obec­nie mode­lu­je się je z uży­ciem dia­gra­mów wdro­że­nia UML.

Tak więc to co nazy­wa­my BPM, to zarzą­dza­nie orga­ni­za­cją. Tu mode­lu­je­my pro­ce­sy biz­ne­so­we w rozu­mie­niu mode­lu­je­my mecha­nizm dzia­ła­nia orga­ni­za­cji”. Część aktyw­no­ści w tych pro­ce­sach będzie (jest) wspie­ra­na apli­ka­cją (jej usłu­ga­mi). Od tego momen­tu może­my, roz­po­czy­na­jąc od przy­pad­ków uży­cia, zacząć mode­lo­wać apli­ka­cję (wyma­ga­nia na nią) idąc przez mode­le dzie­dzi­ny, sce­na­riu­sze aż do podzia­łu na kom­po­nen­ty. Możemy tak­że wybrać inną dro­gę: opro­gra­mo­wa­nie BPMS i zacząć mode­lo­wać logi­kę wyma­ga­nej apli­ka­cji z uży­ciem nota­cji BPMN i tak zwa­nych dia­gra­mów wyko­ny­wal­nych. Na tych dia­gra­mach poja­wią się nisko­po­zio­mo­we” zada­nia (skrypt, wysła­ne komu­ni­ka­tu, itp.) oraz zada­nia użyt­kow­ni­ka” (user task w BPMN), kto­re są inte­rak­cją tej apli­ka­cji z jej użytkownikiem.

Drugie podej­ście ma pew­ną wadę: abso­lut­nie nie usu­wa potrze­by napi­sa­nia kodu logi­ki biz­ne­so­wej (np. nali­cze­nie upu­stu, sco­ring kre­dy­to­bior­cy itp.) dla zadań BPMN typu busi­ness rule”. Dlatego nie wró­żę suk­ce­su ryn­ko­we­go tego typu apli­ka­cjom (BPMS). Stawiam raczej na dal­szy roz­wój typo­wych apli­ka­cji biz­ne­so­wych oraz sys­te­mów typu task mana­ge­ment” z wbu­do­wa­ny­mi moto­ra­mi reguł biz­ne­so­wych”. Niestety sys­te­my BPMS nie zwal­nia­ją z koniecz­no­ści napi­sa­nia kodu logi­ki biz­ne­so­wej i prze­cho­wy­wa­nia danych, za to dodat­ko­wo kom­pli­ku­ją cały pro­ces dostar­cze­nia opro­gra­mo­wa­nia potrze­bą pośred­nie­go two­rze­nia wyko­ny­wal­nych mode­li BPMN.

Owszem moż­na podej­mo­wać pró­by by pierw­sze trzy war­stwy SOA ująć w jed­nym mode­lu”, jed­nak poja­wi się pro­blem zarzą­dza­nia kon­tek­sta­mi (biz­ne­so­wy i maszy­no­wy) w ramach jed­ne­go mode­lu. Opis tego podej­ścia moż­na zna­leźć na blo­gu Bruce Silver’a:

One of the sin­gu­lar suc­ces­ses of BPM tech­no­lo­gy is a com­mon lan­gu­age ? BPMN ? used both for pro­cess mode­ling and exe­cu­ta­ble design. At least in the­ory?. (Źródło: Process-Driven Applications: A New Approach to Executable BPMN – Business Process Watch)

Co do tego czy apli­ka­cje CASE radzą sobie z tym… apli­ka­cje te bez pro­ble­mu, ale każ­dy pro­jekt wyma­ga nie­ste­ty indy­wi­du­al­ne­go podejścia.

Jarosław Żeliński

BIO: Od roku 1991 roku, nieprzerwanie, realizuję projekty z zakresu analiz i projektowania systemów, dla urzędów, firm i organizacji. Od 1998 roku prowadzę także samodzielne studia i prace badawcze z obszaru analizy systemowej i modelowania (modele jako przedmiot badań: ORCID). Od 2005 roku, jako nieetatowy wykładowca akademicki, prowadzę 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.

Ten post ma 2 komentarzy

  1. Michał

    Obawiam się, że nie rozu­mie Pan podej­ścia BPM do zarzą­dza­nia orga­ni­za­cją, a tym bar­dzej roli roz­wią­zań BPMS w orga­ni­za­cji zarzą­dza­nej w taki sposób.
    BPM to nie tyl­ko odkry­wa­nie, mode­lo­wa­nie i dekom­po­zy­cja pro­ce­sów, to rów­nież mie­rze­nie wyko­nań pro­ce­sów i nie­usta­na opty­ma­li­za­cja – tego nie moż­na zro­bić bez BPMS.

    1. Jarosław Żeliński

      Najpierw ustal­my, że:
      BPM – Business Process Management czy­li zarzą­dza­nie pro­ce­sa­mi, mie­rze­nie, opty­ma­li­za­cja itp.,
      BPMS – Business Process Management Systems, to plat­for­my work­flow czy­li opro­gra­mo­wa­nie wspie­ra­ją­ce zarzą­dza­nie prze­pły­wem pracy,
      BPMN – Business Process Modeling & Notation, to nota­cja słu­żą­ca do mode­lo­wa­nia pro­ce­sów (ich dokumentowania).

      I dalej: żeby zarzą­dzać (BPM) pro­ce­sa­mi, trze­ba je naj­pierw udo­ku­men­to­wać (np. mode­la­mi pro­ce­sów biz­ne­so­wych wyko­na­ny­mi z uży­ciem nota­cji BPMN) by przy­po­rząd­ko­wać im np. wskaź­ni­ki KPI. BPMS to opro­gra­mo­wa­nie wspie­ra­ją­ce prze­pływ pra­cy (zwa­ne czę­sto workflow). 

      Ale mie­rze­nie jako­ści i efek­tyw­no­ści pro­ce­sów jest reali­zo­wa­ne od wie­lu lat, pierw­sze pro­ce­so­we for­my zarzą­dza­nia to lata 60-te, pętla opty­ma­li­za­cji jako­ści pro­duk­tów i pro­ce­sów Deminga i nota­cja IDEF0 (bo BPMN mamy od 2003 roku), i było to robio­ne wte­dy bez sys­te­mów BPMS.

Dodaj komentarz

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.