【メモ】仕様書ってどこまでかきますか?
現場で「仕様書どこまで書くか難しいよねー」って話が出てきたので考えてみた。
規模によったりすると思うが、だいたい以下のような準備が必要かと思うので忘れないようにメモ。
項目 | 記載事項 |
要件定義 |
問題点は何かを把握し、どのようなことが達成したいのかを定義。それらを踏まえたうえで対応内容の概要や必要項目の定義 ・背景の定義、課題の定義、改善範囲、対応内容の概要、納品物の規定、必要物の規定 |
基本設計 |
要件定義を踏まえ、解決手段および計画を定義する。 ・システム:作成物、機器環境/動作環境(サーバ、ネットワーク、利用者やファイル等)、利用シナリオ、システム構成、画面遷移、実装する機能概要 ・体制:開発方針、開発スケジュール、プロジェクト管理ツール等 |
機能設計 | 実装する機能について記載。 ・大まかな処理フロー、管理するデータの制定(ID規則等)/管理手段/データモデル・関係性、画面レイアウト、データ入出力、I/O情報 |
詳細設計 | 具体的な実装の規定について記載。 ・クラス情報/目的の定義、Exception対応、主要メソッドの定義およびI/O定義 |
DB設計 | DB関連の設計 ・DB/テーブルの設計、カラム/文字コード/NULLの定義、インデックスの定義、ER図、トランザクションまわり、CRUD |
運用設計 | 運用にて必要な作業について記載。 ・バックアップ手順、マスタ情報定義、セキュリティ対応、定期実行設定など |
単体評価 | 詳細設計を元にしたメソッド/クラス単位の評価項目。 ・Exception評価、閾値評価、正常動作確認 |
機能評価 | 機能設計を元にした機能毎の評価項目。 ・利用者を想定した評価、正常動作確認、想定外動作確認(設定ファイル不備等)、バリエーション評価、処理速度・データ量評価 |
結合評価 | 他システムとの連携考慮する評価項目+通常運用を想定した評価 ・連携箇所評価、想定外評価、想定運用実施評価、長期間動作評価 |
リリース関連 | リリース方法やリリース前に必要のあるデータ、会社規定等で必要な申請等を規定。 |
非機能要件定義 | リソース消費(CPU/メモリ/通信速度/ディスクIO)の規定やセキュリティ、RASIS/SLA/SLO の規定 |