Metamodele ładu korporacyjnego
-
- Jarosław Badurek,
- 08.11.2010, godz. 07:24
Komputerowe wspomaganie procesów zarządzania wymaga ich modelowania. W coraz bardziej złożonych systemach pojawia się jego kolejna warstwa: metamodelowa.
Modelowanie jest fenomenem występującym powszechnie podczas ludzkiej działalności czy kojarzonym z naszą cywilizacją. Już sam język (naturalny), którym się posługujemy, jest modelem rzeczywistości, tzn. jej uproszczonym opisem niezbędnym do funkcjonowania w otaczającym nas świecie. W praktyce gospodarczej ostatnich lat coraz większego znaczenia nabierają modele referencyjne ładu korporacyjnego. Jednocześnie obserwujemy wzrost złożoności modelowanych przedsiębiorstw, których struktura nabiera cech wyraźnie procesowych, nawet jeżeli formalnie istnieją w nich jeszcze tradycyjnie definiowane działy czy hierarchie. Procesowość powiązana z elastycznością rynkową firm, będącą warunkiem ich konkurencyjności, powoduje, że zaczynają one przypominać układy deterministycznego chaosu, gdzie "wszystko jest powiązane ze wszystkim", a minimalne wahania parametrów wejściowych mogą przekładać się na potężne zmiany obserwowane na wyjściu (efekt motyla).
Trudno jest precyzyjnie modelować, optymalizować i mierzyć coś, czego nie można precyzyjnie opisać. Warto więc zdefiniować określone metakonwencje terminologiczne (słowniki), pozwalające na oszczędność słów bez strat precyzji przekazu.
Zobacz również:
Metamodel dla pudełka
Czym zatem różni się metamodel od modeli i jakie ma znaczenie w praktyce zarządzania? Czasami pojawiają się twierdzenia, że "metamodel jest modelem modelu“. Tymczasem inne są cele i sposoby konstruowania modeli i metamodeli. Owszem, mapa jest modelem terenu ale metamodel nie jest "mapą mapy“. Metamodel jest bowiem opisem konstruowania modeli w celu uniwersalnej formalizacji modelowania. Przy czym taki opis wymaga zastosowania metajęzyka. Przykładem może być tu zjawisko generatywizmu języka naturalnego: jego gramatyka i alfabet/słownik pozwalają na formalnie poprawne konstruowanie w nim zdań. Również w językach sztucznych (programowania) mamy ich słowa kluczowe oraz instancję decyzyjną rozstrzygającą o poprawności kodu, tj. kompilator (interpreter). W notacji notacji Backus-Naura (BN Form) minimalna ilość reguł i symboli metajęzykowych pozwoliła na zdefiniowanie takich standardów jak ALGOL czy PASCAL.
W informatyce nie tylko modeluje się rzeczywistość gospodarczą przy pomocy oprogramowania, ale istnieje też potrzeba konstruowania modeli samego procesu jego wytwarzania, a to jest już poziom metamodelowy.
Przykład: jeżeli "z definicji" określimy cyfry i litery:
<cyfra> ::= 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
<litera> ::= a | b | c | ... | X | Y | Z
to na tej podstawie pojęcie "nazwy", jako co najmniej jednoznakowego ciągu alfanumerycznego (zaczynającego się od litery), wyglądać będzie następująco:
<nazwa> ::= <litera> | <nazwa> <litera> | <nazwa> | <cyfra>
W tym przykładzie użyto tylko trzech znaków metajęzykowych, są to nawiasy < > określające zmienne metajęzykowe, łącznik ::= dla przypisania oraz drugi
łącznik metajęzykowy | (znak pionowej kreski, vertcical line, zwany także pipe, niekonsekwentnie na niektórych klawiaturach przedstawiany jako broken bar, czyli kreska z przerwą).