Hi Mary,
I have created many derived projects for customers for multiple reasons. A derived project means that all configuration changes that happen in dev carry over into this new derived project whereas a snapshot this would not be the case. Some reasons include:
1. Testing a new data input that is critical to the model before implementing it into Dev. E.G new financial data, new labor data. This is important to test before implementing as it can;take a long time and customers still want all other work to carry on in their dev project and it could effect data quality and allocations. The work that they then do in dev carries over into their derived project so they can see the effects it will have on the new data while not interfering with simultaneous work streams.
2. Changing the model in some way and wanting to test the changes over time. This would also require a derived project because to test a change over time you will need all the data from new time periods to effect this project. Instead of uploading data twice (once into stage and pushing down to dev and loading into the snapshot) you can just load it once into stage, push it to dev and the changes would be seen in the derived project.
Please note however snapshots may work just as well for these use cases as long as you do not want work that is going on in your dev environment to effect it.
I hope this helps,
Lauren Griessel