R.Ramesh's WebLog

Class Designer in Whidbey and UML

The Class Designer is not a UML tool but uses the UML notation where it makes sense.  The primary audience for this tool is the Visual Studio developer.  The underlying meta-model behind the Class Designer is the CLR Type System and not the UML meta-model.  This provides for a seamless synchronization between the code and the diagram without having to spit “designer goo” in the code.  This also makes it easy for us to use the “code is the master“ paradigm.  We only store the visual information in the diagram file and sync the diagram to changes in code as and when it happens.

Early feedback from developers have been very positive.  Of course, a small minority feel that not following the UML standards will make them not want to use this tool.  I am curious to find out why that is so.  I am especially eager to get responses from developers on this issue.

Cheers,

Ramesh.

 

Published Saturday, March 06, 2004 5:32 PM by R.Ramesh

Comments

 

Ferris Beuller said:

UML is a language independant moddeling standard for a reason. What format will this generate files in? Can I move this class designer diagrom to and from INDUSTRY STANDARD (not that thats important right?) tools and skillsets?

If you think UML = teh sh1t, then go submit a proposal for a change. Dont work AGAINST the damn standards.

Personally I wont be installing this along with that advertware dot obscufator in 2003, intead of installing an application we spend more time UNINSTALLING unwanted features nowdays.

The early feedback is coming from MVPs and beta testers and general employees and normal arse lickers yea yeah its free iwant i want grab grab yea yeah rah rah rah 3 cheers for myself self pleasing crowd.

People are running Rose XDE and Enterprise Architect or other free or non expensive UML INDUSTRY STANDARD (i cant emphasise this enough) tools. Do you allow importing and exporting of INDUSTRY STANDARD UML XML file formats?

INDUSTRY STANDARD is the keyword here.
March 7, 2004 6:22 AM
 

Ferris Beuller said:

Sure, come on in waving this visualising tool skills or wanting to learn that tool and we will laugh you back to the door with a UML for dummies book.

March 7, 2004 6:23 AM
 

Ferris Beuller said:

What good is this when I am working with developers that DO NOT use Visual Studio, thats why we have UML and none of this proprietry lockin tools which is what this appears to be.
March 7, 2004 6:26 AM
 

Ferris Beuller said:

How will this integrate with configuration management tools? I would guess you store this as a CUSTOM XML format, right? I guess that locks out other tools. Will this file format be documented? I bet not, its up to us to reverse engineer it (legally permitted in the EU for interop and to encourage competition BY EU DIRECTIVEs - BY LAW).
March 7, 2004 6:39 AM
 

Steves Mob said:

Will there be a interface or some way to extend the designer from managed code? Like create your own type of diagrams or inherit some export/import functionality and make it support whatever format you want. For Ferris.
March 7, 2004 11:07 AM
 

Ferris Beuller said:

Oh not just for me, for the entire industry that tends to think standards are important.

Will this replace the object browser?

March 7, 2004 1:10 PM
 

Ramesh said:

Hi Steves,

Our group is building a model based development tool framework. Currently Class Designer is one of 3 designers that we are building on top of this framework. While it is true that the Class Designer itself doesn't support higher level abstractions, we are working with partners who will be able to provide support for, including but not limited to, UML built on this framework. While there is the XMI format prescribed by OMG, we have found that each tool vendor has their own interpretation and implementation of the standard, making it extremely difficult, if not impossible to import an XMI file exported by a tool vendor. I am curious to find if people have actually imported an XMI file exported by one vendor into a UML tool provided by another vendor.

Cheers,
Ramesh.
March 7, 2004 5:37 PM
 

Ferris Beuller said:

Why dont you download 2 trial versions and export import between them and find out.
March 8, 2004 6:02 PM
 

Ferris Beuller said:

MS has a site license on IBM Rational Rose, go use it.
March 8, 2004 6:02 PM
 

Ferris Beuller said:

March 8, 2004 6:03 PM
 

smartkid said:

It is possible to derive the meta-model of the class designer from a meta-meta-model that is UML standard compliant.
April 6, 2004 5:06 AM
 

Ramesh said:

It should be possible. However, currently there are no plans to expose the meta-model of the class designer in V1. But it is one of the high priority items on our list.
April 9, 2004 7:52 AM
 

CaptainNick said:

I like the idea of being able to map back and forth between the diagrams and the code. That is how I was using Sparx Enterprise Architect (an excellent, inexpensive, cross-platform UML tool with round-trip development... check it out.)

While I am comfortable using two visual paradigms (one for VS and one for the rest of the world, I cannot and will not publish an artifact that does not meet the UML standard. This means that I will have to keep using EA, and just reverse engineer the diagrams in to create the documentation... kinda defeats the purpose of using the diagrams in the "long term" as you describe in the blog.

As an absolute requirement, I need the ability to VIEW the diagram in UML, even if I can only modify and work with it in the non-standard format. This should not be an add-in from a vendor... this should be core functionality.

I need to export the image to WMF, JPG, PDF, and/or GIF (for documentation and web page publishing). I do not need to export in XML format just yet, but I would like the image data to be stored in XML for the sake of Config Management (Diff doesn't work too well on binary files).

Also, all the discussion has focused on Class diagrams. I also need other UML artifacts, like Sequence diagrams, state diagrams, deployment diagrams, use case diagrams, etc. The class diagram represents only one view (read Krutchen's description of the 4+1 Views).

Anything less is literally not an answer.
May 4, 2004 11:42 AM
 

UnderEducated said:

Thanks Captain for the constructive feedback. It never ceases to amaze me how much time people waste complaining instead of helping create what it is they are dissapointed doesn't exist.

I personally have no need for the class designer to meet UML standards. I understand the importance of UML, and standards in general, but what I want is a visual representation of the codebase I have to architect on a daily basis. For those like the captain who obviously model to communicate, the UML will be more important.

I model to understand and be productive, the class designer is exactly what I have been waiting for in VS.NET for some time, industry standard or not.
May 21, 2004 8:32 PM
 

UML Fan from SoCal said:

As an MS fan, I like the idea of an integrated UML-notation viewer in VS. I also echo the comments of the irate guy who says that "it ain't UML unless its standard".

I wonder if someone can shed some light on these: Is it possible to externally automate the Class Designer (big problem with Visio)? Exactly what constructs in class diagrams are supported? Are there any other "UML" diagrams in the works?

Thanks.
May 25, 2004 9:27 AM
 

Lance said:

I too am an idealist at heart, but I see the response from the RUP crowd as too extreme for me...

I am a developer in the industry for 8 years. I see the value in UML, and a good design methodology. I use these tools myself.

Having said that, I have no problem with Microsoft releasing a tool that provides for code-visualization, object model design, and code-generation (class-stubbing). These features will provide nothing but benefits to the 80% of developers who currently develop using RAD and Agile methods.

I do not see this tool as an attempt to undercut the UML community, or to provide a poor simulacrum of Rational Rose. Instead, I see it as an attempt to bring basic OO design capeabiilities down to a level that the "common man" programmer can understand and weild the tool.

I applaud MS for doing this!

Do I think it will be THE tool for all developers? Absolutely not! However, for those who do not know about the plethora of UML and designer options available, this will be a killer tool that will start them down the road to enlightenment...

'nough said.....let the RUP-flamers begin!
May 28, 2004 1:38 PM
 

Ramesh said:

Thanks for the feedback Lance. I couldn't have said it better.

Sorry for going AWOL the last few weeks. I promise to post more info soon.

UML Fan: Sorry, for V1 we don't plan on providing automation support. The Class Designer will support all language specific constructs for visualization. For class building, we will not support creating generic types from the diagram (but we will support visualizing them). What other kinds of UML diagrams are you interested in?
May 28, 2004 1:55 PM
 

Simon said:

Well, I guess my company affiliation makes me a default "RUP-flamer" or "UML Bigot" or [insert term here]. However, I would like to note that it seems to me Ramesh made it clear this feature is called the "Class Designer" and that it uses some UML notation where appropriate.
<br/>
The posts in this thread are beating up MSFT for not making a pure UML tool when it's clear that there was never an intent to do that any way. I agree with the posts that point out that many of us use class diagrams as a way to navigate a complex code base or visualize the relationships between classes and so such visualization (er-hum; available and shipping "elsewhere") is extremely valuable.
<br/>
A non-visualization approach is usually needed for architecture, design and pattern development where there is not a direct relationship to the code and where UML standardization seems far more appropriate.
June 29, 2004 6:45 AM
 

Amit Bahree said:

Well, let me start off my saying I am one of the biggest MS fans around and probably also one of their unofficial envgelists, but I also have used RUP for a while and do value the benefits of standardization.

My question back to you (Ramesh) and rest of MS gang is what is the issue on supporting UML? I work for a large SI who is also one of the largest global MS partners. A lot of the clients I am involved with have almost everything running somehere on there network and a very very very very small percentage are only MS. So, if this is something propetary which I as an Architect cannot "integrate" with other pieces of a complex enterprise application that maybe running on J2EE then why would I want to use this?

Thoughts?
July 21, 2004 7:05 PM
 

Ramesh said:

Thanks for all of your feedback.

As Simon says Class Designer is not a conceptual modeling tool. It ispurely a code visualization tool. This is targeted towards developers programming in VS.Net languages to help them visualize and refactor existing code and create new types.

Amit: Thanks for your support and being an unofficial evangelist of Microsoft. You can think of Class Diagrams in VS 2005 as another view of your code. If you are a developer and are using Visual Studio you will find it very useful while building your software. I hope this clarifies things a little bit.

Cheers,
Ramesh.
July 22, 2004 8:54 AM
 

Dating said:

The Class Designer is not a UML tool but uses the UML notation where it makes sense. The primary audience for this tool is the Visual Studio developer. The underlying meta-model behind the Class Designer is the CLR Type System and not the UML meta-model

June 1, 2008 10:08 AM
 

R Ramesh s WebLog Class Designer in Whidbey and UML | Shed Kits said:

May 27, 2009 2:11 AM
 

R Ramesh s WebLog Class Designer in Whidbey and UML | Insomnia Cure said:

June 9, 2009 8:45 PM
Anonymous comments are disabled

© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Microsoft
Page view tracker