Without knowledge very little can be achieved. And, don't get me wrong, there is a lot of knowledge regarding UML on this little blue planet. But when it's hard to communicate using UML, it will be even harder to communicate about UML. And because of all this, today we see that almost every company has its own in-house "implementation" of UML, defining how to write down their analysis using this Unified Modelling Language.
As with many things, it's probably a naming issue. Language is hardly the correct term here. Syntax would have been a far better choice. A language is much more than just syntax. It consists of a grammar and idioms. UML is beyond any doubt a great syntax, but we're not speaking the same language yet.
Sure, there are design patterns and integration patterns and ... But that's pretty much where it ends. All these patterns are rather technical in nature and don't really address functional, nor business issues. We need to be able to share a common knowledge of a much higher level of patterns, start sharing these functional and business models, reuse them and stop designing the same concepts over and over again, recreating the same bugs over and over again.
It is time to extract the common knowledge from all the isolated models in the world and bring it together in an open and accessible Central Repository.
If we want to make our Common Knowledge available to almost anyone with a web-enabled device, we need some form of a central repository. Let's define what a valid solution to this requirement should look like before it qualifies as a central repository:
Any digital resource on a public server, containing a model or a diagram is a valid central repository, as long as the model or diagram can be visually consulted and retrieved in an automated way from that resource.
A picture of a diagram may tell a thousand words, but in this case, we want both of them: a picture to see what model or diagram we're dealing with before we import the actual content into our local tool and continue to work on it. So, uploading an XMI export of our diagram along with a screenshot to a web server doesn't fit the requirements, because we cannot import the XMI document and have an exact copy of the diagram in the screenshot. We will need new tools to realise this.
Finally, we also have to deal with history. UML has a history and CASE tools have a history. We can't simply ignore that and we have to drag along this legacy. So integrating all the new and fun stuff with the old is a task we need to address. We need to web-enable as many CASE tools as possible.
This is a daunting task, but it is an important one. We don't want to - and simply can not ask everybody to - stop using their current tools and migrate to some new platform. That is not the goal of this initiative. We want models to stay where they are, but enable them to roam the web.
To achieve this, existing CASE tools will need to be extended to allow them to connect to a Central Repository and access the Common Knowledge.