Migrating an application instance from one Kind to another Kind is needed when using licenses. A license is associated with a Kind. Suppose that provider has two Kinds defined - KindTrialLicense and KindYearlyLicense. Suppose that the provider signs up two customers - Customer1 and Customer2. Suppose both of them start with the trial license of the application. So the provider creates two application instances of KindTrialLicense. Suppose that after the trial period is over, customer1 wants to sign up for the yearly license. At this point, it will be logical for the provider to migrate customer1's application instance from KindTrailLicense to KindYearlyLicense.
Migrating an application instance from one Kind to another Kind is needed when using licenses. A license is associated with a Kind. Suppose that provider has two Kinds defined - KindTrialLicense and KindYearlyLicense. Suppose that the provider signs up two customers - Customer1 and Customer2. Suppose both of them start with the trial license of the application. So the provider creates two application instances of KindTrialLicense. Suppose that after the trial period is over, customer1 wants to sign up for the yearly license. At this point, it will be logical for the provider to migrate customer1's application instance from KindTrailLicense to KindYearlyLicense.