I am currently reading Model Driven Architecture by David Frankel. Notwithstanding its small size -- 300 pages, this is one helluva deep book. Some parts (especially those not targeting PHBs) have to be read more than once to wrap your mind around the concepts. The chapter on the Meta Object Facility is a case in point. There are so many levels and metalevels (the MOF model is actually a meta-metamodel) that it's very easy to lose track of the context unless you pay very close attention.
On a side note, this brings to mind an experience I had when I was cramming for the JEE. There is a hefty volume by M L Khanna that is sort of a bible for the JEE maths exam, which contains a challenging section on probability theory. I remarked about this to a friend who was also preparing for the exam, and he advised me that it was a pretty small section (I think it was around 30 pages or so), and, considering that probability theory was expected to fetch about ten marks in the exam (ten marks may not seem like much, but are absolutely crucial in an exam as competitive as the JEE), I'd do well to read it even ten times, if necessary, to ensure that I grasped the concepts thoroughly; which I did, though I didn't have to read it ten times, of course. Though I have pretty much forgotten all the maths I had to learn then, this piece of advice has stayed with me all these years. Both of us cleared the exam, BTW.
The best thing I like about Model Driven Architecture is that the author doesn't have any axe to grind or any hidden agenda. He takes a no-nonsense approach, stating clearly the areas where much work remains to be done; there is no hype that MDA is the best thing since sliced bread, it's going to take the field of software engineering by storm, and so on. In short, short on hype, but long on facts.