Over at Stack Overflow a question was posted “Is UML practical?“. The question itself is fine, but several of the answers were so narrowly focused. I believe that the everyday developer only sees UML as only a common set of shapes drawing a picture. Granted it has a common set of shapes for notation, but UML is first and foremost about modeling. (Big surprise coming from a Modeling Website).
Where did this dis-information come from? In my experience the UML for diagrams message comes from schools/universities and popular UML books. Schools will often only teach UML as a way to diagram the solution you and your team of group participants are going to code up. Well of course it seems a little redundant in that contrived learning environment. UML’s concepts are to large to teach in the same class as project management 101 or multi-developer projects 101. Most people just don’t go any further with it and thus the collective knowledge is that UML is for making diagrams. A smaller problem in my estimation is that UML books often teach or focus on UML as a diagramming tool. They have to sell books to the PM 101 courses so who can blame them. However, what is slightly more scary is that often in the forward or introduction chapter it will come out that the author really only feels UML is practical for communication ie. drawing diagrams.
Just thought you might need to be reminded that most technical people don’t get UML. In 5 years UML will be so mis-understood that it will be viewed like LISP or SCHEME, that thing you used in class that was supposed to be great, but really it was only good for learning how to do X.
Keep an eye on the Stack Overflow post I referenced and the UML topics in general at the website. Maybe we can turn this oil tanker around.
