SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

【デブサミ2020】セッションレポート

ドメイン駆動設計入門――”本当に役に立つソフトウェア”をつくる!【デブサミ2020】

【14-B-1】「ともにつくる」を実践するドメイン駆動設計

  • X ポスト
  • このエントリーをはてなブックマークに追加

ドメイン駆動設計のゴール

 成瀬氏がここで示したドメイン駆動設計のゴールは次のとおり。

  • 開発者とエキスパートが協力しドメインを正しく捉える
  • 真に役に立つモデルをつくり、真に役に立つソフトウェアをつくる

 ただ、言うはやすし、その道のりは険しい。開発者だけで完結しないからだ。開発者だけがドメイン駆動設計をやりたいと思ってもうまくいかない。それがドメイン駆動設計の実践における難しさに直結している。

 ドメイン駆動設計は、むしろステークホルダーやエキスパートのためのもの。彼らのビジネスを補佐するものであって、真に役立つソフトウェアをつくるための方法だ。関係者全員が一丸となってドメイン駆動設計でやりたいと思わない限りは実践できない。

 それには、チームを巻き込むことだと成瀬氏は言う。いかに賛同者を増やすか。『ドメイン駆動設計入門』を書いた理由はそこで、最初の一歩としてパターンだけをまとめた。もちろん、パターンだけでは難しい。あくまで、パターンは手段。ただ、そこから入ってドメイン駆動設計を勉強し、実践していく。それが今、求められるのではないかと成瀬氏は言う。

 最後に、ドメイン駆動設計の「本来の目標」を次の図で示した。

本来、目標とするドメイン駆動設計。ドメインモデリング、パターンの矢印は双方向になる
本来、目標とするドメイン駆動設計。ドメインモデリング、パターンの矢印は双方向になる

 コードは人の曖昧さを受け入れない。うまくいかないなとなったときこそ、ドメインの捉え方に立ち返って改めて見つめ直す。こうした双方向にフィードバックを回す、イテレーティブな開発、継続的な、反復的な開発こそがドメイン駆動設計の目標なのだ。

 さらに成瀬氏がゴールと目するのはその先。お互いのことを理解し真に役に立つモデルを作り上げ、真に役に立つソフトウェアを開発することだ。「ともにつくる」を実践する、それがまさにソフトウェアの未来を守ることにつながると言う。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
【デブサミ2020】セッションレポート 連載記事一覧

もっと読む

この記事の著者

大内 孝子(オオウチ タカコ)

 技術系の書籍を中心に企画・編集に携わる。2013年にフリーランスに転じてからは技術解説記事の執筆も行う。著書に『ハッカソンのつくりかた』(BNN新社)、編著に『エンジニアのためのデザイン思考入門』(翔泳社)などがある。 Twitter: @raizo Facebook: ...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/12189 2020/05/08 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング