仕様書が揃わないのは、なぜ時間ができても解決しないのか
2026.06.07執筆者:DigKnow株式会社 CTO 桑原 脩
仕様書がチームで揃わない、最新版がどこにあるか誰も知らない、書いたはずのドキュメントが古いまま放置されている——こうした状況に、現場でほぼ確実に返ってくる説明が「時間がなくて」です。でも正直なところ、仕様書を喜んで書くエンジニアに、私自身あまり出会ったことがありません。だとすれば、時間ができたところで、本当に解決するのでしょうか。
「時間がない」という答えの便利さと、そのあいまいさ
ドキュメントが書かれていない現場で理由を尋ねると、決まって返ってくる答えが「時間がない」です。この答えは、もう少し分解してみたいと思っています。「時間がない」という言葉は便利で、誰かを責めなくて済みます。実装が優先されたという事実を、構造的な制約のせいにできます。発言者も、聞いた側も、その場で会話を終わらせられます。「まあ、そうだよね」とお互い納得してしまう——この納得のしやすさが、実は問題を見えにくくしています。
でも、立ち止まって問うべきです。本当に時間がないのか。あるいは、時間はあるのだが、別のところに使われているのか。あるいは、そもそも「書く」という行為の前段で止まっているのか。この三つは、表面上は同じ「書けていない」に見えますが、対処の仕方はまるで違います。
この記事でやりたいのは、「時間がない」という定型句を、もう少し解像度を上げて分解することです。現場では多くの場合「書く時間がない」という言葉で説明されます。であれば、その言葉そのものを疑ってみる価値があります。
一日の時間を、本当に並べてみると
試しに、エンジニアの一日を具体的に並べてみます。始業から終業までの8時間が、実際にどう使われているでしょうか。私自身の内省と、チームメンバーの肌感を合わせて書いてみると、感覚値ではこうなります。
– 実装そのもの:3〜4時間
– コードレビュー(する側・される側):1〜1.5時間
– 会議・MTG:1〜2時間
– Slackでのやりとり・質問対応:1時間前後
– 調査・検索・既存コードを読む時間:1〜2時間
– 休憩や雑務:30分〜1時間
足し合わせると、8時間に対して明らかに盛っています。現実には、いくつかが重なって進行したり、一部が削られたりしています。つまり、実態としてはどの活動も慢性的に超過している状態です。
ここで注目したいのは、「ドキュメントを書く時間」がそもそもこのリストに入っていない、ということです。「忙しくて書けない」というより、一日の時間割のなかに、書くための枠が最初から確保されていないのです。空いた時間に書こうとしていますが、空く瞬間が来ません。これは「時間がない」というより「時間が割り当てられていない」と言ったほうが正確です。この違いは、対処法を根本から変えます——時間を捻出する話ではなく、割り当てる仕組みを作る話になるからです。
「書く時間」は、なぜ最後に回されるのか
時間が割り当てられないのには、理由があります。構造的に、ドキュメントを書く活動は「今すぐ書かなくても、今日は誰も困らない」という性質を持っています。
実装が遅れれば、今週のリリースに間に合いません。レビューが止まれば、チームメンバーのブランチがマージできません。会議に出なければ、プロジェクトの進行が止まります。障害対応を後回しにすれば、売上が消えます。これらは即日の締め切りを持っている活動です。
ドキュメントは違います。今日書かなくても、明日書かなくても、直ちに何かが止まるわけではありません。「後で書けばいい」が常に成立します。そして「後で」は、毎日新しい「今すぐ」に押されて、永遠に来ません。
これは意志の弱さの話ではありません。締め切りの近い活動が、締め切りのない活動を押しのける、という普遍的な時間配分の力学です。人は炎上しているものから先に手を付けるように最適化されている生き物です。ドキュメントは炎上しないので、後回しにされます。
AIコーディングが日常になって、この構造はさらに歪みました。実装の締め切りが以前より短くなったからです。以前なら2週間かかっていたスプリントのタスクが、Claude CodeやCursorのおかげで1週間で終わる——ように見える。すると、プロジェクトの全体スケジュールも、前提としてそのスピードで組まれるようになります。速くなった分だけ書く時間が生まれるかと思いきや、速くなった分だけ次のタスクが積まれる。「時間がない」は、ある意味で以前より真実味を増しています。
「書けない」の本当の中身——時間以外の三つの障壁
ここまでは「時間」という名前の制約を取り扱ってきました。でも、現場の声を丁寧に聞いていくと、「書けない」理由が時間以外のところにもあることがわかってきます。私が観察した範囲では、少なくとも三つあります。
①「何を書けばいいかわからない」:仕様が未定義のままの作業
「ドキュメントを書こう」と言われても、実際にエディタを開くと手が止まる。書き始めの一文が出てきません。どの粒度で書くべきか、どこまで書くべきか、読者は誰か——これらが決まっていないと、エンジニアは書けません。時間ができても結局書き始められないのは、これが時間の問題ではなく、仕様が未定義な作業の問題だからです。人は、定義されていないタスクには着手できません。
②「書いても読まれない」:学習されたあきらめ
過去に頑張って書いたドキュメントが、数ヶ月後に誰にも読まれていなかった——という経験を持つエンジニアは多いはずです。あるいは、書いたあとにコードが変わって、ドキュメントだけが古くなっていくのを見てしまう。この経験が蓄積すると、「どうせ書いても無駄になる」という学習が起きます。
これは合理的な学習です。サンクコストを避けるという意味では正しい判断ですらあります。でも組織全体で見ると、この学習が広がるほど「書かれていないのが当たり前」の状態が自己強化されていきます。
③「書く行為のコストが高すぎる」:認知の摩擦
ドキュメントを書くというのは、実は相当に高度な知的労働です。コードの動きを言語化し、設計の意図を翻訳し、読者の前提知識を想像して説明の粒度を調整する——これらを一つのプロセスとしてやろうとすると、脳のリソースをかなり食います。実装よりも頭を使う、という感覚を持っているエンジニアは少なくないはずです。
そしてこの認知的コストは、時間換算には現れません。「30分で書ける」という見積もりは、実は「30分の高集中状態が必要」を意味します。その枠を一日から捻出するのは、ただの空き時間の捻出より難しいのです。
この三つの障壁は、時間の問題と絡み合って「書けない」という現象を作っています。だから「時間を作ってあげよう」という対策だけでは解けない、というのが厄介なところです。
「書く時間を捻出する」から「書く必要を減らす」へ
ここまで分解してきて見えてくるのは、「書く時間がない」問題を時間の問題として解こうとするのは、たぶん無理があるということです。時間を確保しても、それ以外の障壁が残るからです。
発想を転換したほうがいいと考えています。「書く時間をどう捻出するか」ではなく、「書かなくてもよくするには、どういう仕組みが必要か」という問いに変える。
これは、ドキュメントを諦める話ではありません。「未来の誰かが、このシステムを理解できるようにする」という役割は、これまで以上に重要です。ただ、その役割を人間が手で書く以外の方法で果たせないか、という方向に発想を広げる時期に来ています。
コミット履歴、PRの説明、テストコード、設計議論のログ——開発過程で自然に発生する情報から、「なぜ」を復元する仕組みは作れないか。人間が書かなくても、開発の副産物として文脈が残る設計にできないか。AIが実装の速度を上げた今、理解の側も同じ勾配で引き上げる仕組みは、技術的に不可能ではなくなっています。この方向性については、今後の記事で改めて掘り下げていく予定です。
「時間がない」という答えが返ってきたとき、それを真に受けて「時間の作り方」の話をしても、たぶん何も解決しません。問題は時間の不足ではなく、書くという行為を個人に背負わせ続けている構造のほうにあります。そこに手を入れない限り、来年も同じ会話が繰り返されることになります。
「書く時間がないんですよ」——この一言にうなずき返す前に、一度立ち止まる価値はあります。
まとめ
仕様書が揃わないのは、時間の問題ではありません。一日の時間割のなかに書く枠が最初から割り当てられておらず、さらに「何を書くかわからない」「書いても読まれない」「認知コストが高い」という三つの障壁が重なって「揃わない」を作っています。だから、時間ができても解決しない。解くべきは「時間をどう捻出するか」ではなく、「書かなくても文脈が残る仕組みをどう作るか」のはずです。
あなたのチームで仕様書が揃わない状況に、「時間さえあれば書けるのに」という反応が返ってくるなら、一度立ち止まってもいいかもしれません。時間さえあれば、本当に揃うのでしょうか。
次回は、ドキュメントツールを入れれば解決するという期待が、なぜ繰り返し裏切られるのか。その構造を正面から掘り下げていきます。