Upgrade to Pro — share decks privately, control downloads, hide ads and more …

駆け⾜で学ぶドメイン駆動設計

comucal
March 28, 2023

 駆け⾜で学ぶドメイン駆動設計

ドメイン駆動設計

comucal

March 28, 2023
Tweet

More Decks by comucal

Other Decks in Technology

Transcript

  1. ©2020 Fullstream Solutions, Inc. ⾃⼰紹介 ◆和智右桂 l 株式会社フルストリームソリューションズ 代表取締役社⻑ l

    ⾷品会社(東証STD) 外部CTO l 翔泳社主催 CodeZine Academy講師 l (⼀財)⽣涯学習開発財団 認定プロフェッショナルコーチ ◆経歴 l 複数の上場企業にて、フロントシステム/基幹システムのリ プレイスのプロジェクトマネージャーを経験する他、IT戦略 ⽴案、DX推進⽀援を実施。 l 上場企業を含む企業の経営者やスタートアップの代表、製薬 会社シニアマネージャーへのエグゼクティブコーチングを実 施。 l ソフトウェア開発に関する翻訳書を数多く出版 • 『エリック・エヴァンスのドメイン駆動設計』Eric Evans(著)、翔泳社(2017 )和智右桂(翻訳)[共訳] • 『リーダーの作法―ささいなことをていねいに』Michael Lopp(著)、和智右 桂(翻訳)、オライリージャパン(2022) 1
  2. ©2020 Fullstream Solutions Inc. 課題設定① ◆ソフトウェアの品質には2種類ある l外部品質 • ユーザーから⾒たソフトウェアの品質。 •

    ユーザーが使いやすく、信頼性が⾼く、安全であることが求められる。 l内部品質 • 開発者や保守者から⾒たときの品質。 • 内部品質が⾼いと、コードの理解や保守がしやすくなり、拡張性などが 向上する。 4 作ったソフトウェアを 2度と触らないなら、 しっかりテストしてきちんと 動きさえすればいい 実際には、機能追加・改修を 重ねながら⻑い期間付き合う ことになる
  3. ©2020 Fullstream Solutions Inc. 課題設定③ ◆つまり⼤切なのはコンポーネント化 lコンポーネントとは • 独⽴して動作する部品のこと。再利⽤可能な部品単位に分割し、独⾃の インターフェースを備えていることが特徴。

    • ⼀つのコンポーネントが⼀つの機能を担当する。 lコンポーネント化のメリット • 再利⽤性や保守性の向上、開発効率の向上など。 • 再利⽤性が⾼いため、同じ機能を複数回実装する必要がなくなる。 • コンポーネントは独⽴しているため、修正や拡張が容易に⾏えるように なる。 6
  4. ©2020 Fullstream Solutions Inc. 26 26 会社概要 ◆株式会社フルストリームソリューションズ l FullstreamSolutions,

    Incorporated. l 設⽴:2020年12⽉15⽇ l 資本⾦:6,000,000円 l 所在地:東京都新宿区⻄新宿1-26-2 新宿野村ビル48階 l 代表取締役社⻑:和智 右桂 l e-mail:[email protected] l url:http://www.fullstream-solutions.co.jp ◆コンセプト お客様の新しい環境に対応する社内の変⾰を成功させるため、 お客様の価値観・⽂化を尊重しつつ、⾜りない役割を補うことによって、 戦略⽴案/企画から運⽤に⾄るまで、⼀連の流れをご⽀援します。 フルストリーム
  5. ©2020 Fullstream Solutions Inc. 27 27 ◆DDD Boot Camp(Private Edition)

    l ドメイン駆動設計について、実践に活かせる知識を⾝につけるために、座学とワークショップを組み合 わせて学ぶ、1⽇のワークショップです。ご希望される企業様向けにカスタマイズして提供します。 ◆DDD/MSA講座 l ドメイン駆動設計とマイクロサービスアーキテクチャについて学ぶ2⽇間(4時間×2)の研修プログ ラムです。 l グロース・アーキテクチャ&チームス株式会社(Graat )と提携して提供しています。 ◆サービスデザインとドメイン駆動設計によるアーキテクチャ設計 l サービスブループリントの作成からシステムの内部構成の設計、ER図の作成、APIの設計までを学ぶ、 6⽇間(4時間×6)の研修プログラムです。 l グロース・アーキテクチャ&チームス株式会社(Graat )と提携して提供しています ◆ディスカッション・トレーニング l ⾃分と相⼿の考えを擦り合わせて最適解を導き出す訓練を、カードゲームを使って⾏う2回(2時間×2 )のトレーニングです。 研修プログラムのご紹介 その他オフラインでのコンサルティングサービスも提供しています。お気軽にお問い合わせください。