XPJUG関西の勉強会に出てた

なんかよーわからんけど 10月26日 オブジェクトモデリング てのに参加した。

内容はオブジェクト指向設計のためのツールの一つである CRCカードについて。実際にチームに分かれてモデリングを実践することで、CRCカードとは何かを考える。

CRCカードの概要は上記告知ページに記載されている、ここいら辺 CRC(Class Responsibility Collaborator)モデルの概要で。

感想

CRCカードを使う上での困難さには以下のようなものがあると思う

  • それだけでは要件を表現しきれないので、他の UML図などと併用する必要がある
  • CRCカードに記載する「クラス」の粒度

で、終わってから感じたことは「ストーリー」を明確にすることがまず必要だったな。と。ワークショップで例えば「救急車」をモデル化しましょう。などとなった場合に、救急車のパーツ、例えばハンドルとかタイヤなどが救急車を構成するためのクラスとして抽出されてしまうんだけど、それらは本質的ではない可能性が多々あるだろう。

何を基準とするかを考えた時に、一つの考え方として今回救急車をモデル化することで達成したいユーザーストーリーを事前に明確化するといいのではと思った。そのユーザーストーリーが「患者を素早く病院へ搬送する」というものであった場合、もはやタイヤやハンドルはそのストーリー上は重要な要素ではなくて、ただ「走行できる」という程度の責務を抽出する程度で十分だと判断していいのではないだろうか。

そんなことを帰りしな考えていたのでメモ