沼津高専 電子制御工学科
MIRS2002ソフトウェア詳細設計書
作成規定
MIRS02SF-CURR-0012
改訂記録
版数 作成日 作成者 承認 改訂内容
A01 2001.4.22 大原 大原 初版(MISR2000版(牛丸作成)を改訂)

本ドキュメントについて

本ドキュメントは、MIRS2002ソフトウェア詳細設計書の作成方法について規定するものである。詳細設計とは、以下に述べる作業を言い、詳細設計書に文書化することである。

「 基本設計仕様書をもとにエレクトロニクス、メカニクス、ソフトウェアごとに作成する。各部の中をさらにブロック分割し、各ブロックが独立に製造仕様書が作成できるように仕様を規定する。ソフトウェア詳細設計は、基本設計書で要求する動作規定を、基本設計書で示した状態遷移およびタスク構成をもとにさらに詳細にブレークダウンしコーディングに必要な事項を規定する。具体的には下記作業を行う。
  1. 基本設計書で大まかに記載された動作モードの機能と遷移条件をさらに詳しく記載する。
  2. モードモジュール、機能モジュール、RTタスクモジュール、関数モジュール、デバイスドライバを定義する。モードモジュールは、動作モードに対応するプラグラムモジュール、機能モジュールは、複数のプログラムによって構成され、(動作モードと直接には対応しない)ある機能を提供するプログラムモジュール、関数モジュールは、モードまたは機能モジュール内で使用される関数を定義したプログラムモジュールである。
  3. 各モジュール、デバイスドライバ、ヘッダファイル間の依存性を明確にするための、全体のプログラム構造図を作成する。
  4. モジュール、デバイスドライバ、RTタスク、ヘッダファイルの、全ての関数の名前、引数、戻り値、ファイル名を定義する。
  5. RT タスクに対しては、タスクの優先度、割り当てる FIFO 番号、実行周期などを決める。
  6. デバイスドライバに対しては、使用する IO アドレス、割り込み番号などを決める。
  7. 試験項目、試験方法を洗い出し、試験仕様書の作成に必要な項目を記載する。


この文書は次の作業(コーディング、デバッグ)の際に要求される事項が記される。したがって、この文書には、各タスクあるいはさらにその内部で分割されたモジュールの設計を各々独立して設計作業を進めるために必要なすべての事項が記されていなければならない。

以下例に沿って説明する。なお、この文書においては、”作成例”を標準字体で、その”解説”をイタリック字体で記している。

目次

  1. はじめに
  2. 概要
  3. OS(RT-Linux)の概要
  4. 行動モードの詳細
    1. XXモード
      1. モード定義
      2. モード遷移条件
  5. プログラム群の構成

    モード、モジュール、ユーザプログラム、RTタスク、デバイスドライバ、ヘッダファイルなど、全てのプログラム間の依存関係などがわかるように、その構成の全体を表す。

  6. プログラム群の詳細
    1. モードモジュール
      1. XXモード
        1. モード定義
        2. モード遷移条件
        3. 構成要素 機能モジュール、補助関数、RT タスク、デバイスドライバ
        4. 関数名
        5. 引数
        6. 戻り値
        7. アルゴリズム(フローチャート)
    2. 機能モジュール
      1. XXモジュール
        1. 機能
        2. 構成要素 補助関数、RT タスク、デバイスドライバ
        3. このモジュールが使用されるモード
        4. 関数名
        5. 引数
        6. 戻り値
        7. アルゴリズム(フローチャート)
    3. RT タスクモジュール
      1. XX RTタスクモジュール
          MIRS 標準 API として提供されているものについては、 それを使うことを宣言し、そこへのリンクをはる。
        1. 機能
        2. このRTタスクモジュールがされるモード、機能モジュール
        3. 構成要素 関数モジュール
        4. 関数名
        5. 優先度
        6. FIFO の仕様
        7. アルゴリズム
    4. デバイスドライバ
      1. XXドライバ
          MIRS 標準 API として提供されているものについては、 それを使うことと、そこへのリンクをはる。
        1. 機能
        2. このドライバ使用されるモード、モジュール
        3. 関数名
        4. IO アドレス、IRQ
        5. アルゴリズム
    5. 関数モジュール
      1. XXドライバ
          MIRS 標準 API として提供されているものについては、 それを使うことを宣言し、そこへのリンクをはる。
        1. 機能
        2. このドライバ使用されるモード、モジュール
        3. 関数名
        4. 引数、戻り値
        5. アルゴリズム
    6. ヘッダファイルの詳細
      1. XXヘッダ
        1. 機能
        2. このヘッダファイルを利用するモード、機能モジュール、ドライバ、RTタスクなど
        3. ヘッダ名
        4. 定義する変数
  7. 試験
    1. モード、機能モジュール単体試験
    2. 標準MIRS上での試験
    3. 実機上での試験
  8. 作成ドキュメント一覧
  9. 参考資料

  1. はじめに

    本ドキュメントは、MIRS2002基本設計書(MIRS02SF-CURR-0009)に規定された システムの動作規定、状態遷移を実現する各タスクの開発(コーディング、試験等)に必 要な事項を述べる。

  2. 概要

    MIRS2002 ソフトウェアは、RT-Linux 上で動作するプログラム群で構成される。 プログラムは、Linux の標準の API とともに、行動モードに対応したプログラム、一つの機能を複数のプログラム群で提供する機能モジュール、および、RTタスク、ドライバと、補助関数と独自に定義したヘッダファイルから構成される。

    本 MIRS では、行動モードに対応した次のx個のモードモジュールを用意する。 IO 制御は、超音波測定と駆動系の制御を RT タスクとして駆動させ、 赤外線センサ信号入力探知と、LCD 出力は、デバイスドライバを用いて行う。 デバイスドライバは、標準 API のデバイスドライバを利用する。


関連文書