どうやってBounded Contextを見つけるか


ドメイン駆動設計の取っ掛かりで難しいのはBounded Contextの設計である。Bounded Contextを設計するにあたって、そのDomainのSub Domainを発見しなければならない。Sub DomainはDomainによって千差万別であり、手順書的に探し当てられるものではない。

このような課題があって、調べてみたら Sub-domains and Bounded Contexts in Domain-Driven Design (DDD) という記事を見つけた。

この記事によると、コミュニケーション構造に着目して探してみると、ヒントを得ることができるとのこと。どんな業務にも組織があり、コミュニケーション構造がある。組織が人間である以上、コミュニケーションにはコストがかかる。そのコストを下げるために、多くの業務では組織を最適化している。つまり、組織といったコミュニケーション構造に従ってSub Domainを模索することはBounded Contextを設計するための近道である。