1章 事業活動を分析する
事業領域(business domain)とは何か
事業領域(business domain)とは、企業が事業活動を展開する領域のこと。企業が顧客に提供するサービス
クロネコヤマトは宅配サービスを提供など
一つの企業が複数の領域で事業活動を展開することもある
アマゾンは、ネット通販とクラウドコンピューティングサービスを提供している
業務領域(subdomain)とは何か
業務領域(subdomain)とは、事業活動の領域全体を細分化したもので、すべての業務領域の活動が連動して一体となったものが事業活動
競合他社と差別化し、事業活動を維持発展させるために必要
ドメイン駆動設計では、業務領域を3つのカテゴリーに分類する
中核、一般、補完
業務領域は、強く関連するユースケースの集まり
同じ事業領域に属するユースケースは、同じアクターが関与し、同じ外部システムとつながる
設計判断をやりやすくするための道具でもある
ソフトウェアに関係しない業務機能を特定することにも役立つ
中核の業務領域
コアサブドメインはコアドメインとも呼ばれる。エバンス本では両者は同じ意味として扱われる
中核の業務領域(Core Subdomains)は、競合他社との違いを生み出す業務活動
自社独自の製品・サービス開発や業務プロセスを改善してコスト優位性を生み出したりする活動
競争優位はここからのみ生まれる
中核の業務領域は複雑である必要がある
競争優位を維持し続けれるような、競合他社が真似できない独自の仕組みを作ることが必要
競争優位を生み出す方法はさまざまで、技術的なものだけとは限らない
製品のデザインや、対人関係によって生み出される価値の可能性もある
この領域は頻繁に更新される
常に変更が行いやすいように、改善し最適化しておく必要がある
一般的な業務領域
一般的な業務領域も複雑なことが多いが、競争優位は生み出さない
世の中のサービスなど、既存の仕組みを利用する
認証・認可や決済の仕組みなど
この業務領域は単純ではなく、かなり入り組んだものになる
「わからないことがわかっている」領域で、不足している業務知識を外部サービスなどで補うことが可能
補完的な業務領域
補完的な業務領域(Supporting Subdomains)は事業活動を支える業務活動
こちらも競争優位を生み出すことはない
中核の業務領域がオンライン広告事業の場合、広告素材カタログは補完的な業務領域となる
業務ロジックは明瞭で、基本的なETL操作とCRUD画面で成り立つことが多い
業務領域の分割
業務領域のカテゴリー分けが難しい場合は、業務の複雑さの程度を考える
その業務領域に対して、誰かがお金を払ってくれるのなら中核の業務領域
外部サービスの導入が必要な複雑度なら一般的な業務領域
外部サービスを使わずに、自分たちで作ったほうが簡単な複雑度なら補完的な業務領域
会社の組織図がある場合は、そこからヒントを得て分割することも可能
オンライン販売の会社であれば、倉庫、顧客サービス、出荷、配送、品質管理などの部門があり中には外部委託しているケースもある(つまり一般の業務領域)
業務領域は、強く関連するユースケースの集まりということに着目することで業務領域の細分化の単位を判断することができる
開発の基本方針
中核の業務領域は社内で開発するべき
外部への開発委託や、外部サービスの利用は自社独自の優位性を保つために避ける
table:領域の比較
領域 競争優位 複雑さ 変化 実装 課題の特徴
中核 ◯ 複雑 多い 社内での独自実装 複雑で興味が深い
一般 ✗ 複雑 少ない 製品購入や外部サービスを利用 既存の解決策がある
補完 ✗ 単純 少ない 社内または外部委託 明確