ソフトウェア開発を「問題解決」、と見ると、 問題→解という活動だと考えられる。左の「問題」は、問題空間にあり、右の「解」は解空間にある。設計とは、このマッピングを行なう活動だと考える。では、分析とは何か。 実際には、(ソフトウェアでは特に)問題が複雑だったり曖昧だったりすることから、このままではうまく解けない(悪構造 ill-structured problem)。そこで、一旦、この「問題→解」という現実世界の問題をモデル化しよう、ということになる。「問題空間」、「解空間」という空間と直行する空間軸として、上下に「モデル空間」と「現実空間」を導入する。そうすると、4つの象限が現れる。その4つの象限に、現実空間の「問題」と「解」、そして、モデル空間の「分析モデル」と「設計モデル」を置く。ここで、分析モデル=モデル化された問題 、設計モデル=モデル化された解である。そして、問題→解という直線的