2

I'm trying to repeat a diagram using PlantUML. The diagram is like this:

enter image description here

I got stuck at trying to add more connections and make them look decent.

I started with object digram and came to something like this link to online diagram.

As soon as I start adding more connections, blocks break into chaos.

Then I tried component diagram. I started from this diagram and got to something like this in trying to add one more blocks and connections: link to online diagram.

The result is not satisfactory. I would appreciate any help in trying to add one more block to the diagram.

Vladimir Markiev
  • 263
  • 1
  • 13

1 Answers1

1

I always try to keep it simple, using --> (vertical) layout as much as possible. That is the optimal strategy for the GraphViz algorithm, which is the basis of PlantUML.

The result is different from your original, but I hope you find it readable:

@startuml
'hide empty description
'!pragma layout elk
skinparam rectangleBorderThickness 1
skinparam defaultTextAlignment center
skinparam lifelineStrategy solid
skinparam monochrome true
skinparam style strictuml
hide empty members
skinparam Linetype ortho

rectangle "Базовые модули" as base {

class "Базовые объекты" as baseobjects
class "Делопроизводство\n4.5" as takeoffice
class "Управление\nпроцессами" as workflow
class "Windows-клиент" as windowsclient

class "Управление\nдокументами" as documentmanagement
class "Конструктор\nсогласований" as approvaldesigner

class "Платформа" as platform
class "Служба\n фоновых операций" as worker

}

platform <-- baseobjects
platform <-- workflow
platform <-- takeoffice
platform <-- windowsclient
platform <-- documentmanagement
platform <-- approvaldesigner

windowsclient -up-> approvaldesigner
windowsclient -up-> documentmanagement
windowsclient -up-> baseobjects
windowsclient -up-> takeoffice
windowsclient -up-> workflow

worker <-- approvaldesigner
worker <-- baseobjects
@enduml

enter image description here

Fuhrmanator
  • 11,459
  • 6
  • 62
  • 111
  • Thanks! This is much more readable than what I managed to do. I tried to use longer arrows to manipulate the space between blocks, whcih didn't work out well. – Vladimir Markiev Oct 24 '22 at 06:40