【しふとれふと】

シフトレフト とは?

最終更新:
💡 早く確かめて、小さなうちに直そう

テストやセキュリティの確認を、開発の早い段階から行う考え方。工程を左から右へ並べたとき、確認を左側へ広げる。設計レビューや自動テストなどで早く問題を見つけ、手戻りを減らすことを目指す。リリース前の確認や運用中の監視も引き続き必要。

📌 このページのポイント
シフトレフト — 早く確かめ、直す要件・設計実装公開・運用確認を早い段階へ広げるレビュー・自動テストなど早く気づき、小さなうちに直す後の確認も続ける早期の確認と、本番の監視を組み合わせる
時間は左から右へ進む。緑の左向き矢印は、品質の確認を早い段階へ広げる意味。公開前のテストや運用中の監視も続ける。
ひよこ ひよこ
シフトレフトは、何を左に動かすの?
ペンギン先生 ペンギン先生
開発の工程を、要件・設計・実装・テスト・公開の順に左から右へ並べると、左側が早い段階になるね。テストや品質の確認を最後だけに集めず、要件や設計から始める考え方だよ。日付だけを前倒しするのではなく、早く確かめて直せるようにするんだ。
ひよこ ひよこ
早く見つけると、なぜ役立つの?
ペンギン先生 ペンギン先生
たとえば要件の読み違いを設計時に見つければ、たくさん実装してから作り直す手間を避けやすい。公開後なら利用者への説明や緊急対応も必要になることがある。どれだけ節約できるかは問題や環境によるので、「一工程遅れると必ず10倍」とは覚えないでね。
ひよこ ひよこ
具体的には、どんなことをするの?
ペンギン先生 ペンギン先生
要件を開発者やテスト担当で確かめる、設計をレビューする、コードの変更時に自動テストや静的解析を動かす、などだよ。実装前に振る舞いを考えるTDDも一つの方法。自動化だけでなく、人同士で仕様の疑問を早く解消することも大切なんだ。
ひよこ ひよこ
セキュリティも、早く確認できる?
ペンギン先生 ペンギン先生
設計で権限やデータの守り方を考え、コードのレビューや依存ライブラリの確認を開発中に行えるよ。ただしDevSecOpsは、開発から運用までセキュリティを組み込む広い取り組みで、シフトレフトと完全に同じ言葉ではない。検査を前倒しすれば全部安全、という意味でもないんだ。
ひよこ ひよこ
早くテストすれば、後半や本番の確認はいらない?
ペンギン先生 ペンギン先生
組み合わせて使うよ。初期には確かめられない連携や実際の負荷もあるため、統合・公開前のテスト、運用中の監視も必要だね。本番など後の段階で確かめる考え方はシフトライトと呼ばれる。重要な問題を早く見つけつつ、後からわかることも調べるんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「シフトレフト」って出てきたら「テストや安全の確認を開発の早い段階から行う考え方」と思えばだいたいOK!
📖 おまけ:英語の意味
「Shift Left」 = 左にずらす
💬 工程を左から右に並べた図で、品質を確かめる活動を早い段階へ広げるイメージだよ。

参考資料

← 用語集にもどる