【しようしょ】

仕様書 とは?

最終更新:
💡 期待する動作と条件を、関係者で共有する文書

システムやソフトウェアに求める機能・動作・画面・入出力・制約などを、関係者が理解し確認できる形で記述した文書。内容や形式は目的とプロジェクトによって異なる。

📌 このページのポイント
仕様書に記す内容の例 画面仕様操作・表示入力エラーもAPI仕様GET /items200 / JSON要求・応答形式を共有制約・条件性能・上限条件を明記何を満たすか、確認できる形で書く文書・実装・テストを照合する対象と目的に合わせて形式を選ぶ
画面・API・制約を記す仕様の例。必要な内容や文書の分け方は目的によって異なる。期待する動作や条件を、実装とテストで確認できる形にする。
ひよこ ひよこ
仕様書って設計図みたいなものなんだよね?
ペンギン先生 ペンギン先生
そのたとえで役割はつかめるよ。機能やボタンを押したあとの動作、入力できる値などを共有する文書なんだ。ただし、必ずシステムのすべてや実装方法まで書くとは限らない。設計書との分け方や文書名もプロジェクトによって違うよ。
ひよこ ひよこ
種類がいっぱいあるけれど、全部必要なの?
ペンギン先生 ペンギン先生
目的に合わせて選ぶよ。画面仕様なら入力欄や操作後の表示、API仕様なら要求・応答の形式などを記す。小さな対象なら短い文書でもよく、決まった名前の文書を一式そろえること自体が目的ではないんだ。
ひよこ ひよこ
分かりやすい仕様はどう書くの?
ペンギン先生 ペンギン先生
たとえば「すばやく検索する」だけだと判断が分かれるね。対象のデータ量や利用条件、応答時間などを具体化すると、満たしているかを確かめやすい。正常時だけでなく、入力エラー時の表示や制限も整理するんだ。
ひよこ ひよこ
誰が書くの?
ペンギン先生 ペンギン先生
役割はチームによるよ。利用者や業務の担当者、開発者、テスト担当などが必要な内容を出し合い、関係者でレビューする。文書の変更を判断する人と、更新する人も決めておくと認識をそろえやすいね。
ひよこ ひよこ
文書とコードが違ったら、コードを正解にする?
ペンギン先生 ペンギン先生
まず合意した動作と変更履歴を確認し、文書が古いのか、実装の誤りなのかを調べるよ。OpenAPIのような機械が読めるAPI記述から文書やコードを生成する方法もある。ただし生成だけで実装との一致が保証されるわけではないので、テストやレビューでも確認するんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「仕様書」って出てきたら「システムの動作や条件を書いて共有する文書」と思えばだいたいOK!
📖 おまけ:英語の意味
「Specification」 = 仕様・明細
💬 Spec(スペック)と略すこともあるよ。何を満たすか、どんな動作をするかを具体的に記述するために使う言葉だね。

参考資料

← 用語集にもどる