A B Testing Workflow
patterns
This workflow models comparing two versions to see which performs better.
patterns
This workflow models a synchronous request that waits for a reply.
user { # User
n1: circle label:"Start Request Reply"
n3: rectangle label:"Validate Request Reply conditions"
n5: rectangle label:"Record Request Reply outcome"
n7: circle label:"End Request Reply"
n1.handle(bottom) -> app.n2.handle(top) [label="Success"]
n3.handle(bottom) -> app.n4.handle(top)
n5.handle(bottom) -> app.n6.handle(top)
}
app { # App
n2: rectangle label:"Receive Request Reply event"
n4: rectangle label:"Execute Request Reply action"
n6: diamond label:"Monitor Request Reply status"
n2.handle(right) -> user.n3.handle(left)
n4.handle(right) -> user.n5.handle(left) [label="Valid"]
n6.handle(left) -> user.n5.handle(left) [label="Retry/Rejected"]
n6.handle(right) -> user.n7.handle(bottom)
}
patterns
This workflow models comparing two versions to see which performs better.
patterns
This workflow models checking user permissions before actions run.
patterns
This workflow models an async operation that notifies a callback when done.
patterns
This workflow models keeping large payloads external and only passing references.
patterns
This workflow models rolling back work when a later step fails.