システムデザイン

たぶんなんかのメモ

システム設計内容の基本3階層

1.システム構造設計
1.1.全体像を設計
1.2.ソフトとハードの概要
1.3.人間の作業内容、ルールの概要
1.4.運営体制の概要
1.5.目的、期待効果を明確化
1.6.大きさに合わせて分解
1.7.設計作業を問題解決として捉える
1.8.成功条件を明確化
1.9.実現可能かを確認
2.ソフトウェア構造設計
2.1.ソフトウェア全体の構造を設計
2.2.単体プログラム(クラス)分け
2.3.共通化、拡張性を考慮
2.4.情報表示、エラー処理のルールを規定
2.5.データベース製品等の選択
2.6.個々のプログラムの外部使用の概要
3.プログラム(クラス)設計
3.1.個々のプログラムの外部仕様を細かく規定
3.2.エラー処理など、個々に考慮すべき点を明確化
3.3.性能、信頼性など、重視すべき点を明確化
3.4.必要に応じて最適な内部構造を規定
3.5.外部仕様に適した形で内部構造を実装


良い設計に必要な条件
・対象となる全内容に関して、検討を論理的に進める
・検討全体を複数の工程に分け、工程間で整合性を保つ(設計した内容が、設計の目的に適合している点も含めて)
・検討すべき範囲を洗い出し、その全部をキチンと検討する
・可能な方法を挙げて比較して、最良の解を選ぶ
・採用や選択などの判断で、その理由を明確に示せる(無視や不採用の理由も明確にする)
・以上の内容を記録として残す


仕様書に含まれる主な内容
・設計の過程に関わる情報

  • システムの目的や期待される効果
  • システムの目的から実現方法までの流れ
  • 設計の途中で検討した項目
  • 検討項目ごとに挙がった事柄
  • 事柄ごとの評価と、採否判定の結果と理由
  • 判断のために行った実験などの資料

・設計した結果であるシステム仕様

  • 外部仕様:外部から見た機能の定義
  • 内部仕様:機能を実現するための方法
  • 利用仕様:使い方や運用の方法


設計過程の仕様書体系の概要

・システムの目的から設計結果を求める流れ
問題点や原因から解決方法を検討
解決方法からシステムの基本条件を検討
基本条件から具体的な仕様を求める

・途中で検討する個々の項目(検討項目ごとに作成)
検討項目に関係する箇所の洗い出しと分類
分類した事柄ごとで対処方法を検討

・その他:判断のために行った実験などの資料


設計結果の仕様書体系の概要

・外部仕様:外部から見た機能の定義
外部仕様の全体像(構成)
構成要素ごとの細かな仕様

・内部仕様:機能を実現するための方法
内部仕様の全体像(構成)
構成要素ごとの細かな仕様(必要な箇所だけ)

・外部仕様と内部仕様の関連付け

・利用仕様:使い方や運用の方法
システムの標準的な使用方法
問題領域で発生する例外への対応方法
運用の流れ、運用ルールや制限事項
トラブル発生時の対処方法