Wprowadzenie

Niedawno jeden z arty­ku­łów zakoń­czy­łem akapitem:

Pierwszy etap ana­li­zy biz­ne­so­wej to mię­dzy inny­mi opra­co­wa­nie biz­ne­so­we­go słow­ni­ka pojęć (model poję­cio­wy)… (Słownik pojęć biz­ne­so­wych: naj­bar­dziej pod­sta­wo­we wyma­ga­nie).

Nie każ­da jed­nak ana­li­za to ana­li­za, któ­rej celem jest opi­sa­nie wyma­gań i pro­jek­to­wa­nie opro­gra­mo­wa­nia. Jednak każ­da ana­li­za pro­ble­mu, pro­wa­dzo­na jako ana­li­za sys­te­mo­wa, ma usta­lo­ne eta­py postępowania:

  1. for­mu­ło­wa­nie problemu,
  2. opra­co­wa­nie mode­lu ana­li­zo­wa­ne­go zja­wi­ska (w tym dowód jego poprawności!),
  3. wykry­cie i testo­wa­nie wariantów,
  4. ana­li­za wyni­ków i rekomendacje,
  5. pro­jek­to­wa­nie rozwiązania.

Powyższe to, opar­te na kla­sycz­nej ana­li­zie sys­te­mo­wej, postę­po­wa­nie. Dzisiaj sku­pię się głów­nie na punk­cie opra­co­wa­nie mode­lu” gdyż bazą do jego two­rze­nia jest wła­śnie słow­nik pojęć. 

Jak nie raz tu pisa­łem, mode­le two­rzo­ne są z uży­ciem nota­cji. Notacja to sys­tem poję­cio­wy, pew­na prze­strzeń nazw (ang. name­spa­ce). Notacje mogą być gra­ficz­ne, wte­dy każ­de poję­cie ma przy­po­rząd­ko­wa­ny okre­ślo­ny uni­kal­ny sym­bol, two­rzo­ne z nich kon­struk­cje to dia­gra­my, będą­ce odpo­wied­ni­kiem zdań (popraw­ny dia­gram coś mówi”). Tak więc tyle krót­kie­go wprowadzenia.

Gdzie te słowniki?

Pierwszym eta­pem ana­li­zy sys­te­mo­wej jest zde­fi­nio­wa­nie pro­ble­mu, ten jest zwią­za­ny zawsze z okre­ślo­nym przed­mio­tem. Przedmiot ana­li­zo­wa­ny – sys­tem – musi mieć ści­śle okre­ślo­ne gra­ni­ce oraz jed­no­znacz­ny opis będą­cy mode­lem tego sys­te­mu. Aby taki opis mógł powstać, jak się zapew­ne już domy­śla­my, musi­my dys­po­no­wać zbio­rem jed­no­znacz­nych pojęć go opi­su­ją­cych – musi­my mieć ade­kwat­ną do pro­ble­mu i jego dzie­dzi­ny prze­strzeń nazw. Model sys­te­mu to jed­no­znacz­na defi­ni­cja tego czym jest i jak się zacho­wu­je (jak reagu­je na bodź­ce). Opis taki wyko­na­ny języ­kiem natu­ral­nym, nie nada­je się do ana­li­zy, język natu­ral­ny nie jest for­mal­ną prze­strze­nią nazw, i z regu­ły nie pozwa­la na jed­no­znacz­ne opi­sa­nie cze­goś (w złym mode­lu poję­cio­wym zna­cze­nia pojęć nie pokry­wa­ją całej prze­strze­ni, nakła­da­ją się).

przestrzen nazw

Tak więc do opra­co­wa­nia mode­lu wyma­ga­na jest nota­cja. Skąd ja wziąć? Jak ją wybrać? Jak widać, nota­cja musi być dosto­so­wa­na do dzie­dzi­ny pro­ble­mu. Notacje stan­dar­do­we, z regu­ły, są dość ogól­ne gdyż muszą zacho­wy­wać pew­ną uni­wer­sal­ność. Notacje stan­dar­do­we są dzie­dzi­no­we i tu dzie­dzi­ną tą jest okre­ślo­ny para­dyg­mat. Najbardziej zna­ny­mi nota­cja­mi sto­so­wa­ny­mi w ana­li­zie sys­te­mo­wej z obsza­ru zarzą­dza­nia i sys­te­mów infor­ma­cyj­nych są UML i BPMN. UML repre­zen­tu­je para­dyg­mat obiek­to­wy mówią­cy, że świat skła­da się ze współ­pra­cu­ją­cych obiek­tów mają­cych okre­ślo­ne cechy i moż­li­wo­ści (umie­jęt­no­ści). BPMN repre­zen­tu­je para­dyg­mat pro­ce­so­wy mówią­cy, że świat to zacho­dzą­ce w cza­sie pro­ce­sy two­rze­nia lub prze­kształ­ca­nia rze­czy­wi­sto­ści (nale­ży jed­nak dodać, że UML to tak­że dia­gra­my dyna­mi­ki sys­te­mu, mają­ce zwią­zek z para­dyg­ma­tem pro­ce­so­wym, nie nale­ży jed­nak mylić tego z poję­ciem pro­ces biznesowy”).

Poza tymi dwo­ma nota­cja­mi (moim zda­niem głów­ny­mi) mamy wie­le innych, spe­cy­ficz­nych dla okre­ślo­nych dzie­dzin i para­dyg­ma­tów, sys­te­mów poję­cio­wych (np. BMM czy SBVR).

Tak więc każ­da ana­li­za, powin­na być poprze­dzo­na wybo­rem nota­cji, któ­re zosta­ną w niej uży­te. Na pew­nym okre­ślo­nym pozio­mie abs­trak­cji wystar­czą poję­cia dostęp­ne w nota­cjach stan­dar­do­wych. Nie raz może się jed­nak zda­rzyć, że ana­li­za pro­ble­mu doty­ka szcze­gó­łów, któ­rych roz­róż­nia­nie nie jest moż­li­we z pomo­cą stan­dar­do­wej nota­cji. Każdy kon­kret­ny pro­blem ma swo­je kon­kret­ne śro­do­wi­sko dzie­dzi­no­we, może się zda­rzyć, że bar­dziej szcze­gó­ło­we niż uni­wer­sal­ne nota­cje. Wtedy nale­ży roz­sze­rzyć zasto­so­wa­ną nota­cję (prze­strzeń poję­cio­wą). Rozszerzanie to jed­nak wyma­ga prze­strze­ga­nia pew­nej zasa­dy: roz­sze­rze­nie to może pole­gać wyłącz­nie na zastę­po­wa­niu sta­rych” pojęć zesta­wem ich spe­cja­li­za­cji („sta­re” poję­cie sta­je się abs­trak­cją) oraz zestaw takich spe­cja­li­za­cji tak­że musi sta­no­wić lokal­ną prze­strzeń nazw. Taka dodat­ko­wa prze­strzeń nazw nazy­wa się pro­fi­lem nota­cji. Tworzenie pro­fi­li jest dość trud­nym zaję­ciem z uwa­gi na wymóg zacho­wa­nia opi­sa­nych for­ma­li­zmów prze­strze­ni poję­cio­wych (pro­fil tak­że musi mieć okre­ślo­na seman­ty­kę i syn­tak­ty­kę, któ­ra to nie może koli­do­wać z tą w nota­cji bazowej).

I tu docho­dzi­my do sed­na: aby stwo­rzyć pro­fil nota­cji – co cza­sa­mi bywa nie­zbęd­ne dla jako­ści ana­li­zy – nale­ży naj­pierw zbu­do­wać słow­nik pojęć z dzie­dzi­ny ana­li­zo­wa­ne­go pro­ble­mu, spraw­dzić czy zasto­so­wa­na nota­cja pozwa­la na roz­wią­za­nie posta­wio­ne­go pro­ble­mu z uży­ciem stan­dar­do­wej wer­sji nota­cji. Bez takie­go słow­ni­ka ana­li­za może być nie­wy­ko­ny­wal­na, albo jej jakość będzie bar­dzo niska – czy­taj: uży­cie jej wyni­ków będzie bar­dzo ryzykowne.

Takie pro­fi­le ma np. nota­cja BPMN w celu prze­cho­dze­nia z mode­li abs­trak­cyj­nych na wyko­ny­wal­ne, stan­dar­do­wo ope­ru­je się np. jed­nym poję­ciem czyn­ność, jeże­li potrzeb­ne jest ich roz­róż­nia­nie, prze­cho­dzi­my na sto­so­wa­nie sym­bo­li ozna­czo­nych jako czyn­ność ode­bra­nia komu­ni­ka­tu, czyn­ność wysła­nia komu­ni­ka­tu, czyn­ność manu­al­na, itp.. Dla nota­cji UML powsta­ło wie­le pro­fi­li np. dla kon­kret­nych języ­ków pro­gra­mo­wa­nia i ich środowisk.

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.

Dodaj komentarz

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