軟件工程課程設計報告-9_第1頁
軟件工程課程設計報告-9_第2頁
軟件工程課程設計報告-9_第3頁
軟件工程課程設計報告-9_第4頁
軟件工程課程設計報告-9_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

沈陽理工大學課程設計專用紙PAGEPAGE3沈陽理工大學目錄1系統(tǒng)概述 12需求分析 22.1ER圖 22.2數(shù)據(jù)流圖(分層) 32.3狀態(tài)轉換圖 42.4數(shù)據(jù)字典 53系統(tǒng)設計 73.1總體設計 73.2詳細設計 83.3服務器模塊的代碼: 94測試報告 115總結 156.參考文獻 15

1系統(tǒng)概述該網(wǎng)絡聊天室程序支持局域網(wǎng)內(nèi)以及本機的聊天,擁有客戶端,服務器。用戶通過客戶端啟動程序,使用需要先進行注冊賬號,接著用已注冊的賬號登陸到聊天室。聊天室中,用戶可以選擇對象進行私人聊天,同時用戶也可以把自己的聊天信息保存下來。服務器負責接收用戶的登陸與注冊請求,并把用戶的信息以及聊天的信息存儲在Mysql數(shù)據(jù)庫中。2需求分析2.1ER圖用戶用戶服務器登陸注冊年齡性別密碼郵箱賬號數(shù)據(jù)庫訪問用戶聊天信息表用戶賬號信息表聊天系統(tǒng)E-R圖2.2數(shù)據(jù)流圖(分層)首先,建立頂級數(shù)據(jù)流圖,其中只含有一個代表目標軟件系統(tǒng)整體處理功能的轉換.根據(jù)聊天室系統(tǒng)與外部環(huán)境的關系確定頂級數(shù)據(jù)流圖中的外部實體有兩個,分別是:用戶和服務器0層用戶接收登陸用戶接收登陸接收注冊驗證登陸信息更新用戶信息表聊天室登陸注冊注冊信息登陸信息用戶賬號D1用戶信息表聊天子功能的數(shù)據(jù)流圖1層 用戶用戶接收事物接收事物處理私聊信息另一個用戶私聊非私聊聊天信息私聊信息信息聊天信息所有用戶2.3狀態(tài)轉換圖登陸狀態(tài)登陸狀態(tài)輸入登陸信息聊天狀態(tài)狀態(tài)輸入登陸信息注冊成功錯誤登陸注冊狀態(tài)輸入注冊信息沒有賬號注冊不成功退出退出退出退出2.4數(shù)據(jù)字典名字:用戶注冊信息名字:用戶注冊信息別名:使用地點與方式:注冊窗口發(fā)送到服務器內(nèi)容描述:注冊信息=用戶賬號+用戶密碼+年齡+性別+郵箱號附加信息:注冊窗口將注冊信息發(fā)送給服務器,服務器將注冊信息存入數(shù)據(jù)庫中的用戶表內(nèi)名字:用戶登陸信息名字:用戶登陸信息別名:使用地點與方式:登陸窗口發(fā)送到服務器內(nèi)容描述:登陸信息=用戶賬號+用戶密碼附加信息:登陸窗口將登陸信息發(fā)給服務器,服務器將登陸信息與數(shù)據(jù)庫中已存在的用戶信息進行比對,存在相同允許登陸名字:用戶退出信息名字:用戶退出信息別名:使用地點與方式:用戶退出時發(fā)送給服務器內(nèi)容描述:退出信息=退出用戶賬戶附加信息:用戶退出時將該信息發(fā)送給服務器,服務器將該用戶下線消失發(fā)送給其他用戶。名字:用戶聊天信息名字:用戶聊天信息別名:使用地點與方式:聊天室內(nèi)發(fā)送信息內(nèi)容描述:聊天信息=發(fā)送用戶賬號+接收用戶賬號+聊天內(nèi)容附加信息:聊天窗口將聊天信息傳送給服務器,服務器分析后將聊天內(nèi)容發(fā)送給接收用戶。3系統(tǒng)設計3.1總體設計聊天室系統(tǒng)的HIPO圖如下:注冊注冊登陸服務器聊天室數(shù)據(jù)庫網(wǎng)絡聊天室系統(tǒng)用戶登陸處理聊天處理用戶注冊處理公眾聊天私人聊天用戶退出處理保存聊天內(nèi)容判斷登陸成功跟新用戶表連接數(shù)據(jù)庫連接服務器3.2詳細設計服務器模塊的的PAD圖啟動服務器啟動服務器接收從客戶端發(fā)來的信息接收從客戶端發(fā)來的信息用戶信息寫入數(shù)據(jù)庫登陸與數(shù)據(jù)庫進行比較聊天信息寫入數(shù)據(jù)庫判斷信息退出服務器聊天系統(tǒng)使用mysql數(shù)據(jù)庫,系統(tǒng)中新建chattingroom數(shù)據(jù)庫,f擁有用戶信息表users,該表格式如下name:varchar(20)password:varchar(20)sex:varchar(2)age:varchar(3)mail:varchar(20)如下圖所示:3.3服務器模塊的代碼:主程序入口publicclassChatClient{publicChatClient(){}publicstaticvoidmain(Stringargs[]) { newLogin(); }}信息封裝importjava.io.Serializable;importjava.util.Vector;classCustomerimplementsSerializable{ privatestaticfinallongserialVersionUID=1L; StringcustName; StringcustPassword;}//封裝注冊信息classRegister_CustomerextendsObjectimplementsjava.io.Serializable{ privatestaticfinallongserialVersionUID=1L; StringcustName;StringcustPassword;Stringage;Stringsex;Stringemail;}@SuppressWarnings("serial")//用于發(fā)送聊天和在線用戶的信息classMessageimplementsSerializable{ @SuppressWarnings("unchecked") VectoruserOnLine; @SuppressWarnings("unchecked") Vectorchat;}//聊天信息序列化@SuppressWarnings("serial")classChatimplementsSerializable{ StringchatUser; StringchatMessage; StringchatToUser; booleanwhisper;}//退出信息序列化@SuppressWarnings("serial")classExit1implementsSerializable{Stringexitname; }4測試報告測試方法:考慮到各種因素和條件的限制,對聊天系統(tǒng)采用黑盒測試方案,即根據(jù)軟件所需要的輸入數(shù)據(jù)的格式以及應該完成的功能,設計一些合法的測試用例和不合法的測試用例,特別是根據(jù)邊界條件設計一些便捷測試用例,檢查系統(tǒng)是否能正確地完成預期功能,得要希望的輸出;或是對不合法的輸入和操作能夠正確地識別和防御。對個別重要的模塊輔以白盒測試,以保證系統(tǒng)的正確性。測試過程:登陸模塊測試:(1)當用戶名不存在時(2)用戶密碼輸入錯誤時在1,2兩種情況中用戶無法登陸,系統(tǒng)提示登陸錯誤,結果如下圖所示:(3)在用戶名或者密碼為空時,結果如下圖注冊模塊測試:用戶名或者某一項為空值的時候,結果如下圖當注冊的用戶名已經(jīng)存在時:(3)當兩次輸入密碼不一致的時候,結果如下圖所示:當郵箱輸入不規(guī)范時,結果如下圖所示聊天室模塊測試對所有人聊天

溫馨提示

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

評論

0/150

提交評論