2017-01-18 61 views
1

我正在創建一個小型的多人遊戲。只有當有兩名球員出席時才能進行比賽(不超過)。 在典型的單人遊戲中,應該有一個名爲「玩家」的Actor。但在這種情況下,有兩名球員。那麼是否有可能將「Player1」和「Player2」聲明爲演員?多人遊戲用例圖有多少個演員?

注意:在某些任務中,他們中的任何一個都會參與。我怎樣才能表達這一點? (就像進入高分[只有其中一個可以成爲贏家,他們兩個都不能同時成爲贏家])。

這是正確的? - Use case 2 players

+0

除了以上的問題,我問,有一個用例稱爲「玩遊戲」。如果我將它擴展到另一個稱爲「再次播放」的用例,它是否允許? – Senura

回答

1

我只是使用一個名叫Player的演員,並添加一個約束條件,即需要恰好有2個玩家實例。玩家人數無關緊要的用例你沒有這個限制。

enter image description here

Play again是沒有用的情況。這可能是在彈出問題的Play game UC中的一個簡單操作。

P.S.您應該閱讀Bittner/Spence以瞭解關於UC合成的想法。

P.P.S .:如評論中已經提到的,演員不是一個人,而是一些(通常)人的行爲方式。如果你有一個雙人遊戲,並且兩個玩家都是平等的,你只有一個演員(他們的行爲方式是相同的)。如果你有兩個不同的球員,比如一個挑戰者和一個對手,你會使用兩個不同的演員。即ChallengerOpponent。當涉及觀察統計數據或類似數據時,它們都可能採取類似的行動。現在你有一個第三個角色Player從上面的演員可以繼承:

enter image description here

+0

我已經上傳了一個圖片到這個問題(請看看它)。那麼是否有可能將玩家1和玩家2推廣到「玩家」? – Senura

+1

如果一個演員與一個用例無關,它不應該在你的UC圖中與用例相同 –

+0

是的,可能的。但是多餘的。你正試圖用泛化來展示實例。僅當您具有不同的一般角色(如User < - Admin)時才使用泛化,其中管理員也具有用戶角色,並且具有與僅用戶不同的UC。 (@RedBeard說了什麼) –

1

UseCase圖必須列出系統(Multiplyer遊戲)的可能使用類型,可能的演員類型及其關係(哪些用例可由哪種演員訪問)。所以在你的遊戲中,兩個玩家是兩種不同類型的演員(這意味着他們不會和遊戲有相同的交互),或者他們是同一類型的演員(與同類型的演員遊戲)?

+0

Player1和Player2根本沒有區別。獲勝者將能夠獲得「高分」。所以最後一名球員將獲得「高分」,另一名球員保持原樣。 – Senura

+0

沒有區別,所以沒有兩種演員.... 對於你的其他反思,問題仍然是相同的。 「輸入高分」是我係統的一個用例嗎?如果是的話把它放在你的圖上。哪種演員可以使用它?現有的玩家(在這種情況下添加awinning約束)或另一種類型的用戶(贏家)? etc. –