Author Topic: A need to reposition Swimlanes  (Read 8133 times)

dlundy

  • EA User
  • **
  • Posts: 21
  • Karma: +0/-0
    • View Profile
A need to reposition Swimlanes
« on: October 24, 2004, 06:55:25 am »
Problem: Swimlanes can be reordered through use of the related dialog. However, using this feature does not result in the CONTENTS of the swimlane being moved as well.

Swimlanes are used to a great extent in Analysis activities (as well as other SDLC tasks). This process, not suprisingly, is iterative and discovery of further detail occurs all the time. Consequently, the NEED to move the swimlanes and their contents around is essential.

I have requested a Feature to support moving swimlanes and their contents.

I would appreciate any help or comment from Sparx and this community if they are aware of a workaround.

Dan Lundy
« Last Edit: October 26, 2004, 07:30:02 am by dlundy »
Dan Lundy

Bruno.Cossi

  • EA User
  • **
  • Posts: 803
  • Karma: +0/-0
    • View Profile
Re: A need to reposition Swimlanes
« Reply #1 on: October 24, 2004, 10:48:44 am »
Hi,

there is a simple workaround, moving the contents manually. It is not as bad as it sounds, as you can easily select multiple elements (e.g. all elements within a swimline) and move them all together.
Having said that, if swimlane behaved much like a boundary or GUIScreen element that move the underlying elements with them, that would be great!

Bruno

dlundy

  • EA User
  • **
  • Posts: 21
  • Karma: +0/-0
    • View Profile
Re: A need to reposition Swimlanes
« Reply #2 on: October 24, 2004, 02:30:22 pm »
Thanks Bruno!

While at first glance, the ability to multi-select and move would seem sufficient, the problem becomes much more complex in diagrams that contain 3 or more swimlanes. In order to move elements around, you have to move the first set out of the way. Then you have to select the second group and move that set to its new location.  Then you have to move the first set into its new location. This is a three move operation that gets even worse as the number of swimlanes increases.

In the diagrams of one of our projects, it is not uncommon for the Analysts to create diagrams - typically Happy Path schematics - that have 7 or more swimlanes in various stages of completion.  As demonstrated above, moving these elements around becomes an exercise in frustration, if admittedly not an impossibility. It is further complicated by the requirement that the swimlanes, which do not behave as first class diagram elements, must be reorded via the dialog - which can lead to confusion as to what moves where.

Of course, I am emphasizing the pain - since when the need to reorder occur, painful it is - in extremis.

I have bastardized the use of fork/join elements to create pseudo-swimlanes that can be grouped and moved. However, this is not a satisfactory solution.

If EA could automate this, I echo your comment: This would be GREAT!
Dan Lundy

KP

  • EA Administrator
  • EA Expert
  • *****
  • Posts: 2919
  • Karma: +54/-3
    • View Profile
Re: A need to reposition Swimlanes
« Reply #3 on: October 24, 2004, 03:47:16 pm »
Quote
I have bastardized the use of fork/join elements to create pseudo-swimlanes that can be grouped and moved. However, this is not a satisfactory solution.


No, don't do that! Partitions are what you need: they're in the Activity toolbox.
The Sparx Team
[email protected]

dlundy

  • EA User
  • **
  • Posts: 21
  • Karma: +0/-0
    • View Profile
Re: A need to reposition Swimlanes
« Reply #4 on: October 24, 2004, 05:34:26 pm »
KP, a very good suggestion, thank you! It certainly spares me the pain of manhandling the fork/join bars and works with grouping. However the relative unfun of lining up partitions to act as swimlanes (horizontal and vertical alignment next to each other is a particular exercise in nojoy) serves to remind one that they really aren't swimlanes. Still, it is better than my practice with bars.

Yet, the need to manipulate a swimlane and its contents remains the real goal. I realize there is some additional levels of complexity here as the contents of swimlanes, by their very nature, have connections to the contents of other swimlanes. One wonders if the OMG considered the practicalities of this kind of manipulation when defining the specification. Regardless, the usefulness of swimlanes begs for enhanced support in EA.
Dan Lundy

sargasso

  • EA Practitioner
  • ***
  • Posts: 1406
  • Karma: +1/-2
  • 10 COMFROM 30; 20 HALT; 30 ONSUB(50,90,10)
    • View Profile
Re: A need to reposition Swimlanes
« Reply #5 on: October 24, 2004, 08:19:57 pm »
Could I take this one step further?  UML 2 Partitions certainly overcome the 1.5 pain of swimlanes.  But it would be a lot easier for me to mainpulate the things if there was some way to move partition plus contents such that it did not kidnap elements it ran over and paused on on the way to its new location.
Similar to Dan, when the model is large and complex, I tend to use very zoomed out views to move stuff around and when trying to reposition a partition it frequently captures elements that I dont want captured.
rgrds
Bruce
"It is not so expressed, but what of that?
'Twere good you do so much for charity."

Oh I forgot, we aren't doing him are we.

dlundy

  • EA User
  • **
  • Posts: 21
  • Karma: +0/-0
    • View Profile
Re: A need to reposition Swimlanes
« Reply #6 on: October 25, 2004, 10:48:52 am »
Thanks Bruce for pointing out this odd behavior of Partitions. When zoomed out, it is entirely too easy to *pick up* the odd activity or element here and there.

I would think that Partitions are my ultimate answer. However, as of release 739 - it appears that none of the ALIGN commands work on Partitions. This leaves one with the task of lining up the Partitions, making sure they are the right size, etc. In addition, one is still left with the multiple move problem when reorganizing the diagram.

Correct me if I read too much into your post, but are Partitions the semantic/visual replacement for swimlanes in UML2 - or are they just an addition? I will look through the current OMG UML2 documents - but I could be saved some grief here!
Dan Lundy

dlundy

  • EA User
  • **
  • Posts: 21
  • Karma: +0/-0
    • View Profile
Re: A need to reposition Swimlanes
« Reply #7 on: October 25, 2004, 12:20:16 pm »
A quick correction: The ALIGN menu commands do work - that is ONE of them will. If you select two or more Partitions, then use one of the ALIGN commands - it will work. However, it will fail on subsequent requests. This requires you to deselect then select the Partitions again - and pick the next ALIGN command.


Dan Lundy

sargasso

  • EA Practitioner
  • ***
  • Posts: 1406
  • Karma: +1/-2
  • 10 COMFROM 30; 20 HALT; 30 ONSUB(50,90,10)
    • View Profile
Re: A need to reposition Swimlanes
« Reply #8 on: October 25, 2004, 03:53:31 pm »
Quote
Correct me if I read too much into your post, but are Partitions the semantic/visual replacement for swimlanes in UML2 - or are they just an addition? I will look through the current OMG UML2 documents - but I could be saved some grief here!


Yes, that is my interpretation.  Or, if you like, partitions are a semantic enhancement of swimlanes ... and the notation "expectations" of OMG infer  replacement of the simple 1.5 swimlane notation.

See Superstructure 12.3.8 (pp323..) and in particular the last two subtopics.

Bruce
"It is not so expressed, but what of that?
'Twere good you do so much for charity."

Oh I forgot, we aren't doing him are we.

dlundy

  • EA User
  • **
  • Posts: 21
  • Karma: +0/-0
    • View Profile
Re: A need to reposition Swimlanes
« Reply #9 on: October 26, 2004, 07:29:22 am »
I am convinced.

I read through the referenced UML2 specification and tested the use of (Activity)Partitions in my own tests models. They work well and are more flexible and usable then simple swimlanes.

Thanks to all of you for guiding me to the light!

Dan Lundy

LNS_Software

  • EA Novice
  • *
  • Posts: 18
  • Karma: +0/-0
    • View Profile
Re: A need to reposition Swimlanes
« Reply #10 on: November 01, 2004, 03:28:03 pm »
I use boundaries to move around blocks of diagram objects quickly.  If you have 6 swimlanes, and you want to move #6 to #3, you:
  • create boundaries around the objects in swimlanes #3 to #6.
  • Rearrange the swimlanes.
  • Then move the objects in bulk by moving the boundaries.
  • When finished, delete the boundaries.
It sounded too scary when you had to use Align in some way.

Have fun!