Propriety of proprietary
Just read CSharpeners Blog entry concerning Whitehorse here. I'm glad to see this dialog taking place. The entry was spurred by the article in CNet entitled Microsoft places bet on Whitehorse. I want to pick up on some of the statements made in the article in my next posting, but also wanted to address the CSharpener comment right away. The author states that much progress has been made toward a visual language lingua franca. I agree with this statement in as far as it relates to diagrammatic notation - the UML effort rightly eliminated a confusing number of notations for the same concepts. The problem comes when the development effort switches to a domain not well covered by UML notation or its underlying metamodel, such as Web services or Data center server types (two scenarios we are critically interested in for Visual Studio Whidbey). In these areas there is not really an established lingua franca for us to have chosen. In these domains we have chosen to provide intuitive notations that developers resonate with, which are backed by well-focussed, specific modeling languages (DSLs). In tools we've seen based on UML, the use of weak UML extensibility mechanisms such as stereotypes and tagged values does not allow for true metamodel extensions nor do most UML tools offer an easy way to customise diagram shapes to produce helpful diagrams. As another example, our Whitehorse Class Designer tool uses UML notation but is based on a DSL that accurately models the CLR type system allowing us to keep code and models in sync all the time with no round tripping.