ソフトウェア開発標準

□
□
サンプル:ソフトウェア開発標準
6. 機能設計書 作成規約
6.1 目的
機能設計書とは、基本設計書を元に、プログラムを作成するにあたって必要なプログラム構成、テ
ーブル・バッファ構成、タスク間インタフェース、機能等を決定し、基本設計書にて定義したシステ
ム・機能をどのように実現するのかを設計するものである。
※ 機能設計書本文以外の共通部(表紙・改訂履歴等)については、文書作成規約に沿うこととする。
6.2 構成
機能設計書の基本構成は、以下の通りとする。
第1章 概要
第2章 構成
第3章 機能
第4章 インタフェース
第5章 環境
第6章 特記事項
第7章 関連文書
下線の章(1~4章)については作成が必須、残りの章は基本設計に応じて追記する。
設計書の構成例を図6.1 機能設計書の構成(例)に示す。
第6章 関連文書
第5章 特記事項
第4章 インタフェース
第3章 機能
第2章 構成
第1章 概要
目次
表紙・改訂履歴
図6.1 機能設計書の構成(例)
21
□
□
6.3 記載内容
各章毎に記載する内容を、以下に示す。
章節項
第 1 章 概要
1.1 名称
記載内容
開発するシステムの概要を記述する。
機能の正式名称を記述する。また、本項以降にて略称を使用する
場合には、ここに記載する。
1.2 目的
プログラムが実現する目的、もしくは実現する機能の概要を記載
する。
第2章 構成
サブプログラム・タスクの構成および共通に使用するファイル/
テーブル、ライブラリを記述する。
2.1 機能
機能の構成を明らかにし、機能を構成する各サブプログラムまた
は各タスクに分類する。
2.2 ファイル/テーブル
サブプログラムまたはタスク間で共通に使用する、ファイル/テ
ーブル(共有メモリ、DB等)の内容を詳細に記述する。
2.3 ライブラリ
サブプログラムまたはタスク間で共通に使用するライブラリを記
述する。
第3章 機能
データの流れと正常/異常処理を記述する。
3.1 機能
各機能のデータの流れと処理を記述する。
3.2 例外処理
異常な入力、出力等が発生した場合の処理方法を記述する。
第4章 インタフェース
4.1 入力データ
入出力データと入力元・出力先を記述する。
サブブログラムまたはタスクへの入力データと入力元を記述す
る。
4.2 出力データ
サブプログラムまたはタスクからの出力データと出力先を記述す
る。
第5章 環境
ハードウェア/ソフトウェア/開発環境等を記述する。
5.1 ハードウェア設計環境
ソフト設計上の制約事項を記述する。
5.2 ソフトウェア設計環境
プログラムを設計・製造するための基準・注意点、制限、制約事
項、名前付け規則を記述する。
5.3 開発環境
開発言語、開発マシン、ディレクトリ構成を記述する。
5.4 対製品との関連
流用プログラム、購入プログラム等の有/無を記述する。
5.5 特記事項
機能設計上で記載していない特記事項がある場合、記載する。
(特記事項がない場合においても、本章は作成し「特記事項なし」
と記載する場合が多い)
5.6 関連文書
機能設計を行うにあたって参照・引用した文書を示す。
22
□
□
6.4 機能設計書記述の際のポイント
機能設計書を記述する際のポイントを「表6.1 機能設計書作成ポイント一覧」に述べる。
表6.1
項番
1
チェック項目
書式
機能設計書作成ポイント一覧
チェック内容
備考
プロジェクト毎に必要となる項目が記述 例:
表紙
されているか。
改訂履歴
チェック欄
□
機能の目的等
2
図番/表番
図番/表番は明記されているか。
□
図番/表番のフォーマットは統一されて
□
いるか。
3
要求機能
基本設計書に記述されている当該モジュ
□
ールの機能は、全て機能設計書に記述さ
れており漏れはないか。
4
再利用
既存の開発モジュールの流用を検討した
□
か。
5
記述
記述に曖昧な表現はないか。
□
日本語としてわかる表現になっている
□
か。
6
シーケンス
対向装置間、プロセス間の異常シーケン
□
スは考慮されているか。
障害発生時のリカバリが考慮されている
□
か。
障害発生時にデータ不整合が発生しない
□
設計になっているか。
7
初期処理
起動時の初期処理は正しく記述されてい
□
るか(起動手順、各初期ファイル入力等)
。
8
エラー処理
入力データのチェック条件が明確になっ
□
ているか。
チェックエラーが発生した場合のエラー
□
メッセージ、エラー処理が明確になって
いるか。
9
多重起動
多重起動の有無が明確になっているか。
□
多重起動有りの場合、リソースの排他が
□
考慮されているか。
プロセスが作成している一時ファイルが
上書きされることはないか。
23
□
□
□
10
データベース
他業務(他プロセス)とのテーブル/レ
□
コードの排他制御は考慮されているか。
データベースのコミットのタイミングが
□
明記されているか。
データ不整合が発生しないタイミングで
□
コミットを行っているか。
ロールバックセグメントの容量は考慮さ
□
れているか。
11
共有リソース
共有リソースのアクセス、排他処理は正
□
しく設計されているか。
12
内部メモリ
内部メモリの消費量は、システムの運用
□
に影響のない範囲内となっているか。
13
障害
障害・アラームは運用を考慮したものと
□
なっているか。
不要な障害・アラームが出力されていな
□
いか。
14
性能
性能要件を満たす設計になっているか。
24
□