Диаграмма последовательности обратного инжиниринга - PullRequest
27 голосов
/ 18 сентября 2008

Я ищу инструмент, который преобразует Java в диаграмму последовательности, НО также предоставляет возможность отфильтровывать вызовы определенных библиотек.

Например, среда IDE Netbeans отлично справляется с этой задачей, но включает все вызовы String или Integer, которые загромождают диаграмму до такой степени, что она становится непригодной для использования.

Любая помощь очень ценится !!!!!!!

Ответы [ 13 ]

10 голосов
/ 25 сентября 2012

Я считаю, что идеальным инструментом для решения вашей проблемы является Diver: динамические интерактивные представления для обратного инжиниринга. Он предоставляет как статические, так и динамические диаграммы последовательности и ищет решения всех ваших требований по вашему вопросу.

Это плагин для Eclipse, который позволяет вам:

  • Простое отслеживание ваших программ на Java
  • Визуализация функциональности вашей программы во время выполнения
  • Фильтруйте ваши следы, чтобы сделать их более компактными
  • Фильтрация вашей IDE на основе того, что происходит во время выполнения
  • Посмотрите, какой код запускался в редакторах исходного кода

Он находится на Github , а также есть веб-сайт проекта

Полное раскрытие информации: я являюсь руководителем проекта для Diver

10 голосов
/ 07 февраля 2012

Попробуйте MaintainJ . MaintainJ генерирует диаграммы последовательности во время выполнения для варианта использования. Он предоставляет несколько способов отфильтровать нежелательные звонки . Да, фильтрация нежелательных вызовов является наиболее важной функцией, необходимой в инструментах генерации диаграмм последовательности. Кроме того, MaintainJ предоставляет удобный интерфейс для изучения диаграммы и поиска вызовов в одном или нескольких случаях использования.

Проверьте демонстрационное видео , чтобы получить быстрый обзор.

Кстати, я - автор MaintainJ.

9 голосов
/ 21 сентября 2008

Я думаю jtracert - это то, что вы ищете. Он генерирует диаграмму последовательности из работающей Java-программы. Кроме того, поскольку его выходные данные представляют собой текстовое описание диаграммы (в форматах нескольких популярных инструментов SD), вы можете использовать grep для фильтрации только интересующих вас классов.

6 голосов
/ 27 августа 2010

JTracert больше не выпускается. На месте они рекомендуют http://www.jsonde.com/

3 голосов
/ 19 апреля 2010

У меня есть инструмент, который точно соответствует вашим требованиям. Проверьте это

http://sourceforge.net/projects/javacalltracer/

В дополнение к тому, что это инструмент обратного проектирования для Java, он также очень легкий. Вы можете контролировать то, что вы хотите записать из вашей Java-программы.

1 голос
/ 14 мая 2012

MaintainJ - действительно замечательный инструмент. Недавно я начал использовать с MaintainJ вместе с моим приложением, и это дает мне больше удобства при использовании всей системы для понимания моей системы на основе последовательности Maintainj и диаграмм UML.

Я уверен, что ответ на этот вопрос MaintainJ даст лучшую идею. Спасибо, Кришна М.М.

1 голос
/ 13 мая 2012

Heatlamp (http://www.jmolly.com/heatlamp/) был разработан именно для этой цели.

Он генерирует интерактивные (и печатные) диаграммы из запущенного кода Java. Вы можете указать фильтры для описания классов, пакетов и методов для отслеживания. Вы также можете искать, фильтровать и свернуть вызовы после визуализации диаграммы, чтобы еще больше уменьшить диаграмму последовательности.

Отказ от ответственности: я автор Heatlamp.

1 голос
/ 18 марта 2009

Взгляните на http://www.maintainj.com

Он не знает, может ли он фильтровать вызовы библиотеки, но он имеет разумный графический интерфейс и, кажется, отслеживает даже очень большие приложения.

1 голос
/ 23 сентября 2008

Корпоративный архитектор из Sparx заявляет, что он способен перепроектировать Java-код, включая создание диаграмм последовательности - см. Этот раздел руководства пользователя

Похоже, что он может записывать сеанс отладки, а затем вы генерируете диаграмму последовательности из этого

Я не пробовал (хотя использовал EA в качестве инструмента моделирования), так что ymmv!

Доступна бесплатная 30-дневная ознакомительная версия

0 голосов
/ 31 января 2016

JIVE (www.cse.buffalo.edu/jive) создаст диаграмму последовательности из выполнения Java-программы. Он имеет возможность фильтра исключения, что позволит вам исключить объекты, принадлежащие к назначенным классам или пакетам. JIVE может рисовать диаграммы последовательности для выполнения многопоточных программ Java. Он также может компактировать большие диаграммы как в горизонтальном, так и в вертикальном измерении под руководством пользователя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...