It should come before may. There's a staggered role out so a set number of phones get it each day. If an issue is found, it can be stopped with only a few devices having an issue. If everyone got it at the same time, everyone would have an issue, and thats bad.
Most software does this. It means the update works fine on all their test devices. But when millions of people get the update, sometimes things they can't predict happens. Eg, with one ui 7, people using SwiftKey and a password unlock on their phone couldn't unlock it. Thats a very specific setup that in testing they probably never tried. There's so many keyboard apps they can't try them all