ロバストネス分析する目的

ロバストネス分析は、その名の通り、ソフトウェアの堅牢さを分析するものである。Boundary, Control, Entiryの大きく3つのグループにオブジェクトの集合を分類することで、どのようなオブジェクトが必要かを事前に洗い出すことができる。一般的には、ユースケース記述から設計に落とす前に、ロバストネス分析を行なう。

というのは建前で、実際には上記の目的よりも、

  1. ユースケースに必要な画面に抜けはないか?
  2. ユースケースで利用するテーブルは何があるか?
  3. システムで利用するすべてのテーブルの洗い出し
  4. システムで利用する画面遷移

を事前に分析できることが、一番うれしいことだと思っている。

小生の場合、ロバストネス分析を行なう理由は、BoundaryとEntityの抽出が一番の目的であり、Controlは2の次となる。ほとんどの場合、Controlはユースケース名に近いものを1つ作って終わりにする。たとえ、この段階でControlを必死に抽出しても、設計の段階でぜんぜん変わってしまうことが往々にしてあるため、労力に見合う効果が薄いと感じるためだ。