Generowanie diagramu klas z XMI

Sytuacja

Mam projekt PHP z wieloma klasami z wieloma relacjami w wielu folderach następujących poZend Naming Convention.

Używam NetBeans IDE 7.1. Pracuję pod Windows 7.

Cel

Muszę zobaczyć graficzną reprezentację relacji klasowych, być może w różnych głębokościach i różnych stopniach złożoności. Ponadto byłoby miło, gdyby klasy na diagramie były klikalne. Niekoniecznie muszę generować dokumentację.

Próbowanie1. W NetBeans

NetBeans to niesamowite IDE z wieloma funkcjami. W rzeczywistości rozpoznaje zależności klasowe i rozsądnie byłoby założyć, że ma jakiś sposób graficznego wyświetlenia tej relacji, natywnie lub za pomocą wtyczki. Takipodłącz istnieje, ale jest dla wersji 5.5. Mam 7.1 i nie jest kompatybilny. Zawieść.

2. Enterprise Architect

Pojawia się proste wyszukiwanie googleEnterprise Architect jako wszechstronne, kompletne narzędzie do rozwiązywania takich problemów. Więc ściągam i instaluję. Nie zamierzam wchodzić w szczegóły tego, jak nie mogłem zrozumieć, jak cokolwiek robić, i jak tutoriale przechwalają się tym, co oprogramowanie może zrobić, ale rzadko mówiąw jaki sposób.

Więc zaimportowałem źródło. Wygenerował wiele różnych klas i przeanalizował wszystkich członków. Ponadto wygenerował diagramy klas. „Idealnie!”, Chociaż, ale niestety. Diagramy klas pokazują tylko relacje między klasami, których pliki znajdowały się w tym samym folderze źródłowym, mimo że relacje są wyraźnie zarejestrowane we właściwościach klas. Wyszukiwanie dokumentacji dotyczącej sposobu scalenia wszystkich tych diagramów w jeden nie powiodło się. Zawieść.

UWAGA: Stworzyłem równoległy wątek przed tymtutaj.

3. PHP_UML

Uznanyto narzędzie PEAR. Wyglądało dobrze. Przeczytałem więc dokumentację dotyczącą sposobu instalacji w celu instalacji z różnych źródeł i uruchomiłem go. Najpierw użyłemhtml format wyjściowy. Świetny! Mnóstwo dokumentacji z indeksem, bla bla bla. Jednak najlepsze, co może zrobić w kierunku, w którym chcę, to to: Nie trzeba chyba dodawać, że jest to bardzo słaba, super uproszczona wersja tego, czego naprawdę potrzebuję. Wniosek: porażka.

4. Enterprise Architect + PHP_UML

Jednak PHP_UML może również generować XMI. Łał. Bardzo dobrze. Mogę przechowywać moje relacje i oglądać je na różne sposoby i wymieniać się z innymi ludźmi.

Więc zaimportowałem go do Enterprise Architect. Wynik: tak samo jak wcześniej z samym Enterprise Architect, tylko bez diagramów klas. Tylko klasy. O ile przeczytałem o tym, mogę teraz ręcznie utworzyć relacje. Epicka porażka.

5. ArgoUML + PHP_UML

Gdzieś w trakcie poszukiwania rozwiązania natknąłem się na czyjąś wypowiedź, która mówi, że używająArgoUML. Pobrane i zainstalowane. XMI zaimportował z pewnymi kłopotami (musiał jawnie zmienić wersję na 1). Niepowodzenie (patrz Próba 3).

Wniosek

Takie pozornie banalne zadanie, a jednak tak trudne. Czy muszę przejśćta cała lista, wypróbować każdą aplikację?

questionAnswers(2)

yourAnswerToTheQuestion