The thing is: You have to do it right to reap the rewards. Especially in larger companies it's unfortunately not uncommon to encounter all-encompassing models with hundreds (or even thousands) of entities / classes. That kind of model not only doesn't help with developing software faster and more cost-efficiently but even has an adverse effect. In order to benefit from model-driven development you have to think in terms of the various business functions (sales, HR etc.), the boundaries between those functions and models which are specific to their respective subdomain.