Skip to main content

Action Oriented Workflow : Maximize your Value.

As I approached the problem of creating a distributed web application platform I found it necessary to construct an efficient workflow and business process foundation that would enable any applications built on the platform to enable fluid collaboration and interaction between the agents responsible for designing, building, maintaining and using the created applications. Around 2004 as the critical aspects of the architecture were being finished I began to think about how to build this workflow tool. It turns out that choices I'd made in the architecture pushed me to think about the concept of "action" in the context of a business application and business process workflows.

Action is all that matters

A common business consists of a group of people separated into specific roles and responsibilities over business related objects, products or services working together to serve the business goals with regard to those objects, products or services. We can look at each function required to prosecute these aims as an action that needs to be completed by the people that serve as prosecuting agents for those actions. This is true in any business, a real estate broker is responsible for actions such as creating listings for homes that she is trying to sell or updating listing reports for homes that have sold.

The broker also interacts with clients external to her business in the form of the home owners and prospective home buyers, toward this end she uses various computer based tools to manage each of the sub actions that she must perform to ensure the function is achieved. The business provides her with the tools necessary to ensure that these actions are performed as quickly as possible so that the business can make profit and hopefully expand. However, the fact that the broker is performing the actions is not really relevant to the business.

If we could imagine the business as an entity that is dispatching action requests to brokers, what is most important is how quickly the actions are done and not who is doing them. There is no real reason for the agent that executes the action to be a particular person other than that the agent is efficient in performing it. Security is important as well in many cases but for many actions even that is less important than that the action be completed with alacrity. Also unimportant from the business perspective is the actual location of the agent.

The requirement that they perform a required business action in an office is a silly one from the perspective of the business which just wants the action done. Where it is done is irrelevant. When we look at business from the perspective of actions we see a radical way in which we can design a system to ensure expedient execution of dispatched business actions while enabling agents to maximize the use of their internal value.

What is your intrinsic value?

A few years ago I had a discussion with my father over the value that I felt I possessed inherently and that I had a right to attempt to be paid in any job that I worked, for all the value I brought to the table, weather or not I was actually using that value on the job. He thought this was absurd, to him as to most people, an employer pays employees to perform a specific set of functions and the employee should expect to be paid for what they are doing for the employer and no more.

I saw that as a horrible waste of the intrinsic value of a person that defines all the things that they can do but are not being paid to do. As a result in my professional career I was always trying to maximize my value by doing more than I was "paid to do" to use more of my value in the organization and over time through raises be paid more for it. I saw this as being unfair to the worker, here they are forced to commute (time for which they are not paid) to a work location, where they will be tasked periodically to perform a specific set of actions for which they've garnered expertise. For the next 8 hours or so all their other talents lay dormant and uncompensated, I saw this waste as a huge problem.

From the perspective of the employee...the need to commute is a major hassle, the need to be silo-ed in an office a type of work prison where by being contained they can't be with their children, they can't be on the beach, they can't be doing other things they would rather be doing. The answer to this problem was simple, if an employee is given freedom to do their work from any location then the business would be potentially improving the employees outlook on work as being labor in a temporary prison and see it as a hobby that returns money. The employer now can evaluate across a number of employees performing necessary work actions and dispatch work to them.

In the real world most businesses that are not international have a day/night cycle. During the day the business is active since the working agents in the local region are active and at night the business effectively goes to sleep just like all it's worker agents. Allowing a global pool of potential agents to commit actions enables the business to have a 24 hour operations cycle. If they could call on a pool of potential agents all over the globe they would be guaranteed a number of individuals that can perform actions on behalf of the business. Also, the business would no longer have to house workers in massive buildings and offices, they wouldn't have to pay for the lighting, gas, HVAC costs to keep these buildings available for the periodic workforce that must gather in them.

The costs savings that would attend removing these requirements is a significant chunk of capital expenditures for all modern businesses. On the employee or worker side of the equation, these agents would be performing work reciprocally on their free time or when they receive an action from the business. If different businesses in different fields were able to dispatch work this way...agents could opt to perform work across their intrinsic value map instead of restricted to one particular area of expertise. This would allow the agents to maximize their value by allowing them to derive profit from more of their talents. Thus both the employer (business) and the employee (action performing agents) are most efficient when the former is able to select from a global pool of agents to perform needed work actions and the latter are able to select work actions that are encompassed by their entire value map.

Implicit selection of efficient workers

Probably the most interesting aspect of being able to decouple the "actions" that businesses want done from the "agents" that perform them is the ability to map the interactions between action dispatch and action execution and to record aspects of the interaction, who performed it and how fast they performed it.

 This "action delta" as I call it, allows each "action" requested on business objects to be tied to agents that have performed the action efficiently in the past. Enough samples of this performance can then be used to route new actions to agents who have shown efficiency in the past thus allowing the normal dispatch and completion of actions across the pool of agents to teach the business which agents are most efficient.

This is a very important learning process that then allows the business to focus on the efficient agents and prune action requests to inefficient agents. Thus those individuals in the agent space who have acquired great skill across their value map can derive payment for that skill as they perform actions efficiently. This would make possible a true meritocratic management process that is free of cronyism or nepotism in selecting which agents are granted more responsibility. Indirectly, being good at what one is performing for the business grants that person more responsibility (in the form of more action requests). I called this action focused system of task execution Action Oriented Workflow (AOW).

The Action Oriented Workflow paradigm is fully implemented as described above in the AgilEntity framework, it enables businesses to find workers to perform actions from a potential global pool, to identify the best workers over time as they perform actions without requiring a set of hierarchical human management layers (which eliminates another major expense in many large businesses) and finally to reward those workers with action requests and compensation for being good at what they do. On the agent side, it allows the agents to opt into work by performing actions submitted to them, it also allows them to opt out of work by delegating action requests forward to other agents. Thus allowing agents to work on their own schedule free of the hegemony of time, without degrading their efficiency deltas for the actions that they receive. It also allows them to work from any where, using any device to connect to the business and perform the action.

I truly believe that systems of the type that I've invented are the future of the work force, in a post I wrote originally in 2006 and posted here in 2008 I described the future where a telepresent workforce reshapes how business will be done. The age of what I call hyper efficient businesses is upon us with tools like AgilEntity using the action oriented workflow paradigm. They allow employers to emancipate their workforce and it allows employees to be free of work and maximize the use of their intrinsic value space. Popular writer and technology thinker Douglas Rushkoff recently started talking about the need for us to redefine how we think about "jobs" and I agree with him 100%, I designed AgilEntity to do just that so I am glad that others are finally starting to think in a new way.



Popular posts from this blog

On the idea of "world wide mush" resulting from "open" development models

A recent article posted in the Wall Street Journal posits that the collectivization of various types of goods or services created by the internet is long term a damaging trend for human societies.

I think that the author misses truths that have been in place that show that collectivization is not a process that started with the internet but has been with us since we started inventing things.

It seems that Mr. Lanier is not properly defining the contexts under which different problems can benefit or suffer from collectivization. He speaks in general terms of the loss of the potential for creators to extract profit from their work but misses that this is and was true of human civilization since we first picked up a rock to use as a crude hammer. New things make old things obsolete and people MUST adapt to what is displaced (be it a former human performance of that task or use of an older product) so as to main…

Engineers versus Programmers

I have found as more non formally trained people enter the coding space, the quality of code that results varies in an interesting way.

The formalities of learning to code in a structured course at University involve often strong focus on "correctness" and efficiency in the form of big O representations for the algorithms created.

Much less focus tends to be placed on what I'll call practical programming, which is the type of code that engineers (note I didn't use "programmers" on purpose) must learn to write.

Programmers are what Universities create, students that can take a defined development environment and within in write an algorithm for computing some sequence or traversing a tree or encoding and decoding a string. Efficiency and invariant rules are guiding development missions. Execution time for creating the solution is often a week or more depending on the professor and their style of teaching code and giving out problems. This type of coding is devo…

Live Coding Exercises: How NOT to hire potentially Brilliant Engineers.

I've intimated this view before but, I abhor "live coding" exercises for engineering interviews and will never have them as part of any interview process I conduct. They are simply unrealistic to real world engineering in every possible way, they only test familiarity (or luck) with a tiny subset of solution methods to a specif subset of problems...that you either "nail" or get spectacularly wrong depending on who is observing you.

They are mostly entirely unfair to the candidate on top of the pressure of having a gun under them while coding, only in the most extreme cases is coding under the gun and that's just competitions where the code is far from real world engineering why test for general coding ability with such tests?? Stupid.

I posit, it is significantly more effective to see examples of a candidates finished working code in the form of a project or projects they've created. How long it took some one to get some uber algorithm work…