combat
Likely, we could have created our own domain-specific language to express the variability points or use a popular scripting language like Ruby. The Aggregators republish aggregated data to be transformed by another set of transformers. In the Starbucks example, a two-phase commit would equate to waiting at the cashier with the receipt and the money on the table until the drink is finished. It is one possible implementation of a Splitter in a specific run-time environment.