UML軟件開發與建模工具Enterprise Architect教程:使用案例指標的項目估算
Enterprise Architect是一個對于軟件系統開發有著極好支持的CASE軟件(Computer Aided Software Engineering)。EA不同于普通的UML畫圖工具(如VISIO),它將支撐系統開發的全過程。在需求分析階段,系統分析與設計階段,系統開發 及部署等方面有著強大的支持,同時加上對10種編程語言的正反向工程,項目管理,文檔生成,數據建模等方面。可以讓系統開發中各個角色都獲得最好的開發效率。
在估算項目規模之前,您首先需要配置技術和環境因素(請參閱菜單項“配置-度量和估算類型-TCF和ECF值”)。對于TCF(技術復雜性因子)和ECF(環境復雜性因子),可編輯的表格均包含影響項目生產率的因素列表。權重與每個因素相關聯,反映了該因素相對影響生產力的程度。權重與項目無關。提供的因子及其關聯的權重由用例點方法定義,盡管可以根據項目的特定需求進行調整。對于大多數目的,唯一需要調整的表列將是“值”,它表示特定因素對項目的影響程度。作為建議的量具,
在使用UML用例構建項目來描述所建議的功能時,應為每個用例分配一個等級:
- 簡單(5分):用例被認為是一項簡單的工作,使用簡單的用戶界面,并且僅涉及單個數據庫實體;它的成功方案不到三步;它的實現涉及不到5個類
- 中(10分):用例更加困難,涉及更多的界面設計,并且涉及2個或更多的數據庫實體;其成功方案有4到7個步驟;它的實現涉及5到10個類
- 復雜(15分):用例非常困難,涉及復雜的用戶界面或處理,并且涉及3個或更多數據庫實體;它的成功方案有七個步驟;它的實現涉及十多個類
上面是分配復雜性的不同接受方法,但它們只是粗略的指導原則。如果編寫的應用程序沒有持久性而是復雜的處理,則必須使用判斷來分配復雜性等級。
在構建用例時,請注意,您也可以將它們分配給階段(例如1.0、1.1),然后再根據階段過濾估算值。您還可以在用例的“標記”字段中輸入自由文本,并根據標記信息(例如<URGENT>)過濾估計值。
Karner的UCP方法還通過考慮項目參與者及其貢獻復雜性來計算項目工作量。可以將參與者包括在估算計算中;默認情況下,僅考慮用例。如果還包括項目參與者,請確保已通過某種方法分配了他們的復雜性。下面提供了此作業的粗略準則:
- 容易:參與者代表具有定義的API的另一個系統
- 媒介:參與者代表通過協議(例如TCP / IP)進行交互的另一個系統
- 復雜:演員是通過界面進行交互的人。
設置好用例,參與者和環境后,在項目瀏覽器中突出顯示您要估計其內容的包;對于整個項目,選擇根視圖。接下來,從菜單中選擇Project-Use Case Metrics。將出現以下屏幕:
這詳細說明了項目的復雜性信息:
- 技術復雜度系數是根據您設置的值計算得出的
- 根據您設置的值計算環境復雜度
- 未經調整的用例點數(UUCP)=用例復雜性等級之和*
- 將UUCP與TCF和ECF因子相乘以生成加權用例點數(UCP)
- 結果數乘以每個UCP的默認小時數得出最終估算值
- 還顯示每個簡單,中等和困難用例的平均小時數
盡管Karner的UCP方法建議在此計數中排除包含和擴展的用例,但是Enterprise Architect在計算時會考慮所有用例。如果這些用例需要開發功能,則工作仍然存在,應予以考慮。
關鍵因素是“默認工時”變量-最好根據類似項目的經驗來定義。盡管將Enterprise Architect的默認值設置為10小時,但根據環境的不同,此變量可能很容易超過30小時。
根據您的獨特環境準確配置新項目的最佳方法是考慮已完成項目的用例。在按照上面的說明配置完成的項目并運行指標報告之后,可以對可用因子進行微調以產生與實際工時匹配的估計。然后,您可以開始使用這些數字作為基準。
請注意,一個很好的健全性檢查是查看“每個用例的平均工作小時數”:如果您認為可以在允許的時間內構建一個簡單的用例(包括設計,測試,文檔編制,審查等過程)。
=====================================================
想要了解或購買Enterprise Architect正版版權,請
關注下方微信公眾號,及時獲取產品最新消息和最新資訊
