Upgrades are handled by the cruise line's inventory management department.
I personally believe they have a large dart board with names and cabin numbers on it. They blindfold themselves and thow x number of darts and the names they hit get the corresponding cabin.
I'm joking but it really seems that's the way it works. I have been told and have read about how cruise lines do their upgrading and none of them really seem to be the "real" answer. There are many factors that are used but they seem to use one factor such as "price paid" one time and then "new cruisers" the next.
I have received a couple of, what I would call, upgrades. These were going from a balcony to a suite and from a balcony to a mini-suite. Why I received the upgrade? I have no idea. It wasn't because I was a moderator with Cruisemates.
The best advice I can give is book a cabin in the category you will be happy with and if you do get an upgrade then it's icing on the cake.
I personally do not consider a change from a BA to BB a true upgrade. This is more just moving around inventory.
I had to laugh when one cruiser, seriously, posted that they always received an upgrade. They always booked a BL (Balcony Guarantee) and they were always upgraded to at least a BA balcony.
A BA is the lowest category balcony and a BL states that you will receive a balcony.
I hope that the Upgrade Fairy is good to you. Keep Hope Alive.