2011-07-18 12 views
5

Mam bardzo duży program serwera napisany w Javie. Został napisany przez innego programistę, który nie jest już z firmą i jest bardzo złożony.W jaki sposób mogę utworzyć diagram przepływu mojego programu?

Składa się z 23 paczek i używam zaćmienia.

Potrzebuję programu, który pobierze pliki źródłowe z mojego programu i utworzy rodzaj strumienia przepływu dla funkcji. Zacznij od klasy, która ma główną i wykonaj to, przez które klasy wywołuje w swoim konstruktorze.

Zasadniczo nauczyłem się, że program intensywnie korzysta z interfejsów i chcę wizualnie przedstawić działanie serwera, zamiast śledzić kilka funkcji linii w interfejsach, zanim przejdę do rzeczywistej funkcji przetwarzania. rzecz typu wykresu przepływu pozwoli mi zobaczyć, gdzie skończy się funkcja.

Czy ktoś wie o jakimkolwiek dostępnym programie, który mógłby to dla mnie zrobić?

Nie mam nic przeciwko temu, w jakim formacie jest reprezentacja wizualna, o ile jest łatwa do naśladowania.

+1

Określenie, którego szukasz, to prawdopodobnie [Diagram sekwencji] (http://en.wikipedia.org/wiki/Sequence_diagram). Zobacz te pytania i odpowiedzi: http://stackoverflow.com/questions/4470329/free-uml-sequence-diagram-reverse-engineering-eclipse-plugin-working-out-of-the-b –

Odpowiedz

2

To jest to, czego szukasz:

http://www.objectaid.com/

+0

Czy będzie działać z wieloma pakietami? – Skeith

+0

Diagramy klas ObjectAid UML Explorer oparte są na specyfikacji UML 2.0 OMG (patrz http://www.omg.org/uml/). Mogą zawierać istniejące klasy Java, interfejsy, wyliczenia, adnotacje (zbiorczo zwane teraz klasyfikatorami zgodnie z UML 2.0), a także pakiety i podstawowe pakiety (na przykład pliki JAR i foldery źródłowe). –

1

Sekwencja w dowolnym programie znacznej wielkości jest tak skomplikowane, że automatyczne narzędzie (jeśli istnieje) jest bezużyteczna - zbyt wiele drzew, nie ma lasu.

To jest uzasadnione do generowania diagramów klas, a następnie ręcznie przycinać je i organizować je, aby pokazać organizację programu, jak go odkryć.

Aby zobaczyć rzeczywisty przepływ programu, I recommend using debugger breakpoints and then a good profiler. Zwykle stosunkowo łatwo jest znaleźć miejsce, w którym dzieje się coś ważnego - zazwyczaj pytanie brzmi "jak to się tu dzieje?". Robić notatki; kiedy myślisz, że dobrze rozumiesz przepływ, zrób diagram.

Kolejnym pakietem do tworzenia diagramów, który bardzo lubię, jest PlantUML. Brakuje wielu funkcji UML, ale pozwala na bardzo szybkie tworzenie diagramów, z dokładnym źródłem w plikach .java i zawartym w JavaDoc.

+1

Jest to metoda, której używam w tej chwili, ale minęły 4 miesiące i nadal nie mam pełnej kontroli nad systemem :( – Skeith

Powiązane problemy