エヴァンス本8章をリアル実践...

Preview:

Citation preview

エヴァンス本 8 章をリアル実践 〜如何にしてチケットブックが生まれたか〜アソビュー株式会社 藤岡 和也

2016-5-11( 水 )【 #DDDConf01 】 asoview!×ChatWork×NewsPicks×CureApp

自己紹介藤岡 和也@jizuya_fアソビュー株式会社 所属日本最大級のレジャー・体験・遊びの予約サイト asoview!(http://www.asoview.com/) のエンジニアとして開発に従事

DDD との出会い2010 年 9 月〜 2015 年 4 月末まで、 DDD おじさんこと増田さんマネジメントのプロジェクトに参加し DDD を実案件に導入することを一緒に邁進してきました

asoview! を成長させていってくれるエンジニアの方を 絶賛、大募集中です。 DDD を使ってワクワクしながら一緒に開発してみませんか?

ちょっと宣伝

今回はこの asoview! にチケット機能を追加した際、チケットブックという言葉が関係者全員の共通言語 ( ユビキタス言語 ) になったかと言うエピソードを簡単に紹介します

チケットブックのエピソード• チケットを束ねるモデルをどう表現するかをチームで模索していた中、チケットブックというワードで画像検索した結果が開発者全員に納得できるものだった。• チケットシステムリリース直前に、購入したチケットをユーザに見せる際にどのような文言がいいかの議論が持ち上がった。• 開発者は当然のように使っていたユビキタス言語だったのだが、コードを書いていなかった別のエンジニア達とはうまくシェアできていなかった• 「購入チケット」という言葉になりかけたが、開発者がなぜチケットブックという言葉を選んで、それがどういうものなのかを説明• 結果的にチケットブックという言葉が全員に浸透し、申込履歴にも文言がでることになった。

この

この画像を見た瞬間に関係者全員の中でチケットブックと言う表現が一番適切だと言うことで一致しました。

ユビキタス言語になったことは判った。けどモデル的にはどうなってるんだ?と言う心の声が聞こえてきそうなので

Ticket

Fee

チケットシステムの資料をもとに最初に作成したモデルチケット 料金 概要 利用可能日

Description

Available Day

Ticket Type

Fee

チケットに関連する条件等を束ねるモデルとそのチケットを購入することで発券されるモデルに分かれる(実はこの時点でチケットを束ねるチケットブックは生まれています…)

Description

Available Day

Ticket

Ticket Type

Fee Type

チケットは会社毎に設定できる大人、子供などの券種を表すモデルを追加券種を購入し、チケットができるというモデルになる

Description

Condition

Ticket

Partner Purchase

Ticket

ここでブレイクスルーが発生料金の違いだけで表現していた券種モデルの見直しを行う購入後のチケットを束ねるモデルの追加を行う

Description

Condition Ticket Item

Partner Purchase

PriceTicket Type

Ticket Book

こんな感じで DDD で日々開発しています。asoview! を成長させていってくれるエンジニアの方を 絶賛、大募集中です。

最後にも宣伝

ご清聴ありがとうございました

Recommended