First, I use UML extensively, and have since UML 1.3.
Having said that, I think you are right that the UML is being quietly
adopted as the "lingua franca" of software and even perhaps systems (with or
without SysML) development. This survival has been in the face of myriad
domain specific languages that either casually imitated parts of the UML, or
were so tangentially obscure they died of neglect.
Most folks use the UML like English speaking people use the English language
- just as a subset, and sometimes not very well. That doesn't mean it isn't
useful.
Whatever extensions are needed by the UML, they cannot prevent the common
usage of the language. My experience in this forum is that people will try
to cast the formal use of the language into their own paradigm. Bad move,
IMO.
Ken
What do you think?
Jordi Cabot
--
You received this message because you are subscribed to the Google Groups
"UML Forum" group.
To post to this group, send email to umlf...@googlegroups.com.
To unsubscribe from this group, send email to
umlforum+u...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/umlforum?hl=en.
> What do you think?
>
I think OMG shot themselves in the foot in their effort to make UML the
Mother of Modeling Languages. Prior to v2.0 one of the major knocks on
UML was that it was too big and complex because it tried to be a
superset notation for all OOA/D notations, many of which were somewhat
incompatible. The size and complexity after v2.0 became truly
mind-boggling. You now need a unique MDA profile just to tell you what a
given UML model means. And the documentation has become a monument to
obtuseness so anyone wanting to use it for modeling needs a book to
explain it. The other major knock prior to v2.0 was that it was designed
by committee and the left hand often did not know what the right hand
was doing. With v2.0 we have committees of committees designing it so
inconsistencies are showing up all over the place. Basically OMG has
created a large usage tax for using it that a lot of new developers
simply don't want to pay.
Another problem was the introduction of SysML. Despite lip-service to
integration with UML, SysML represents a classic Structured Design view
of top-down functional decomposition of behavior, which is fundamentally
incompatible with the peer-to-peer collaboration and flexible logical
indivisibility of the OO view that UML was originally designed to
support. That has tended to relegate UML to a supporting role. [I am not
knocking SysML, BTW. It is very useful for dealing with hybrid systems
because hardware is almost always designed hierarchically (e.g., VHDL).
SysML is a spanning notation to deal with both hardware and software.
The problem lies in not switching gears once one gets to pure software
subsystems and continuing to drill down in their design with pure SysML.
Then one is back to the spaghetti code of the procedural era.]
Also, I think the use of UML has been greatly reduced because of the
popularity of the OOP-based agile movement where BDUF (read: UML models)
tends to be a pejorative (Scott Ambler being an exception). The bloom is
coming off that rose as more large projects like C4 fail, but it will
still be awhile before people realize that agile modeling techniques are
needed to deal with large applications. So I see that as a temporary
effect until the arena of applicability for OOP-based agile techniques
is properly sized. [I am not knocking OOP-based agile approaches either.
The movement institutionalized processes like IID, test integration, and
peer review that were sorely needed in the industry. The problem lies in
over-selling it, much like Expert Systems were oversold in the '80s. IMO
the market for them is much smaller than their gurus would have us believe.]
However, it is an unfortunate hiatus because it has delayed the use of
UML where it can be most effective: as a true 4GL (when combined with an
appropriate abstract action language for describing behaviors).
Currently UML is the only popular 4GL for general purpose computing.
Ultimately the productivity benefits of migrating 3GL -> 4GL will
probably be greater than the benefits of migrating 2GL -> 3GL in the
early '60s. Alas, the OOP-based agile movement has delayed that
migration by something close to a decade.
--
Life is the only flaw in an otherwise perfect nonexistence
-- Schopenhauer
H. S. Lahman
H.la...@verizon.net
software blog: http://pathfinderpeople.blogs.com/hslahman/index.html