Vertical arrangement problem

0 votes
asked Feb 2, 2019 in Question / help by ripanem (180 points)
reshown Feb 2, 2019 by ripanem

Here's use case diagram:

skinparam defaultTextAlignment center

left to right direction
skinparam packageStyle rectangle
actor "app" as a1
actor "db1" as a2
actor "db2" as a3
actor "db3" as a4
actor "db4" as a5
actor "db" as a6
actor "app1" as a7
actor "app2" as a8
actor "app3" as a9

rectangle "System"{

(f1) as uc1
(f2) as uc2
(f3) as uc3
(f4) as uc4
(f5) as uc5
(f6) as uc6
(f7) as uc7
(f8) as uc8
(f) as uc9
(f9) as uc10
(f10) as uc11
(f11) as uc12
(f12) as uc13
a1 --> uc1
a1 --> uc2
a1 --> uc3

uc2 -[hidden]> uc1
uc3 -[hidden]> uc2
uc2 <. uc3 : include
uc1 <. uc2 : include

a2 --> uc5
a3 --> uc6
a4 --> uc7
a5 --> uc8

uc6 -[hidden]> uc5
uc7 -[hidden]> uc6
uc6 <. uc7 : include
uc5 <. uc6 : include

a6 <|-- a2
a6 <|-- a3
a6 <|-- a4
a6 <|-- a5

uc1 --|> uc4
uc2 --|> uc4
uc3 --|> uc4

uc5 --|> uc9
uc6 --|> uc9
uc7 --|> uc9
uc8 --|> uc9

uc9 -[hidden]> uc4
uc4 -|> uc9

uc10 -[hidden]> uc9
uc10 -|> uc9

uc12 -[hidden]> uc11
uc13 -[hidden]> uc12
uc10 <|-- uc11
uc10 <|-- uc12

'Problem strings
uc11 <-- a7
uc12 <-- a8

uc13 -[hidden]> uc12
uc13 <-- a9

So, the problem is:

It is important for use case f1, f2, f3 to be placed in following order (vertical): f1 on top, then f2, then f3.

Everything works fine until i add connection with app1 or app2 (a7 or a8). After connection (one of these two) is added, vertical order of f1 - f3 crashes.

What's the reason for such strange layout?

Thanks in advance.

1 Answer

0 votes
answered Feb 3, 2019 by ripanem (180 points)
Found workaround: hidden line between uc7 and uc8.