1.需求清單
好友之間互相發訊息
qq群內與群友交流
使用者和訊息管理
2.需求總結,即目標
qq的使用者:使用者
qq的功能:一對一聊天和多對多群聊兩種情況
我們現在對以上需求和功能進行總結輸出。首先,qq在沒有註冊的情況下是不能使用的,所以我們的使用者沒有遊客的概念。那我們的使用者一共可以分為兩種,即普通的軟體使用者和對普通使用者進行管理的管理員。
我們從以上需求中可以總結出哪些功能呢?
對於普通使用者而言:
1.加好友,即檢視使用者資訊並新增使用者之間的關聯關係。
2.解除好友,即解除使用者之間的關聯。
2.發訊息,即使用者1v1交流。
3.歷史訊息,即使用者的訊息記錄。
4.好友分組,即建立和加入分組的功能。
4.建立群組,即作為群組建立者。
5.加入群組,即加入群組進行使用者nvn交流。
6.解除群組,即解除自己建立的群組。
對管理員而言:
1.管理使用者,即禁止使用者的功能,可以為禁止發訊息,禁止加好友,禁止檢視歷史訊息,禁止**等。
2.管理訊息,即檢視或者刪除使用者或群組歷史訊息。
3.管理群組,即建立,封禁,解除群組等
除了以上顯性的需求外,可能還存在一些隱性的需求,可能是客戶以後會提出,或者開發過程中進行補充,例如使用者的黑名單,使用者的好友分組,普通使用者在群組內的許可權等,我們此處暫且不討論。
3.將以上兩步的需求和功能作為輸入,我們可以得到下方的用例圖
4.根據以上用例圖可以建模
5.根據以上模型圖可以建表
使用者表 user: id,name, status,tm
id: 編號,可用於新增好友
name: 使用者暱稱
status: 使用者狀態,0-被封禁 1-正常
tm: 建立時間
使用者關係表userrelate: id, user1id, user2id, status, tm
user1id: 一號使用者
user2id:二號使用者
status: 關係狀態 0-已解除 1-正常
tm: 建立關係的時間
使用者分組表userteam: id, userid, name, sort, tm
name: 組名
userid: 所屬使用者
sort: 排序
tm: 小組建立時間
分組使用者表teamuser: id, teamid, user2id, tm
teamid: 所屬小組
user2id: userrelate中的user2id,表示該小組建立者的好友id,
tm: 加入分組的時間
群組表group: id, userid, name, status, tm
userid: 群組建立者,即群組管理員
name: 群組名稱
status: 群組狀態 0-已封禁 1-正常
tm: 群組建立時間
群組成員表groupuser: id, groupid, userid, status, tm
groupid: 群組id
userid: 使用者id
status: 使用者在當前群組的狀態 1-正常 0-被禁止發言
tm: 加入群組的時間
管理員表:employee: id, name, password
name: 賬號
password: 密碼
POS門店資料同步 系統建模 1
乙個專案的開始先有需求,這個需求不管是直接客戶提出還是由上級提出。對應到rose裡面就是用例圖。用例圖分為use case 用例也叫系統用例 和business use case 業務用例 這兩者的區別,簡單的來說 業務用例和系統用例是分別站在客戶的業務視角和系統建設視角來規劃的。業務用例不是接近,...
課程註冊系統建模
為某大學建立乙個課程註冊系統模型。從分析開始,進行軟體的基本配置 語言選擇 用例檢視 序列圖 類圖 元件和部署檢視建立等,還要進行關係型別和屬性的配置。1 啟動rational rose 如果使用rose的企業版,則在creat new model對話方塊中使用選new標籤中的vb6standard...
軟體系統建模 UML
目錄 一,建模視角 二,建模方法 三,uml 1,事物 2,關係 3,圖用不同的模型來從不同的視角表示系統 1.外部視角,會對系統的上下文或環境進行建模 2.互動視角,會對系統及其環境或者系統的構件之間的互動進行建模 3.結構化視角,會對系統的組織或者系統所處理的資料的結構進行建模 4.行為視角,會...