In my mind, and agile approach would involve a series of 'tiny' incremental migrations from the existing system to the new one. I'd actually expect that to work much better than attempting to switch over everyone all at once, after years of development. That either doesn't work or works very badly in my experience.