Welcome to MSDN Blogs Sign in | Join | Help

DSL + UML = Pragmatic Modeling

There has been some speculation in the press recently around Microsoft's commitment to DSLs now that we are planning on supporting five UML 2.1 diagrams in the Rosario release ( Class, Use Case, Component, Sequence, and Activity diagrams ). Specifically, some articles have been written in a way to lead the reader towards a perception that Microsoft is moving away from DSLs and towards UML. Not at all correct! I wanted to take a moment and set the record straight on this, and start a broader conversation.

Let me first start by making one thing very clear: Microsoft is very committed to our DSL strategy, and in particular to the DSL toolkit that ships as part of the VS SDK. In fact, our UML designers are built on top of that toolkit.

I believe that supporting both approaches to modeling gives developers and Architects alike the "right tool for the right job". For those folks who want to analyze and design their architecture using a standard notation that does not imply an implementation decision, use some UML diagrams. UML is great for describing higher level concepts and for defining the initial glossary that can be used to describe the concepts necessary to facilitate broader communication. For those folks who have decided on an implementation strategy, and do not want to be encumbered by the more general nature of the UML to describe that implementation choice, use DSLs.

In the coming months, you will very likely hear me or others on the team talk about using UML at the "logical" layer and DSLs at the "physical" layer. We are really trying to promote a clean separation between the two approaches, while at the same time, attempt to maintain an understanding of how one can inform the other, and vice versa. In this way, we are hoping to more cleanly support the understanding and intent behind the models at each layer.

So this is not a "DSL vs. UML" conversation. This is a "DSL + UML" conversation. And more importantly, this is about meeting our customers where they are and giving them tools that allow them to get to where they need to be.

The true innovation in this space is going to be how we can seamlessly connect the two approaches, and how we can make modeling more central to a broader range of people.

Stay tuned. :)

Cameron

Published Wednesday, June 25, 2008 6:33 AM by camerons

Comment Notification

If you would like to receive an email when updates are made to this post, please register here

Subscribe to this post's comments using RSS

Comments

# Dew Drop - June 25, 2008 | Alvin Ashcraft's Morning Dew

Wednesday, June 25, 2008 8:35 AM by Dew Drop - June 25, 2008 | Alvin Ashcraft's Morning Dew

# I’ve got a new job working on DSLs and UML!

Having spent a year in the Visual Studio Ecosystem team helping to integrate the DSL Tools deeper into

Wednesday, June 25, 2008 11:16 AM by Steve Cook's WebLog

# re: DSL + UML = Pragmatic Modeling

Hi Cameron,

Maybe I didn't understand you with the logical/physical layer sepration... but... I don't like "translations" at all.

(http://www.himalia.net/blogs/leovernazza/2007/10/abstraction-vs-testing.html)

Do you think is it good to add more translations to the stack?

I would like to express the solutions in the abstraction I need, but I don't want to translate it to another language after that.

I really would like to have is a big-picture-architecture where I can plug-in different partial solution (expressed in different abstractions/languages), and then... it just works ;)

How will the DSLs and the UMLs related each other?

Wednesday, June 25, 2008 10:50 PM by leovernazza

# VSTS Links - 06/27/2008

Mohammad Ashraful Alam on 10 Tools Which I Left After Using VSTS 2008 Rob Caron on Team System Preconference...

Friday, June 27, 2008 9:37 AM by Team System News

# re: DSL + UML = Pragmatic Modeling

Hello leovernazza,

Without getting into the details ( as they are changing all the time ), the connection between the logical and physical is more about understanding how they relate. You could certainly start with a logical class diagram, then transform that into a DSL that is specific to you implementation or domain choice. But we're very interested in not losing the fact that one came from the other, or vice versa, and not necessarily in traslation. Said in another way, the logical designers are meant to describe higher level, more general constructs, while the physical more about how to realize those higher level ideas. The two together tell the whole story.

Regards,

Cameron

Friday, June 27, 2008 1:30 PM by camerons

# Cameron’s back

Cameron Skinner has recently reappeared on the blogging scene and he’s on fire!  Check out a couple

Saturday, July 05, 2008 10:10 AM by Jeff Beehler's Blog

# The Future of VSTS Modeling Tools: UML + DSL

Well if you asked me a year ago if Microsoft is going to deliver UML tools the answer would not been

Monday, July 07, 2008 5:52 AM by Visual Studio Team System (VSTS) Blog - by Neno Loje

# re: DSL + UML = Pragmatic Modeling

As someone who has been using UML since the turn of the millenium, the term "physical" has a very specific meaning to me (and to others who understand UML). UML Deployment diagrams focus entirely on the physical aspects of an architecture. Everything else is "logical".

Microsoft got it right with the terminology "domain specific". By implication, UML is non-domain-specific. Would be good if you can stick with this terminology instead of overloading the terms "physical" and "logical"!

Also, "domain" need not reference technology domains. It could reference business domain - insurance, healthcare, banking, retail etc. In this case, a DSL will continue to be "logical" with nothing "physical" about it!

Going back to the original intent of this post, good that Microsoft is positioning DSL to complement UML.

UML itself has a mechanism called Profiles which allows one to create domain-specific meta-models, but that is simply not taking off. Maybe Microsoft DSL will succeed better.

Monday, October 06, 2008 4:04 AM by S. Kishore Kumar

# DSL Tools and Oslo

The Oslo modeling platform was announced at Microsoft's PDC and we've been asked by a number of customers

Thursday, November 06, 2008 8:07 PM by stuart kent's blog

# Architecturing Process & VSTS 2010 CTP

Have been playing around VSTS 2010 / TFS 2010 / .NET 4.0 CTP functionality. It's available for download

Sunday, December 07, 2008 6:45 AM by Babu George's Blog

# Visual Studio Team System 2008 Architecture Edition with MSDN Premium Subscription

[Nacsa Sándor, 2009. január 19-31.] Ez a Team System változat a szolgáltatás-orientált (SOA) elosztott

Sunday, February 01, 2009 4:39 PM by Termékinformációk fejlesztőknek

Leave a Comment

(required) 
required 
(required) 

  
Enter Code Here: Required
 
Page view tracker