The way we have created IT systems over the years has been very linear with each individual component being statically configured. If a human makes an error in any one of the many configurations, then the whole system breaks down. Over the years, IT systems have become increasingly complex with multiple layers of abstraction and virtualization making it difficult to enforce stability and gain scalability. Promise theory provides a new way to think about how IT systems rely on each other to form an entire system that businesses can depend. This article will cover the foundation concept of promise theory and give examples of how it is used.
Introduction to Promise Theory:
As we all know, a promise is a commitment often made between people to do or not do something. If you check Wikipedia, you will see this simple definition "Promise theory is a model of voluntary cooperation between individual, autonomous actors or agents who publish their intentions to one another in the form of promises."
In promise theory, promises are the statements of a request of a desired behavior to be performed by an agent. Promises are made between agents and those promises are not transient or transferable. The agent is asked to fulfil a promise which is a broadcast declaration of intent that contains a body, a quality/quantity, trust, and other characteristics of the desired state.
Accepting the promise is the easy part, keeping the promise is the hard part. One distinction that we should keep in mind is that "the promise" is very different than "the obligation". Intention is also different than a promise; a commitment is actually a subset of intentions and intention is a promise that has been scoped and documented and broadcast to the set of agents. The set of promises is essentially the executable documentation of intent. The concept is that intent leads to distributed build and repair system which will provide stability and eventually freedom of deployment.
Certainly trust is essential in this cooperative model. Just like with people, trust increases as agents build up a history of reliability in their fulfillment of promises. The historical record of kept promises give an indication of how future promises will be negotiated.
The use of promise theory can create an obligation-based IT management system that creates policy-based configurations. We are often concerned about how we really know the configurations of all our IT infrastructure at any given time. Imagine how all the autonomous independent elements in an IT environment could be talking with one another in a loosely coupled configuration. Through promises, they form expectations of each other's behavior for cooperation and building a complete end-to-end working system.
Sign up for CIO Asia eNewsletters.