Criticisms
This article's Criticism or Controversy section may compromise the article's neutral point of view of the subject. Please integrate the section's contents into the article as a whole, or rewrite the material. |
Although UML is a widely recognized and used modeling standard, it is frequently criticized for the following:
- Standards bloat
- Bertrand Meyer, in a satirical essay framed as a student's request for a grade change, apparently criticized UML as of 1997 for being unrelated to object-oriented software development; a disclaimer was added later pointing out that his company nevertheless supports UML. Ivar Jacobson, a co-architect of UML, said that objections to UML 2.0's size were valid enough to consider the application of intelligent agents to the problem. It contains many diagrams and constructs that are redundant or infrequently used.
- Problems in learning and adopting
- The problems cited in this section make learning and adopting UML problematic, especially when required of engineers lacking the prerequisite skills. In practice, people often draw diagrams with the symbols provided by their CASE tool, but without the meanings those symbols are intended to provide. Simple user narratives e.g. "what I do at work ..." have shown to be much simpler to record and more immediately useful.
- Linguistic incoherence
- The standards have been cited as being ambiguous and inconsistent. The UML 2.0 standard still suffers many issues
- Capabilities of UML and implementation language mismatch
- Typical of other notational systems, UML is able to represent some systems more concisely or efficiently than others. Thus a developer gravitates toward solutions that reside at the intersection of the capabilities of UML and the implementation language. This problem is particularly pronounced if the implementation language does not adhere to orthodox object-oriented doctrine, since the intersection set between UML and implementation language may be that much smaller.
- Dysfunctional interchange format
- While the XMI (XML Metadata Interchange) standard is designed to facilitate the interchange of UML models, it has been largely ineffective in the practical interchange of UML 2.x models. This interoperability ineffectiveness is attributable to several reasons. Firstly, XMI 2.x is large and complex in its own right, since it purports to address a technical problem more ambitious than exchanging UML 2.x models. In particular, it attempts to provide a mechanism for facilitating the exchange of any arbitrary modeling language defined by the OMG's Meta-Object Facility (MOF). Secondly, the UML 2.x Diagram Interchange specification lacks sufficient detail to facilitate reliable interchange of UML 2.x notations between modeling tools. Since UML is a visual modeling language, this shortcoming is substantial for modelers who don't want to redraw their diagrams. This shortcoming is being addressed by the Diagram Definition OMG project for which a proposed standard is already available.
- Cardinality Notation
- As with database ER diagrams, class models are specified to use "look-across" cardinalities, even though several authors (Merise, Elmasri & Navathe amongst others ) prefer same-side or "look-here" for roles and both minimum and maximum cardinalities. Recent researchers (Feinerer, Dullea et. alia ) have shown that the "look-across" technique used by UML and ER diagrams is less effective and less coherent when applied to n-ary relationships of order >2.
- In Feinerer it says "Problems arise if we operate under the look-across semantics as used for UML associations. Hartmann investigates this situation and shows how and why different transformations fail." (Although the "reduction" mentioned is spurious as the two diagrams 3.4 and 3.5 are in fact the same) and also "As we will see on the next few pages, the look-across interpretation introduces several difficulties which prevent the extension of simple mechanisms from binary to n-ary associations."
- Exclusive
- The term "Unified" applies only to the unification of the many prior existing and competing Object Orientated languages. Important well known and popular techniques, almost universally used in industry, such as Data Flow Diagrams and Structure Charts were not included in the specification.
Modeling experts have written criticisms of UML, including Brian Henderson-Sellers and Cesar Gonzalez-Perez in "Uses and Abuses of the Stereotype Mechanism in UML 1.x and 2.0".
Read more about this topic: Unified Modeling Language
Famous quotes containing the word criticisms:
“I have no concern with any economic criticisms of the communist system; I cannot enquire into whether the abolition of private property is expedient or advantageous. But I am able to recognize that the psychological premises on which the system is based are an untenable illusion. In abolishing private property we deprive the human love of aggression of one of its instruments ... but we have in no way altered the differences in power and influence which are misused by aggressiveness.”
—Sigmund Freud (18561939)
“The sway of alcohol over mankind is unquestionably due to its power to stimulate the mystical faculties of human nature, usually crushed to earth by the cold facts and dry criticisms of the sober hour. Sobriety diminishes, discriminates, and says no; drunkenness expands, unites, and says yes.”
—William James (18421910)