We wanted to do XRP calculations internally in a 64-bit unsigned with one bit reserved to signal that it was an XRP amount and one bit free as a sign bit. To avoid having to deal with overflows inside operations and simplify the code, we didn't want to use more than 1/16th of the legal range. For human convenience, we wanted the main unit to be divisible into millionths. That set an upper limit of 2^(64-2) / (16 * 10^6) or 288 billion. 100 billion seemed the most human-friendly number within that range.
Ah, I see. From a tech point of view it makes much sense but from financial point it is not. Do you know how many transactions are processed every day in this world? The challenge of success... The more successful ripple becomes every day the more likely becomes its failure.
If ripple succeeds I can predict a scalability issue here. At some point transactions will become too expensive and there will be need for inflation in XRP, and OpenCoin will inevitably have to issue more.