Enterprise Coordination

The main activity of 21st century enterprises is computation—work that can be performed by either individual (human or software) agents or composite agents (units).

The Enterprise Engineering Framework (EEF) defines two clear structures that are used to engineer the entire enterprise. First, the EEF views the unit as a network of individual human and artificial agents, where the latter may be implemented based on the principles of a service-oriented architecture.

Figure 4.1. The unit is a network of individual agents.

Second, the EEF views the enterprise as a network of units.

Figure 4.2. The enterprise is a network of units.

Enterprise Coordination

Needless to say, computational activities of units within the enterprise, as well as individual agents within the units, have to be coordinated.

Although the currently popular coordination approach—business process management (BPM)—can be successfully used for well-defined production workflows and basic administrative processes, it has proven to be ineffective for knowledge-based work.

The EEF proposes worknet management (WM) as an approach to coordinating units' computational activities at the enterprise level. WM can also be used along with BPM for coordinating individual agents at the unit level.

Worknet Management

There are currently no commercial or open source products available on the market that support worknet management. Nevertheless, WM may be relatively easily implemented and supported within the enterprise based on the following principles:

  1. 1Worknet is a simple and flexible expectation-based and event-driven enterprise coordination mechanism.
  2. 2A worknet is owned by one and only one unit.
  3. 3A worknet's definition is simply a collection of (start, intermediate, and end) events.
  4. 4Work items performed by units (tasks, processes, or intra-unit worknets) represent the transitions between the events.
  5. 5Units are expected to subscribe to the appropriate events; upon the receipt of a notification, they (optionally) perform some work and in turn publish an event.
  6. 6At runtime, a worknet may activate various combinations of units.
  7. 7A worknet instance is uniquely defined by the combination of its design-time ID (e.g. order-to-cash) and run-time ID. Every published message must reference this ID combination.
  8. 8A coordination agent, which is a part of the owner unit, tracks the progress of the worknet execution and is able to visualize it at any time.
  9. 9Events nodes and transitions between them are the only visible worknet elements. The transitions specify the name of the unit that drives the worknet to the next state and (optionally) the name of the corresponding work item.
  10. 10Actions, decisions, data, and the respective traditional notation elements—such as action nodes, decision nodes, forks, etc.—are hidden from the coordination agent and cannot be visualized.

Figure 4.3 shows an abstract enterprise worknet, which begins with a start event, activates seven enterprise units (A, B, C, D, E, F, and G), produces 10 intermediate events, and finishes with four end events.

Figure 4.3. An abstract enterprise worknet.

Unlike traditional command-and-control coordination techniques, worknet management is based on the expectations related to the responsibilities assigned to the enterprise units. It delegates decision-making power to the units, which still operate under the constraints (limits and boundary conditions) imposed by the executive units, and lets them drive worknets to the completion, at the same time successfully hiding operational complexity from the coordinator.


Key Points








Further Insights