Help us understand the problem. What is going on with this article?

初めてやるDDDでデジモンをモデリングする その1

アドベントカレンダー書くための考えた流れを残しておくメモです。

自社でDDDやってるけど、DDD実践したことがない。
個人でお試しでDDDやってみよう。
好きなことの方がモデリングしやすいのでは?
と思い、昔好きだったデジモンアドベンチャーをDDDで表して見ようと思い、
今に至る。

経験ないので、
技術書店で買った
もくもくモデリングの森を旅するチビドラゴンの軌跡
https://taimen.jp/f/867
を参考に試行してみる

題材

デジモンアドベンチャーといえば、
デジモンの進化も良し、
子どもたちの成長も良しと
色々ありますが、
広げすぎると何もできないので、
今回は「アグモン」を題材にやってみます。

いざモデリング

ユースケース

本に「誰が何をするとこうなる」を書き出してみようとあるので書いてみた。

  • アグモンが進化するとグレイモンになる
  • グレイモンが超進化するメタルグレイモンになる
  • グレイモンが暗黒進化するとスカルグレイモンになる
  • メタルグレイモンが究極進化するとウォーグレイモンになる
  • アグモンがワープ進化するとウォーグレイモンになる

悩んだところ

アグモンがワープ進化するとウォーグレイモンになるのか。
それとも、ワープ進化とは、アグモン、グレイモン、メタルグレイモン、ウォーグレイモンの順に進化していくことをワープ進化というのか。
アニメでは、メタルグレイモンに進化するときは必ずグレイモンへの進化シーン入るけど、
ウォーグレイモンに進化するときは、アグモンから進化のモーション入るよね?って考えると、
自分はアグモンがウォーグレイモンにワープ進化している。の定義に落ち着きました。
で、一応公式確認したところ、メタルグレイモンからウォーグレイモンへの進化は究極進化というそうだ。
http://digimon-adventure.net/tri/evolution/agumon.html
つまり、「究極進化」と「ワープ進化」は言葉として別だという整理になった。

用語集

次に本では、ユースケースができたら、
ヒト、モノ、コトに当たる単語を抜き出そう。
って書いてあるので実践。
ここで思ったのは、「ヒト、モノ、コト」ってことは名詞を抜け
ということで「進化する」とかの動詞はここでは抜いてはいけないってことだ。

  • アグモン
  • グレイモン
  • メタルグレイモン
  • スカルグレイモン
  • ウォーグレイモン

ドメインモデル

ここでドメインモデル。
用語集に上がったアグモンたちをドメインに。
ユースケースに合わせて関係するドメインに線を引いていく。

dijimon.png

こんな感じになった。
次はこれでクラス図を書いています。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした