little-hands/ddd-q-and-a

DDDで開発を進めていく場合、要件定義→設計→実装→テストというフェーズは一気通貫で同じメンバーが関わった方がいいかなと考えているのですが、要件定義→設計はAさん、実装→テストはBさんのような分業体制を敷いている現場ではDDDの導入は難しい...

Opened this issue · 0 comments

Question

DDDで開発を進めていく場合、要件定義→設計→実装→テストというフェーズは一気通貫で同じメンバーが関わった方がいいかなと考えているのですが、要件定義→設計はAさん、実装→テストはBさんのような分業体制を敷いている現場ではDDDの導入は難しいでしょうか?

Answer

「DDDの何のプラクティスを導入するか」をもう少し具体性をあげてみると良いと思います。今の開発体制で、取り入れたいのは何でしょうか?DDDの目的は①機能性を上げる②保守性を上げるで、①に主に対応するのはドメインモデリング、②に主に対応するのはエンティティなどの実装パターンです。この2つがモデルを通じてリンクすることで機能性と保守性を両方高められると言うものです。
今の体制でも実装パターンは分担関係なく取り入れられると思います。
モデリングに関しては、要件定義段階で担当者がドメイン(ソフトウェアを使って問題解決しようとする領域)に詳しい人と一緒にモデリングを行うことはできます。その後、設計資料の一環としてドメインモデル図を実装者に引き継ぐことで、より意図を汲んだ実装にすることができます。