Also a question I have in the same subject. Lets say that bitcoin is becoming very successful and there is a problem to find a place in a block to register the transaction. Can the system decide to shorten the 10 minutes gap between blocks?
Not without a consensus of all users. If some users want to adjust the difficulty to increase the rate that blocks are added to the blockchain, and others do not want to adjust the difficulty, the blockchain will split into two competing and incompatible currencies each trying to call themselves "bitcoin".
Coins received prior to the split could be spent on both blockchains. Coins received after the split could only be spent on the blockchain where they were received. In some circumstances, if someone receives "split" coins on one blockchain, they could potentially steal the same coins on the other blockchain without knowing the private key since the required signature would be the same.
There would be lots of "turbulence". You might even call it chaos. It is difficult to predict what would result from the chaos. Perhaps there would end up being two stable coin systems and both would have substantial support and coexist. Perhaps one blockchain would eventually die off as people chose more and more to use the other. Perhaps the chaos would damage the faith people have in bitcoin enough for both blockchains to die as people migrate to some other currency entirely.
On the other hand, if such a "forking" change were not made, and the protocol was left the way it is, people (and merchants) who wanted their transactions in the next block would have an incentive to increase the transaction fee they were paying. Those paying smaller fees would have to wait until a time when there were less transactions so there would be space in the block for them. If the fees got high enough and the wait long enough, some might choose not to use bitcoin for their transaction. This would reduce the number of transactions and would therefore allow for the fees to drop. Eventually an equilibrium would be reached between transaction cost and transaction frequency.
Meanwhile, third party providers would begin to offer solutions that would allow bitcoin based (or backed) transactions that occur outside the blockchain.
Imagine a brand new service provider comes along (We'll call them "Asiv").
Asiv issues a small 3 ⅜ × 2 ⅛ in (85.60 × 53.98 mm) plastic card with a magnetic stripe on the back. Each card is assigned a unique account number by Asiv.
Asiv contracts with merchants to accept this card for payment on products and services.
When you as an Asiv carrying customer make a purchase at an Asiv accepting merchant, you swipe your card, and sign a receipt. Asiv keeps track of all the payments made to all the contracted merchants. Then once a day they make a single payment in bitcoin to the merchant covering the total of all the purchases made in the past 24 hours. Therefore a merchant might have 100 Asiv purchases per day, but only receive a single bitcoin payment on the blockchain to settle the account at the end of the day.
The merchant can accept payment from the customers without having to wait for bitcoin confirmations, and the customers don't have to make a separate bitcoin transaction fee payment on every transaction. There is just one transaction fee made by Asiv on their single payment to the merchant (or perhaps even a single transaction that pays multiple merchants all at once). Asiv covers this cost with the fees that the merchant agrees to pay to Asiv in the contract they sign.
A customer can use their Asiv card and make purchases all month long. Then at the end of the month, they make a single Bitcoin payment to Asiv paying only a single transaction fee.