值得說明的是,絕大多數用例可以在系統需求分析階段確定,但隨著系統的進展,可能會發現更多的用例,甚至會發現前面定義的用例存在不夠確切或錯誤的地方,需要重新修改。因此,在整個系統開發過程中,都應當時刻關注用例。
特定領域分析
分析階段的另一項工作是特定領域分析,以列出系統中的特定領域類。我們可以通過閱讀規格說明、用例以及尋找系統處理的"概念"來進行特定領域分析,也可以通過用戶和領域專家的討論,以識別出要處理的所有關鍵類及它們的相互關系。這里的特定領域是指具體的商業領域,而不是整個系統領域。
在本實例中,可以確定商業MIS中的特定領域類為商品、保質商品、非保質商品、物品、銷售、訂貨、庫存、廠商,并使用類圖來描述系統領域類及其關系。
需要強調的是,這一階段對特定領域類的描述具有一定的素描性質,也就是說特定領域類的操作和屬性不一定與最終實現時的定義一致。因為此時還沒有涉及到系統功能的具體實現,不可能準確、完整地定義它們。有一些操作需要在設計階段細化時才能確定。
此外,為了描述領域類的動態行為,可以使用UML中的任何一種動態圖(如順序圖、活動圖、合作圖、狀態圖)。本階段的各動態圖都具有素描性質,主要是為了協助對領域類及其相互關系的分析,為下一階段的具體設計打下基礎。
UML建模是很靈活的過程,使用者不必面面俱到地畫出各種圖。對于每一幅圖,只有在必要時(比如能幫助分析、設計、指導編碼、加深理解、促進交流等)才需要畫出,這樣的圖對建模才有意義,否則會浪費精力而事倍功半。