どちらも重要な業務から実験的な作業を分離するために存在する、関連性の高い仕組みです。
スクラッチプロジェクト
スクラッチプロジェクトとは、後で破棄することを前提とした通常のプロジェクトです。見慣れないコードベースでCoroidを試す場合や、大規模に適用する前にポリシー変更をテストする場合、あるいは確定させるつもりのないアプローチを探る場合に利用します。
その価値は「分離」にあります。スクラッチプロジェクト内での実験が、チームが依存するプロジェクトのタスク履歴や指標、コンテキストを汚染することはありません。
不要になったら削除してください。6ヶ月以上存続するスクラッチプロジェクトは、実質的に本格的なプロジェクトへと変化しており、それに伴う設定上の配慮が欠如している可能性があります。
プレビュー環境
プレビューとは、タスクで生成されたブランチから構築され、実際に動作する変更後のアプリケーションのことです。
これは重要です。なぜなら、差分を確認するだけでは判断できない事柄が存在するからです。ページが正しくレンダリングされるか、フローがエンドツーエンドで正常に動作するか、変更内容が意図通りに見えるかなどは、実際に動作させて確認する必要があります。
プレビューはブラウザテストの対象となり、スクリーンショットだけでは判断がつかない場合にレビュアーが開くものでもあります。
pull requestへのプレビュー表示方法
ホスティングプロバイダーやCIから既にプレビュー環境が用意されている場合、Coroidはそれらをレビュー証拠としてリンクを表示するため、変更内容とは別の場所を探し回る必要はありません。
要点は、検証証拠とそれが検証するコードが一緒に提供されるべきだということです。
いつどちらを利用するか
- Coroidや、将来的に破棄する可能性のあるアプローチを試す場合 →スクラッチプロジェクト
- 特定の変更が正しく動作するかを確認する場合 →プレビュー
両者は組み合わせて利用可能です。スクラッチプロジェクトにも他のプロジェクトと同様にプレビューを設定できます。