ObjectSquare [2008 年 3 月号]

[特別企画]


モデリングカフェ「Square」

〜UMLでモデリングを愉しもう〜

 

−第 16 回− 多言語コミュニケーションをモデリングする

(株)オージス総研
組み込みソリューション部
田中恒

目次

  1. 前回の問題(おせち)
  2. 読者解答モデル − 本文で紹介できなかった解答モデル
  3. 解答例
  4. 今月号の問題 (出題)
  5. 解答モデルの送付について
  6. 参考文献

1.前回の問題( おせち )

前回の問題をもう一度確認しておきましょう。

【お題15】おせち

我が家のおせちは、毎年、次のようになっています。

一の重黒豆
数の子
ごまめ
紅白かまぼこ
いくら
二の重海老

昆布巻き
伊達巻き
栗きんとん
三の重サトイモ
たたきごぼう
金時人参
蓮根
こんにゃく
高野豆腐
しいたけ
お題(おせち)

余談ですが、それぞれの料理には願いが込められています。代表的なものは次の通りです。

黒豆無病息災の願い
数の子子孫繁栄の願い
ごまめ豊年豊作の願い
たたきごぼう開運の願い
昆布巻き慶事の願い
海老長寿の願い
きんとん財産、富を得る願い

以上を読んで、おせちをモデリングしてください。

不足する情報は適宜補っていただいて結構です。補った情報は、コンセプトに記述してください。 解答はクラス図で表現して下さい。クラスには必要な属性を、関連には多重度を明記するのがポイントです (解答時間の目安は15分〜30分です)。

ポイント解説

このお題から読み取れるポイントは次の 2 点です。

  1. お重(段)と料理の関係を表現する。
  2. 料理と願い事の関係を表現する。

それぞれについて見ていきましょう。

1 つ目のお重(段)と料理の関係は、もっともシンプルに考えれば、どのお重にどんな料理があるか、ということになります。 お重を開いたときに「あ、いくらだ」「こっちに海老が入ってる」というようなイメージですね。 例えば百貨店やオンラインショップでおせちを注文するときを想定すれば、「このおせちの場合、一の重の料理はこれこれです、二の重はこれこれが入っています」という関係が分かれば良いので、このシンプルなケースで十分と言えるでしょう。

少しおせちについて調べてみると、どのお重にどんな料理を詰めるのかに、目安程度のゆるいルールがあることが分かります。 一の重は口取りや祝肴を、二の重は酢の物を、三の重は煮物を、という具合です。 このことを重要と捉えるのであれば、「料理の種別」のような概念がお重と料理を結び付けると考えても良いでしょう。 ただ実際のところ、詰め方は絶対的な決まりごとではなく、地域や家庭によってさまざまだそうです。

おせち料理を作ってお重に詰める、その詰め方を問題とする場合は、この料理はどのお重に詰めるのか、という見方になるでしょう。 もっともシンプルに考えた場合は、お重と料理の関係で表現できますね。 ただ、「料理の種別」のような概念で両者を結び付けている場合は少し注意が必要です。 ある料理の種別が複数のお重にまたがるような関係の場合は、お題 14「百貨店のフロア」と同じような関係になるでしょう。 例えば、祝肴は一の重と二の重の両方に入ります、という場合です。

2 つ目の料理と願い事の関係は複雑に考える必要はなさそうです。 注意点としては、料理と願い事の多重度くらいでしょうか。 例えば、サトイモは子芋がたくさんつくことから、数の子と同じ子孫繁栄の願いがあるようです。 同じ願いの料理が複数あるケースを考えておけば良いでしょう。 ただお題の例を見る限り、料理と願い事の関係は 1 対 0..1 になっていますので、そのようにしても良いでしょう。 もしくは、「余談ですが」とあるくらいですので、ばっさりと切り捨てても良いかもしれません。

2. 読者解答モデル

今回も読者の皆様からたくさんの解答モデルを頂きました。ありがとうございます。 これまでと同じように、3 つの解答モデルをピックアップして、当カフェのマスターとヒトクセある!?常連たちと一緒に見ていきましょう。 コーヒーなどを飲みながら、皆様も一緒にわいわいやる感じで考えてみてください。 また、残念ながら紹介することができなかった解答モデルはこちらに掲載しますので、 オブジェクトの広場 メーリングリストなどで意見交換していただければ幸いです。

読者解答1:ニミッツ 様
読者解答2:もぐたん 様
読者解答3:884 様

3. 解答例

解答例としまして、当カフェのマスターのモデルを紹介致します。 コンセプト次第でモデルは変わりうるものですから、 正解としてではなく、1つの考え方としてご覧ください。

コンセプトの導出

おせちのお重と料理の関係、料理と願い事の関係をモデリングする。

(※抽象レベルの設定。ぶれないように。)

お重と料理の関係では、例えばおせちのカタログのように、どのお重にどの料理が詰められるのか、という"形式"の部分に注目する。 (「今年の我が家の、まさに今目の前にあるおせち」を表現するのではない。 そのため、いくらは食べてしまってなくなったなど、実体としてのおせちは対象としない。)

料理と願い事の関係では、「開運の願い」のように一般化された願い事を対象とする。 開運の願いとして「宝くじが当たりますように」という願いを込めている、のような具体的な願い事を対象とはしない。かといって、「何か良い事がありますように」のように一般化しすぎない。

  
解答例

4. 今月号の問題 (出題)

今月号の問題です。モデリングの進め方については、第 1 回のモデリングの進め方を参照してください。

【お題16】多言語コミュニケーション

たけしとキャシーが会話をしています。でも、日本語と英語が混ざっているようです。

お題(多言語コミュニケーション)
お題(多言語コミュニケーション)

この状況をモデリングしてください。

不足する情報は適宜補っていただいて結構です。補った情報は、コンセプトに記述してください。 解答はクラス図で表現して下さい。クラスには必要な属性を、関連には多重度を明記するのがポイントです (解答時間の目安は15分〜30分です)。

5. 解答モデルの送付について

解答モデルの送付についてをご覧ください。
なお、今月号は第 16 回です。 締め切りは 2008 年 4 月 17 日 (木) です。

解答例掲載は 2008 年 5 月号 ( 2008 年 5 月上旬 ) を予定しています。

6.参考文献

本連載では、文献[1]をベースに、より気軽にモデリングを愉しんでいただけるテイストにしております。 モデリングに関するしっかりした解説が欲しい場合には、以下の書籍をご覧になると良いと思います。

  1. 「思考系UMLモデリング即効エクササイズ モデ力を鍛える13の自主トレメニュー」、渡辺博之他、翔泳社
  2. 「UMLによるオブジェクト指向モデリングセルフレビューノート」、荒井玲子著、ディーアート
  3. 「UMLモデリングの本質」、児玉公信著、日経BP社

記事の内容を5点満点で評価してください。
1点 2点 3点 4点 5点
記事に関するコメントがあれば併せてご記入ください。

© 2008 OGIS-RI Co., Ltd.
Prev. Index Next
Prev. Index Next