¿Cuándo es apropiado hacer un do-while?

¿Cuándo es un do-while la mejor opción sobre otros tipos de bucles? ¿Cuáles son algunos escenarios comunes donde es mejor que otros?

Entiendo la función de un do-while, pero no cuándo usarlo.