The rationale for the case and controversy requirement is that first, you don't want to burden the courts with resolving hypothetical questions, second, that the law, particularly in common law systems descended from English law, is very fact and context sensitive and may not have a well determined answer in a vacuum, and third, it insures that the courts are not used collusively or by people who don't have an appropriate stake in the result so that they can evaluate what incentives are proper.
For example, you wouldn't want a corporation to enter into a contract with a strawman, who rolls over a lets a court declare that it is legal and binding, and then assigns the contract with legally invalid provisions in it to a third party who would not be permitted to litigate his rights because they were already decided in an advisory opinion.
It also keeps the courts out of the legislative process by having courts deal only with laws that have been passed and are ready to be imposed, rather than ruling on proposed laws that would inject the courts into the legislative process.