Here is a new architecture diagram with some updates on the glossary and on descriptions of architecture elements. I also fix some warning logs. Closes-Bug: #1657405 Change-Id: I442082d702fc8667e9397c090da51ca1ead5d86e
154 lines
3.5 KiB
Plaintext
154 lines
3.5 KiB
Plaintext
@startuml
|
|
!define table(x) class x << (T,#FFAAAA) >>
|
|
!define primary_key(x) <u>x</u>
|
|
!define foreign_key(x) <i><u>x</u></i>
|
|
hide methods
|
|
hide stereotypes
|
|
|
|
table(goals) {
|
|
primary_key(id: Integer)
|
|
uuid : String[36]
|
|
name : String[63]
|
|
display_name : String[63]
|
|
efficacy_specification : JSONEncodedList, nullable
|
|
|
|
created_at : DateTime
|
|
updated_at : DateTime
|
|
deleted_at : DateTime
|
|
deleted : Integer
|
|
}
|
|
|
|
|
|
table(strategies) {
|
|
primary_key(id: Integer)
|
|
foreign_key(goal_id : Integer)
|
|
uuid : String[36]
|
|
name : String[63]
|
|
display_name : String[63]
|
|
parameters_spec : JSONEncodedDict, nullable
|
|
|
|
created_at : DateTime
|
|
updated_at : DateTime
|
|
deleted_at : DateTime
|
|
deleted : Integer
|
|
}
|
|
|
|
|
|
table(audit_templates) {
|
|
primary_key(id: Integer)
|
|
foreign_key("goal_id : Integer")
|
|
foreign_key("strategy_id : Integer, nullable")
|
|
uuid : String[36]
|
|
name : String[63], nullable
|
|
description : String[255], nullable
|
|
scope : JSONEncodedList
|
|
|
|
created_at : DateTime
|
|
updated_at : DateTime
|
|
deleted_at : DateTime
|
|
deleted : Integer
|
|
}
|
|
|
|
|
|
table(audits) {
|
|
primary_key(id: Integer)
|
|
foreign_key("goal_id : Integer")
|
|
foreign_key("strategy_id : Integer, nullable")
|
|
uuid : String[36]
|
|
audit_type : String[20]
|
|
state : String[20], nullable
|
|
interval : Integer, nullable
|
|
parameters : JSONEncodedDict, nullable
|
|
scope : JSONEncodedList, nullable
|
|
auto_trigger: Boolean
|
|
|
|
created_at : DateTime
|
|
updated_at : DateTime
|
|
deleted_at : DateTime
|
|
deleted : Integer
|
|
}
|
|
|
|
|
|
table(action_plans) {
|
|
primary_key(id: Integer)
|
|
foreign_key("audit_id : Integer, nullable")
|
|
foreign_key("strategy_id : Integer")
|
|
uuid : String[36]
|
|
state : String[20], nullable
|
|
global_efficacy : JSONEncodedDict, nullable
|
|
|
|
created_at : DateTime
|
|
updated_at : DateTime
|
|
deleted_at : DateTime
|
|
deleted : Integer
|
|
}
|
|
|
|
|
|
table(actions) {
|
|
primary_key(id: Integer)
|
|
foreign_key("action_plan_id : Integer")
|
|
uuid : String[36]
|
|
action_type : String[255]
|
|
input_parameters : JSONEncodedDict, nullable
|
|
state : String[20], nullable
|
|
parents : JSONEncodedList, nullable
|
|
|
|
created_at : DateTime
|
|
updated_at : DateTime
|
|
deleted_at : DateTime
|
|
deleted : Integer
|
|
}
|
|
|
|
|
|
table(efficacy_indicators) {
|
|
primary_key(id: Integer)
|
|
foreign_key("action_plan_id : Integer")
|
|
uuid : String[36]
|
|
name : String[63]
|
|
description : String[255], nullable
|
|
unit : String[63], nullable
|
|
value : Numeric
|
|
|
|
created_at : DateTime
|
|
updated_at : DateTime
|
|
deleted_at : DateTime
|
|
deleted : Integer
|
|
}
|
|
|
|
table(scoring_engines) {
|
|
primary_key(id: Integer)
|
|
uuid : String[36]
|
|
name : String[63]
|
|
description : String[255], nullable
|
|
metainfo : Text, nullable
|
|
|
|
created_at : DateTime
|
|
updated_at : DateTime
|
|
deleted_at : DateTime
|
|
deleted : Integer
|
|
}
|
|
|
|
table(service) {
|
|
primary_key(id: Integer)
|
|
name: String[255]
|
|
host: String[255]
|
|
last_seen_up: DateTime
|
|
|
|
created_at : DateTime
|
|
updated_at : DateTime
|
|
deleted_at : DateTime
|
|
deleted : Integer
|
|
}
|
|
|
|
"goals" <.. "strategies" : Foreign Key
|
|
"goals" <.. "audit_templates" : Foreign Key
|
|
"strategies" <.. "audit_templates" : Foreign Key
|
|
"goals" <.. "audits" : Foreign Key
|
|
"strategies" <.. "audits" : Foreign Key
|
|
"action_plans" <.. "actions" : Foreign Key
|
|
"action_plans" <.. "efficacy_indicators" : Foreign Key
|
|
"strategies" <.. "action_plans" : Foreign Key
|
|
"audits" <.. "action_plans" : Foreign Key
|
|
|
|
@enduml
|