Brian Di Croce

Passionate about developing and delivering better software with .NET

Subscribe in a readerSubscribe in a reader Subscribe via emailSubscribe via email

For if you love those who love you, what reward do you have? Do not even the tax collectors do the same? And if you greet only your brothers, what more are you doing than others? Do not even the Gentiles do the same? You therefore must be perfect, as your heavenly Father is perfect. (Matthew 5:46-48, NIV)

Mar
29
2008

Better Modelling with the Visual Studio Class Designer

As you may have experienced whenever modelling any kind of software design, it gets pretty hard to keep the model in-sync with the software as the code changes over a period of time.  It’s even harder to keep both updated if you’re modelling with a different, independent application than your IDE. 

Today, for the very first time, I was playing around with the Visual Studio 2008 Class Designer.  I’ve been using Sparx’s Enterprise Architect for a number of years, but I wanted a better way to keep my design in-sync with my code inside the IDE.  The major problem with the Visual Studio Class Designer is that it lacks some fundamental features that should appear on a UML class diagram such as associations between classes

Well, you might be delighted to know that there’s a neat project on CodePlex that fulfills this need. That project is PowerToys for the Class Designer and Distributed System Designer.  Here’s its description:

This set of add-ins augments existing functionality in the Visual Studio Class Designer and the Distributed Systems Designers. It now supports Visual Studio 2005, Visual Studio 2008. The Design Tools Enhancements add-in provides a common set of features that can be used by both the Class Designer and the Distributed System Designers, such as pan/zoom window and rich formatting commands. The Class Designer Enhancements add-in provides additional functionality for the Visual Studio Class Designer, such as HTML export and nested type creation commands. This download includes all necessary source code and a Visual Studio project template for creating your own add-ins for the Visual Studio designers. The Class Designer is a developer productivity tool available in Visual Studio Standard Edition and above, which allows developers to easily visualize, design, refactor, and document their code. The Distributed System Designers enable software architects, operations managers, and developers to visually design service-oriented solutions and validate them at design time against their operational environments. The Distributed System Designers are a core component of Visual Studio Team Edition for Software Architects and the Visual Studio Team System.

Even though the description says that it supports Visual Studio 2005, the latest release only supports Visual Studio 2008 (Professional edition or higher).  I haven’t tried it in Visual Studio 2005 (but if you did, feel free to post a comment on your experience with this PowerToys on VS2005).

P.S To show the associations between classes inside the Class Designer, simply right-click on a class attribute or a property, then click on Show as Association or Show as Collection Association, depending on the type.  Sweet!

kick it on DotNetKicks.com

Similar posts you might be interested in reading:

Leave a Reply