[イベント特集]
ObjectDay 2001フライング企画!
広場からの先行受付は、ご好評により定員に達したため締め切らせていただきました。
モデリングワークショップは18日公開のObjectDay2001ホームページよりお申し込みください。
企画3: ♪おいらはモデラー3番目は、オーソドックスなモデリングワークショップです。モデラーとしての腕をこれから磨いてみたい方、既に自信のあるかた、ふるってご参加ください。
題材となるのはGreedゲームです。
もともとは、OOPSLA' 89で行われた、オブジェクト指向プログラムコンテストの課題です。オブジェクト指向でのよりよいモデリング、設計、実装を簡単なプログラムで示すというのが目的で、開催されました。Basic、Pascal、C++、Smalltalkなど様々な言語のエキスパート達が、「われこそは」と挑戦を挑んだのでした。詳しい様子は、"Object Lessons -Lessons Leaned in Object-Oriented Development Projects"(Tom Love, 1993 SIGS)に記述があります。日本語訳は「オブジェクトレッスン」(1995 トッパン、ISBN 4-8101-8588-5)。絶版です。(^^;
現在では、オブジェクト部門に入ってきたオージスの新人が必ず取り組む通過儀礼になっています。
スケジュール
○事前
- 発表者はグループまたは個人で応募して下さい。
- グループごとに事前にモデリングを行ないます。(個人で応募の場合こちらでグループをつくらさせて頂く場合があります)
○当日
- モデリングの発表をして頂きます。(10分〜15分)
- 観客が質問をして、発表者が答えます。
- 観客は支持者を決定します。
○検討
- 発表者およびその支持者は他発表者のモデルの問題点、
- 自分のモデルの優位性を話し合います。(30分程度)
○2回目
- 各発表者は検討した結果を発表して頂きます。(10分〜15分)
- 指摘された他チームはその場で反論して頂きます。
○最終結果
- 観客は再度最終的に支持するグループを決めて頂きます。
- 一番支持が多いグループを優勝とします。
GREEDゲーム
○仕様
- GREEDは二人以上のプレイヤーによって行なわれるサイコロゲームです。
- ゲームは、5個のサイコロを壷に入れ、振って出た目から得点を計算し、得点の合計が最初に5000点になった人が勝ちとなります。
- プレイヤーがひととおり振り終えても勝者が決まらない場合は、再度プレイを続け合計が5000点になるまで繰り返します。
- プレイヤーは自分の回の最初の振りで、100点以上の点数を出さなければなりません。
- 100点以上でない場合「破産」となり、その回の得点はなくなります。 最初の振りで100点以上出た場合、プレイヤーはその点数のまま止めるか、さらに振りつづけるかを選ぶことができます。
- 振りつづける場合、プレイヤーは得点にならなかったサイコロのみを振ることができます。
- また特別に、最初の振りですべての目が得点になった場合は、すべてのサイコロをもう一度振ることができます。
- 振りつづけて出た目が得点にならなかった場合は、破産となります。
- 破産しなければ、いつでも振りつづけるのを止めることができます。
- このようにしてプレイヤーはサイコロの目が得点になるか、または破産するまでサイコロを振りつづけることができます。
- 最終的に、あるプレイヤーが合計5000点に達し、他のプレイヤーがその回を終えたとき、最高の点数を取ったプレイヤーが勝者となります。
振って出たサイコロの目は、以下のようなルールにより計算されます。
- 三つの目が揃った場合、100 × [サイコロの目] が得点。
- ただし1が三つ揃ったときは、1000点。
- 1または5はそれひとつにつき、それぞれ100点、50点。
○例
最初の振りの例。44446 = 400 + 0 + 0 = 400点
この場合4と6のサイコロをもう一度振ることができます。11115 = 1000 + 100 + 50 = 1150点
すべてのサイコロをもう一度振ることができます。12315 = 100 + 0 + 0 + 100 + 50 = 250点
2と3のサイコロをもう一度振ることができます。23456 = 0 + 0 + 0 + 50 + 0 = 50点
おお、破産です。
○問題
上に書いてある仕様のゲームを行いたいのですが、残念ながら壷やサイコロが見当たりません。
が、幸運なことに、目の前にはコンピュータがあるではないですか!
ということで、皆でゲームを行えるようコンピュータ上にゲームアプリケーションを構築することにしました。
得点の計算や表示も行ってくれたほうがうれしいのですが、まず初めのステップとして、上記の仕様について分析を行うことにしました。
では分析設計モデルを作成していきましょう。
○成果物
- 分析のクラス図、シーケンス図
- 設計のクラス図、シーケンス図
○補足
上記仕様中に不明確な点や矛盾点がある場合は、各チーム内で話し合って独自にルールを設定してもかまいません。ただし、どのような決定をしたかは記録に残しておくこと。
申し込み!
このワークショップに参加される方募集します。厳正な抽選の結果、当選者にはObjectDay事務局よりメールでお返事させていただきます。普段から「おいらはモデラー」と思われている方、ぜひご参加ください。
チームは一人からでも参加できます(少人数のチームは適切な人数になるようマージされます)。
赤文字は必須入力項目になります。
© 2001 OGIS-RI Co., Ltd. |
|