はじめに こんにちは、株式会社ドワンゴでニコニコ生放送のフロントエンド開発を担当している misuken です。 みなさんのプロジェクトには「条件分岐が複雑すぎて誰も把握できなくなった仕様」はありませんか? ニコニコ生放送のフロントチームでは「Gate」という機能が、まさにそのような状態でした。 この記事では、極めて複雑なGate機能を、スプレッドシートによる仕様整理で劇的に改善した取り組みをご紹介します。 TL;DR 複雑化した仕様を整理するためのアプローチ: リバースエンジニアリング: テストのスナップショットから実装を読み解く マトリックス形式の整理: 共通項と差異を一目で把握 状態の抽象化: 扱う状態を30個→24個に削減 パターン識別子: 認知負荷を大幅に軽減 通り数の可視化: 網羅性を確保して安心 結果: 誰も把握できなかった仕様が、全112通りで網羅できることが判明。 Gat

