對我而言,目前還不能很好地回答這個問題。從來沒有在項目中使用過模型,這還是因為以前項目不靠建模也能完成,沒有用戶,哪來的需求分析呢?UML建模,決定你建的是雞窩還是摩天大樓,但是我做過的項目甚至連雞窩都算不上。
用例圖對應的是用例模型,在實際項目中,有用戶,有團隊,不再是自己一個人敲的事情了,人多了,需要交流,為了避免歧義,我們得用標准化的交流方法。
建立用例模型的目的是提取和分析足夠的需求信息,這個模型能讓用戶明白這個系統是否符合自己的預期要求,不涉及實現細節。以我們寫過的網絡游戲項目為例,在建模之前,一系列的需求調研是必須的,需求調研與需求分析工作應當是相輔相伴共同進行的。但是我們沒有用戶,所以就以自己玩網游的經驗提取了用戶需求。
一般網游,都設置了不同的職業,我們選擇划分為三個職業。用戶在連接上服務器后,可以選擇登錄或注冊。玩家在體驗游戲過程中,可以享受音樂,和其他玩家聊天,升級打怪,做任務,還有虛擬的金錢交易。基本上一個網游的基本需求就是這樣。畫出的用例圖如下:
現在站在完全不懂技術的普通用戶角度,我們可以這樣理解,選擇這款游戲,我能夠享受音樂,注冊個人帳號,並登錄體驗游戲。這個游戲有NPC,能夠戰斗,也能升級換裝備做任務。這不就是我們當初規划的系統功能嗎?
這個用例圖在具體實現過程中指導着我們具體努力方向,便於技術人員之間的溝通和模塊划分。