モデリング
読者の皆様から、たくさんの解答モデルを頂きました。ありがとうございました。こちらのページでは、残念ながら本文で紹介することができなかった解答モデルを記載します。オブジェクトの広場 メーリングリスト等で意見交換していただければ幸いです。
目次
改定履歴:見た目のレイアウトを更新しました。(2021.7)
読者解答1:吉本信弘 様
- コンセプト
- 食材、分量、単位についてのモデリングをメインとし、 作り方については単純な構造とした。
- 作り方も「もの」「こと」で分解していくことが可能だと思われるが、 お題の内容だけでもかなりの量になってしまいそう。
- 食材は、1つの分量のみを保持し、表記方法として異なる単位での 表示が行えるようなモデルとした。
- 分量を2つ保持する場合、どちらが正しい値であるか問題とならないか?
- モデル
- クラス図
- オブジェクト図
- 感想
- 難しかったところ
- 食材と単位、換算率の関係
- 換算率の多重度
- モデルについて自己評価
- OCLを使用することで、あいまいさは少なくなったように思える。
- 換算に関しては少し詳細すぎるか。

図 1 吉本信弘 様の解答モデル - クラス図

図 1 吉本信弘 様の解答モデル - オブジェクト図
カップの容量は固定で、食材による換算率の違いは発生しないが、 玉ねぎとじゃがいものように、同一表記の単位でありながら、 食材の違いによって換算率が異なる。 これらの両立が難しかった。
上記の内容を満たすためには、換算率は食材、換算元単位、換算先単位で 一意となる必要があるが、UML上での表記方法は?
読者解答2:喫茶「模型作り」 様
- コンセプト
- 材料は全て使う。
- 材料はまとめて使う(小分けにして使わない)。
- 分量には一つだけ別名を持つ。
- 野菜などの大きさ、材料の種別(野菜、調味料など)は属性として持つ。
- 作業の順序を明確にする。
- 皿数が変わればレシピが変わる。
- モデル
- クラス図
- オブジェクト図
- 表ルート
- 感想
- 難しかったところ
- 分量の別名の扱い。
- 皿数の扱い。
- 自己評価
- 結果は納得できるが、プロセスはいまいち。70点。

図 2 喫茶「模型作り」 様の解答モデル - クラス図

図 2 喫茶「模型作り」 様の解答モデル - オブジェクト図(表ルート)
読者解答3:岩沢正樹 様
- コンセプト
- 「カレーの作り方」は、「手順」が順番に連なったもの。
- 「手順」は、材料と道具と調理方法との関係と捕らえる。(細部は、考えない。)
- 「手順」は、作成物、順番など前段階の結果を踏まえた結果と捕らえる。
- 「材料」を使う「手順」は1ヶ所だけ。
- 「手順」「材料」をまとめたものが「レシピ」となる。
- モデル
- 感想
- 難しかったところ
- 自己評価

図 3.1 岩沢正樹 様の解答モデル
「カレーの作り方」と「レシピ」の、粒度の捕らえる基準の決め方が難しかったです。
「手順」と「道具」が、多対多になっていて、本来は別々の 領域の概念になると思いますが、整理しきれていません。 無難なところで、今回は、5~6点です。
読者解答4:Go5号 様
- コンセプト
- 食材には未調理のものと調理済みのものがある。
- 作成するカレーも調理済みの食材の1つである。
- 手順に従い調理をおこなう。
- 手順にはある調理をどれくらいの時間実施するか定義されている。
- モデル
- クラス図
- オブジェクト図
- 感想
- 難しかったところ
- 自己評価

図 4.1 Go5号 様の解答モデル - クラス図

図 4.2 Go5号 様の解答モデル - オブジェクト図(表ルート)
材料が調理されていく状況をクラス図で表現するところ。
オブジェクト図を見てみると、一応カレーが作れた。60点
読者解答5:884 様
- コンセプト
- カレーは料理の一種である。
- 作り方は、材料一覧と手順(1手順以上)で構成される。
- 材料一覧は、材料ごとの仕様に関する情報をもつ。ここでは量のみとしている。
- こだわる場合は、産地、状態などがあっても良いだろう。→モデルの対象外
- 実際に作るときは、調達した食材と調理器具を用意して、手順の調理仕様に従って調理する。
- 調理仕様には、材料の切り方やサイズ、火力といった、使用する器具、その手順の調理対象となる食材がなんであるかが明記されている。
→詳細はモデルの対象外。 - 食材は調理が進むと、調理状態が変化する。
- すべての材料が手順どおりに調理され、材料が特定の調理状態になると料理は完成する。
(生野菜、生肉、水、ルーを鍋に入れただけではカレーにならない。→モデルの対象外。) - モデル
- クラス図
- クラス図
- 感想
- 難しかったところ
- ”作り方”をいかに表現するか。
- 自己評価
- もっとシンプルにしたい。オブジェクト図が複雑。
- 前回同様、70点。

図 5 884 様の解答モデル - クラス図

図 5 884 様の解答モデル - オブジェクト図
ステートチャートを書こうかと思ったが、クラス図で表現することが指定されていて迷った。
最初はカレーの出来上がる過程をモデリングしていた。
改定履歴:見た目のレイアウトを更新しました。(2021.7)