Ads

Links

Grady Booch's comments on UML/MDA

After Ivar Jacobson it is now Grady Booch who gives his opinion on the UML as part of this interview .
Let me just highlight the best modeling-related comments in the interview for those that prefer not to read it full (comments mine):

  • When we began with the UML, we never intended it to become a programming language . I agree, modeling makes sense when the abstraction level is higher than that of programming languages. However, I'd say that most people do not use UML as a programming language (except,maybe, for those following the ExecutableUML approach). I think it is just the opposite, UML is used more as a sketch .
  • I think that there's a fairly narrow domain for which model-driven development makes sense : I disagree, I think the combination of UML and/or DSLs (depending on the domain) allows model-driven to be beneficial in many domains
  • we should return to the roots of the UML : assuming that he means that UML has become too complex, I think we all agree with this and, fortunately, even the OMG has realized about it
  • one should only use a graphical notation for those things that cannot easily be reasoned about in code... most important artifact any development team produces is raw, running, naked code. Everything else is secondary : again, here Grady seems to completely disregard the whole field of model-driven development. I wonder why. True, we don't have many empirical studies proving the benefits of model-driven development (I'm collecting those I've found so far for a future post) but I don't think going back to code-centric development process is the solution (but, of course, I'm not Grady Booch so I don't expect you to believe me :-D )

If you enjoyed this post you can subscribe to this Software Modeling blog and/or follow me on twitter or through the portal's mailing list . And if you really liked it help me pass it on to others by bookmarking and sharing the post using the links below:

Trackback URL for this post:

http://modeling-languages.com/trackback/292

Ouch, history strikes....

Jordi, nice summary and observations. It looks like this is in line with the feeling I got reading reports of Barbara Liskov's talk at OOPSLA. Young developers may not know enough of CS/SE history and run the risk of repeating mistakes, but it looks like Grady is stuck in history.

I wrote a column for a magazine about this in Dutch that may need some modification now. Once finished, I'll translate it to English and put it on my blog.

Angelo Hulshout
http://www.hulshout.nl

DSL IS-NOT OO

UML could end up being one of the worst technology of all times. It was certainly invented with good intentions, I still remember all the craze it generated around 96-97, mostly because had no idea how to use OO (not that UML helped in any ways).

The real tragedy is that the OMG decided to build MDA and MOF on top of UML when in reality, OO was clearly not the right foundation. So UML got augmented to do things it should have never done, without successfully delivering MDA or MDE.

So, I smile just a tiny bit when I hear that UML needs to go back to its roots (who actually cares? OO no longer exists). The OMG needs to revisit its entire foundation, not just touch up UML here and there. We need to understand two things:
- programming models need to become architecture independent
- there is a continuum between model driven approaches and traditional programming language (they are not opposed to each other)

Jean-Jacques Dubray
MOPer (Metamodel Oriented Programmer)

More on MetaModel-Oriented Programming

Check Jean-Jacques blog

Jean-Jacques - interesting

Jean-Jacques - interesting observations, although maybe worded a bit too strong.

Yes, DSL is not OO, but to say that "(who actually cares? OO no longer exists)" may be a bit too strong. After all, functional and sequential programming are stilla round, as are functional and OO languages like C, Pascal, Cobol, C++, Java and so on.

We may want to move on to DSLs and MDD, but there's a whole bunch of legacy stuff out there that is still being maintained, extended and updated using the paradigms that were applied originally, and in many - although less and less - cases by the same developers. It's not just Grady Booch who is strongly rootedm if not stuck, in the past: code centric development based on OO and functional design is still very much in existence today.

Angelo Hulshout
http://www.hulshout.nl

User login

Ads

Ads