Na stronach https://www.omg.org/ pojawiła się nowa specyfikacja notacji [[Business Motivation Model]] (BMM) (źr. BMM.) Notacja ta powstała w celu umożliwienia formalnego modelowania biznesplanów, a konkretnie modeli biznesowych. Notacja powstała z inicjatywy [[Business Rules Group]] (http://www.businessrulesgroup.org/home-brg.shtml). Manifest tej organizacji zawiera tak zwane Zasady Autonomii Reguł (tu w języku polskim: http://www.businessrulesgroup.org/brmanifesto/BRManifestoPL.pdf).

„BMM ujmuje wymagania biznesowe w różnych wymiarach, w celu uzasadnienia dlaczego biznes chce coś robić, do czego dąży, jak zamierza to osiągnąć oraz jak ocenia rezultaty.”

Po co nowa notacja?

Swego czasu (rok 2006) pisałem o modelach biznesowych w kontekście strategii rynkowej w artykule Model biznesowy – co to za zwierze. Wtedy pisałem o tym, że strategia ma znaczenie i wiele tłumaczy. Wtedy także dotknąłem problemu słownictwa i systemu pojęć. Samo zdefiniowanie strategii nie jest proste, zdefiniowanie pojęcia strategii zmiany jest jeszcze większym wyzwaniem.

Obszar biznesowy jest bardzo ubogi w [[metody formalne]]: formalne notacje, sformalizowane języki opisu. W zasadzie dysponujemy tylko [[notacją BPMN]] (modele procesowe i modele współpracy procesów) oraz [[notacją ArchiMate]] (modele architektury korporacyjnej). [[Notacja eEPC]], kojarzona głównie z [[narzędziem ARIS]] i firmą ISD Scherr  odchodzi powoli do historii, o notacjach niestandardowych nawet nie piszę bo od dawna idą w zapomnienie.

Dla odmiany, w szeroko pojętej dziedzinie inżynierii  oprogramowania, mamy [[notacje obiektową UML]] i jej trzynaście typów diagramów, mamy nadal używane, znane z analizy strukturalnej notacje [[ERD]] i [[DFD]].

[[Notacja BMM]] uzupełnia biznesowy system notacyjny o obszar pojęciowy modeli biznesowych i biznesplanów. Pozwala w sposób formalny je opisać. [[Przestrzeń nazw]], podstawowe pojęcia opisane w BMM:

  1. Ends (stan oczekiwany) identyfikują cechy opisujące źródła motywacji (cele) tworzenia biznesplanu,
  2. Means (środki) identyfikują narzędzia i środki jakich planujemy użyć by doprowadzić do oczekiwanego (planowanego) stanu.
  3. Assessement (uwarunkowania, ograniczenia) identyfikują wiedzę o warunkach projektu (w szczególności analiza SWOT)
  4. Influence (wpływ) identyfikują poznane czynniki mogące mieć (mające) wpływ na osiągniecie celu,
  5. Organisation (organizacja) identyfikuje zasoby i procesy zaangażowane w osiągnięcie celu
Całość stanowi rodzaj „listy kontrolnej” zrozumienia postawionego problemu, jakim jest projekt biznesowy, pozwala upewnić się, że znamy i rozumiemy to co ma na niego wpływ:
Business Motivation Model (źr. wiki)

Notacja zawiera także elementy sterujące biznesem takie jak [[reguły biznesowe]] i zasady zarządzania. Zestaw pojęć definiujących elementy biznesplanów, cechuje się neutralnością metodologiczną oraz pozwala jednoznacznie opisać nasza wiedzę o projekcie. Oznacza to, że słownik pojęć nie jest dedykowany żadnej konkretnej metodyce, a jest jedynie formalnym słownikiem ([[semantyczna przestrzenią nazw]]). Powyższe pojęcia są wywiedzione z zasadniczych pojęć z dziedziny modelowania procesów: proces biznesowy, reguła biznesowa, jednostka organizacyjna. Bazują one odpowiednio na specyfikacjach: BPMN (notacja [[OMG Business Process Modeling Notation]]), specyfikacji [[OMG Semantics of Business Vocabulary and Business Rules]], oraz RFP [[OMG Organization Structure Metamodel]]. Oznacza to, że notacja BMM nie zastępuje ich, a jest dla nich nadrzędna abstrakcją. Tak więc proces, jako pojedyncze pojęcie na diagramie BMM, może zostać  szczegółowo opisany (model) na innym diagramie (dokumencie), jednak definicja pojęcia proces biznesowy jest taka sama w obu notacjach (proces biznesowy zawsze musi znaczyć to samo!).

Poniżej ogólny widok pojęć opisywanych notacją BMM:

przykład tworzenia diagramy (kliknij), oraz model semantyki i syntaktyki:

BMM nie jest żadnym narzędziem ani metodyką zarządzania czy modelowania procesowego, zarządzania projektami ani specyfikacją wzorcowego modelu biznesowego. To notacja, która stanowi sobą dobrze zdefiniowany słownik pojęciowy (semantykę) oraz związki pomiędzy tymi pojęciami (syntaktykę, pamiętajmy, że połączone pojęcia nabierają kolejnego nowego znaczenia, np. kilka skojarzonych osób oznacza zespół, osoba to proste pojęcie, osoby połączone jakimś związkiem to grupa).

Wśród wielu orędowników notacji UML dominuje teza, że owo Unified (Uniwersalna) w skrócie UML czyni tę notację zdolną do modelowania wszystkiego, jej kolejne zastosowania i rozszerzenia można samemu opracować w postaci tak zwanego [[profilu UML]]. Owszem, w zasadzie teza ta jest prawdziwa jednak jest pewne ale. Po pierwsze taki profil to praktycznie nowa notacja: nowe pojęcia (semantyka) i zasady (syntaktyka). Te wymagają od strony formalnej wykazania, że pojęcia (obrazowane z pomocą symboli, znaków notacji) są rozłączne, i że semantycznie (znaczeniami) pokrywają całą modelowaną dziedzinę. Zapewnienie tego nie jest trywialnym problemem.

Tak więc nie tak znowu nowa, notacja BMM jest przydatna, a dla wielu stosujących [[metody formalne analizy systemowej]] w tym modelowanie, wręcz potrzebna. Nie brakuje głosów krytycznych na temat BMM (np. na blogu MSDN), jednak osobiście podkreślam: notacja to nie sposób na analizę a jej narzędzie. Notacja nie ma rozwiązywać wszystkich problemów, to nie jest srebrna kula (ang. [[silver bullet solution]]), której niestety wielu nadal szuka. Notacja ma pomagać w rozwiązywaniu problemów, a to ogromna różnica.

Jeżeli kogoś interesuje nieco więcej szczegółów o notacjach i ich tworzeniu zapraszam do dalszej lektury.

Po co „trudne” notacje skoro można pisać „po ludzku”

Czy notacje mają za cel zastąpienie popularnej prozy? Absolutnie nie! Notacje służą do budowy modeli, które testujemy, weryfikuje, walidujemy. To tak jak z naszym mieszkaniem: możemy je w dowolny sposób opisać, mniej lub najbardziej kwiecistym językiem. Jednak dobry architekt zawsze, nawet na własny użytek, stworzy zestaw rysunków i wizualizacji, by upewnić się że o niczym nie zapomniał. Z projektu technicznego dopiero stworzy ładnie opisaną prozą (językiem naturalnym, zrozumiałym dla każdego) listę części i podzespołów, jednak ryzyko, że tak stworzona specyfikacja będzie niekompletne teraz jest minimalne.

Zapewne wielu z Państwa było w sklepie IKEA po meble, być może ktoś z Państwa sam je montował. Liczba elementów, łączeń, pasowań, łączników itp. jest ogromna już w średniej wielkości zestawie mebli kuchennych. Czy wyobrażacie sobie Państwo zaprojektowanie takich mebli bez sprawdzenia na rysunkach technicznych czy niczego nie brakuje i czy wszystko do siebie pasuje? A teraz wyobraźcie sobie Państwo, że większość firm w których pracujecie jest daleko bardziej skomplikowana, a mimo to wielu analityków podejmuje próby opisania ich prostymi słowami… jest to niemalże niemożliwe bez popełnienia wielu błędów.

Czym są formalne notacje

Swego czasu napisałem w artykule o notacjach i modelowaniu:

Jednym z tych [podstawowych w stosunku do modeli i używanych w nich notacji] wymagań jest spójny i pełny model pojęciowy. Tak zwana przestrzeń nazw (w notacji jest to lista symboli i definicje ich znaczeń) powinna być ?wypełniona? definicjami całkowicie, zaś obszary definiowanych pojęć nie mogą na siebie nachodzić. (źr. Modelowanie procesów biznesowych).

Nieco bliżej o tym. Notacja to model pojęciowy, zestaw symboli i ich znaczeń (semantyka) oraz gramatyka łączenia tych pojęć (tak zwana syntaktyka czyli dopuszczalne związki pomiędzy pojęciami i ich znaczenia). W czym problem? Poniżej diagram go obrazujący.

Slajd10

Zestaw wszystkich słów-symboli to lista dopuszczalnych w modelu (opisie) pojęć i jest to właśnie tak zwana semantyka notacji (przestrzeń nazw). Koło oznacza wybraną dziedzinę (np. modele biznesowe i biznesplany). Kółeczka z krzyżykami to pojęcia (obrazowane w notacjach symbolami, ikonami notacji), dopuszczalne słowa ze słownika, którego chcemy użyć do opisania czegoś w danej dziedzinie (zwanej także domeną).

Po lewej stronie mamy namiastkę nieformalnego, potocznego języka: to co widzimy, pojęcia, byty czyli krzyżyki oraz słowa pozwalające na ich nazwanie (ciemniejsze obszary). Język potoczny charakteryzuje się tym, że zawiera słowa określające różne pojęcia (dwa krzyżyki w jednym polu znaczeniowym, np. zamek to budowla ale także mechanizm zamknięcia drzwi), pojawiają się różne słowa na jedno znaczenie (krzyżyk należący do dwóch różnych obszarów, np. garnek i saganek to nie raz to samo naczynie). Pojawiają się także byty nie mające oznaczających je słów (w danym języku oczywiście,  krzyżyk nie przyporządkowany do żadnego pola, np. interfejs, który nie ma swojego odpowiednika w języku polskim, używamy słowa angielskiego).

Taka sytuacja, opisane niejednoznaczności, powoduje, że typowy przekaz tekstowy jest przekazem niejednoznacznym: czytający może odczytać z tekstu coś innego niż to co miał na myśli jego autor. Nie da się go, takiego tekstu, zweryfikować od strony spójności i kompletności opisywanej rzeczywistości.

Po prawej stronie mamy sytuację idealną: pojęć jest dokładnie tyle ile znaczeń (słów), każde pojęcie ma tylko jedno znaczenie zaś tak zwana przestrzeń nazw (obszar, do którego należą, mieszczący wszystkie pojęcia danej dziedziny) jest zupełnie opisany (brak obszaru, znaczenia, nie objętego zadnym słowem). Opisanie czegoś „językiem” (słowami) z takiej przestrzeni nazw czyni przekaz jednoznaczny w 100% (nie istnieją w danej przestrzeni synonimy i nie ma pojęć niezdefiniowanych). Jak być może nie trudno się domyśleć, opracowanie systemu pojęciowego spełniającego powyższe wymagania, nie jest łatwe.

Dobra notacja ma jeszcze jedną istotną cechę: symbole obrazujące poszczególne pojęcia powinny się z nimi kojarzyć niezależnie od języka naturalnego. To nazywamy [[semiotyką]]. Jest to nauka o tym jak człowiek postrzega (rozumie, odbiera) poszczególne znaki  graficzne (symbole, ikony). To także powoduje, że dąży się do standaryzacji czyli nie mnożenia nadmiaru systemów notacyjnych (patrz [[brzytwa Ockhama]]). To dlatego tworzenie własnych notacji jest troszkę pozbawione sensu: jest bardzo trudne i oddala nas od standardów.

Na zakończenie

Stosowanie analizy systemowej, modelowania oraz formalnych notacji do tworzenia modeli, powoduje, że wyniki analiz są daleko bardziej wiarygodne. Z reguły celem pracy analityka biznesowego czy projektanta jest opracowanie opisu rekomendowanego rozwiązania. Może nim być docelowy model organizacji czy też opis oprogramowania jakie należy dostarczyć (bo nie zawsze wytworzyć!). W procesie formalnej analizy systemowej (nie jest to analiza systemu informatycznego, to analiza dowolnego systemu), powstają modele, które testujemy.

Taki model to najpierw hipoteza, a po weryfikacji, jest to opis rozwiązania (projekt tego co ma powstać). Idealną sytuacją była by taka, a której mamy narzędzia do modelowania każdej analizowanej dziedziny. W klasycznej inżynierii jest to rysunek techniczny i zasady obliczania wytrzymałości, sformalizowany system tworzenia  schematów elektrycznych i elektronicznych i wiele innych (zależnie od dziedziny), notacje UML w inżynierii oprogramowania. W sferze zarządzania mieliśmy do niedawna biała plamę, teraz mamy już BMM czy ArchiMate.

Moim zdaniem utrzymywanie, że można coś skutecznie analizować metodami nieformalnymi świadczy raczej o niewiedzy i braku kompetencji. Bo jak inaczej nazwać narażanie adresata projektu (nie raz klienta) na masę niespójności owocujących lawinowo rosnącymi kosztami reagowania na nieprzewidziane szczegóły? Nie raz słyszałem, że to trudne, tylko dla jajogłowych, kosztowne. Owszem, ale nie zapominajmy, że analiza to nie coś co każdy sobie sam może zrobić. Dobra analiza nigdy nie jest kosztowniejsza niż potencjalne, ryzykowane straty – opłaci się zawsze.

Prezentacja opisująca kluczowe elementy notacji BMM

Przykład użycia notacji BMM: sposób modelowania.

Skrócony opis – kluczowe pojęcia.

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. MGX

    Co tu komentować?

    Analiza metodami nieformalnymi to jak projektowanie samochodu bez norm. Przecież zdrowy rozsądek wystarczy a normy podwyższają koszt projektu. Czy wsiedli by Państwo do takiego samochodu?

    Dlatego w pełni zgadzam się z autorem.

Dodaj komentarz

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