Monday, June 21, 2004

Beyond Binary Logic

Traditionally, business information systems have operated with a binary boolean logic. For example, some business processing may depend on determining one of two alternative states: e.g. "customer-on-file" or "customer-not-known".

Open distributed processing (ODP), on which SOA is based, represented a radical challenge to this binary logic – a challenge which the IS world has still not properly embraced. With remote data, there is always a third alternative state: e.g. "customer-file-unavailable".

In distributed systems, perhaps the most obvious reason for the third alternative state was initially the unreliability of telecommunications links. Although the internet acts as a fairly robust medium to link two or more nodes, it also acts as a transmission channel for malware that can take out individual nodes for extended periods. Over the years, system designers have thought of ingenious ways to handle this so-called exception.

But ODP doesn’t just involve geographic distribution – it also distributes over heterogeneous technologies and systems, with possible ontological, semantic and pragmatic impedance.

Trust is an important example. Many systems are designed to discriminate definitively into those individuals (customers, passengers, business partners) that can be trusted, and those that cannot. Mechanisms such as single sign-on and hierarchical trust are called upon to impose binary notions of trust across multiple organizations. Binary trust attempts to suppress the possibility of doubt as to whether someone can/should be trusted.

But mechanisms for trust and security are always vulnerable to false positives (Type 2 errors) and false negatives (Type 1 errors). A system that properly manages these false positives and false negatives entails reintroducing the possibility of doubt. We should generally adopt a critical stance in relation to simplistic binary trust mechanisms (Type 3 errors).

Thus in the open distributed world of SOA, information may always be provisional rather than absolute. For certain purposes, it may be appropriate to construct (impose) a context where closure is viable. With tongue firmly in cheek, we call these Fortresses of Certainty. Outside these fortresses is the land of Maybe, where SOA plays free.

See also Knowledge and Attenuation

No comments: