−ソフトウェア設計−

初版 2002年8月20日作成
https://www.sessame.jp/
責任編集  坂本 直史


 構造化設計

  <構造化設計の技法>

    <データ指向設計技法>

      【データフロー設計】

        ・DeMarco法
        ・Yourdon法
        ・Hatley/Pirbhai法

      【データフローからプログラム構造への変換】

        ・STS分割技法
        ・TR分割技法

    【その他の構造化設計技法】
      ・Constantineの構造化設計
      ・Myersの複合設計
      ・JSP
      ・ワーニエ法

  【構造化設計の図法/記法】

    ・ストラクチャチャート(階層構造図)
    ・バブルチャート
    ・CFD
    ・PAD
    ・HCP

 OOD

  【OODの技法】

    ・Shlaer/Meller法
    ・ROOM法
    ・OCTOPUS法

  <OODの図法/記法>

    【UML】

      ・シーケンス図
      ・クラス図
      ・コラボレート図
      ・ステートチャート

 その他の設計(補助)技法/記法/図法

  【状態遷移図/状態遷移表】

  【RMA(Rate Monotonic Analysis)】

  【プロトタイピング】

 設計のための概念

  【抽象化/詳細化】

  【アーキテクチャ設計】

  【階層構造(ヒエラルキー)】

    ・WBS

  【モジュール化】

    ・結合度/凝縮度
    ・情報隠蔽
    ・ライブラリ/部品化

  【再利用】

    ・再利用できるものを探す
    ・再利用できるようにする

  【デザインパターン】

  【ファクタリング】

    ・リファクタリング

  【設計のルール】

    ・開発標準/コーディング規約
    ・エラーメッセージの分類/コード体系
    ・UIの設計
      ・一貫性

  【言語/ライブラリ/ソフトウェア部品選択】

    ・アプリケーションの制約に言語が合致するか
    ・特定のライブラリが必要だとか

【ハードやOSに関する情報】

  ・OSの仕様やAPI
  ・メモリサイズ/ROMサイズ
  ・メモリ種別
  ・メモリマップ
  ・I/Oマップ
    ・端子定義表
    ・I/Oメモリマップ
  ・ハードウェアの要件
    ・ハードウェアリソースを使うか
  ・ハードウェア関係の資料一式
    ・CPUの資料
    ・使用するICの資料
    ・バスの資料
    ・使用するハードウェアの外部仕様書

 設計で理解しておくべきソフトウェア的概念

  【イベントドリブン】

  【例外(エクセプション)】

  【ドライバ/ハンドラ】

  【タイマー】

  【ウォッチドッグ】

  【タスク間通信】

    ・ソケット/パイプ/キュー
    ・メールボックス
    ・セマフォ
    ・イベントフラグ
    ・ORB

  【レスポンスタイム】

  【ボラタイル】

 並列/平行処理

    【シングルタスク/マルチタスク】

    【シングル・プロセッサ/マルチ・プロセッサ】

    【タスク/プロセス/スレッド】

    【プライオリティ】

      ・プライオリティ継承
      ・プライオリティ逆転
      ・(多重)割り込み時のプライオリティの扱い

    【資源の競合】

      ・クリティカルセクション
      ・セマフォによる回避
        ・セマフォの種類
      ・デッドロックの発生

    【割り込みとポーリング】

      ・割り込みのマスク処理

    【タスク分割】

      ・分割の基準
        ・リエントラントにしたい
        ・デバイス依存は別のタスクにしたい

  【データ操作】

    ・スタック/キュー/リング/リスト/コレクション/ベクタなど

  【ヒープとガーベジ】

    ・メモリリーク
    ・リークの検出

  【スタック(Stack)】

  【パーシスタンシー(不揮発性)】

 品質/信頼性

  【フォールトトレラント】

  【自己診断】

  【フェイルセーフ/フールプルーフ】

  【信頼性解析】

    ・MTBF/MTTF
    ・FMEA
    ・FTA

  【テスト容易性設計】

    ・ログ(デバッグ機能)

  【セキュリティ】

    ・ネットワークセキュリティ
    ・プライバシー
    ・デジタルデータの保護
    ・暗号化

 設計検証

  【デザインレビュー】

    ・ピアレビュー
    ・ウォークスルー
    ・フォーマルレビュー

  【バリデーションとベリフィケーション】