-
Notifications
You must be signed in to change notification settings - Fork 0
/
clean_mixer.plantuml
125 lines (110 loc) · 3.22 KB
/
clean_mixer.plantuml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
@startuml
skinparam backgroundColor<<dep>> Grey
skinparam legend {
FontSize 20
}
legend bottom left
I = Instability = out / (in + out)
S = Stability = 1 - I
A = Abstractness = behaviours / total_modules
D = Distance = |A+I-1|
Tf = Total files
Pf = Public files
Ain = Abstract in
Aout = Abstract out
endlegend
package "services" {
rectangle TicketPriorityDispatcher [ =TicketPriorityDispatcher
In=2 Out=0 S=1.0 (I=0.0)
A=1.0 D=0.0 (0.0σ)
Tf=1 Pf=1 Ain=2 Aout=0 ]
rectangle TicketPriorityDispatcherImpl [ =TicketPriorityDispatcherImpl
In=0 Out=1 S=0.0 (I=1.0)
A=0.0 D=0.0 (0.0σ)
Tf=1 Pf=0 Ain=0 Aout=1 ]
}
package "entrypoint" {
rectangle TicketingSystem [ =TicketingSystem
In=0 Out=1 S=0.0 (I=1.0)
A=0.0 D=0.0 (0.0σ)
Tf=1 Pf=0 Ain=0 Aout=0 ]
}
package "entities" {
rectangle Ticket [ =Ticket
In=3 Out=0 S=1.0 (I=0.0)
A=0.0 D=1.0 (2.75σ)
Tf=1 Pf=1 Ain=0 Aout=0 ]
}
package "repositories" {
rectangle TicketRepo [ =TicketRepo
In=6 Out=0 S=1.0 (I=0.0)
A=1.0 D=0.0 (0.0σ)
Tf=1 Pf=1 Ain=6 Aout=0 ]
rectangle TicketSchema [ =TicketSchema
In=1 Out=1 S=0.5 (I=0.5)
A=0.0 D=0.5 (1.38σ)
Tf=1 Pf=1 Ain=0 Aout=0 ]
rectangle TicketRepoImpl [ =TicketRepoImpl
In=0 Out=3 S=0.0 (I=1.0)
A=0.0 D=0.0 (0.0σ)
Tf=1 Pf=0 Ain=0 Aout=1 ]
}
package "use_cases" {
rectangle CreatePriorityTicket [ =CreatePriorityTicket
In=1 Out=2 S=0.33 (I=0.67)
A=0.0 D=0.33 (0.92σ)
Tf=1 Pf=1 Ain=0 Aout=1 ]
rectangle CallNextTicket [ =CallNextTicket
In=1 Out=2 S=0.33 (I=0.67)
A=0.0 D=0.33 (0.92σ)
Tf=1 Pf=1 Ain=0 Aout=2 ]
rectangle CallTicketByCode [ =CallTicketByCode
In=1 Out=1 S=0.5 (I=0.5)
A=0.0 D=0.5 (1.38σ)
Tf=1 Pf=1 Ain=0 Aout=1 ]
rectangle GetLastCalledTickets [ =GetLastCalledTickets
In=1 Out=1 S=0.5 (I=0.5)
A=0.0 D=0.5 (1.38σ)
Tf=1 Pf=1 Ain=0 Aout=1 ]
rectangle CreateCommonTicket [ =CreateCommonTicket
In=1 Out=2 S=0.33 (I=0.67)
A=0.0 D=0.33 (0.92σ)
Tf=1 Pf=1 Ain=0 Aout=1 ]
}
package "adapters" {
rectangle TicketController [ =TicketController
In=1 Out=6 S=0.14 (I=0.86)
A=0.0 D=0.14 (0.39σ)
Tf=1 Pf=1 Ain=0 Aout=0 ]
rectangle TicketView [ =TicketView
In=1 Out=0 S=1.0 (I=0.0)
A=0.0 D=1.0 (2.75σ)
Tf=1 Pf=1 Ain=0 Aout=0 ]
}
package "persistence" {
rectangle SqliteRepo [ =SqliteRepo
In=1 Out=0 S=1.0 (I=0.0)
A=0.0 D=1.0 (2.75σ)
Tf=1 Pf=1 Ain=0 Aout=0 ]
}
[TicketingSystem] -[#black]-> [TicketController]
[CreatePriorityTicket] -[#black]-> [TicketRepo]
[CreatePriorityTicket] -[#black]-> [Ticket]
[CallNextTicket] -[#black]-> [TicketPriorityDispatcher]
[CallNextTicket] -[#black]-> [TicketRepo]
[CallTicketByCode] -[#black]-> [TicketRepo]
[GetLastCalledTickets] -[#black]-> [TicketRepo]
[CreateCommonTicket] -[#black]-> [TicketRepo]
[CreateCommonTicket] -[#black]-> [Ticket]
[TicketController] -[#black]-> [TicketView]
[TicketController] -[#black]-> [CreateCommonTicket]
[TicketController] -[#black]-> [GetLastCalledTickets]
[TicketController] -[#black]-> [CallTicketByCode]
[TicketController] -[#black]-> [CallNextTicket]
[TicketController] -[#black]-> [CreatePriorityTicket]
[TicketSchema] -[#black]-> [Ticket]
[TicketRepoImpl] -[#black]-> [SqliteRepo]
[TicketRepoImpl] -[#black]-> [TicketSchema]
[TicketRepoImpl] -[#black]-> [TicketRepo]
[TicketPriorityDispatcherImpl] -[#black]-> [TicketPriorityDispatcher]
@enduml