システムのデザインの最適化を考えるのと同じくらい、プロジェクトの置かれた状況を意識しないと、本当に設計と言える設計は出来ない、という前回からの続きです。


では一言で設計と言っても、具体的にはどんな事をするのか。
まず、以下のような切り口があります。

  • 方式設計
  • 外部設計
  • 内部設計
  • 試験設計
  • 運用設計
  • プロジェクト設計

一つのシステムに対する設計という工程であるにも関わらず、これらの切り口が持つ問題領域はそれぞれ異なっています。ざっくりと、それぞれの概要を書き出してみます。

方式設計

対象のシステムの実装の仕方を設計します。その為、まずは実装方針の指標ともなるシステム・アーキテクチャ設計が必要となります。そのアーキテクチャに沿ったハードウェア、ソフトウェア、アプリケーションがそれぞれ分割して設計できるように、この切り口での設計は非常に慎重にやらなくてはなりません。

外部設計

対象のシステムと外部との接点に対して、細かく仕様を決めていきます。連動させる必要がある別のシステムがあれば、そのシステムとの通信やデータのやり取りを設計します。
また、ユーザとシステムとの接点に対しても設計が必要です。

内部設計

対象のシステムの外部仕様を元に、内部で必要な制御や処理を設計します。

試験設計

内部仕様の品質検査、ならびに外部仕様の品質検査を実施する、効率的なテストパターンを設計します。同時に、欠陥が見つかった場合にどのように対処するかという、テスト工程そのもののプロセスも設計します。

運用設計

実際にシステムが稼動した後、監視方法や欠陥発生時の対応方法などを設計します。

プロジェクト設計

個人的には、これも追記しておきたいところです。どのような要員とメンバー構成で、プロジェクトを遂行していくかを設計します。


今度から、これらを一つずつ掘り下げてみる事にします。