I'm not sure what's the best workflow to design a shell and then split it into separate parts.I think this is better than trying to design the single parts and try to make them match.
The parts could be of different materials.
You can do this in a single part, design the entire product and then split the bodies, you could just use cut with surface for this if you want. This is essentially mold design.
Ok, should I start with a filled body and then empty the parts or should I create the cavity and then split the parts?
That's really up to you, I have seen parts be modeled in both ways. I think I prefer in most cases to model it as a solid to get the outer geometry that I want and then split the part along whichever seam you may want. Then to use the shell command to give each side a wall thickness. Lastly you can then ad any internal geometry you might want like adding ribs or fastener supports and so on.
For a better understanding on some mold design points I would recommend following the built in tutorials from SOLIDWORKS on mold design. This would give you a good understanding of some of the surfacing and mold techniques and considerations.
Help Icon > Tutorials > Advanced Techniques > Mold Design
Retrieving data ...