軟件工程生產(chǎn)實(shí)習(xí)報(bào)告_第1頁(yè)
軟件工程生產(chǎn)實(shí)習(xí)報(bào)告_第2頁(yè)
軟件工程生產(chǎn)實(shí)習(xí)報(bào)告_第3頁(yè)
軟件工程生產(chǎn)實(shí)習(xí)報(bào)告_第4頁(yè)
軟件工程生產(chǎn)實(shí)習(xí)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩31頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、.暑假生產(chǎn)實(shí)習(xí)報(bào)告書專 業(yè): 軟件工程 班 級(jí): 081111 學(xué)生姓名: xx 學(xué)號(hào): xxxxxx 指導(dǎo)教師: xx 2011年8月5號(hào)目錄1.需求分析71.1目標(biāo)71.2 用戶特點(diǎn)71.2.1 系統(tǒng)結(jié)構(gòu)層次模塊圖72.概要設(shè)計(jì)82.1服務(wù)器管理模塊設(shè)計(jì)82.1.1 功能描述82.1.2 功能界面說明82.1.3 操作效果圖82.1.4 界面操作說明82.1.5 服務(wù)器工作原理82.1.6 流程圖82.2用戶登錄注冊(cè)管理模塊設(shè)計(jì)92.2.1 功能描述92.2.2功能界面說明92.2.3 操作效果圖92.2.4 流程圖102.3 用戶列表模塊設(shè)計(jì)112.3.1 功能描述112.3.2 功能界

2、面說明112.3.3 操作效果圖112.3.4 流程圖122.4網(wǎng)絡(luò)聊天模塊設(shè)計(jì)132.4.1 功能描述132.4.2 功能界面說明132.4.3 操作效果圖132.4.4 流程圖142.5對(duì)戰(zhàn)棋盤模塊設(shè)計(jì)152.5.1 功能描述152.5.2 功能界面說明152.5.3 操作效果圖152.5.4 流程圖173.詳細(xì)設(shè)計(jì)183.1登錄模塊183.1.1模塊運(yùn)行流程圖183.1.2登錄模塊功能分解表183.1.3登錄模塊與數(shù)據(jù)傳輸模塊公共接口193.2注冊(cè)模塊193.2.1模塊流程圖193.2.2注冊(cè)模塊功能分解表203.2.3注冊(cè)模塊與數(shù)據(jù)傳輸接口213.3用戶列表模塊213.3.1模塊運(yùn)行流

3、程圖213.3.2用戶列表模塊功能分解表223.3.3用戶列表模塊與數(shù)據(jù)傳輸模塊接口233.4用戶對(duì)戰(zhàn)模塊233.4.1模塊運(yùn)行流程圖233.4.2對(duì)戰(zhàn)模塊功能分解表243.4.3對(duì)戰(zhàn)模塊與數(shù)據(jù)傳輸模塊接口圖253.5數(shù)據(jù)傳輸模塊263.5.1模塊流程圖263.5.2數(shù)據(jù)傳輸模塊功能分解表263.5.3數(shù)據(jù)傳輸模塊對(duì)外提供接口273.6服務(wù)端數(shù)據(jù)處理模塊273.6.1模塊流程圖1(登錄,注冊(cè),用戶列表信息處理模塊)273.6.2服務(wù)端數(shù)據(jù)模塊功能分解表1283.6.3服務(wù)端數(shù)據(jù)模塊與數(shù)據(jù)傳輸模塊接口1293.6.4模塊流程圖2(對(duì)戰(zhàn)信息處理模塊)293.6.5服務(wù)端數(shù)據(jù)模塊功能分解表2303.

4、6.6服務(wù)端數(shù)據(jù)模塊與數(shù)據(jù)傳輸模塊接口2303.7數(shù)據(jù)描述表314 顯示效果334.1用戶登錄界面334.2用戶注冊(cè)界面344.3用戶列表界面354.4對(duì)戰(zhàn)界面364.5 聊天界面374.6 服務(wù)器端界面375 總結(jié)371.需求分析1.1目標(biāo) 該系統(tǒng)屬于游戲開發(fā)項(xiàng)目,其主要是實(shí)現(xiàn)五子棋的網(wǎng)絡(luò)對(duì)戰(zhàn)功能,即玩家可以通過網(wǎng)絡(luò)的方式實(shí)現(xiàn)對(duì)戰(zhàn),其模式類似與QQ游戲,通過帳號(hào)密碼登錄,列出在線列表框,點(diǎn)擊玩家進(jìn)行五子棋對(duì)戰(zhàn)。1.2 用戶特點(diǎn)1.2.1 系統(tǒng)結(jié)構(gòu)層次模塊圖圖表 01總體組織架構(gòu)2.概要設(shè)計(jì)2.1服務(wù)器管理模塊設(shè)計(jì)2.1.1 功能描述該系統(tǒng)主要實(shí)現(xiàn)網(wǎng)絡(luò)通信下的操作,通過網(wǎng)絡(luò)傳輸實(shí)現(xiàn)五子棋對(duì)戰(zhàn),

5、判斷用戶落子后的輸贏情況。2.1.2 功能界面說明 啟動(dòng)界面:通過點(diǎn)擊啟動(dòng)按鈕,啟動(dòng)服務(wù)器。2.1.3 操作效果圖圖 2-1服務(wù)器啟動(dòng)操作效果圖2.1.4 界面操作說明點(diǎn)擊啟動(dòng)按鈕即可啟動(dòng)服務(wù)器。2.1.5 服務(wù)器工作原理服務(wù)器通過TCP/IP協(xié)議的通訊,創(chuàng)建一個(gè)SOCKET,開啟系統(tǒng)的一個(gè)端口用于網(wǎng)絡(luò)傳輸,默認(rèn)的端口號(hào)為5000。服務(wù)器首先獲取本機(jī)的IP,然后開啟端口,通過監(jiān)聽端口判斷是否有連接信息傳入,如果發(fā)現(xiàn)則與客戶端進(jìn)行連接,再通過操作信息的發(fā)送接收來響應(yīng)并處理消息。五子棋的規(guī)則判斷也是服務(wù)器的主要功能之一。2.1.6 流程圖圖 2-2用戶服務(wù)器工作簡(jiǎn)要流程圖2.2用戶登錄注冊(cè)管理模塊

6、設(shè)計(jì) 2.2.1 功能描述輸入正確的用戶名及密碼登錄游戲并進(jìn)入用戶列表界面。點(diǎn)擊注冊(cè)進(jìn)行用戶注冊(cè)操作。2.2.2功能界面說明登錄:輸入用戶名密碼點(diǎn)擊登錄進(jìn)行游戲。注冊(cè):輸入用戶名,昵稱,2次密碼,符合要求后注冊(cè)完成。2.2.3 操作效果圖圖 2-3 登錄界面效果圖圖 2-4 注冊(cè)界面效果圖2.2.4 流程圖圖 2-5登錄注冊(cè)界面簡(jiǎn)要流程圖2.3 用戶列表模塊設(shè)計(jì)2.3.1 功能描述本模塊用于顯示用戶的在線狀態(tài),以及對(duì)邀請(qǐng)對(duì)戰(zhàn)、邀請(qǐng)聊天,查看信息等操作。2.3.2 功能界面說明右鍵:點(diǎn)擊人物頭像,彈出操作對(duì)話框,點(diǎn)擊相應(yīng)條目進(jìn)行操作。左鍵:雙擊人物頭像,彈出聊天窗口進(jìn)行聊天。2.3.3 操作效果

7、圖圖 2-6用戶列表效果圖2.3.4 流程圖圖 2-7用戶列表管理簡(jiǎn)要流程圖2.4網(wǎng)絡(luò)聊天模塊設(shè)計(jì)2.4.1 功能描述通過用戶列表的左鍵雙擊響應(yīng),彈出聊天窗口,輸入聊天內(nèi)容點(diǎn)擊發(fā)送進(jìn)行聊天。2.4.2 功能界面說明發(fā)送:在聊天框內(nèi)輸入內(nèi)容點(diǎn)擊發(fā)送鍵進(jìn)行信息發(fā)送。回復(fù):雙擊聊天內(nèi)容顯示框的某人的信息就可以實(shí)現(xiàn)與某人的對(duì)話回復(fù)。2.4.3 操作效果圖圖 2-8聊天窗口效果圖 2.4.4 流程圖圖 2-9聊天傳輸簡(jiǎn)要流程圖2.5對(duì)戰(zhàn)棋盤模塊設(shè)計(jì)2.5.1 功能描述五子棋對(duì)戰(zhàn)主界面,棋盤位于本界面,實(shí)現(xiàn)的功能主要是玩家落子信息的記錄,傳入服務(wù)器端進(jìn)行處理。2.5.2 功能界面說明準(zhǔn)備:進(jìn)入對(duì)戰(zhàn)后的雙方

8、需要點(diǎn)擊準(zhǔn)備,雙方都準(zhǔn)備后,游戲開始。信息顯示:顯示玩家落子的區(qū)域,以及玩家棋子的顏色。2.5.3 操作效果圖圖 2-10五子棋對(duì)戰(zhàn)效果圖2.5.4 流程圖圖 2-11五子棋對(duì)戰(zhàn)簡(jiǎn)要流程圖3.詳細(xì)設(shè)計(jì)3.1登錄模塊3.1.1模塊運(yùn)行流程圖圖 3-1登錄界面詳細(xì)流程圖3.1.2登錄模塊功能分解表邏輯處理層:數(shù)據(jù)序號(hào)制審日表核期處理方法名類型處理說明判斷用戶名密碼是否為空Bool IsUserInfoNull(long lUserID,string pwd)判讀登錄是否成功Bool IsLoginSuccess(long lFlag)根據(jù)傳入標(biāo)志lFlag,0表示登錄失敗,1表示登錄成功3.1.3

9、登錄模塊與數(shù)據(jù)傳輸模塊公共接口3.2注冊(cè)模塊3.2.1模塊流程圖圖 3-2注冊(cè)界面詳細(xì)流程圖3.2.2注冊(cè)模塊功能分解表邏輯處理層:數(shù)據(jù)序號(hào)制審日表核期處理方法名類型處理說明判斷輸入信息是否有空Bool IsUserInfoNull(long id,string name,string pwd)判讀用戶昵稱格式是否正確Bool ChecNameFormat(string name)判斷用戶名里面是否有一些禁止用戶輸入的特殊標(biāo)志判斷兩次輸入的密碼是否相同Bool CheckUserPwd(string pwdfst,string pwdsnd)判斷冊(cè)是否成功Bool IsRegisteSucce

10、ss(long lFlag)根據(jù)傳入標(biāo)志lFlag,0表示注冊(cè)失敗,1表示注冊(cè)成功3.2.3注冊(cè)模塊與數(shù)據(jù)傳輸接口3.3用戶列表模塊3.3.1模塊運(yùn)行流程圖圖 3-3用戶列表詳細(xì)流程圖3.3.2用戶列表模塊功能分解表邏輯處理層:數(shù)據(jù)序號(hào)制審日 表核期處理方法名類型處理說明判斷用戶是否空閑私有Bool CheckUserState(long id)根據(jù)id在本地用戶列表中查找對(duì)應(yīng)的用戶狀態(tài),判斷是否空閑初始化成員列表私有Bool InitUserList(char* nameList)從nameList中根據(jù)間隔標(biāo)志,提取出一個(gè)個(gè)用戶信息,插入用戶列表判斷對(duì)方是否同意對(duì)戰(zhàn)私有Bool Check

11、EnemyAnswer(bool bFlag)3.3.3用戶列表模塊與數(shù)據(jù)傳輸模塊接口3.4用戶對(duì)戰(zhàn)模塊3.4.1模塊運(yùn)行流程圖圖 3-4對(duì)戰(zhàn)界面詳細(xì)流程圖3.4.2對(duì)戰(zhàn)模塊功能分解表邏輯處理層:數(shù)據(jù)序號(hào)制審日表核期處理方法名類型處理說明初始化棋盤信息Bool InitMapInfo()將棋盤上的下子位置清0將屏幕坐標(biāo)轉(zhuǎn)化成棋盤位置Void ScreenToMapPos(int& x,int& y)將傳入的屏幕的(x,y)坐標(biāo)轉(zhuǎn)化成棋盤上的行,列值判斷當(dāng)前位置是否可以下Bool CheckPosState(int row,int col)放置棋子Void SetGridPos(

12、int row,int col,int color)根據(jù)row,col,將棋盤上該位置設(shè)置為顏色為color的棋子將對(duì)方上次落子位置清0Void InitEnemyLastPos()根據(jù)對(duì)方最后一步落子位置,將該位置的color清03.4.3對(duì)戰(zhàn)模塊與數(shù)據(jù)傳輸模塊接口圖3.5數(shù)據(jù)傳輸模塊3.5.1模塊流程圖該傳輸流程既可以用戶于客戶端向服務(wù)器發(fā)送數(shù)據(jù),也可以用于服務(wù)器向客戶端發(fā)送數(shù)據(jù),圖 3-5服務(wù)器數(shù)據(jù)傳輸詳細(xì)流程圖3.5.2數(shù)據(jù)傳輸模塊功能分解表數(shù)據(jù)序號(hào)制審日表核期處理方法名類型處理說明組裝數(shù)據(jù)包Void CreateDataPackage(int nType,char* param,ch

13、ar* dataBuf)發(fā)送數(shù)據(jù)包Bool SendDataPackage( char* sendBuf)接受數(shù)據(jù)包Bool RecvDataPackage( char* recvBuf)解析數(shù)據(jù)包Bool AnalysisDataPackage( char* dataBuf,int& nType,char* param)3.5.3數(shù)據(jù)傳輸模塊對(duì)外提供接口3.6服務(wù)端數(shù)據(jù)處理模塊3.6.1模塊流程圖1(登錄,注冊(cè),用戶列表信息處理模塊)圖 3-6服務(wù)器對(duì)登錄、注冊(cè)、列表數(shù)據(jù)處理詳細(xì)流程圖3.6.2服務(wù)端數(shù)據(jù)模塊功能分解表1數(shù)據(jù)序號(hào)制審日表核期處理方法名類型處理說明判端用戶是否存在Boo

14、l IsUserExist(long id)通過用戶的id在數(shù)據(jù)庫(kù)中檢索是否有該用戶的記錄將用戶信息插入數(shù)據(jù)表Bool IsertUserInfo(long id,string name,string pwd,)取得數(shù)據(jù)庫(kù)中所有在線的用戶名Void GetUserList(char* buf)通過檢索數(shù)據(jù)庫(kù),將用戶名序列以一定的格式存入buf中返回3.6.3服務(wù)端數(shù)據(jù)模塊與數(shù)據(jù)傳輸模塊接口13.6.4模塊流程圖2(對(duì)戰(zhàn)信息處理模塊)圖 3-7服務(wù)器對(duì)對(duì)戰(zhàn)數(shù)據(jù)處理詳細(xì)流程圖3.6.5服務(wù)端數(shù)據(jù)模塊功能分解表2數(shù)據(jù)序號(hào)制審日表核期處理方法名類型處理說明判斷雙方是否都準(zhǔn)備好Bool IsPlayer

15、sReady()設(shè)置玩家下子位置Void PutDownGrid(int row,int col)更新數(shù)庫(kù)中玩家積分Bool UpdateUserScore(long id,int score)將對(duì)方上次落子位置清0Void InitEnemyLastPos()根據(jù)對(duì)方最后一步落子位置,將該位置的color清0初始化棋盤狀態(tài)Bool InitMapInfo()3.6.6服務(wù)端數(shù)據(jù)模塊與數(shù)據(jù)傳輸模塊接口23.7數(shù)據(jù)描述表序號(hào)名稱制表審核日期數(shù)據(jù)說明:Class CUserprivate: long m_lID; /表示玩家ID bool m_bColor;/表示玩家顏色 bool m_bBusy;/表示用戶狀態(tài)Class CGridMapprivate: int m_nID; /表示棋盤編號(hào) bool m_bEmpty; /表示棋盤當(dāng)前有無(wú)玩家int m_Grid1515;/表示一個(gè)15x15的棋盤int m_nlastRow;/表示棋盤上最后一次落子的行號(hào)int m_nlastCol;/表示棋盤上最后一次落子的列號(hào)數(shù)據(jù)項(xiàng)說明:Class CUser中bool m_bColor;為1時(shí)表示玩家為黑方,為0時(shí)表示玩家為白方bool m_bBusy; 為1時(shí)表示玩家處于對(duì)戰(zhàn)狀態(tài),為0時(shí)表示玩家處于空

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論