POSEJDON for UML Professional Edition |
---|
Napisane przez Wed 08 Feb 2006 przez Artur (4680 cztane) |
![]() POSEJDON for UML Professional Edition Opracowanie Michał Małek na podstawie official user guide @ http://gentleware.com/fileadmin/media/archives/userguides/poseidon_users_guide/book1.html www.gentleware.com UML ułatwia projektowanie UML (ang. Unified Modeling Language czyli Ujednolicony Język Modelowania) - język formalny służący do opisu świata obiektów w analizie obiektowej oraz programowaniu obiektowym. Służy do modelowania dziedziny problemu (opisywania-modelowania fragmentu istniejącej rzeczywistości - na przykład modelowanie tego, czym zajmuje się jakiś dział w firmie) - w przypadku stosowania go do analizy, oraz do modelowania rzeczywistości, która ma dopiero powstać - tworzy się w nim głównie modele systemów informatycznych. UML jest głównie używany wraz z jego reprezentacją graficzną - jego elementom przypisane są symbole, które wiązane są ze sobą na diagramach. Uniwersalnym formatem zapisu języka UML jest XMI - język służący do zapisywania modeli UML za pomocą XML'a. Posejdon for UML „Posejdon for UML Professional Edition” jest najważniejszą edycją aplikacji „Poseidon for UML”. Narzędzie to zostało stworzone by sprostać wymaganiom profesjonalnych deweloperów. Zawiera w sobie mechanizmy, które pozwalają na generowanie kodu w sposób bardzo elastyczny i wygodny. Edycja profesjonalna pakietu zawiera możliwość tak zwanego „round-trip engineering” czyli inżynierii odwrotnej, import archiwów JAR oraz generowania dokumentacji w formacie HTML. Jedną z najważniejszych zalet profesjonalnej edycji Posejdona jest możliwość generowania kodu, która nie jest niczym ograniczona. Mechanizm generowania kodu jest oparty na technologii szablonów (wzorców) gdzie wzorzec definiuje składnię wygenerowanego kodu. Możliwość generowania kodu istnieje dla języków i formatów takich jak Java, C++, ANSI C, Delphi, PHP, VB.net, Perl, XML, HTML. Edycja profesjonalna daje programiście dostęp do API i do wzorców. Deweloper może edytować i zmieniać te wzorce nawet podczas wykonywania programu i wpływać na wynik generowanego kodu osobiście. Wyszukane mechanizmy inżynierii odwrotnej pozwalają na czytanie kodu Javy i generowanie diagramów w notacji UML i synchronizacji wyników z projektem. Można zmieniać wygenerowany kod oraz edytować wygenerowany model. Wraz z umożliwieniem funkcji importu z archiwów JAR można czytać w istniejących bibliotekach i używać ich elementów w tworzonym projekcie. Profesjonalna edycja Posejdona zawiera więc między innymi takie funkcjonalności jak : - Generowanie kodu na podstawie wzorców z pełnym dostępem - Funkcjonalność inżynierii odwrotnej dla języka Java - Import archiwów JAR w celu wykorzystania istniejących bibliotek - Import plików z komercyjnej aplikacji Rational Rose (.mdl). Wymagania aplikacji Posejdon jest napisany w Javie więc jest niezależny od platformy. Uruchamia się prawdopodobnie na każdym nowoczesnym komputerze. Do sukcesywnego działania aplikacji wymagane są jednak Środowisko uruchomieniowe javy od wersji 1.4 dla systemów Linux, Mac OS X oraz Windows. Poseidon nie działa w wersji javy 1.3 i starszych. Komputer z rozsądną ilością pamięci i mocnym procesorem. 512 MB pamięci RAM jest rekomendowane ale większa ilość jest dosyć pomocna. Procesor Pentium III to absolutne minimum. Specyficzny sytem operacyjny nie jest wymagany. Z sukcesami Posejdon działa w systemach Windows 98, 2000, NT oraz XP, a także na systemach Linux SuSe 6.X, 7.X, Red Hat jak i na MacOS X. W większości został jednak stworzony i testowany na systemie operacyjnym Linux. Jednakże w systemie Windows osiągi programu wydają się lepsze ze względu na szybsze środowisko uruchomieniowe Javy. Obszar roboczy programu Obszar roboczy Posejdona składa się z pięciu osobnych elementów. U góry okna znajduje się główne menu programu oraz pasek narzędzi, który zapewnia dostęp do najważniejszych funkcji. Poniżej znajdują się cztery okna wewnętrzne : ![]() Diagram Pane (okno diagramu) - Największe okno programu - Ulokowane w górnej prawej części ekranu - Wyświetla różne diagramy UML i jest głównym obszarem pracy Navigation Pane (okno nawigacji) - Okno ulokowane w górnej lewej części ekranu - Wyświetla modele i elementy modeli bazując na wybranym widoku - Zapewnia szybkie i intuicyjne poruszanie się po diagramach Overview Pane (okno podglądu projektu) - Okno ulokowane w dolnej lewej części ekranu - Widok z „lotu ptaka” zapewnia możliwie szybki dostęp do elementów projektu - Zwykle najmniejsze okno obszaru roboczego Details Pane (okno podglądu szczegółów) - Okno ulokowane w dolnej prawej części ekranu - Wyświetla wszystkie informacje o zaznaczonych elementach projektu, szczególnie ważne gdyż wyświetla cechy obiektów, które nie mogą być wyświetlone na głównym diagramie - Zapewnia możliwość edycji i zmiany cech zaznaczonych obiektów Okna programu można ukrywać oraz zmieniać ich wielkość jak w większości aplikacji. Navigation Pane (okno nawigacji) ![]() Okno nawigacji jest używane by zaprezentować elementy projektu w różnych wariantach postaci drzewa. Jest wiele sposobów w jakie można wyświetlić informacje o projekcie : np. można wyświetlić elementy drzewa poukładane alfabetycznie, według nazwy diagramu,według typów elementów, według klas, dziedziczenia, pakietów oraz stanów. The Diagram Pane (okno diagramu) ![]() Ponieważ diagramy są sercem UML'a, dlatego też okno diagramu jest głównym oknem przestrzeni roboczej. Jest to miejsce w którym konstruuje się i edytuje diagramy wchodzące w skład projektu. Okno używa mechanizmu zakładek co daje nam możliwości łatwego konfigurowania i przełączania się między poszczególnymi diagramami. The Details Panel (okno podglądu szczegółów) ![]() Okno szczegółów to okno w którym można zobaczyć informacje które ze względu na czytelność diagramów nie są wyświetlane na nich samych. Okno organizuje wszystkie informacje w czytelny sposób na siedmiu zakładkach. W zakładkach tych można odczytać wszystkie informacje o zaznaczonym elemencie, a także o elementach bezpośrednio powiązanych z zaznaczonym elementem. Można tu podejrzeć kod wynikowy wygenerowany na podstawie diagramu, zmienić cechy zaznaczonego obiektu, a także dokonywać innych operacji. Zakładki dostępne w oknie szczegółów to: - Właściwości - Style - Kod źródłowy - Dokumentacja - Ograniczenia - Wartości w znacznikach The Overview Pane (okno podglądu projektu) ![]() Im projekty robią się większe tym trudniej jest się po nich poruszać, szczególnie jeśli projekt wykracza znacznie poza rozmiary widocznego obszaru roboczego. Okno podglądu projektu umożliwia śledzenie każdego elementu znajdującego się na diagramie oraz przybliżanie i oddalanie widoku. Generowanie kodu UML nie byłby wart długotrwałej pracy gdyby tylko opierał się na graficznych diagramach. Finalnym celem projektu jest jednak wykonanie kodu źródłowego i skompilowanie do ostatecznej aplikacji czyli fizycznie uruchamialnej. Posejdon zapewnia bardzo potężne i elastyczne narzędzie do generowania kodu, bazowane na mechaniźmie wzorców. Jest używane do generowania kodu w różnych wariantach obsługując Javę i HTML oraz inne języki wymienione wcześniej. Generowanie kodu Javy jest oparte na diagramach projektu - Posejdon potrafi generować metody pobierania (get) i ustawiania (set) dla pól i metod zawartych w klasach. Ustawienia mechanizmu generowania kodu Narzędzia generowania kodu źródłowego i dokumentacji są wywoływane z menu generowania („Generation”). ![]() Posejdon oferuje nam możliwość generowania kodu źródłowego dla języków widocznych powyżej. Po wybraniu języka pojawia się okno dialogowe z opcjami. Można w nim określić obiekty dla których generujemy kod, zdefiniować wyjście dla kodu źródłowego lub dokumentacji. Okno generowania kodu źródłowego ![]() Po zaznaczeniu wszystkich opcji wygenerowane pliki (tutaj Javy) znajdą się w folderze podanym jako wyjście posortowane paczkami. Okno ustawień (tutaj wybór między innymi kompilatora Javy) ![]() Inżynieria odwrotna Programiści często natrafiają na problem ponownej reinżynierii projektu czyli pracy przy projekcie do którego nie jest dostępna żadna dokumentacja, a jedynie surowy kod źródłowy. Wtedy do gry wchodzą mechanizmy inżynierii odwrotnej - narzędzie analizujące dostępny kod i automatycznie generująca model bazowy projektu w postaci zbioru klas i diagramów go opisujących. Posejdon potrafi przeprowadzać takie operacje dla aplikacji napisanych w języku Java, ze względu na kod bajtowy który może być kompilowany bez generowania błędów. Wraz z korespondującą funkcją importu archiwów JAR, możliwość generowania kodu istnieje nawet dla kompilowanych klas Javy. Bu uruchomić ten proces należy wybrać opcję importu plików i wskazać pliki javy lub archiwa JAR na podstawie których będzie tworzony nowy model projektu. Po zatwierdzeniu efektem wyjściowym jest model projektu zawierający korespondujące pakiety, wszystkie klasy, ich kompletne interfejsy, powiązania oraz po jednym diagramie na każdy odczytywany pakiet. Jeśli importowane pliki używają klas, które są częścią JDK, to klasy te są tworzone w modelu ale reprezentowane jako klasy puste więc na diagramie mogą pojawić się ich odpowiedniki ale w nieszczegółowej postaci by oszczędzać miejsce, które zajmuje projekt i nie wyświetlać szczegółów oryginalnych klas z JDK. Pomimo, że reprezentowane są właśnie jako klasy puste nadal istnieje konieczność umieszczania tych klas w projekcie. Inżynieria wahadłowa Generowanie kodu i używanie mechanizmów inżynierii odwrotnej wielokrotnie to właśnie inżynieria wahadłowa („round-trip engineering”). Mechanizmy inżynierii odwrotnej generują nowy model z istniejącego kodu, jednak same w sobie nie dopisują kodu które powinny zostać uwzględnione poprzez zmiany w modelu. Posejdon dodaje tę funkcjonalność i obsługuje mechanizmy inżynierii wahadłowej dla UML i Javy. Jest to jedno z najbardziej wyszukanych ale bardzo praktycznych narzędzi oferowanych właśnie przez Posejdona. Generowanie dokumentacji UML'owej z istniejącego kodu źródłowego, zmiana modelu, regeneracja kodu, następnie zmiana kodu przez programistę to czynności, które w Posejdonie są monitorowane na bieżąco. Dlatego też model UML'owy jest uaktualniany podczas gdy kod źródłowy jest edytowany w ulubionym, preferowanym edytorze kodu. Usunięcie czy dodanie np. klasy w kodzie źródłowym lub na diagramie ma wpływ na jedno i drugie czyli automatycznie bez straty czasu dewelopera. Aby mechanizmy inżynierii wahadłowej działały należy je włączyć w opcjach projektu i koniecznie podać katalog nadrzędny projektu. ![]() Generowanie dokumentacji Generowana przez Posejdona dokumentacja jest zbliżona wyglądem i mechanizmami do Javadoc. Informacje takie jak komentarze do klas i metod są czytane prosto z kodu źródłowego. Jednakże jako, że Javadoc nie zawiera możliwości graficznego podglądu dokumentacji czyli diagramów w niej zawartych - tworzenie dokumentacji w formacie HTML wydaje się bardziej korzystne gdyż Posejdon ma możliwość dodania diagramów do dokumentacji co ułatwia jej czytanie i analizę. Ustawienia generowania dokumentacji Mechanizm generowania dokumentacji Posejdona potrafi generować dokumentację w formacie HTML ale równie do formatu Microsoft Word 2003. Przed rozpoczęciem generowania Posejdon oferuje wybór stylu w jaki ma być prezentowana dokumentacja. ![]() Kiedy uruchamiane jest okno dialogowe z opcjami do wyboru zostają oddane następujące opcje styli : - Default - stosuje style zawarte w umldoc.jar - Re-use from generation target - ta opcja umożliwia generowanie dokumentacji w stylu w jakim istnieje ostatnio dokonana dokumentacja. Oczywiście zaznaczenie tej opcji możliwe jest tylko wówczas gdy taka dokumentacja istnieje - Style template - zostaje użyty specyficzny plik XML ze specyfikacją stylu, do którego należy podać ścieżkę dostępu Podsumowanie Posejdon for UML Professional Edition to bardzo potężne narzędzie CASE. Przy wsparciu tworzenia aplikacji przez Posejdona wyłaniają się następujące zalety : - Projekt jest dostarczany na czas, - Uwaga dewelopera skupia się na projektowaniu i tworzeniu aplikacji, - Możliwość integracji z narzędziem Eclipse, - Ograniczanie kosztów i czasu pracy, - Generowanie bardzo szczegółowej dokumentacji w formacie HTML, - Odporność na użycie zewnętrznych narzędzi (edytory kodu), - Przyspieszenie pracy nad diagramami poprzez zaimplementowanie nowatorskiego interfejsu do ich rysowania, - Mechanizmy inżynierii odwrotnej i wahadłowej zapewniają dosyć dużą dowolność w zmianie kodu źródłowego lub projektu UML'owego bez żadnych strat w jednym i drugim. Opracowano na podstawie oficjalnej dokumentacji czyli official user guide pod adresem : http://gentleware.com/fileadmin/media/archives/userguides/poseidon_users_guide/book1.html www.gentleware.com Definicja UML'a zaczerpnięta z wolnej encyklopedii www.wikipedia.org Zastrzegam, że nie jestem autorem oryginalnej wersji tego tekstu - jest to moje opracowanie na podstawie angielskiej wersji dokumentacji i ma na celu krótkie scharakteryzowanie narzędzia jakim jest Posejdon for UML Professional. |
Indeks :: Drukuj :: E-mail |
Komentarze są własnością ich autorów. Nie ponosimy odpowiedzialności za ich treść.