版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、案例:即時(shí)通信系統(tǒng)1、 問(wèn)題描述設(shè)計(jì)一個(gè)即時(shí)通信系統(tǒng),實(shí)現(xiàn)多個(gè)用戶進(jìn)行網(wǎng)上聊天的功能,各個(gè)聊天客戶端通過(guò)注冊(cè)、登錄才可以和好友進(jìn)行通信。系統(tǒng)既包括客戶端部分、也包括服務(wù)器端部分。在客戶端能夠?qū)崿F(xiàn)消息的查看,添加和刪除網(wǎng)上的好友,與選定的好友進(jìn)行通信,查詢(xún)自己與好友的聊天記錄等功能。服務(wù)器端負(fù)責(zé)好友的在線維護(hù),同時(shí)服務(wù)器還應(yīng)該具有保存用戶資料和用戶聊天記錄的功能。此外,當(dāng)用戶不在線時(shí),收到的好友消息能夠被保存,使用戶在下次登錄時(shí)可以查看。2、建立用例模型(1)確定參與者當(dāng)考慮構(gòu)造一個(gè)系統(tǒng)時(shí),首先要確定系統(tǒng)的邊界,即主體。系統(tǒng)邊界定義了由誰(shuí)(參與者)使用系統(tǒng),系統(tǒng)能夠?yàn)閰⑴c者提供什么功能(用例)。
2、根據(jù)定義,參與者是指所有存在于系統(tǒng)外部并與系統(tǒng)進(jìn)行交互的人或其他系統(tǒng)。為了確定參與者,需要考慮誰(shuí)或什么使用系統(tǒng),它們?cè)谂c系統(tǒng)的交互中扮演什么角色,然后歸納它們。一般地,尋找參與者可以從一下問(wèn)題入手:l 系統(tǒng)開(kāi)發(fā)完成后,有哪些人會(huì)使用這個(gè)系統(tǒng)?l 系統(tǒng)需要從哪些人或其他系統(tǒng)獲取數(shù)據(jù)?l 系統(tǒng)會(huì)為哪些人或其他系統(tǒng)提供數(shù)據(jù)?l 系統(tǒng)會(huì)與哪些其他系統(tǒng)相關(guān)聯(lián)?l 系統(tǒng)是由誰(shuí)維護(hù)和管理的?l 誰(shuí)啟動(dòng)或關(guān)閉系統(tǒng)?這些問(wèn)題有助于抽象出系統(tǒng)的參與者。分析:l 對(duì)于即時(shí)通信系統(tǒng),參與聊天的客戶(Client)顯然是系統(tǒng)的參與者。l 為了完成在線客戶的管理和客戶信息的驗(yàn)證等功能,需要有一個(gè)服務(wù)器(Server)。l
3、 為了實(shí)現(xiàn)客戶信息和通信記錄的存儲(chǔ)等功能,需要有一個(gè)數(shù)據(jù)庫(kù)(DataBase)。(2)確定用例確定參與者后,就可以根據(jù)參與者來(lái)確定系統(tǒng)的用例,用例是參與者想要系統(tǒng)做的事情。需找用例可以從以下問(wèn)題入手(針對(duì)每一個(gè)參與者):l 參與者希望系統(tǒng)提供什么功能?l 參與者是否會(huì)在系統(tǒng)中創(chuàng)建、修改、刪除、訪問(wèn)、存儲(chǔ)數(shù)據(jù)?如果是的話,參與者又是如何來(lái)完成這些操作的?l 參與者是否會(huì)將外部的某些事件通知給該系統(tǒng)?l 系統(tǒng)是否會(huì)將內(nèi)部的某些事件通知給該參與者?分析:l 參與者Client使用的用例有:Register(注冊(cè)賬號(hào))、Log in(登錄系統(tǒng))、Log out(退出系統(tǒng))、Send Message(發(fā)
4、送消息)、Add Friends (添加好友)、Delete Friends(刪除好友)、Query Record(查詢(xún)聊天記錄)等。l 參與者Server使用的用例有:Log in(登錄系統(tǒng))、Log out(退出系統(tǒng))、Add Friends (添加好友)等。l 參與者Database使用的用例有:Register(注冊(cè)賬號(hào))、Send Message(發(fā)送消息)、Add Friends (添加好友)、Delete Friends(刪除好友)、Query Record(查詢(xún)聊天記錄)等。在用例的抽取過(guò)程中,必須注意:用例必須是由某一個(gè)參與者觸發(fā)而產(chǎn)生的活動(dòng)。如果存在與參與者不進(jìn)行交互的用例
5、,就可以考慮將其并入其他用例;或者檢查該用例相對(duì)應(yīng)的參與者是否被遺漏?然后補(bǔ)上相應(yīng)的參與者。反之,每個(gè)參與者也必須至少涉及到一個(gè)用例,如果發(fā)現(xiàn)有不與用例相關(guān)聯(lián)的參與者存在,就應(yīng)該考慮該參與者是否與系統(tǒng)發(fā)生交互?若是,則由該參與者確定一個(gè)新的用例;若不是,則該參與者是一個(gè)多余的模型元素,應(yīng)該將其刪除。3、用例描述用例圖只是在總體上描述了系統(tǒng)所能提供的各種服務(wù),但是沒(méi)有提供任何細(xì)節(jié)信息。為此,對(duì)于每個(gè)用例,還需要有詳細(xì)的說(shuō)明,即用例描述。對(duì)于用例描述的格式和內(nèi)容,沒(méi)有硬性規(guī)定,但一般應(yīng)包括以下幾部分:l 用例名稱(chēng)l 用例編號(hào)l 參與者l 簡(jiǎn)要描述l 事件流:包括基本事件流、可選事件流和異常事件流l
6、 前置條件l 后置條件對(duì)于上述用例圖中的用例,其描述如下表:表1:用例“注冊(cè)賬號(hào)”的描述用例名稱(chēng):Register用例編號(hào):UC001優(yōu)先級(jí):高參與者:客戶、數(shù)據(jù)庫(kù)簡(jiǎn)要描述:客戶在即時(shí)通信系統(tǒng)中注冊(cè)前置條件:客戶端應(yīng)用程序主界面已經(jīng)啟動(dòng)基本事件流:1、客戶單擊“注冊(cè)”按鈕;2、系統(tǒng)彈出一個(gè)注冊(cè)交互對(duì)話框;3、客戶輸入注冊(cè)信息;4、客戶單擊“提交”按鈕,發(fā)送注冊(cè)信息到數(shù)據(jù)庫(kù);5、數(shù)據(jù)庫(kù)保存注冊(cè)信息,并自動(dòng)生成一個(gè)數(shù)字ID返回;6、客戶端彈出對(duì)話框顯示注冊(cè)的ID,提示注冊(cè)成功7、用例終止??蛇x事件流:在單擊“提交”按鈕前,客戶可隨時(shí)單擊“取消”按鈕,關(guān)閉注冊(cè)窗口,返回客戶端界面異常事件流:提示注冊(cè)
7、錯(cuò)誤,請(qǐng)稍后再試,客戶確認(rèn),然后返回客戶端主界面后置條件:客戶獲得一個(gè)ID,可用此ID登錄系統(tǒng)開(kāi)始即時(shí)通信表2:用例“登錄系統(tǒng)”的描述用例名稱(chēng):Log in用例編號(hào):UC002優(yōu)先級(jí):高參與者:客戶、服務(wù)器簡(jiǎn)要描述:客戶登錄即時(shí)通信系統(tǒng)前置條件:客戶端應(yīng)用程序主界面已經(jīng)啟動(dòng),并且已經(jīng)有了注冊(cè)ID基本事件流:1、客戶輸入ID和密碼;2、客戶單擊“登錄”按鈕,發(fā)送登錄請(qǐng)求到服務(wù)器;3、服務(wù)器執(zhí)行“驗(yàn)證用戶”用例,將登錄請(qǐng)求中的信息發(fā)送給數(shù)據(jù)庫(kù);4、數(shù)據(jù)庫(kù)將ID和密碼與數(shù)據(jù)庫(kù)中的注冊(cè)記錄比對(duì);5、如果用戶信息合法,數(shù)據(jù)庫(kù)發(fā)送合法信息、用戶的詳細(xì)注冊(cè)資料和用戶不在線期間收到的離線消息給服務(wù)器,否則進(jìn)入
8、可選事件流。6、服務(wù)器將客戶加入在線用戶列表,返回登錄成功消息和離線消息給客戶,并將在線用戶列表發(fā)送給所有的在線用戶。7、提示登錄成功,更新好友列表的狀態(tài)信息并顯示離線消息8、用例終止可選事件流:將用戶不合法消息發(fā)送給客戶,提示重新登錄異常事件流:提示登錄失敗,請(qǐng)稍后再試,客戶確認(rèn),然后返回客戶端主界面后置條件:主界面顯示用戶好友及好友的在線狀態(tài)表3:用例“發(fā)送消息”的描述用例名稱(chēng):Send Message用例編號(hào):UC003優(yōu)先級(jí):高參與者:客戶、數(shù)據(jù)庫(kù)簡(jiǎn)要描述:客戶給自己的好友(在線和離線)發(fā)送消息前置條件:客戶已成功登錄即時(shí)通信系統(tǒng)基本事件流:1、客戶選擇一個(gè)好友;2、系統(tǒng)激活主界面消息
9、編輯文本框;3、客戶在文本框中輸入、編輯消息,然后單擊“發(fā)送”按鈕;4、如果好友不在線,發(fā)送消息給數(shù)據(jù)庫(kù),數(shù)據(jù)庫(kù)保存該聊天記錄;否則執(zhí)行可選事件流5、數(shù)據(jù)庫(kù)返回聊天記錄已保存的通知。6、系統(tǒng)提示“對(duì)方在登錄時(shí)會(huì)看到您發(fā)的消息”7、用例終止可選事件流:1、從好友列表中讀出此用戶的通信參數(shù),將消息直接發(fā)送給用戶2、用戶返回消息收到通知3、系統(tǒng)提示客戶“消息已成功發(fā)送對(duì)方”異常事件流:提示消息發(fā)送失敗,請(qǐng)稍后再試,客戶確認(rèn),然后返回客戶端主界面后置條件:客戶返回登錄后的主界面狀態(tài)表4:用例“添加好友”的描述用例名稱(chēng):Add Friends用例編號(hào):UC004優(yōu)先級(jí):高參與者:客戶、數(shù)據(jù)庫(kù)、服務(wù)器簡(jiǎn)要描述:客戶端查詢(xún)數(shù)據(jù)庫(kù)列表并選擇添加好友前置條件:客戶已成功登錄即時(shí)通信系統(tǒng)基本事件流:1、客戶單擊“添加好友”按鈕;2、系統(tǒng)彈出“用戶瀏覽”對(duì)話框;3、客戶端發(fā)送查詢(xún)請(qǐng)求給數(shù)據(jù)庫(kù);4、數(shù)據(jù)庫(kù)返回用戶信息給用戶瀏覽對(duì)話框5、客戶選擇需要添加的好友,并單擊“添加”按鈕。6、系統(tǒng)更新客戶的好友列表,新添加的好友展示為離線狀態(tài);7、客戶發(fā)送剛添加的好友消息給服務(wù)器;8、服務(wù)器查詢(xún)?cè)诰€用戶列表,如果用戶在線,返回消息給客戶,否則執(zhí)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 兒童藝術(shù)教育與現(xiàn)代科技的結(jié)合趨勢(shì)
- 事業(yè)單位面試出題專(zhuān)家保密協(xié)議
- 健康產(chǎn)品的精準(zhǔn)營(yíng)銷(xiāo)策略-以一則成功的醫(yī)療健康類(lèi)廣告為例
- PBL教學(xué)法在醫(yī)學(xué)類(lèi)學(xué)科的應(yīng)用實(shí)踐
- 農(nóng)宅現(xiàn)代化農(nóng)村住房改造的技術(shù)革新
- 企業(yè)員工培訓(xùn)中成長(zhǎng)檔案的應(yīng)用與實(shí)踐
- 公共停車(chē)場(chǎng)與小區(qū)物業(yè)服務(wù)的協(xié)同創(chuàng)新研究
- 石鼓書(shū)院簡(jiǎn)介
- 創(chuàng)新教育與教師素質(zhì)提升的路徑探索
- 教科版二年級(jí)上冊(cè)科學(xué)期末測(cè)試卷及參考答案(預(yù)熱題)
- 小學(xué)三年發(fā)展規(guī)劃(2022-2025)
- 專(zhuān)升本學(xué)英語(yǔ)心得體會(huì)范文英語(yǔ)專(zhuān)升本范文10篇(9篇)
- 安徽省水利工程資料表格
- JJG 2047-2006扭矩計(jì)量器具
- GB/T 1354-2018大米
- 超材料(metamaterials)教學(xué)講解課件
- 20XX年高校維穩(wěn)工作案例(四)
- 二年級(jí)上冊(cè)語(yǔ)文課件 語(yǔ)文園地八 人教部編版(共19張PPT)
- 2022(SOP)人民醫(yī)院倫理委員會(huì)標(biāo)準(zhǔn)操作規(guī)程
- xxxx道路硬化工程監(jiān)理細(xì)則
- 工作進(jìn)度表訂單生產(chǎn)進(jìn)度追蹤表
評(píng)論
0/150
提交評(píng)論