Shift Work is not difficult, only you need to know are:
- the rules of assignment, and
- software capable of modeling the rules.
I use Spider Project a software that is capable of both.
We use the concept of Teams for when resources must work together, for meeting resources. If resources can work independently of one another just make them members of a single resource team. In this way on a single activity you can model as many different teams you need.
You assign a calendar to the activity that will include all work time for which resources are allowed to work, usually a 24/7 calendar will do it unless there are certain hours the resources might be available but you do not want them to work on the activity. Say a resource is available on a second shift seven days a week but it is a requirement that on Mondays no work is allowed on second shift. Therefore the activity calendar will exclude second shift on Monday and the resource will be available to do work at another activity on Mondays.
The following example is the minimum expression of such scenario that many so called advanced software cannot tackle. Please don't take it for granted what I say, try it by yourself.
Activity 1 = 500 cm rock excavation - Resource 1 production 10 cm/hr and works Monday, Tuesday and Wednesday 10 hrs/day - Resource 2 production 15 cm/hour and works on Wednesday, Thursday and Friday 10 hrs/day
- If activity starts on Monday:
Monday =>> Resource 1 will produce 100 cm, Tuesday =>> Resource 1 will produce 100 cm, Wednesday =>> Resource 1 will produce 100 cm, Wednesday =>> Resource 2 will produce 150 cm, Thursday =>> Resource 2 will produce 50 cm in about 3 hours, Activity will take 3 days 3 hours.
- If activity starts on Wednesday :
Wednesday =>> Resource 1 will produce 100 cm, Wednesday =>> Resource 2 will produce 150 cm, Thursday =>> Resource 2 will produce 150 cm, Friday =>> Resource 2 will produce 100 cm in about 7 hours, Activity will take 2 days 7 hours.
- If your software is not capable of modeling the above, simple shift work on a single activity, then you are using the wrong tool. Every time the activity is delayed, the distribution of work is shifted, when you have many such activities and work on different hour shifts, different days it can become quite complicated. For a single shot you can use incapable software with manual distribution of work among shifts for anything else distributing work by hand is nuts.
Of course this is just an illustration, you shall be able to model more complex real life scenarios, like multiple teams working on the same activity on different shift.
Please expose in more detail what you want to model, shift work is easy if you have the right tool. The problem must be solved within the ways of each particular software, that is if the software is capable.