I have to say that as a USER, I've noticed this change (I think it's been fairly recent) that they assign you a driver who hasn't yet finished a trip.
What ends up happening is Uber tells you an "estimate" of 3 minutes to arrival before you book. Then it assigns the driver and says "10 minutes" to arrival, but the driver hasn't even dropped off their last passenger yet. So, what's happened multiple times is that the 10 minute estimate ends up staying at "10 minutes" for 5-10 minutes straight and 15-20 minutes after I booked, the driver shows up.
I would understand this if I ordered an Uber pool, but I ordered a black car and it still operated like that.
I'm not sure when they made this specific change, but I've noticed it a lot more in 2017 and overall I've been really disappointed with the uber app this year as they seem to be trying to over-optimize everything to the hilt and it's starting to backfire