Can business users do it by themselves? Yes, they can, but the workflow is a bit complicated.
Thanks for the "Loop" functionality from SharePoint Workflow 2013, we get much simpler solution.
But it's not as simple as it should be, due to lack of "DateTime" relevant functions.
Anyway, only one workflow and one list is needed.
2. Three variables are needed in the workflow. ("create" is automatically created by Designer)
3. Three calculated fields "CurrentDay, CurrentHour, CurrentMinute" are created here.
But normally we only need one of them.
To send out email every hour, we need field “CurrentMinute”; (this is the one being used in the example above, pause for one minute each time)
To send out email every day, we need field “CurrentHour”; (pause for one hour each time)
To send out email every month, we need field “CurrentDay”. (pause for one day each time)
When the value of field “Title” is set to “exit”, the workflow will exit.
Every time when an email is sent out, a new item is created in the same list.