Workflow as as Service. WaaS? Well, why not?

WaaS is basically what Amazon has just released with their Amazon Simple Workflow (SWF).  From the blog post
This new service gives you the ability to build and run distributed, fault-tolerant applications that span multiple systems (cloud-based, on-premise, or both). Amazon Simple Workflow coordinates the flow of synchronous or asynchronous tasks (logical application steps) so that you can focus on your business and your application instead of having to worry about the infrastructure
Picture a business process which consists of a bunch of individual tasks that need to be done in some specific sequence based on various inputs.  e.g.,  
  • When an order comes in, check to see if we have inventory. 
  • If we do, fill the order.
  • If we don't, put the order in the "back-ordered" pile.
Each of these tasks is called an Action.  A given Action is performed by a Worker. The whole business process is called a Workflow.  And the thingy doing all the decision making is called a Decider.
As Amazon puts it, you can use their service to assign Actions to Workers, store these Actions in Queues waiting for available workers, track the progress of Workers, blah, blah, blah
All fair and good, and pretty standard for Workflow systems.  What makes this particularly compelling is two simple yet remarkable features
  1. You can write your Workers and Deciders in your language of choice.  No need to be stuck with some goofy workflow language that is forced on you (yes, I'm looking at all of you out there)
  2. You can auto-scale your workers and deciders through AWS.
Simple enough right?  Except that what it means is that you now have the mechanism to automagically grow/shrink your workflow based on inputs pretty much the way you do the rest of your infrastructure (assuming that you are already cloud-based...)

Nifty.  Remarkably nifty.  And game-changing for sure...

Comments

Popular posts from this blog

Cannonball Tree!