What does it mean to be MDA compliant?

I read on Jim Steel's blog that back in August there was lots of discussion on OMG lists about what makes a compliant MDA tool. I followed a link from his blog to this entry, and there were three aspects that intrigued me.

  • The top two proposed criteria for a conformant MDA tool require that such a tool use OMG modelling standards (UML, MOF, XMI) to represent and interchange models. Perhaps this shouldn't be a surprise, but I have seen the term MDA used as a catch-all term for anything remotely automated concerning models. Folks should be careful about using the term MDA: use a more generic term if you do don't use OMG standards to do your modelling.
  • The fourth proposed criteria puts platform independence at the heart of MDA. Platform independence is just one possible benefit of abstraction, there are many others. A problem I have with the MDA concept, is its narrow interpretation of the wider field of model driven development, or model driven engineering, or just model driven stuff, in particular its emphasis on platform independence.
  • Many of the proposed criteria are challenged by valid points made by the writer of this entry, illustrating how hard it is to actually pin down what it means to be compliant to MDA. And surely a standard is only a standard if you can test objectively and concretely what it means to be compliant to that standard?