Callback Pattern Workflow
This workflow models an async operation that notifies a callback when done.
This workflow models sending alerts via multiple channels.
user { # User
n1: circle label:"Start Notification Pattern"
n3: rectangle label:"Validate Notification Pattern conditions"
n5: rectangle label:"Record Notification Pattern outcome"
n7: circle label:"End Notification Pattern"
n1.handle(bottom) -> app.n2.handle(top)
n3.handle(bottom) -> app.n4.handle(top)
n5.handle(bottom) -> app.n6.handle(top) [label="Done"]
}
app { # App
n2: rectangle label:"Receive Notification Pattern event"
n4: rectangle label:"Execute Notification Pattern action"
n6: rectangle label:"Monitor Notification Pattern status"
n2.handle(right) -> user.n3.handle(left) [label="Next"]
n4.handle(right) -> user.n5.handle(left)
n6.handle(right) -> user.n7.handle(left)
}
This workflow models an async operation that notifies a callback when done.
This workflow models escalating issues to higher authority when needed.
This workflow models periodically checking status until work is done.
This workflow models taking periodic snapshots of important state.
This workflow models an operation that times out after a delay.