2012-11-12 38 views
5

我正在尋找一種工具,可以讓我繪製應用程序,服務器等的依賴關係圖。我們有很多服務器和很多數據庫,並且沒有辦法跟蹤什麼取決於什麼。 請注意,我並不是在討論項目中的代碼或類依賴關係,而是依賴於服務器,數據庫等。具有自動佈局調整的免費依賴關係映射工具?

當我坐下來創建一個示例圖,我結束了這樣的事情:

bad map

現在,我在紙上或MS畫圖這樣做的問題是,佈局不可調整。例如,如果我在上面的示例中使用了一個節點並將其移動了,我希望其他線和節點適應剛剛移動的那個新位置。

我檢查了一些「思維導圖」應用程序,如FreeMind,並發現它過於限制。例如,在那個應用程序中,你不能自由地繪製東西並連接它,你必須指定節點及其關係(子節點,父節點,兄弟節點)。此外,沒有任何評論的能力。例如在上面的圖片中,我希望能夠爲地圖中的每個東西都包含註釋,但是在點擊該對象之前將它們隱藏起來。通過這種方式,我可以寫出很多關於關係和歷史的文字,而不會混淆地圖。

在最基本的層面上,我想要的只是一個超級簡單的應用程序,它可以讓我畫正方形,插入文本(和隱藏註釋)並用箭頭連接它們,然後讓我移動正方形並且周圍的方格和箭頭會自動調整。

+1

Off topic?常見問題解答說程序員使用的軟件問題是可以接受的。這是關於軟件,我作爲程序員,需要更好地組織東西,這樣當我編寫代碼時,我可以輕鬆查看關於我的資源選擇的更大圖片。 – CptSupermrkt

+0

我同意OP的評論,這個話題對我來說似乎足夠重要。我想可以選擇尼特,並聲稱圖表的主題更多地位於系統管理員的領域,而不是程序員,但並不是每個人都在角色明確劃分的組織中工作。我敢打賭,我不是唯一需要設計開發和部署系統配置的程序員。 –

+0

您是否嘗試過繪製一個簡單的免費工具draw.io來繪製圖表? – beny23

回答

5

製作這種通用圖的好工具是GraphViz。您指定的輸入作爲.DOT文件,其中包含類似指令(你的例子):

digraph G { 
    web_app -> server1 
    web_app -> sql_database 
    web_app -> repository 
    server1 -> esx_server1 
    ... 
} 

(有很多種格式的指令,如適當的標籤,你會在頂點使用,而不是短名稱我已經在上面使用了。)

然後運行一個命令行工具將圖形佈局爲圖像。有許多佈局算法,因此經常會使用試驗和錯誤來找到最適合您的圖形的算法。

GraphViz可以在許多圖表上做出相當不錯的佈局工作。但最重要的是基於文本的輸入;很容易從程序自動生成輸入,或將其保存在版本控制中等。