Let's see. Two weeks ago, did you know how many people had bought the game? How about a week ago? No? Me neither. If you don't know the final pre-order number, how do you make an intelligent decision 2 months prior on how many to let in to early access? Let's say that 1 month ago, BioWare knew there were 140,000 pre-orders. Great! We'll tell people that we'll let in 20,000 people per day! You come in on Monday, I'll be let in on Tuesday, etc. The guys preparing the servers get set up for 20k each day.
2 weeks later, BioWare learns another 70,000 have pre-ordered. Woot! Let's let in 30,000 per day! Oh, wait, we already sent out announcements! Now we can't change it! Or--oh, wait, the server guys said we can only let in 20k on day 1 because they still have to get the new servers up to take on the extra load. We can't add more people day 1, but we can on day 4. Or, oh, wait, one of the servers broke down on Day 1 and we have to let in a few thousand less on Day 1 than we originally planned. We're still letting in 20k anyway, and they'll just sit in the queue all day and then rage on the forums about it!
These are all issues that have to be addressed, and it was logistically impossible to do this so that they could give us exact dates 2 months ago.