




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
面向?qū)ο蠹夹g(shù)及UML教程第13章UML項目實訓
第13章UML項目實訓前面章節(jié)介紹了面向?qū)ο蟮幕靖拍?、軟件開發(fā)過程和UML。介紹了UML的主要圖符、模型圖以及這些模型圖的應用。在學習了這些知識、方法和技能后可能還不清楚如何在一個實際項目中應用UML。本章將給出一個具體的實例—“打擊游戲”,應用UML完成項目開發(fā)的全過程。13.1項目啟動在實際的軟件公司中,軟件項目一般都是由軟件項目組開發(fā)的在軟件項目組中每個項目組的成員都有自己明確的分工,他們相互合作完成項目開發(fā)
項目啟動就是參照軟件公司的軟件項目開發(fā)方式,先組建項目組,確定項目的目標,制定項目開發(fā)計劃,為實際的項目開發(fā)做好準備。13.1項目啟動項目組一般由4到5人組成,采用自由結(jié)組的方式定義四個角色:項目經(jīng)理系統(tǒng)分析員程序員測試員13.1.1建立項目組
13.1項目啟動明確開發(fā)目標打擊游戲的項目目標可以確定為:開發(fā)一個簡單的小娛樂游戲,通過點擊游戲窗口中的圖片,可以贏得游戲分數(shù),隨著分數(shù)的積累能夠升級。制定開發(fā)計劃(詳細內(nèi)容見教材)為什么先制定開發(fā)計劃?一般在軟件項目開發(fā)之初會根據(jù)項目開發(fā)的合同時間確定一個項目計劃。13.1.2制定開發(fā)計劃
13.2項目需求分析這里要開發(fā)的打擊游戲?qū)儆谧约洪_發(fā)產(chǎn)品,因此需要系統(tǒng)分析員組織項目組成員進行系統(tǒng)的需求分析具體的需求可以參考市面上流行的這些小游戲,根據(jù)它們提供的功能特點,游戲特色,吸引玩家的地方等等在項目組全體成員的共同努力下,盡量多的挖掘出系統(tǒng)的需求
13.2.1需求獲取
13.2項目需求分析打擊游戲的需求分析是從功能描述、界面描述兩個方面著手的游戲提供一個界面,隨機在某個位置上放置一幅圖片。玩家可以點擊該幅圖片,當圖片被點中時,圖片消失,在窗口上別的位置上再出現(xiàn)一幅圖片,游戲繼續(xù);如果在規(guī)定的時間內(nèi)玩家沒有點中圖片,游戲結(jié)束。玩家每次點中圖片后,給玩家加分,將分數(shù)顯示在界面上。當玩家的分數(shù)達到一定數(shù)值后,游戲晉級,表現(xiàn)為圖片停留的最長時間減少。13.2.2需求描述
13.2項目需求分析用例圖13.2.2需求描述
13.2項目需求分析用例說明:玩家:實際游戲的軟件使用者,通過點擊圖片,獲取分數(shù)。Timer:計算機系統(tǒng)的定時器,負責放置圖片,記錄圖片顯示時間。打擊游戲:玩家點擊圖片,贏得分數(shù)。記錄分數(shù):系統(tǒng)記錄玩家的分數(shù),顯示玩家的最后得分。晉級:當玩家得到的分數(shù)達到某個規(guī)定的限值時游戲晉升到下一個級別。13.2.2需求描述
13.2項目需求分析事件流:1.玩家啟動游戲,進入游戲界面;2.玩家點擊開始按鈕,游戲開始;3.定時器在界面的某個位置放置一張圖片4.規(guī)定時間內(nèi),點擊圖片,圖片消失,玩家得分;5.系統(tǒng)顯示玩家的分數(shù);6.循環(huán)3~4;7.當玩家分數(shù)達到一個規(guī)定的值時,玩家晉級,顯示玩家的級別。8.如果玩家已經(jīng)通關(guān),游戲結(jié)束;9.循環(huán)3~8;
13.2.2需求描述
13.2項目需求分分析備選事件流流:3.a玩家沒有點點擊到圖片片,并且時時間片結(jié)束束,游戲結(jié)結(jié)束,顯示示對話框““游戲結(jié)束束,您的得得分為XXX,是否重新新開始游戲戲!”;8.a玩家通關(guān)后后,顯示對對話框“您您已經(jīng)通關(guān)關(guān),是否重重新開始游游戲!”;;需求描述13.2項目需求分分析軟件界面13.2項目需求分分析1、加分規(guī)則則:2、晉級規(guī)則則:3、難度規(guī)則則:游戲規(guī)則定定義13.2項目需求分分析1、啟動游戲戲2、進行游戲戲3、游戲晉級級4、游戲通關(guān)關(guān)5、游戲失敗敗6、暫暫停停游游戲戲游戲戲說說明明13.3使用用UML進行行系系統(tǒng)統(tǒng)設(shè)設(shè)計計進行行系系統(tǒng)統(tǒng)設(shè)設(shè)計計主主要要步步驟驟::首先先根根據(jù)據(jù)對對需需求求用用例例的的事事件件流流進進行行分分析析,,找找到到系系統(tǒng)統(tǒng)中中的的備備選選對對象象。。其次次分分析析系系統(tǒng)統(tǒng)中中具具體體對對象象和和對對象象之之間間的的關(guān)關(guān)系系,,也也就就是是對對象象之之間間如如何何進進行行消消息息傳傳遞遞。。再次次根根據(jù)據(jù)上上面面的的分分析析,,設(shè)設(shè)計計出出系系統(tǒng)統(tǒng)順順序序圖圖或或協(xié)協(xié)作作圖圖。。最后后,,進進行行抽抽象象得得到到系系統(tǒng)統(tǒng)的的靜靜態(tài)態(tài)結(jié)結(jié)構(gòu)構(gòu)圖圖---類圖圖。。13.3使用用UML進行行系系統(tǒng)統(tǒng)設(shè)設(shè)計計從事事件件流流描描述述中中找找出出所所有有可可能能的的對對象象::界面面::游游戲戲的的界界面面圖片片::打打擊擊游游戲戲界界面面上上顯顯示示的的圖圖片片分數(shù)數(shù)::游游戲戲玩玩家家在在玩玩游游戲戲中中贏贏得得的的分分數(shù)數(shù)級別別::游游戲戲的的難難度度等等級級,,玩玩家家獲獲得得的的分分數(shù)數(shù)達達到到一一定定值值,,游游戲戲晉晉級級定時時器器::控控制制游游戲戲界界面面中中圖圖片片的的顯顯示示時時間間系統(tǒng)統(tǒng)備備選選對對象象13.3使用用UML進行行系系統(tǒng)統(tǒng)設(shè)設(shè)計計進一一步步分分析析可可能能還還有有以以下下對對象象::棋盤盤::游游戲戲界界面面中中的的顯顯示示圖圖片片的的區(qū)區(qū)域域,,被被劃劃分分成成3行4列共共12個單單元元格格,,每每個個單單元元格格中中可可以以顯顯示示圖圖片片系統(tǒng)統(tǒng)::控控制制和和管管理理游游戲戲中中的的系系統(tǒng)統(tǒng)事事件件系統(tǒng)統(tǒng)備備選選對對象象13.3使用用UML進行行系系統(tǒng)統(tǒng)設(shè)設(shè)計計被選選對對象象::系統(tǒng)統(tǒng)::System圖片片::Picture棋盤盤::Board定時時器器::Timer級別別::GameLevel分數(shù)數(shù)::Score系統(tǒng)統(tǒng)對對象象分分析析13.3使用用UML進行行系系統(tǒng)統(tǒng)設(shè)設(shè)計計玩家家要要想想開開始始游游戲戲,,就就需需要要給給發(fā)發(fā)一一個個開開始始消消息息給系系統(tǒng)統(tǒng)對對象象System發(fā)送送一一個個消消息息start()系統(tǒng)統(tǒng)對對象象分分析析PlayerSystemstart()13.3使用用UML進行行系系統(tǒng)統(tǒng)設(shè)設(shè)計計系統(tǒng)統(tǒng)對對象象收收到到開開始始游游戲戲后后,,首首先先需需要要顯顯示示游游戲戲的的棋棋盤盤。。這這時時系系統(tǒng)統(tǒng)對對象象System需要要給給游游戲戲盤盤對對象象Board發(fā)送送一一個個顯顯示示棋棋盤盤的的消消息息displayPic()系統(tǒng)統(tǒng)對對象象分分析析SystemBoarddisplayPic()13.3使用用UML進行行系系統(tǒng)統(tǒng)設(shè)設(shè)計計顯示示棋棋盤盤,,同同時時還還需需要要在在棋棋盤盤上上顯顯示示一一張張圖圖片片。。這這時時需需要要棋棋盤盤對對象象Board給圖圖片片對對象象Picture發(fā)送送一一個個消消息息show()系統(tǒng)統(tǒng)對對象象分分析析BoardPictureshow()13.3使用用UML進行行系系統(tǒng)統(tǒng)設(shè)設(shè)計計顯示示玩玩圖圖片片后后,,需需要要開開始始記記錄錄圖圖片片的的顯顯示示時時間間。。這這時時需需要要系系統(tǒng)統(tǒng)對對象象System給定定時時器器對對象象Timer發(fā)送一一個消消息start()系統(tǒng)對對象分分析SystemTimerStart()13.3使用UML進行系系統(tǒng)設(shè)設(shè)計匯總得得到協(xié)協(xié)作圖圖系統(tǒng)對對象分分析13.3使用UML進行系系統(tǒng)設(shè)設(shè)計點擊圖圖片后后,隱隱藏圖圖片,,增加加分數(shù)數(shù),計計算晉晉級按照前前面過過程可可以得得到協(xié)協(xié)作圖圖系統(tǒng)對對象分分析13.3使用UML進行系系統(tǒng)設(shè)設(shè)計前面分分析了了系統(tǒng)統(tǒng)中的的對象象,進進一步步對這這些對對象進進行抽抽象可可以得得到類類和類類間關(guān)關(guān)系系統(tǒng)類類圖設(shè)設(shè)計13.3使用UML進行系系統(tǒng)設(shè)設(shè)計完成系系統(tǒng)類類圖設(shè)設(shè)計后后繼續(xù)續(xù):編寫系系統(tǒng)設(shè)設(shè)計規(guī)規(guī)格說說明書書詳細記記錄對對象的的分析析和設(shè)設(shè)計過過程給出系系統(tǒng)順順序圖圖或協(xié)協(xié)作圖圖,并并給出出說明明給出經(jīng)經(jīng)過抽抽象后后得到到的類類圖,,給出出類的的主要要屬性性和方方法的的描述述系統(tǒng)類類圖設(shè)設(shè)計13.4使用UML進行類類設(shè)計計添加系系統(tǒng)類類13.4使用UML進行類類設(shè)計計類圖設(shè)設(shè)計系統(tǒng)設(shè)設(shè)計類類在具具體實實現(xiàn)時時可能能被轉(zhuǎn)轉(zhuǎn)化成成一個個包13.4使用UML進行類類設(shè)計計類圖設(shè)設(shè)計系統(tǒng)設(shè)設(shè)計中中的類類在實實現(xiàn)中中也可可能還還映射射成一一個類類,例例如System類有時系系統(tǒng)設(shè)設(shè)計中中的類類在實實現(xiàn)是是可能能消失失或者者變成成了一一個屬屬性或或方法法了13.4使用UML進行類類設(shè)計計添加屬屬性對設(shè)計計類進進行細細化,,增加加屬性性類Level中需要要增加加一個個屬性性gameLevel類Board中需要要增加加一個個圖片片類的的引用用屬性性pic13.4使用UML進行類類設(shè)計計添加方方法對設(shè)計計類進進行細細化,,例如如System類增加加方法法:start()::開始始游戲戲方法法。hit()::用戶戶點擊擊動作作處理理方法法。System()::構(gòu)造造系統(tǒng)統(tǒng)中的的主要要對象象。init()::初始始化重重要對對象的的屬性性。stop()::結(jié)束束游戲戲。addScore()::游戲戲加分分。addLevel()::游戲戲晉級級。13.4使用UML進行類類設(shè)計計添加方方法例如System類增加加方法法后類類圖13.4使用UML進行類類設(shè)計計類圖設(shè)設(shè)計細化后后實現(xiàn)現(xiàn)類圖圖13.4使用UML進行類類設(shè)計計類圖設(shè)設(shè)計System類的主主要方方法::init():初始化參數(shù);start():啟動計時器,并顯示圖片;stop():游戲結(jié)束;addScore():計算和增加玩家分數(shù);addLevel():計算和增加玩家級別;13.4使用UML進行類類設(shè)計計類圖設(shè)設(shè)計Timer類的主主要方方法::Star():啟動計時器;
13.4使用UML進行類類設(shè)計計類圖設(shè)設(shè)計TimeLength類的主主要屬屬性和和方法法::INIT_TIME_LENGTH:初始的時間片長度屬性的值getTimeLenth():獲取時間片長度;setTimeLenth():重新設(shè)置時間片長度;
13.4使用UML進行類類設(shè)計計類圖設(shè)設(shè)計Board類的主主要方方法::displayPic():顯示一張圖片;hidePic():隱藏圖片;
13.4使用UML進行類類設(shè)計計類圖設(shè)設(shè)計Score類的主主要方方法::addScore():點擊圖片正確后,玩家加分;displayScore():顯示玩家的得分;getScore():獲得玩家的得分;
13.4使用UML進行類類設(shè)計計類圖設(shè)設(shè)計GameLevel類的主主要方方法::getLevel():獲取玩家的級別;setLevel():重新設(shè)置玩家的級別;displayLevel():顯示玩家的級別;
13.5UML設(shè)計模模型到到代碼碼實現(xiàn)現(xiàn)轉(zhuǎn)換換具體實實現(xiàn)代代碼參參見教教材13.6UML在測試試階段段應用用部分測測試用用例和和測試試結(jié)果果編號操作期望結(jié)果實際結(jié)果結(jié)果1點擊圖片圖片消失,系統(tǒng)給玩家加分,分數(shù)欄顯示分值的變化圖片消失,系統(tǒng)給玩家加分,分數(shù)欄顯示分值的變化與期望的結(jié)果相符2沒有點中或未點擊圖片彈出對話框,提示游戲結(jié)束,詢問是否重新開始彈出對話框,提示游戲結(jié)束,詢問是否重新開始與期望的結(jié)果相符3點擊對話框上“是”按鈕游戲重新開始,各項數(shù)據(jù)置為初始值游戲重新開始,分數(shù)和級別初始為0與期望的結(jié)果相符13.7項目總總結(jié)本項目目開是是由項項目小小組完完成的的每個項項目組組成員員分配配了不不同的的角色色項目開開發(fā)過過程中中劃分分成多多個階階段開發(fā)過過程中中使用用UML來描述述各個個階段段的軟軟件產(chǎn)產(chǎn)品項目使使用面面向?qū)ο蟮牡腏ava語言來來實現(xiàn)現(xiàn)。上面這這個例例子只只完成成了主主要的的功能能,讀讀者可可以按按照這這個過過程繼繼續(xù)完完成其其他功功能,,也可可以參參照這這個例例子完完成其其他的的項目目。13.8小結(jié)本章以以一個個打擊擊游戲戲為例例,介介紹了了如何何使用用UML來描述述一個個項目目的需需求,,進行行面向向?qū)ο笙蟮姆址治龊秃驮O(shè)計計,最最終完完成一一個項項目這個個項項目目中中只只用用到到了了部部分分UML模型型圖圖,,讀讀者者如如果果有有興興趣趣,,可可以以使使用用其其他他的的UML用例例圖圖來來分分析析和和設(shè)設(shè)計計這這個個項項目目9、靜夜夜四無無鄰,,荒居居舊業(yè)業(yè)貧。。。12月月-2212月月-22Sunday,December25,202210、雨中中黃葉葉樹,,燈下下白頭頭人。。。22:08:0522:08:0522:0812/25/202210:08:05PM11、以我我獨沈沈久,,愧君君相見見頻。。。12月月-2222:08:0522:08Dec-2225-Dec-2212、故人江海海別,幾度度隔山川。。。22:08:0522:08:0522:08Sunday,December25,202213、乍見翻疑疑夢,相悲悲各問年。。。12月-2212月-2222:08:0522:08:05December25,202214、他鄉(xiāng)生白白發(fā),舊國國見青山。。。25十二二月202210:08:05下下午22:08:0512月-2215、比不了了得就不不比,得得不到的的就不要要。。。。十二月2210:08下下午12月-2222:08December25,202216、行動出出成果,,工作出出財富。。。2022/12/2522:08:0522:08:0525December202217、做前,,能夠環(huán)環(huán)視四周周;做時時,你只只能或者者最好沿沿著以腳腳為起點點的射線線向前。。。10:08:05下下午10:08下下午22:08:0512月-229、沒有失敗,,只有暫時停停止成功!。。12月-2212月-22Sunday,December25,202210、很多事情努努力了未必有有結(jié)果,但是是不努力卻什什么改變也沒沒有。。22:08:0522:08:0522:0812/25/202210:08:05PM11、成功就是是日復一日日那一點點點小小努力力的積累。。。12月-2222:08:0522:08Dec-2225-Dec-2212、世間成事事,不求其其絕對圓滿滿,留一份份不足,可可得無限完完美。。22:08:0522:08:0522:08Sunday,December25,202213、不知香積積寺,數(shù)里里入云峰。。。12月月-2212月月-2222:08:0522:08:05December25,202214、意意志志堅堅強強的的人人能能把把世世界界放放在在手手中中像像泥泥塊塊一一樣樣任任意意揉揉捏捏。。25十十二二月月202210:08:05下下午午22:08:0512月月-2215、楚塞三三湘接,,荊門九九派通。。。。十二月2210:08下下午12月-2222:08December25,202216、少年十十五二十十時,步步行奪得得胡馬騎騎。。2022/12/2522:08:0522:08:0525Dece
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【假期提升】 五升六語文暑假作業(yè)(四)-人教部編版(含答案含解析)
- 音樂角色測試試題及答案
- 2019-2025年軍隊文職人員招聘之軍隊文職公共科目能力檢測試卷A卷附答案
- 醫(yī)療服務基礎(chǔ)面試題及答案
- 配合老師教學的合同(2篇)
- 2025年度施工員資格考試全真模擬考試試題及答案(共三套)
- 健康衛(wèi)生知識培訓課件
- 年度目標達成工作計劃與目標分解
- 私人導游旅游服務安全須知
- 成長中的兒童文學經(jīng)典作品解讀
- 計算機常見故障的判斷和維修課件
- 協(xié)會秘書處工作職責
- 消防水泵和穩(wěn)壓泵安裝檢驗批質(zhì)量驗收記錄
- 砂漿強度(貫入法)檢測記錄
- 預防艾梅乙母嬰傳播工作規(guī)范解讀
- 2022年公司接待流程及標準管理細則
- 成交量趨勢拐點
- 特征選擇和提取特征提取
- 《民航貨物運輸》課程標準
- 雙胎妊娠 PPT課件
- 脊髓壓迫癥A吳紹勇
評論
0/150
提交評論