UML建模案例——即時通信系統(tǒng)_第1頁
UML建模案例——即時通信系統(tǒng)_第2頁
UML建模案例——即時通信系統(tǒng)_第3頁
UML建模案例——即時通信系統(tǒng)_第4頁
UML建模案例——即時通信系統(tǒng)_第5頁
免費預(yù)覽已結(jié)束,剩余3頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、案例:即時通信系統(tǒng)1、 問題描述設(shè)計一個即時通信系統(tǒng),實現(xiàn)多個用戶進(jìn)行網(wǎng)上聊天的功能,各個聊天客戶端通過注冊、登錄才可以和好友進(jìn)行通信。系統(tǒng)既包括客戶端部分、也包括服務(wù)器端部分。在客戶端能夠?qū)崿F(xiàn)消息的查看,添加和刪除網(wǎng)上的好友,與選定的好友進(jìn)行通信,查詢自己與好友的聊天記錄等功能。服務(wù)器端負(fù)責(zé)好友的在線維護(hù),同時服務(wù)器還應(yīng)該具有保存用戶資料和用戶聊天記錄的功能。此外,當(dāng)用戶不在線時,收到的好友消息能夠被保存,使用戶在下次登錄時可以查看。2、建立用例模型( 1)確定參與者當(dāng)考慮構(gòu)造一個系統(tǒng)時,首先要確定系統(tǒng)的邊界,即主體。系統(tǒng)邊界定義了由誰(參與者)使用系統(tǒng),系統(tǒng)能夠為參與者提供什么功能(用例)

2、 。根據(jù)定義,參與者是指所有存在于系統(tǒng)外部并與系統(tǒng)進(jìn)行交互的人或其他系統(tǒng)。為了確定參與者,需要考慮誰或什么使用系統(tǒng),它們在與系統(tǒng)的交互中扮演什么角色,然后歸納它們。一般地,尋找參與者可以從一下問題入手:系統(tǒng)開發(fā)完成后,有哪些人會使用這個系統(tǒng)?系統(tǒng)需要從哪些人或其他系統(tǒng)獲取數(shù)據(jù)?系統(tǒng)會為哪些人或其他系統(tǒng)提供數(shù)據(jù)?系統(tǒng)會與哪些其他系統(tǒng)相關(guān)聯(lián)?系統(tǒng)是由誰維護(hù)和管理的?誰啟動或關(guān)閉系統(tǒng)?這些問題有助于抽象出系統(tǒng)的參與者。分析:對于即時通信系統(tǒng),參與聊天的客戶(Client )顯然是系統(tǒng)的參與者。為了完成在線客戶的管理和客戶信息的驗證等功能,需要有一個服務(wù)器( Server) 。為了實現(xiàn)客戶信息和通信記

3、錄的存儲等功能,需要有一個數(shù)據(jù)庫( DataBase) 。( 2)確定用例確定參與者后,就可以根據(jù)參與者來確定系統(tǒng)的用例,用例是參與者想要系統(tǒng)做的事情。需找用例可以從以下問題入手(針對每一個參與者) :參與者希望系統(tǒng)提供什么功能?參與者是否會在系統(tǒng)中創(chuàng)建、修改、刪除、訪問、存儲數(shù)據(jù)?如果是的話,參與者又是如何來完成這些操作的?參與者是否會將外部的某些事件通知給該系統(tǒng)?系統(tǒng)是否會將內(nèi)部的某些事件通知給該參與者?分析:參與者Client使用的用例有:Register (注冊賬號)、Log in (登錄系 統(tǒng))、Log out(退出系統(tǒng))、Send Messag吸送消息卜Add Friends (添

4、 加好友)、Delete Friends (刪除好友)、Query Record (查詢聊天記錄) 參與者Server使用的用例有:Log in (登錄系統(tǒng))、Log out (退出系統(tǒng)) 、 Add Friends (添加好友)等。參與者Database使用的用例有:Register注冊賬號)、Send Message 送消息)、Add Friends (添加好友)、Delete Friends (刪除好友)、 Query Record (查詢聊天記錄)等。在用例的抽取過程中,必須注意:用例必須是由某一個參與者觸發(fā)而產(chǎn)生的活動。如果存在與參與者不進(jìn)行交互的用例,就可以考慮將其并入其他用例;或

5、者檢查該用例相對應(yīng)的參與者是否被遺漏?然后補上相應(yīng)的參與者。反之,每個參與者也必須至少涉及到一個用例,如果發(fā)現(xiàn)有不與用例相關(guān)聯(lián)的參與者存在,就應(yīng)該考慮該參與者是否與系統(tǒng)發(fā)生交互?若是,則由該參與者確定一個新的用例;若不是,則該參與者是一個多余的模型元素,應(yīng)該將其刪除。3、用例描述用例圖只是在總體上描述了系統(tǒng)所能提供的各種服務(wù),但是沒有提供任何細(xì)節(jié)信息。為此,對于每個用例,還需要有詳細(xì)的說明,即用例描述。對于用例描述的格式和內(nèi)容,沒有硬性規(guī)定,但一般應(yīng)包括以下幾部分:用例名稱用例編號參與者簡要描述事件流:包括基本事件流、可選事件流和異常事件流前置條件后置條件對于上述用例圖中的用例,其描述如下表:

6、表1:用例“注冊賬號”的描述用例名稱:Register用例編號:UC001優(yōu)先級:高參與者:客戶、數(shù)據(jù)庫簡要描述:客戶在即時通信系統(tǒng)中注冊前置條件:客戶端應(yīng)用程序主界面已經(jīng)啟動基本事件流:1、客戶單擊“注冊”按鈕;2、系統(tǒng)彈出一個注冊交互對話框;3、客戶輸入注冊信息;4、客戶單擊“提交”按鈕,發(fā)送注冊信息到數(shù)據(jù)庫;5、數(shù)據(jù)庫保存注冊信息,并自動生成一個數(shù)字ID返回;6、客戶端彈出對話框顯示注冊的 ID,提示注冊成功7、用例終止??蛇x事件流:在單擊“提交”按鈕前,客戶可隨時單擊“取消”按鈕,關(guān)閉注冊窗口,返回客戶端界面異常事件流:提示注冊錯誤,請稍后再試,客戶確認(rèn),然后返回客戶端主界面后置條件:

7、客戶獲得一個ID,可用此ID登錄系統(tǒng)開始即時通信表2:用例“登錄系統(tǒng)”的描述用例名稱:Log in用例編號:UC002優(yōu)先級:高參與者:客戶、服務(wù)器簡要描述:客戶登錄即時通信系統(tǒng)前置條件:客戶端應(yīng)用程序主界面已經(jīng)啟動, 并且已經(jīng)有了注冊ID基本事件流:1、客戶輸入ID和密他;2、客戶單擊“登錄”按鈕,發(fā)送登錄請求到服務(wù)器; 3、服務(wù)器執(zhí)行“驗證用戶”用例,將登錄請求中的 信息發(fā)送給數(shù)據(jù)庫;4、數(shù)據(jù)庫將ID和密碼與數(shù)據(jù)庫中的注冊記錄比對; 5、如果用戶信息合法,數(shù)據(jù)庫發(fā)送合法信息、用戶 的詳細(xì)注冊資料和用戶不在線期間收到的離線消息 給服務(wù)器,否則進(jìn)入可選事件流。6、服務(wù)器將客戶加入在線用戶列表,

8、返回登錄成功 消息和離線消息給客戶,并將在線用戶列表發(fā)送給所 有的在線用戶。7、提示登錄成功,更新好友列表的狀態(tài)信息并顯示 離線消息8、用例終止可選事件流:將用戶不合法消息發(fā)送給客戶,提示重新登錄異常事件流:提不登錄失敗,請稍后再試,客戶確認(rèn),然后返回客戶端主界面后置條件:主界面顯不用戶好友及好友的在線狀態(tài)表4:用例“添加好友”的描述用例名稱:Send Message用例編號:UC003優(yōu)先級:高參與者:客戶、數(shù)據(jù)庫簡要描述:客戶給自己的好友(在線和離線)發(fā)送消息前置條件:客戶已成功登錄即時通信系統(tǒng)基本事件流:1、客戶選擇一個好友;2、系統(tǒng)激活主界面消息編輯文本框;3、客戶在文本框中輸入、編輯

9、消息,然后單擊“發(fā) 送”按鈕;4、如果好友不在線,發(fā)送消息給數(shù)據(jù)庫,數(shù)據(jù)庫保 存該聊天記錄;否則執(zhí)行可選事件流5、數(shù)據(jù)庫返回聊天記錄已保存的通知。6、系統(tǒng)提示“對方在登錄時會看到您發(fā)的消息”7、用例終止可選事件流:1、從好友列表中讀出此用戶的通信參數(shù),將消息直接發(fā)送給用戶2、用戶返回消息收到通知3、系統(tǒng)提示客戶“消息已成功發(fā)送對方”異常事件流:提示消息發(fā)送失敗,請稍后再試,客戶確認(rèn),然后返回客戶端主界面后置條件:客戶返回登錄后的主界面狀態(tài)用例名稱:Add Friends用例編號:UC004優(yōu)先級:高參與者:客戶、數(shù)據(jù)庫、服務(wù)器簡要描述:客戶端查詢數(shù)據(jù)庫列表并選擇添加好友前置條件:客戶已成功登錄即時通信系統(tǒng)基本事件流:1、客戶單擊“添加好友”按鈕;2、系統(tǒng)彈出“用戶瀏覽”對話框;3、客戶端發(fā)送查詢請求給數(shù)據(jù)庫;4、數(shù)據(jù)庫返回用戶信息給用戶瀏覽對話框5、客戶選擇需要添加的好友,并單擊“添加”按鈕。6、系統(tǒng)更新客戶的好友列表,新添加的好友展示為離線狀態(tài);7、客戶發(fā)送剛添加的好友消息給服務(wù)器;8、服務(wù)器查詢在線用戶列表,如果用戶在線,返回消息給客戶,否則執(zhí)行可

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論