Other diagrams?

There are UML diagrams that are really only useful during planning, and become obsolete after that. I have found robustness diagrams to be like this, although we can argue whether or not they even count as UML.

Other diagrams, sequences in particular, I find to be essential tools that I simply can't live without. I was using Borland Together with great success despite its numerous bugs, and non-existant support. What I found was that I could begin drawing a sequence, and it would make it obvious to me when something had been left out. I could be sequencing a simple lookup, and as I draw the line where the presentation tier SHOULD be making a specific call to the business tier, find that the method I was intending to call wasn't there yet. I could add the new method right from the sequence and it magically appeared in the static diagram. In fact it was this freedom of discovery that allowed us to "riff" our way through a design with greater flexibility than trying to think of everything we would need in the static diagrams first, and THEN create sequences for them.

Before Together, we were doing this same sort of thing with Visio, but had to deal with the limitation that it was a one-way street. It sounds like this is still the case. The Class designer will be nicely integrated with the code, and changing something in one place will reflect in another, but there is no such integration for a sequence diagram. Is this, or could this be planned for the future?

I'd love to see a time when I'm thinking of eliminating a particular method, I right-click on it and pick "Show references", and see not only the CODE that calls it, but the sequence diagrams on which it appears which might be a lot easier to understand. I don't expect a sequence diagram to re-arrange my code for me, but integration with the mere existance of methods would be a great help.

[1892 byte] By [MelGrubb] at [2008-2-7]
# 1

Thanks for your feedback. Adding support for other diagram types including sequence diagrams is something we have considered. We have heard similar requests from other customers (see http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=123375 and
http://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=106491.
- you may add your vote to these suggestions). Support for such diagrams either from within MS or through our partners is being worked on.

Thanks,
Ramesh Rajagopal.
Class Designer Team.

[edit: changed URL to old Feedback Center to Microsoft Connect]

RameshRajagopal at 2007-9-9 > top of Msdn Tech,Visual Studio,Visual Studio Class Designer...
# 2
Pleeeaaassee add sequence diagraming support. That would complete 90% of what we need to diagram. I would estimate the class diagram is about 40%.
DaveHFlynn at 2007-9-9 > top of Msdn Tech,Visual Studio,Visual Studio Class Designer...
# 3

Hi,

One of my ideas to address this shortcoming is to use the current diagrams to construct rudimentary collaboration diagrams. It works like this...

Your application diagram shows all of the components that communicate with each other in your distributed system. You could place numbered Comments next to the communication links to show the order in which messages are exchanged, e.g. note "1. Generate Invoice" (on link from InvoicingUI to InvoicingService), note "2. Calculate Orders Cost" (on link from InvoicingService to OrderService) etc. The main problem is that you can have only one application diagram per solution, so you can only show one scenario.

You can have as many System Diagrams as you like in your solution, and on each one you can show any subset of the applications from your Application Diagram. Thus you could create a System Diagram per scenario which shows only the "participating" applications for that scenario, with numbered Comments on the communication links -- as described above -- to show the order of message exchanges.

You can have as many Class Diagrams as you like in a solution, and on each one you can show any subset of classes, so in the same vain you could create a series of "participating classes" diagrams with numbered comments to show interactions between them.

This approach is only really useful for documentation purposes since the underlying SDM will know nothing about the message exchanges, and it's rather annoying that you can't actually attach the comments to the communication lines, but it's a useful workaround in some situations.

Tony Loton

co-Author, "Professional Visual Studio 2005 Team System"

http://www.wrox.com/WileyCDA/WroxTitle/productCd-0764584367.html

TonyLoton at 2007-9-9 > top of Msdn Tech,Visual Studio,Visual Studio Class Designer...

Visual Studio

Site Classified