Will Cappell

A member of the Gartner Blog Network

Will Cappell
Research Vice President
9 years at Gartner
29 years IT industry

Will Cappelli is a Gartner Research VP in the Enterprise Management area, focusing on automation, event correlation and fault analysis, management system architectures, and real-time infrastructure issues. ...Read Full Bio

Coverage Areas:

AI and IAM: BiGraphs could model user-defined transactions

by wcappell  |  March 30, 2012  |  4 Comments

The concept of a user-defined (or ‘business’) transaction is central to application performance monitoring (APM.) Not only is user-defined transaction profiling one of the five dimensions which Gartner takes as being essential to comprehensive APM solutions but most attempts to conceptualize application execution involve the idea that, in some sense or another, that execution is constituted by something called a transaction literally moving through infrastructural tiers or hopping from node to node until some task or set of tasks (usually database reads and/or writes) either are accomplished or the motion halts in failure.

Little attention has been given to articulating a formal, product-independent model of the user-defined transaction concept. Of course, there is the traditional database-oriented definition of a transaction as ‘logical unit of work’ – which, in turn, is interpreted as meaning a sequence (or better yet, a partial order) of database operations which take a database from one consistent state to the next. But this definition captures, at best, a part of the meaning required. First, it does not reflect the user’s perspective (i.e., it is more critical that the user see the set of operations constituting the transaction as contributing to a coherent action plan than as maintaining database consistency;) and second, it does not take into account the fact that transactions move in space and time and change their contents as they are moving while still retaining their identity. Both deficiencies are challenging but, in this post, I will focus on the second since it is far less frequently discussed.

Any formalism capturing the notion of a user defined transaction will be two-faced. In one single representation, it will have to exhibit both the transaction’s spatio-temporal and its semantic properties. A quick glance at vendor attempts to articulate what is going in their transaction profiling technology reveals that they focus either on modelling the semantics or on modelling the movements through space-time (more the former than the latter) and it is the failure to come to grips with both faces that makes their models difficult to abstract from the specifics of their technologies.

The failure is broadly ackonwledged but, until recently, all the mathematical models available for representing computational processes and process communication were essentially one dimensional. The Pi calculus, for example, provides excellent constructs for expressing how processes pass semantic states from one to another but does not have the resources to show how processes may be positioned respectively to one another within a spatially distributed infrastructure.

Things could be changing now, however. The late Robin Milner,(inventor, as it happens, of the Pi calculus,) developed the algebra of BiGraphs during the last decade of his life (see his ‘The Space and Motion of Communicating Agents’ for a comprehensive exposition.) Originally constructed to help model pervasive computing environments, BiGraphs are objects that carry two separate structures – one indicates their placement in an abstract space; the other indicates non-spatial links between elements within them and other BiGraphs, also resident in the abstract space. Like any good algebra, BiGraphs are also provided with operators that show how they can combine, change their placement in space, and modify their links.

Put another way, BiGraph appear to possess precisely the two-faced nature which I argued above was required to effectively model user-defined transactions. I would encourage the vendor community and standards bodies to take a good look at the BiGraph algebra for the purposes of modelling user defined transactions. It could be just the thing for turning what has, to date, been a fuzzy, metaphor-filled discussion into an exchange of rigorous ideas and, even, code.

4 Comments »

Category: Uncategorized     Tags: , ,

4 responses so far ↓

  • 1 William Louth   March 30, 2012 at 7:09 pm

    Very interesting post and ties in nicely with a vision we have of cloud computing…mobility of code and context from one service provider to another with each one in some way offering a PaaS environment…instead of application its activity.

    http://www.jinspired.com/site/visions-of-cloud-computing-paas-everywhere

    With regard to BTM I don’t believe the current centralized approach is scalable or sustainable in the long run. We can’t assume that all execution points will be instrumented by a single BTM vendor. We need to look to supply chain management for alternatives to the legacy tag-and-trace across such points. This has been solve in part at the network layer why do it so differently…even businesses don’t operate transactions and interactions in such manner. Activities must not only send back responses (or status updates) but signals and meter readings as the flow moves from one managed & metered execution environment to another.

    http://www.jinspired.com/wp-content/uploads/2012/02/MeteringInTheCloudVisualizationsPart1.pdf

  • 2 Wziernikowanie narzadow   April 12, 2012 at 4:21 am

    Very instructive and wonderful body structure of subject material , now that’s user pleasant (:

  • 3 oczyszczanie organizmu   April 12, 2012 at 9:17 pm

    WONDERFUL Post.thanks for share..extra wait .. …

  • 4 Dzieci   April 12, 2012 at 11:19 pm

    Just wanna remark that you have a very nice website , I enjoy the style it really stands out.