|
One of three UmlModes If you can detail the UML enough, and provide semantics for
everything you need in software, you can make the UML be your
programming language. Tools can take the UML diagrams you draw and
compile them into executable code. The promise of this is that UML is a higher level language and
thus more productive than current programming languages. The question, of course, is whether this promise is true. I don't
believe that graphical programming will succeed just because it's
graphical. Indeed I've seen (and worked with) several graphical
programming environments that failed - primarily because it was slower
to use than writing code. (Compare coding an algorithm to drawing a
flow chart for it). Furthermore even if UML is more productive than
programming languages it's hard for programming languages to become
accepted. Most people I know don't program for a living in the
language they consider to be the most productive. Languages need a lot
of things to come together for them to succeed. Proponents of UML as a programming language often seem to fall
victim to the PlatformIndependentMalapropism. While this
doesn't invalidate the idea, it concerns me that they believe
it. Using the UML and MDA is a platform, and you are just as much
committed to it as any other platform.
|