We have project templates with tasks that represent work that needs to
happen on various recurring schedules (monthly, weekly, quarterly).
There might be a more automated way, but we just have a task to create
the next recurring project in the template. The template already has all
the assignments, roles, planned hours, completion dates built in it.