UML---之StarUML使用
sourceforge上的主頁: http://sourceforge.net/projects/staruml/
sourceforge工程是用Delphi寫的, 對非Delphi程式設計師來說, 編譯不便,要下載一堆開發環境.
http://staruml.sourceforge.net/en/development-setting.php
sourceforge上的主頁上只提供了原始碼工程下載, 沒有安裝版下載.
最新的安裝版下載點是2006年的, http://sourceforge.net/projects/staruml/files/staruml/5.0/
http://cdnetworks-kr-2.dl.sourceforge.net/project/staruml/staruml/5.0/staruml-5.0-with-cm.exe
安裝之後,實驗了效果, 不是很漂亮, 和Rose差不多. 但是對c++工程的正向和反向支援的很好, 這才是用UML工具的真正目的.
startUML安裝程式和幫助檔案做的很好.
UML雙向操作的選單:
正向後的程式碼:
選擇設計模式, 對程式碼進行優化設計:
設計模式中包含經典設計模式:
感覺比rose2003好用, 主要還是免費的, 支援UML2.0(最新的標準是UML2.3).
現在需要拿一個實際工程來開刀, 按照正式開發中的需求來驗證starUML的雙向.
最理想的狀態是避開IDE的差別, 只針對c++的實現檔案.
要對遺留的工程寫詳細設計文件(或研究修改開源工程)時, 進行UML反向能極大的提高工作效率.
<2011_0315>
對一個實際的工程<基於xerces-c2.8操作的XML業務層DLL>進行初步逆向, 分析調整逆向結果, 再正向到實際工程中.
如果從頭設計的話, 應該是:
* 確定軟體需求
* 建立工程框架, 逆向成UML模型
* D1: 在UML中修改設計, 正向到工程
* D2: 在工程中修改設計, 逆向到UML模型
* 如此反覆上面D1和D2, 完成詳細設計.
先逆向此DLL的測試程式testLsXmlParserDll, 可以驗證使用元件時, 隱藏元件資訊的實用性。
對於呼叫者來說,只要元件是正確的(當作第三方的實現, 如果元件不正確,修改升級也是在元件內進行),
不關心元件實現,只關注自己負責的實現和元件提供的介面定義.
StartUML的UML正向反向實驗結論:
* StarUML與c++編譯器和IDE都無關, 逆向時只針對.h.
* 適合與反向, 任何的更改都從c++工程本身開始, 然後逆向到UML. 適用與補充設計文件和預研陌生的工程.
* 正向有問題, 更改後的UML生成檔案時, 檔案的目錄可以指定到工程目錄, 但是檔名稱不能指定。導致生成的檔案.h和.cpp與原工程的類檔案不同名, 需要手工合併. 如果UML變化較大, 手工合併會很不便.
---------------------
作者:lostspeed
來源:CSDN
原文:https://blog.csdn.net/lostspeed/article/details/6248153
版權宣告:本文為博主原創文章,轉載請附上博文連結!