In the current scenario, if we need to migrate objects from one source to another, we need to take a snapshot and compare the differences at Target to determine what all objects should be migrated.
In projects where multiple users might be developing objects in parallel, this requires a lot of manual effort to identify objects and create a migration package to import on Target.
Rather than this, if the approach is to select the desired objects to be migrated at source, developers would be able to migrate their own objects rather than doing any comparison.
Use Case 1: Where the development team doesn't have access to Prod, it will allow development team to create a migration package and provide it Prod administrators to import, making the migration easy
Use Case 2: Migration activity can be automated where the desired package file can be dropped on a shared location to be picked up by the process on Prod environment to pick up the package in an automated way
Use Case 3: In the Agile mode of development where selected development needs to be migrated to Prod, this approach will allow developers to push selective objects to production