アジャイルソフトウェア開発のいくつかの開発手法(エクストリーム・プログラミングなど)では、例えばコーディング前に(あるいは同時に)テスト用のコードを書き、コーディングはそのテストに通過することを目標にして行う(テスト駆動開発、テストファースト)など、順序や各工程の意味づけを大きく変更している。