Project Background

It has been widely recognized that traditional transaction models with ACID (Atomicity, Consistency, Isolation, and Durability) properties are generally not applicable to transactions which have a compound nature. This has led researchers both in industry and academy to create of a series of specialized models which cater for this type of transactions, each oriented towards a particular range of applications, according to the needs of the particular developer. The main problem with these models is that unlike traditional transaction models, where one model suited a very wide range of applications, these models fit only a narrow band of applications to the extent that in some cases, a completely customized model must be developed for an application. This is due to the fact that while ACID based models are based on a fixed workflow consisting of two parties, these models must cater for multiple parties, possibly resulting in a different workflow for each application, thus requiring a redesign of the model every time. At present, to redesign a model, a developer must have a solid knowledge in the field of transaction management, and apprehending all the concepts needed is a time consuming task. While standardization efforts have been made with workflow modeling languages such as BPEL, these still require the developer to learn the transaction oriented language syntax in order to be able to create adequate transaction models.

Introducing TransIT

TransIT is the result of an in depth research in the field of transaction modelling and management whose main goal is that of providing a standardised way in which transaction models may be expressed. TransIT addresses the issues mentioned above amongst others, by succeeding to provide a Meta Model which may be adopted by a developer to define a transaction model. The power of this Meta Model is in is simplicity, since it basically consists of a workflow modelling scripting language which consists of only a few syntactic keywords (not more than twelve). For more details please browse The Language section. The TransIT project also includes the TransIT Model Solution, which is a windows based API developed in C# (.NET 1.1), containing a transaction management system and runtime engine for scripts developed using the TransIT Meta Model. While the goal of this engine is merely to prove the practicality of the TransIT Meta Model idea, it can still be integrated into any .NET 1.1 based application and used as a light weight transaction management system. Ideally, with the help of the open source community, this API would expand into a fully fletched middleware transaction management system. More details in The API section.