Stanisław Bajor
Transkrypt
Stanisław Bajor
ZASTOSOWANIE GRAMATYK GRAFOWYCH DO WERYFIKACJI DIAGRAMÓW UML Stanisław Bajor Międzynarodowe Studium Doktoranckie A.E. we Wrocławiu 54-236 Wrocław, ul. Popowicka 55/12, tel. ( 071 ) 790 45 37, 0505091893 Email: [email protected] Streszczenie Specyfikacja systemu informatycznego składa się ze zbioru różnych dokumentów. Każdy z nich opisuje inny aspekt systemu. Systemy złożone, takie jak banki, firmy ubezpieczeniowe, firmy handlowe posiadające swoje oddziały w różnych krajach, sieć rozległa WWW wymagają, aby ich systemy informatyczne składające się z wielu programów działających w krytycznych warunkach przetwarzania ( czas rzeczywisty, tysiące terminali na całym świecie działających w sieci, ryzyko finansowe każdej transakcji )spełniały pokładane w nich nadzieje. Ta pogłębiająca się złożoność produktów informatycznych i procesów ich wytwarzania jest przyczyna kryzysu tradycyjnego oprogramowania ( w tym relacyjnych baz danych ). Nadzieją na opanowanie tego kryzysu i zredukowanie złożoności stała się obiektowość. Szczególnie ostatnie 20 – lecie zaowocowało powstaniem wielu metodyk i notacji określanych jako „obiektowe”. Wśród nich najpopularniejsze to: OMT (Rumbaugh), OOA/OOD (Czad/Yourdon), OOAD (Booch), OOSA (Schlaer/Mellor) i inne. Mimo różnic, głównie syntaktycznych, zarówno w podejściu jak i przeznaczeniu, metodyki te maja ze sobą wiele wspólnego. Ostatnio na czoło wysunęła się metodyka UML, która powstała w wyniku prac trzech wybitnych metodologów: Booch’a, Jacobsona i Rumbaugh’a. W listopadzie 1997 r. UML został zaakceptowany przez OMG ( Object Management Group) jako standardowy język wśród obiektowych języków modelowania. Mimo sukcesu ekonomicznego jaki osiągnęła metodyka UML nie wszyscy specjaliści są nią zachwyceni. Niektórzy uważają ją za twór przereklamowany, nie spójny, źle zdefiniowany. Z jednej strony UML jest językiem nadmiernie bogatym. Na skutek tej nadmiarowości mogą być niejednoznaczności w interpretacji modeli powstałych w wyniku swobodnego składania elementów języka. Z drugiej strony można wskazać też na pewne niedostatki UML, które nie pozwalają na wyrażenie pewnych własności, które są możliwe do wyrażenia w innych językach specyfikacji. Mimo braków, prawdopodobnie przez wiele najbliższych lat, UML będzie dominował w obszarze analizy i projektowania. Istnieje więc potrzeba transformacji diagramów UML do dobrze zdefiniowanego ( w sensie formalnym ) języka. W mojej pracy proponuję zastosowanie gramatyk grafowych ( Graph Grammars) oraz systemów transformacji grafów ( Graph Transformation Systems) jako odpowiedniego narzędzia do weryfikacji diagramów UML. W celu ilustracji poruszonych w pracy koncepcji wykorzystałem jako przykład system bankowy.