UML電梯系統(tǒng)建模_第1頁(yè)
UML電梯系統(tǒng)建模_第2頁(yè)
UML電梯系統(tǒng)建模_第3頁(yè)
UML電梯系統(tǒng)建模_第4頁(yè)
UML電梯系統(tǒng)建模_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上1. 需求陳述一個(gè)無(wú)人值守電梯的轎箱通常停放在大樓的第一層當(dāng)某樓層有乘客按下按鈕,電梯轎箱便會(huì)按照指令上升到該樓層接乘客,然后按照乘客的指令升降到指定樓層,到達(dá)后的乘客走下電梯。電梯轎箱停在該樓層,等待下一個(gè)乘客的按鈕指令。系統(tǒng)對(duì)于等待的時(shí)間有一定的限制,在時(shí)間限制之內(nèi)又有乘客按下按鈕,電梯則重復(fù)前面的動(dòng)作,電梯轎箱仍按照指令上升或下降到指定樓層,到達(dá)后,電梯轎箱繼續(xù)等待下一個(gè)乘客的按鈕指令,在每次的等待中,如果等待時(shí)間超過(guò)限制,電梯轎箱會(huì)自動(dòng)返回到大樓的第一層,在那里繼續(xù)等待乘客。2.1 用例圖電梯系統(tǒng)用例圖如下,主要包括用例、角色和關(guān)系。用例圖乘客作為電梯里的角色

2、,參與系統(tǒng)的5個(gè)用例,呼叫電梯、指定樓層、打開(kāi)電梯門(mén)、關(guān)閉電梯門(mén)和撥打報(bào)警電話(huà)。工作人員參與接受報(bào)警的用例。2.2 類(lèi)圖類(lèi)圖對(duì)系統(tǒng)進(jìn)行靜態(tài)建模,靜態(tài)圖主要描述系統(tǒng)功能需求-系統(tǒng)給最終用戶(hù)提供服務(wù)。類(lèi)圖描述一組類(lèi)、接口和協(xié)作,及他們的關(guān)系。類(lèi)圖各類(lèi)的詳細(xì)聲明如下:(1) Button類(lèi)一個(gè)抽象類(lèi),電梯?;騿?dòng)的指示器。(2) Elevator_button電梯內(nèi)的人需要到達(dá)的樓層。(3) Building_button處于某樓層的人需要進(jìn)入電梯上行或下行的指示。(4) help_button緊急情況下的報(bào)警。(5) controlor用來(lái)控制電梯的上行、下行、關(guān)門(mén)、開(kāi)門(mén)以及電梯調(diào)度工作等。BSt

3、ate:電梯或樓層按鈕的狀態(tài),若按下,則給控制器發(fā)送一個(gè)上行下行命令,否則,控制器控制電梯開(kāi)門(mén)或停止。3.1建動(dòng)態(tài)模型l 用戶(hù)A在3樓按上行按鈕呼叫電梯,用戶(hù)希望到7樓去l 上行按鈕指示燈亮l 一部電梯到達(dá)3樓,電梯內(nèi)的用戶(hù)B已按下到9樓的按鈕l 上行按鈕指示燈熄滅l 電梯開(kāi)門(mén)l 用戶(hù)A進(jìn)入電梯l 用戶(hù)A按下電梯內(nèi)到7樓的按鈕l 7樓按鈕指示燈亮l 電梯關(guān)門(mén)l 電梯到達(dá)7樓l 7樓按鈕指示燈熄滅l 電梯開(kāi)門(mén)l 用戶(hù)B走出電梯l 電梯在等待超時(shí)到后關(guān)門(mén)l 電梯載著用戶(hù)A繼續(xù)下行到達(dá)1樓3.2異常情況l 用戶(hù)A在3樓按上行按鈕呼叫電梯,用戶(hù)A希望到1樓去l 上行按鈕指示燈亮l 一部電梯到達(dá)3樓,電

4、梯內(nèi)的用戶(hù)B已按下了到9樓的按鈕l 上行按鈕指示燈熄滅l 電梯開(kāi)門(mén)l 用戶(hù)A進(jìn)入電梯l 用戶(hù)A按下電梯內(nèi)到1樓的按鈕l 1樓按鈕指示燈亮l 電梯在等待超時(shí)后關(guān)門(mén)l 電梯上行到9樓l 電梯內(nèi)9樓按鈕指示燈熄滅l 電梯開(kāi)門(mén)l 用戶(hù)B走出電梯l 電梯在等待超時(shí)后關(guān)門(mén)l 電梯載著用戶(hù)A繼續(xù)下行到達(dá)1樓3.3狀態(tài)圖狀態(tài)圖4.1序列圖序列圖4.2協(xié)作圖協(xié)作圖5. 其它工作及部分代碼:電梯設(shè)置l 電梯分為三種狀態(tài):靜止,上升,下降。跟隨著電梯還有一個(gè)數(shù)據(jù),就是電梯當(dāng)前所在樓層數(shù)floor_lift,其中floor_lift=1。l 在系統(tǒng)中我們用數(shù)組來(lái)保存進(jìn)入電梯的乘客的信息,即目標(biāo)層數(shù)。l 關(guān)于超時(shí)問(wèn)題,

5、我們定義時(shí)間上限為30分鐘。乘客分析l 乘客的需求分為“上”和“下”兩種。此外乘客還有當(dāng)前層數(shù)floor_from以及目標(biāo)層數(shù)floor_to。當(dāng)然floor_from、floor_to也是在130之間的整數(shù)。初始化l 電梯需要初始化,其中狀態(tài)為靜止state=0,層數(shù)floor_lift設(shè)置為1。目標(biāo)層數(shù)數(shù)組需要初始化,即:for(i=0;i30,i+)l floori=0;電梯工作分析電梯的上升下降電梯的上升下降設(shè)置為一秒一層,即Switch(state) /state分為0靜止,1下降,2上升case 0:break;case 1:floor_lift-=1;break;case 2:f

6、loor_lift+=1;break;default:cout”error state”floor_lift,那么把電梯狀態(tài)改為上升,相對(duì)的當(dāng)小于時(shí)改為下降。當(dāng)floor_from=floor_lift的時(shí)候,將乘客的信息加入數(shù)組,將乘客目標(biāo)層數(shù)對(duì)應(yīng)的數(shù)組元素設(shè)置為1。即floorfloor_to-1=1。此時(shí)將電梯的狀態(tài)改為用戶(hù)的目標(biāo)方向,即state=direction。電梯為上升或下降狀態(tài)時(shí)將用戶(hù)輸入與電梯狀態(tài)相比:if(direction=state)&(floor_lift=floor_from)/用戶(hù)目標(biāo)方向與電梯方向一致時(shí)floorfloor_to-1=1;/允許用戶(hù)進(jìn)入并且輸入

7、目標(biāo)層數(shù)超時(shí)設(shè)置當(dāng)電梯的狀態(tài)state為0時(shí)開(kāi)始計(jì)時(shí)While(i1800)/每秒檢測(cè)一次,靜止?fàn)顟B(tài)保持30分鐘則回到一層If(state=!0)/檢測(cè)狀態(tài),一旦狀態(tài)改變,則停止計(jì)時(shí)break;Sleep(1000);i+;State=1;/設(shè)置為下降狀態(tài),目標(biāo)層數(shù)改為1樓floor0=1;6. 設(shè)計(jì)總結(jié)經(jīng)過(guò)了一個(gè)學(xué)期的學(xué)習(xí)和小組成員的共同努力,終于完成了這個(gè)作業(yè)。由于我們只是在系統(tǒng)的設(shè)計(jì)思想上進(jìn)行了統(tǒng)一的分析,并沒(méi)有進(jìn)行系統(tǒng)代碼的設(shè)計(jì),所以每人負(fù)責(zé)部分的方法可能名字上有些出入,不影響實(shí)際設(shè)計(jì)。雖然完成的效果可能不是很好,但是小組的每個(gè)成員都很努力了,我們覺(jué)得還是有很多收獲的。由于剛剛學(xué)習(xí)UML這種統(tǒng)一建模語(yǔ)言,對(duì)很多概念和問(wèn)題的理解不是很到位,所以肯定會(huì)犯很多錯(cuò)誤,希望老師多多指正。不過(guò),雖然遇到好多不懂的問(wèn)題,但是小組的每一位成員都能主動(dòng)地去查閱相關(guān)資料了解并在一起討論,通過(guò)這次

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論