版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
項(xiàng)目案例:酒店管理系統(tǒng)第十章訓(xùn)練的技能點(diǎn)搭建三層架構(gòu)系統(tǒng)實(shí)體類的使用在中使用存儲(chǔ)過(guò)程.NET中Excel的導(dǎo)入導(dǎo)出DataGridView數(shù)據(jù)的篩選異常處理任務(wù)描述系統(tǒng)概述實(shí)現(xiàn)酒店房間入住登記和退房實(shí)現(xiàn)酒店房間基礎(chǔ)信息維護(hù)房間類型房間維護(hù)實(shí)現(xiàn)房間狀態(tài)查看系統(tǒng)角色管理員演示示例:酒店管理系統(tǒng)問(wèn)題分析1:整體開(kāi)發(fā)思路
系統(tǒng)開(kāi)發(fā)步驟明確需求設(shè)計(jì)數(shù)據(jù)庫(kù)設(shè)計(jì)技術(shù)框架三層架構(gòu)編碼實(shí)現(xiàn)測(cè)試問(wèn)題分析2:業(yè)務(wù)需求3-1房間入住登記功能提供顧客信息:姓名和身份證號(hào)
客人要選擇合適的房間
入住要登記時(shí)間,交付押金系統(tǒng)記錄信息問(wèn)題分析2:業(yè)務(wù)需求3-2基礎(chǔ)信息維護(hù)功能房間房間編號(hào)房間類型……房間類型退房功能入住信息查詢記錄房款將訂房狀態(tài)改為結(jié)賬狀態(tài)
問(wèn)題分析2:業(yè)務(wù)需求3-3房間狀態(tài)查看功能直觀的查看酒店的所有房間信息房間名稱(編號(hào))房間類型描述入住狀態(tài)(入住或空置)床位……問(wèn)題分析3:數(shù)據(jù)庫(kù)設(shè)計(jì)需要的數(shù)據(jù)庫(kù)表房間類型名稱、價(jià)格/天房間房號(hào)、房間類型、房間狀態(tài)(入住/空置)、描述、床位個(gè)數(shù)、入住客人數(shù)量入住登記客人姓名、身份證號(hào)、房號(hào)、入住日期、押金、房款房間狀態(tài)入住狀態(tài)
問(wèn)題分析4:技術(shù)框架設(shè)計(jì)技術(shù)框架中需要考慮的問(wèn)題如何分層,每層的職責(zé)采用哪些技術(shù)如何報(bào)錯(cuò)(處理異常)命名規(guī)范難點(diǎn)分析1:理解業(yè)務(wù)從登記房間到退房是一個(gè)什么樣的流程?入住的訂金如何確定?退房時(shí)需要支付的房款如何計(jì)算?房間類型、房間和入住信息需要?jiǎng)h除么?難點(diǎn)分析2:使用三層架構(gòu)開(kāi)發(fā)分層編碼,牢記步驟步步為營(yíng):Codealittle,debugalittle熟能生巧善于總結(jié)并分享經(jīng)驗(yàn)記錄常見(jiàn)錯(cuò)誤互相分享開(kāi)發(fā)計(jì)劃創(chuàng)建數(shù)據(jù)庫(kù)[25分鐘]用例1:搭建系統(tǒng)框架和主窗體[25分鐘]用例2:創(chuàng)建實(shí)體類[30分鐘]用例3:房間類型維護(hù)的數(shù)據(jù)訪問(wèn)層[35分鐘]用例4:房間類型維護(hù)的業(yè)務(wù)邏輯層[15分鐘]用例5:查詢和刪除房間類型[30分鐘]用例6:修改和添加房間類型[30分鐘]用例7:實(shí)現(xiàn)入住登記窗體[30分鐘]用例8:實(shí)現(xiàn)入住登記數(shù)據(jù)提交[20分鐘]……搭建數(shù)據(jù)庫(kù)建庫(kù)建表建約束添加數(shù)據(jù)搭建數(shù)據(jù)庫(kù)完成時(shí)間:25分鐘用例1:搭建系統(tǒng)框架和主窗體3-1需求說(shuō)明搭建系統(tǒng)框架:創(chuàng)建分層項(xiàng)目建立項(xiàng)目之間的依賴搭建主窗體:創(chuàng)建主窗體菜單完成時(shí)間:25分鐘用例1:搭建系統(tǒng)框架和主窗體3-2功能測(cè)試檢查點(diǎn)項(xiàng)目為三層架構(gòu)包含實(shí)體層項(xiàng)目各項(xiàng)目間的依賴關(guān)系主菜單正確顯示菜單項(xiàng)互相測(cè)試完成的程序功能測(cè)試出的缺陷記錄在“常見(jiàn)問(wèn)題列表中”修正缺陷后返測(cè)通過(guò),才認(rèn)為用例開(kāi)發(fā)完成單元測(cè)試參考代碼或結(jié)果演示演示示例:系統(tǒng)框架和主窗體用例1:搭建系統(tǒng)框架和主窗體3-3用例2:創(chuàng)建實(shí)體類3-1需求說(shuō)明創(chuàng)建實(shí)體類難點(diǎn)提示數(shù)據(jù)表和實(shí)體類一一對(duì)應(yīng)完成時(shí)間:30分鐘用例2:創(chuàng)建實(shí)體類3-2功能測(cè)試檢查點(diǎn)實(shí)體類的構(gòu)造函數(shù)實(shí)體類的字段和屬性定義實(shí)體類之間的關(guān)系互相測(cè)試完成的程序功能測(cè)試出的缺陷記錄在“常見(jiàn)問(wèn)題列表中”修正缺陷后返測(cè)通過(guò),才認(rèn)為用例開(kāi)發(fā)完成單元測(cè)試參考代碼或結(jié)果演示演示示例:實(shí)體類項(xiàng)目用例2:創(chuàng)建實(shí)體類3-3共性問(wèn)題集中講解常見(jiàn)調(diào)試問(wèn)題及解決辦法代碼規(guī)范問(wèn)題共性問(wèn)題集中講解用例3:房間類型的數(shù)據(jù)訪問(wèn)層3-1需求說(shuō)明實(shí)現(xiàn)房間類型維護(hù)的數(shù)據(jù)訪問(wèn)層代碼獲取全部的房間類型根據(jù)房間類型關(guān)鍵字查詢房間類型根據(jù)房間類型ID刪除房間類型添加和修改房間類型難點(diǎn)提示使用泛型集合保存多條房間類型數(shù)據(jù)完成時(shí)間:35分鐘用例3:房間類型的數(shù)據(jù)訪問(wèn)層3-2功能測(cè)試檢查點(diǎn)正確實(shí)現(xiàn)各個(gè)數(shù)據(jù)訪問(wèn)層方法互相測(cè)試完成的程序功能測(cè)試出的缺陷記錄在“常見(jiàn)問(wèn)題列表中”修正缺陷后返測(cè)通過(guò),才認(rèn)為用例開(kāi)發(fā)完成單元測(cè)試參考代碼或結(jié)果演示演示示例:數(shù)據(jù)訪問(wèn)層代碼用例3:房間類型的數(shù)據(jù)訪問(wèn)層3-3List<RoomType>roomTypeList=newList<RoomType>();stringsqlStr="SELECT*FROMRoomType";SqlDataReaderreader=SqlHelper.GetDataReader(sqlStr,CommandType.Text,null);while(reader.Read()){RoomTypermType=newRoomType();rmType.TypeID=Convert.ToInt32(reader["TypeID"]);//…roomTypeList.Add(rmType);}用例4:房間類型的業(yè)務(wù)邏輯層3-1需求說(shuō)明實(shí)現(xiàn)房間類型維護(hù)的業(yè)務(wù)邏輯層代碼獲取全部的房間類型根據(jù)房間類型關(guān)鍵字查詢房間類型根據(jù)房間類型ID刪除房間類型添加或修改房間類型完成時(shí)間:15分鐘用例4:房間類型的業(yè)務(wù)邏輯層3-2功能測(cè)試檢查點(diǎn)正確實(shí)現(xiàn)各個(gè)業(yè)務(wù)邏輯層方法調(diào)用數(shù)據(jù)訪問(wèn)層方法正確互相測(cè)試完成的程序功能測(cè)試出的缺陷記錄在“常見(jiàn)問(wèn)題列表中”修正缺陷后返測(cè)通過(guò),才認(rèn)為用例開(kāi)發(fā)完成單元測(cè)試參考代碼或結(jié)果演示演示示例:業(yè)務(wù)邏輯層代碼用例4:房間類型的業(yè)務(wù)邏輯層3-3publicstaticIList<RoomType>GetAllRoomTypeList(){returnRoomTypeService.GetAllRoomTypeList();}publicstaticintDeleteRoomTypeByID(introomID){returnRoomTypeService.DeleteRoomTypeByID(roomID);}//…共性問(wèn)題集中講解常見(jiàn)調(diào)試問(wèn)題及解決辦法代碼規(guī)范問(wèn)題共性問(wèn)題集中講解用例5:查詢和刪除房間類型3-1需求說(shuō)明查詢和刪除房間類型創(chuàng)建房間類型管理窗體按類型名稱查詢功能刪除房間類型功能完成時(shí)間:30分鐘用例5:查詢和刪除房間類型3-2功能測(cè)試檢查點(diǎn)窗體界面整齊和美觀按類型名稱搜索到對(duì)應(yīng)的房間類型不輸入類型名稱,搜索到所有房間類型選擇一條房間類型,可以刪除互相測(cè)試完成的程序功能測(cè)試出的缺陷記錄在“常見(jiàn)問(wèn)題列表中”修正缺陷后返測(cè)通過(guò),才認(rèn)為用例開(kāi)發(fā)完成單元測(cè)試參考代碼或結(jié)果演示演示示例:查詢和刪除房間類型用例5:查詢和刪除房間類型3-3stringqueryCondition=this.txtTypeName.Text;IList<RoomType>rmTypes=null;if(string.IsNullOrEmpty(queryCondition)){rmTypes=RoomTypeManager.GetAllRoomTypeList();}else{rmTypes=RoomTypeManager.GetRoomTypeListByType(queryCondition);}this.dgvRoomType.DataSource=rmTypes;用例6:修改和添加房間類型3-1需求說(shuō)明修改和添加房間類型實(shí)現(xiàn)房間類型編輯界面修改房間類型功能添加房間類型功能完成時(shí)間:30分鐘用例6:修改和添加房間類型3-2功能測(cè)試檢查點(diǎn)窗體界面整齊和美觀正確修改房間類型正確添加房間類型互相測(cè)試完成的程序功能測(cè)試出的缺陷記錄在“常見(jiàn)問(wèn)題列表中”修正缺陷后返測(cè)通過(guò),才認(rèn)為用例開(kāi)發(fā)完成單元測(cè)試參考代碼或結(jié)果演示演示示例:修改和添加房間類型用例6:修改和添加房間類型3-3this.Check();//輸入驗(yàn)證RoomTypermType=newRoomType();rmType.TypeName=this.txtroomType.Text.Trim();rmType.TypePrice=decimal.Parse(this.txtroomPrice.Text.Trim());if(this.operationState=="Add"){RoomTypeManager.AddRoomType(rmType);}else{rmType.TypeID=Convert.ToInt32(this.dgvRoomType.CurrentRow.Cells["ID"].Value);RoomTypeManager.UpdateRoomType(rmType);}this.BindRoomTypes();//重新綁定GridView共性問(wèn)題集中講解常見(jiàn)調(diào)試問(wèn)題及解決辦法代碼規(guī)范問(wèn)題共性問(wèn)題集中講解用例7:實(shí)現(xiàn)入住登記窗體3-1需求說(shuō)明入住登記窗體可錄入身份證號(hào)、姓名、押金、房間和入住時(shí)間入住時(shí)間可使用日歷輸入下拉方式選擇空閑房間難點(diǎn)提示根據(jù)床位數(shù)和入住人數(shù)判斷是有空余床位完成時(shí)間:30分鐘用例7:實(shí)現(xiàn)入住登記窗體3-2功能測(cè)試檢查點(diǎn)窗體界面整齊和美觀輸入控件正確空閑房間顯示正確互相測(cè)試完成的程序功能測(cè)試出的缺陷記錄在“常見(jiàn)問(wèn)題列表中”修正缺陷后返測(cè)通過(guò),才認(rèn)為用例開(kāi)發(fā)完成單元測(cè)試參考代碼或結(jié)果演示用例7:實(shí)現(xiàn)入住登記窗體3-3publicstaticIList<Room>GetLeisureRoom(){List<Room>Rooms=newList<Room>();stringsqlStr=@"SELECTRoomID,Convert(varchar(2),RoomID)
+'號(hào)房(床位:'+Convert(varchar(2),(BedNum-GuestNum))"+"+')'"+"asdescriptionFROMRoomWHEREBedNum>GuestNum";SqlDataReaderdr=SqlHelper.GetDataReader(
sqlStr,
CommandType.Text,null);//...}用例8:實(shí)現(xiàn)入住登記數(shù)據(jù)提交3-1需求說(shuō)明提交入住登記數(shù)據(jù)完成時(shí)間:20分鐘用例8:實(shí)現(xiàn)入住登記數(shù)據(jù)提交3-2功能測(cè)試檢查點(diǎn)正確提交數(shù)據(jù)有數(shù)據(jù)驗(yàn)證提交數(shù)據(jù)成功有提示互相測(cè)試完成的程序功能測(cè)試出的缺陷記錄在“常見(jiàn)問(wèn)題列表中”修正缺陷后返測(cè)通過(guò),才認(rèn)為用例開(kāi)發(fā)完成單元測(cè)試參考代碼或結(jié)果演示演示示例:入住登記窗體用例8:實(shí)現(xiàn)入住登記數(shù)據(jù)提交3-3this.CheckInput();
//驗(yàn)證輸入GuestRecordgr=newGuestRecord();gr.GuestName=this.txtGuestName.Text.Trim();//...try{introwcount=GuestRecordManager.InsertGuest(gr);//…}catch(Exceptionex){MessageBox.Show("添加失敗!"+ex.Message);}共性問(wèn)題集中講解常見(jiàn)調(diào)試問(wèn)題及解決辦法代碼規(guī)范問(wèn)題共性問(wèn)題集中講解集成測(cè)試完成時(shí)間:15分鐘系統(tǒng)集成后,重新測(cè)試系統(tǒng)所有程序功能測(cè)試出的缺陷記錄在“常見(jiàn)問(wèn)題列表中”修正缺陷后返測(cè),并更新“常
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025施工合同的示范文本
- 2025植筋合同范文
- 傳媒融資合同
- 國(guó)有土地租賃合同
- 光伏發(fā)電設(shè)備租賃合同
- 2025年度智能家居窗簾系統(tǒng)采購(gòu)合同4篇
- 2025年城市地下空間導(dǎo)向標(biāo)志牌設(shè)計(jì)制作合同2篇
- 2025年度柑橘滯銷產(chǎn)品線上推廣與“搶購(gòu)”銷售合同3篇
- 2024瑜伽館瑜伽教練勞動(dòng)合同范本及教練休息時(shí)間規(guī)定3篇
- 2024版雞蛋簡(jiǎn)單購(gòu)銷合同
- 車險(xiǎn)理賠全解析
- 微粒貸逾期還款協(xié)議書(shū)范本
- Unit10l'mten!(練)新概念英語(yǔ)青少版StarterA
- 產(chǎn)業(yè)園區(qū)開(kāi)發(fā)全流程實(shí)操解析
- NBT 47013.4-2015 承壓設(shè)備無(wú)損檢測(cè) 第4部分:磁粉檢測(cè)
- 羽毛球比賽對(duì)陣表模板
- 2024年上海市中考數(shù)學(xué)真題試卷及答案解析
- 2024年全國(guó)卷1高考理綜試題及答案
- 初中語(yǔ)文現(xiàn)代文閱讀訓(xùn)練及答案二十篇
- 農(nóng)村開(kāi)荒土地承包權(quán)轉(zhuǎn)讓協(xié)議書(shū)
- 牙科門診病歷
評(píng)論
0/150
提交評(píng)論