Itu salah satu cara untuk melakukannya.
Anda bahkan mungkin tidak memerlukan bidang current_status untuk menjadi FK; mengapa tidak menyimpan nilainya saja? Jika tidak, Anda bisa masuk ke referensi melingkar yang aneh.
Cara lain adalah dengan menyimpan arsip status, terpisah dari tabel proyek. Setiap kali status berubah, masukkan status saat ini ke dalam tabel arsip, dan ubah nilai project.status.