-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TODO #1
Comments
Detailed Architecture DescriptionPipelinestateDiagram-v2
[*] --> Pipeline: Start
state Pipeline {
[*] --> Controller0_NOT_PARALLEL
state Controller0_NOT_PARALLEL {
[*] --> Phase0_C0
state Phase0_C0 {
[*] --> Module0_P0_C0: Start Phase0
Module0_P0_C0 --> Module1_P0_C0
Module1_P0_C0 --> Module...n_P0_C0
Module...n_P0_C0 --> [*]: End Phase0
}
Phase0_C0 --> Phase1_C0
state Phase1_C0 {
[*] --> Module0_P1_C0: Start Phase1
Module0_P1_C0 --> Module1_P1_C0
Module1_P1_C0 --> Module...n_P1_C0
Module...n_P1_C0 --> [*]: End Phase1
}
Phase1_C0 --> Phase...n_C0
state Phase...n_C0 {
[*] --> Module0_P...n_C0: Start Phase...n
Module0_P...n_C0 --> Module1_P...n_C0
Module1_P...n_C0 --> Module...n_P...n_C0
Module...n_P...n_C0 --> [*]: End Phase...n
}
Phase...n_C0 --> [*]
}
Controller0_NOT_PARALLEL --> Controller1_NO_ORDER
state Controller1_NO_ORDER {
state fork_state_C0 <<fork>>
[*] --> fork_state_C0
fork_state_C0 --> Phase0_C1: 0
fork_state_C0 --> Phase0_C1: 1
fork_state_C0 --> Phase0_C1: ...n
state Phase0_C1 {
[*] --> Module0_P0_C1: Start Phase0
Module0_P0_C1 --> Module1_P0_C1
Module1_P0_C1 --> Module...n_P0_C1
Module...n_P0_C1 --> [*]: End Phase0
}
Phase0_C1 --> Phase1_C1: 0
Phase0_C1 --> Phase1_C1: 1
Phase0_C1 --> Phase1_C1: ...n
state Phase1_C1 {
[*] --> Module0_P1_C1: Start Phase1
Module0_P1_C1 --> Module1_P1_C1
Module1_P1_C1 --> Module...n_P1_C1
Module...n_P1_C1 --> [*]: End Phase1
}
Phase1_C1 --> Phase...n_C1: 0
Phase1_C1 --> Phase...n_C1: 1
Phase1_C1 --> Phase...n_C1: ...n
state Phase...n_C1 {
[*] --> Module0_P...n_C1: Start Phase...n
Module0_P...n_C1 --> Module1_P...n_C1
Module1_P...n_C1 --> Module...n_P...n_C1
Module...n_P...n_C1 --> [*]: End Phase...n
}
state join_state_C0 <<join>>
Phase...n_C1 --> join_state_C0: 0
Phase...n_C1 --> join_state_C0: 1
Phase...n_C1 --> join_state_C0: ...n
join_state_C0 --> [*]
}
Controller1_NO_ORDER --> Controller2_ORDER_BY_SEQUENCE
state Controller2_ORDER_BY_SEQUENCE {
[*] --> Add_Sequence_Number_C2
state fork_state_C1 <<fork>>
Add_Sequence_Number_C2 --> fork_state_C1
fork_state_C1 --> Phase0_C2: 0
fork_state_C1 --> Phase0_C2: 1
fork_state_C1 --> Phase0_C2: ...n
state Phase0_C2 {
[*] --> Module0_P0_C2: Start Phase0
Module0_P0_C2 --> Module1_P0_C2
Module1_P0_C2 --> Module...n_P0_C2
Module...n_P0_C2 --> [*]: End Phase0
}
Phase0_C2 --> Phase1_C2: 0
Phase0_C2 --> Phase1_C2: 1
Phase0_C2 --> Phase1_C2: ...n
state Phase1_C2 {
[*] --> Module0_P1_C2: Start Phase1
Module0_P1_C2 --> Module1_P1_C2
Module1_P1_C2 --> Module...n_P1_C2
Module...n_P1_C2 --> [*]: End Phase1
}
Phase1_C2 --> Phase...n_C2: 0
Phase1_C2 --> Phase...n_C2: 1
Phase1_C2 --> Phase...n_C2: ...n
state Phase...n_C2 {
[*] --> Module0_P...n_C2: Start Phase...n
Module0_P...n_C2 --> Module1_P...n_C2
Module1_P...n_C2 --> Module...n_P...n_C2
Module...n_P...n_C2 --> [*]: End Phase...n
}
state join_state_C1 <<join>>
Phase...n_C2 --> join_state_C1: 0
Phase...n_C2 --> join_state_C1: 1
Phase...n_C2 --> join_state_C1: ...n
join_state_C1 --> Order_By_Sequence_Number_C2
Order_By_Sequence_Number_C2 --> [*]
}
Controller2_ORDER_BY_SEQUENCE --> Controller3_FIRST_WINS
state Controller3_FIRST_WINS {
[*] --> Add_Sequence_Number_C3
state fork_state_C3 <<fork>>
Add_Sequence_Number_C3 --> fork_state_C3
fork_state_C3 --> Phase0_C3: 0
fork_state_C3 --> Phase0_C3: 1
fork_state_C3 --> Phase0_C3: ...n
state Phase0_C3 {
[*] --> Module0_P0_C3: Start Phase0
Module0_P0_C3 --> Module1_P0_C3
Module1_P0_C3 --> Module...n_P0_C3
Module...n_P0_C3 --> [*]: End Phase0
}
Phase0_C3 --> Phase1_C3: 0
Phase0_C3 --> Phase1_C3: 1
Phase0_C3 --> Phase1_C3: ...n
state Phase1_C3 {
[*] --> Module0_P1_C3: Start Phase1
Module0_P1_C3 --> Module1_P1_C3
Module1_P1_C3 --> Module...n_P1_C3
Module...n_P1_C3 --> [*]: End Phase1
}
Phase1_C3 --> Phase...n_C3: 0
Phase1_C3 --> Phase...n_C3: 1
Phase1_C3 --> Phase...n_C3: ...n
state Phase...n_C3 {
[*] --> Module0_P...n_C3: Start Phase...n
Module0_P...n_C3 --> Module1_P...n_C3
Module1_P...n_C3 --> Module...n_P...n_C3
Module...n_P...n_C3 --> [*]: End Phase...n
}
state join_state_C2 <<join>>
Phase...n_C3 --> join_state_C2: 0
Phase...n_C3 --> join_state_C2: 1
Phase...n_C3 --> join_state_C2: ...n
join_state_C2 --> Remove_Older_Then_Last_Sequence_Number_C3
Remove_Older_Then_Last_Sequence_Number_C3 --> [*]
}
}
Pipeline --> [*]: End
ModulesExecutionModuleExecutes code to modify or process the data. stateDiagram-v2
[*] --> ExecutionModule
state ExecutionModule {
[*] --> ExecuteCode
ExecuteCode --> [*]
}
ExecutionModule --> [*]
ConditionModuleEvaluates conditions and routes the data based on the result. stateDiagram-v2
[*] --> ConditionModule
state ConditionModule {
state if_state <<choice>>
[*] --> ConditionCode
ConditionCode --> if_state
if_state --> TrueModule: If condition is true
if_state --> FalseModule : If condition is false
TrueModule --> [*]
FalseModule --> [*]
}
ConditionModule --> [*]
CombinationModuleCombines multiple modules into one. stateDiagram-v2
[*] --> CombinationModule
state CombinationModule {
[*] --> Module0: Start Processing
state Module0 {
[*] --> ExecuteCode0
ExecuteCode0 --> [*]
}
Module0 --> Module1
state Module1 {
[*] --> ExecuteCode1
ExecuteCode1 --> [*]
}
Module1 --> Module...n
state Module...n {
[*] --> ExecuteCode...n
ExecuteCode...n --> [*]
}
Module...n --> [*]
}
CombinationModule --> [*]
ExternalModuleMoves the execution of a module to an external server. stateDiagram-v2
state Server0 {
state Pipeline0 {
state Controller0 {
state ExternalModule {
[*] --> StartExternalModule
EndExternalModule --> [*]
}
}
}
}
state Server1 {
Receiver --> Module
Module --> Sender
}
StartExternalModule --> Receiver
Sender --> EndExternalModule
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Issues
Future plans:
The text was updated successfully, but these errors were encountered: