[英]Sequence Diagram Reverse Engineering
我正在尋找一種工具,可以將Java反向工程為序列圖。但也提供了過濾掉某些庫調用的功能。
例如,Netbeans IDE在這方面做得非常出色,但它包括對String或Integer的所有調用,這會使圖表混亂到無法使用的程度。
任何幫助是極大的贊賞!!!!!!!
試試MaintainJ 。 MaintainJ在運行時為用例生成序列圖。 它提供了多種方法來過濾掉不需要的呼叫 。 是的,過濾掉不需要的調用是序列圖生成工具中最重要的功能。 此外,MaintainJ提供了一個簡潔的界面來探索圖表並在一個用例或用例中搜索調用。
查看演示視頻以獲得快速概述。
順便說一句,我是MaintainJ的作者。
我認為jtracert就是你要找的東西。 它從正在運行的Java程序生成序列圖。 此外,因為它的輸出是圖表的文本描述(以幾種流行的SD工具的格式),您可以使用grep僅過濾您感興趣的類。
JTracert現已停產。 到位,他們推薦http://www.jsonde.com/
我有一個完全符合您要求的工具。 看看這個
http://sourceforge.net/projects/javacalltracer/
除了作為java的逆向工程工具之外,它還非常輕量級。 您可以從java程序中控制要記錄的內容。
Heatlamp( http://www.jmolly.com/heatlamp/ )就是為了這個目的而設計的。
它通過運行Java代碼生成交互式(和可打印的)圖表。 您可以指定過濾器來描述要跟蹤的類,包和方法。 您還可以在呈現圖表后搜索,過濾和折疊調用,以進一步減少序列圖。
免責聲明:我是Heatlamp的作者。
MaintainJ是非常棒的工具,最近我開始使用MaintainJ和我的應用程序,它讓我更加舒適地了解我的系統,基於Maintainj序列和UML圖表來理解我的系統。
我相信上面的問題,MaintainJ會給出更好的主意。 謝謝,克里希納MM
它不知道,它是否可以過濾庫調用,但它有一個合理的圖形前端,似乎跟蹤甚至非常大的應用程序。
我剛剛開始使用Sparx Systems Enterprise Architect中的序列圖記錄功能。 它對C#非常有效。 您可以按類和方法創建過濾器。 我實際上是在試圖找出是否有可能過濾掉整個包裹。 有一個用於自動排除外部模塊(如.NET Framework)的復選框,它有助於整理。 YMMV for Java,但我認為他們對Java的支持(和文檔)通常比.NET更好(更多示例)。
這是Asgeir答案的附加內容。 這是我找到的鏈接。
http://www.zanthan.com/ajm/sequencev7/sequence.jar
從命令行運行...“java -jar sequence.jar”...這是一個帶有GUI的Java應用程序。
幫助部分說:SEQUENCE是一個用於生成UML序列圖的程序。 與大多數類似的程序相比,您實際上並沒有繪制圖表。 而是編寫您想要繪制的方法調用的文本描述,並自動計算和繪制布局。
所以這個工具不會對任何東西進行反向工程,但是如果你想從頭開始快速繪制圖形,我可以看到它是如何有用的。 看起來它建於2002年,我認為現在可能有更好的工具。
這是另一個類似的工具: http : //sdedit.sourceforge.net/example/index.html
這看起來是一個非常好的工具: http : //www.architexa.com/learn-more/sequence-diagrams
但它看起來只有一年免費,然后是每年250美元。 游民。
我發現ModelGoon插件很有幫助。 它有點受限,因為您選擇單個方法作為序列圖的起點,並且它僅顯示方法所做的調用(因此需要更深層次地生成另一個圖表。)
JIVE(www.cse.buffalo.edu/jive)將根據Java程序的執行構建一個序列圖。 它具有排除過濾器功能,允許您排除屬於指定類或包的對象。 JIVE可以繪制多線程Java程序執行的序列圖。 在用戶指導下,它還具有水平和垂直尺寸的緊湊大圖。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.