UML Metamodel
What indications do you see regarding Microsofts current view on UML?
Well, Bill said a few things about UML that I thought were a bit inaccurate. The notion of it being a complex metamodel and therefore the UML being complex
Well, goodness, if you open up the plumbing of any operating system or any technology, it looks pretty ugly from the outside.
And frankly, the metamodel of the UML is something thats part of the plumbing of the UML. So it is
I wouldnt call it complex; I would call it semantically rich. But thats important for tool builders, and the people who are actually users of the UML are ones who will never see that.
The value is that we as tool builders can do some excruciatingly interesting things with having such rich metamodelsthe notion of being able to do refactoring, which is frankly easier to do in Eclipse than in other IDEs [integrated development environments] because there is a richer metamodel.
It makes it possible to automate the source of the transformations that go on. And if you move up to higher levels of abstraction, there are transformations that take patterns and allow you to inject them into the system.
In fact, even going beyond what I think Bill suggests, theres a shared visionand I think there is one, although a different executionis that theres this real confluence of things happening in this space.
Weve seen stability in our languages. So, weve had C# pop up on the horizon, but by and large its not like in the days of Java and Smalltalk or C++ that weve seen a real revolution in languages.
So, theres some stability there. The ground has shifted to where you think less so about building on top of the naked operating system and more so about building on top of the middleware.
Danny Sabbah, who is a chief architect of IBMs Software Group, suggested that the middleware is the operating system of the Internet. So, thats yet another shift.
So, what we see here is with these two things happeningthe stability of languages and the shift to middlewareand the fact that people are building more and more complex things.
We see this confluence of modeling, patterns and even a little bit beyond that, the notion of aspects. Thats where we think this whole modeling thing is: the beginning of a long series of things that can help raise the level of abstraction.
So, you dont see a problem in there being, as you said, a shared vision but a different execution?
Well, I am disappointed, and would be disappointed if Microsoft were to choose to not pursue the UML path. It is the case that the broad industry has contributed thousands upon thousands of person hours to nail this standard, and it is indeed a very viable standard
So, Im disappointed if Microsoft were to not choose to participate in that forum, because the last thing the world needs is yet another programming language, yet a modeling language or not.
Because you know, it even is beyond pure semantics of the language. One has to acknowledge that there is a whole ecosystem around itthe fact that there are multitudes of books and courses, and the UML has woven its way inside universities and even high school courses.
So, there is this ecosystem in supporting the UML as a standard, whereby people can begin to use it and appreciate it and actually know how to apply it.
Whereas if you apply yet another language that is not an open-standard language, well, you have the whole education issues around it that have to be dealt with. So, its disappointing.
Next Page: Software development is a team sport.









