Respuestas cortas:
Sí, la migración ayudará a sincronizar los cambios de la base de datos entre varios entornos. Lo que significa que cada cambio se actualizará en todos los entornos de forma perfecta y correcta. Y la migración ayudará a revertir la base de datos de manera segura si hay algún error.
Tu decides. Tienes que saber exactamente lo que estás haciendo con la migración. La clase de modelo lo ayudará a implementar fácilmente y reducir los problemas humanos.
En mi opinión, absolutamente sí, como primera respuesta
Sí, debería funcionar para cualquier entorno