Od modelu do aplikacji

Wzorcowy Rational

Bardzo ciekawym rozwiązaniem jest Rational XDE Professional (dostępne zarówno w wersji dla Visual Studio .Net, jak i Javy). Pakiet w pełni wspiera tzw. projektowanie metodą "roundtrip", gdzie na zmianę jest uaktualniany model lub kod programu. Co więcej XDE pozwala, by diagram powstawał dynamicznie podczas pisania kodu. W ten sposób, w miarę jak programista pisze kolejne klasy, widzi dynamicznie powstający diagram.

Na ogół narzędzia do modelowania są pakietami rozbudowanymi, których opanowanie wymaga dużo czasu. Inaczej jest w przypadku Rational XDE. W wersji dla Visual Studio .Net pakiet XDE staje się częś-cią środowiska IDE, z dodatkowym przyciskiem "Synchronizuj". Pakiet, działając w środowisku Visual Studio, zawiera gotowe do użycia wzorce projektowe, a programista wybiera, czy chce wstawić "Singelton", "fabrykę klas" czy inny "ogólny" wzorzec.

Dużym ułatwieniem w XDE jest możliwość osłabienia wymagań semantycznych nakładanych przez UML. Czasami trzeba przedstawić ogólny widok aplikacji, który niekoniecznie musi być poprawnym modelem UML. Szkoda tylko, że takie ogólne schematy trzeba tworzyć ręcznie. Być może już w kolejnej wersji będą one generowane automatycznie.

Symulacja modelu

Przykładem narzędzia do modelowania UML jest MagicDraw. Pakiet jest wyrafinowanym edytorem UML z możliwością generowania kodu (CORBA IDL, C++ i Java) i mechanizmem "reverse engineering". Twórcy położyli główny nacisk na wygodę modelowania i zapis pełnej historii zmian obiektu.

Magic Draw ma zdefiniowane algorytmy automatycznego generowania modelu. Można na przykład zdefiniować fragment systemu, a następnie zarządzać, by zgodnie z wzorcami projektowymi GoF zostały wygenerowane odpowiednie obiekty pomocnicze. Można też okreś- lić, że system ma zdefiniować takie komponenty EJB, które zapewnią mechanizm zdalnego dostępu do danej klasy usługowej zgodny z konkretną specyfikacją Java RMI. Magic Draw zawiera specjalne narzędzie do tworzenia modelu bazy danych.

Model UML jest pewnego rodzaju prototypem aplikacji. iUML firmy Kennedy-Carter jest produktem, który potrafi uruchomić model tak, by projektant mógł zasymulować działanie swojego systemu. Oczywiście nie powstaje prototyp nadający się do pokazania klientowi, ale dzięki symulacji można dokładnie zobaczyć, czy przewidziano wszystkie interakcje między obiektami a komponentami. Można prześledzić (w przypadku aplikacji wielowarstwowych), czy komponenty rozmieszczono w optymalny sposób i gdzie potencjalnie powstaną zakleszczenia.

Firma Kennedy-Carter opracowała specjalny język określający działania, które może wykonywać model UML. Na podstawie zestawu testów bada się, czy np. modyfikacje modelu nie ograniczą funkcjonalności aplikacji. Szkoda, że akurat to narzędzie nie potrafi łatwo wygenerować szkieletu aplikacji.

Atrakcyjny model

Główne argumenty przemawiające za stosowaniem wyspecjalizowanych narzędzi programistycznych służących do modelowania aplikacji

  • Narzucają programistom rygor pracy

  • Pozwalają wykryć i zapobiec błędom strukturalnym wynikającym ze złego zaplanowania modułu aplikacji

  • Ułatwiają istotnie tworzenie dokumentacji projektu informatycznego


  • TOP 200