I think
DCL deliberately keeps the methods for assigning upgrades a secret - For example if booking with DCL increased the chance of an upgrade and word got out, then it would cause a lot more people to book direct with DCL and skip the
travel agent. Now this might seem like a good thing, but if DCL got a bad rep with travel agents, they would steer their clients towards other cruise lines. As far as DCL is concerned, when a cabin is upgraded, they have to notify someone, and it is no more work to notify an individual than it would be to notify a TA.
It seems that upgrades can happen for a number of reasons. After reading this board for a couple of years I would say that in some cases they just directly upgrade a person who booked a GTY, but in other cases, they will upgrade someone who did pay a higher price to free up a room to assign to someone who booked GTY.
Also based on past postings here, an upgrade can occur at anytime. You may find out months in advance, you may find out when you get your documents. You may get your documents with a stateroom printed on them but find out at the port while you are boarding that you have been upgraded. So it can happen at any time.
It is in DCLs best interest to keep it a random event. If the DISBoards ever figured out a pattern to upgrades, you can bet that everyone would be taking advantage of it. For example, say that it was discovered that paying early increased the chance of an upgrade. Well then everyone is going to start paying early, but not everyone can be upgraded, so now everyone is upset that they paid early and didn't get upgraded.
I have read hundreds of posts on the subject of upgrade. Many many people on here have searched, analyzed and reviewed all the information on upgrades availabe and the only conclusion that can be drawn is that it is random.