「アーキテクチャ設計の難しさについて」というエントリをしましたが、続きとして「未決定を決定する」という話を。 決定していないことを決める アーキテクチャは「作り方」を示すものなので作り始める前に決定している必要があります。つまり、アーキテクチャ設計はプロジェクトの最初に行います。ところが、皆さんもご存知の通りプロジェクト開始時点で全ての要件が出ることはありません。要件定義>基本設計と進んで行き、さらには実装も後半になってからアーキテクチャ上で対応すべき問題が発覚することもあります(後工程で問題が発覚するというのはアジャイルでも同じことです)。 ですから、アーキテクチャ設計では「決定していないことを決める」必要があります。 どう決定していないかを決める 決定していないことの設計方法は「どう決定していないかを決める」ということです。 前回のエントリで「接続先のサーバが決まっていない」という例を