Introduction
The development of e-commerce in the world business sector has originated the evolution of the related technologies and practices, associated with the payment, shipping, customer care etc. Long Running Transactions (LRT) are regarded to be the important building block within the business applications. In order to explain the origin of the LRT definition, there is strong necessity to explain the necessity and importance of transactions in business. Originally, transactions are regarded to be the integral units of business, which generally involves one or several resources. In accordance with the classification the transactions may be completed or uncompleted. The main concept of the transactions is that the resources, which are involved are regarded to be locked. In the light of this perspective transactions are regarded to be the implementations of the distant payment system. The main concept of the Long Running Transactions is to avoid such locking while making an order or a purchase. The system is based on the principles of addressing PC databases in order to avoid locks on non-local resources. In the case of failures the compensations are presupposed, as in distinction with the traditional transaction systems the LRTs provide an opportunity of checking and following the flows, thus, there is a strong opportunity to grant compensation if needed. The basis of the LTRs is in the ACID principle (Atomicity, Consistency, Isolation and Durability). In order to grant the stability of the system, a coordinator is presupposed for completing or aborting transactions. The principle is particularly applied in e-commerce, as it is emphasized in Laneve and Zavattaro (2005, p. 290):
In contrast to rollback in ACID transactions, compensation restores the original state, or an equivalent, and is business-specific. The compensating action for making a hotel reservation is canceling that reservation, possibly with a penalty. Increasingly, Web services are key additions to business applications and third-party integration. A complex business process that accesses multiple Web services needs a reliable mechanism for stringing together the various Web services. This ensures that no part of the business process gets uncoordinated with the other parts.
Thus, the aim of the paper is to review the principles of LRTs in the sphere of e-commerce, making a particular accent on the issues of survivability.
Literature Review. Overview and the matters of Survivability
Originally, the LTRs and transactions in general require the division of the activities into hierarchies in order to provide the necessary control level for the execution of the activities, which involve business performance and transaction of the resources. As Butler, Ferreira and Yong (2001) emphasized, the behavior of the transaction generally depends on the matters of the data, which is passes between the participants of thee transaction process, and often entails the procedures of data manipulation. It should be stated that the strong necessity to deal with faults, which arise during the partnership, is the integral part of the transaction process and the survivability issues, as faults and failures are the central factors, which influence the survivability of the Long Running Transaction systems, as these faults may arise at any stage. Thus, the system of coordinators is obliges to check, locate and prevent the possible faults. As Butler, Ferreira and Yong (2001, p. 4) state:
In standard atomic transactions, such as database transactions, rollback mechanisms are used to protect against faults by providing all or nothing atomicity for transactions. In so-called long running business transactions rollback is not always possible because parts of a transaction will have been committed or because parts of a transaction (e.g., communications with external agents) are inherently impossible to undo. In such cases, compensation can be used as a way of dealing with faults.
In accordance with Fischer and Majumdar (2007) one of the key matters of survivability, which is based on the principles of control is the existence of the flow composition and orchestration languages. The role of these languages is explained by the strong necessity to describe the business process in details, as well as the description of the representation of the real world entities in the context of their relations. In spite of the fact that this process is complex enough, the survivability depends on the properly structured description, and, the fact is that the complexity is decreased by the means of various views from the static and dynamic perspectives. As Kuhne, Thranert and Speck (2005, p. 31) stated in their research, these languages and processes are oriented at international standards in the domain of the object-oriented modeling, which are compiled in Unified Modeling Language (UML):
For high-level representations of business processes, especially activity diagrams are suited. The UML has shortcomings in the representation of complex organizational structures and role concepts. A widespread alternative is given by the ARIS method, in particular by EPC diagrams. For both, UML and ARIS, domain-specific extensions are available.
These alternatives are regarded to be the issues of security, as the more variants are represented in the system – the more secure the allover process will be. The cornerstone of the survivability of the LRT systems is the transaction security. The principles of this security generally enter into force during the online purchases, as the confidentiality and security of the transaction channels should be granted. In the light of this perspective there is strong necessity to emphasize that small-scale sellers, which operate in the sphere of e-commerce should rely on the security measures in order to survive the competence, otherwise the business failure is granted. As Chessell, Vines, Griffin et. al (2002) emphasize, most small-scale entrepreneurs neglect the security rules, thus, preventing their own business from survival and development. They also emphasize (p. 750) the following:
They seem to be ignorant of the fact that this Negligence may cost them dearer in a long run as such security issues lessens the Customer Loyalty. The most significant aspect of operating business online is one does business with strangers. Very often customers have to complete transaction without exchange a single word with the seller before making purchases. So here, things can be concluded as “First Impression Lasts Long”.
When LRT is Used. Challenges
Long Running Transactions principles are becoming more and more popular in the contemporary world of e-commerce. Originally, entrepreneurs resort to LRTs when there is necessity to accept credit cards through on-line. Thus, there is strong necessity to unite these two issues and review the sphere of application and possible challenges jointly, as one is indispensable from the other. The principles and scheme of such transactions is the following: when the transaction is performed, the necessary information with the account data is transferred for transactional approval through online channels. Generally, such information is seriously restricted to individuals and businesses involved, nevertheless, the participants of the transaction process should be ensured in the security and privacy of the confidential information, consequently, some prefer off line sharing of this information, and dealing off line in order to prevent information theft. Nevertheless, sooner or later they will have to resort to on line sharing of such information (Moschoyiannis, Razavi, Razavi and Krause, 2008). Moreover, it is emphasized that the on-line payment transactions may be monitored thoroughly, as the privacy of the payment information is the main reason why people refuse from on-line sharing. Thus, the following statement should be emphasized on the matters of security:
Immediately private information can be available for hackers and this would certainly put your business and company reputation in trouble. This information is transmitted across hackers’ networks and opens up the gateway to several types of risks that can be fall into the wrong hands. If you store your user ids and passwords on your computer, they are especially vulnerable to security breaches and easy to steal. A meager computer security loophole can open up the entrance to the password files, and hackers can extract and copy this information without your knowledge.
In the light of the fact that trust for the on-line payment services is growing slowly Papazoglou (2003) claims that the best way to ensure this informational security is to use the common sense and reputed company with reliable web-site. Papazoglou (2003) gives the following instance of the most crucial questions, which should be resolved:
- Is this the e-commerce website of an established retailer?
- Does the website have an exact street address, not just a post box number?
- Is there any facility to call customer service?
- Is a return and refund policy published on the website?
As for the challenges of LRT in the sphere of e-commerce, it should be stated that the orchestration principles are generally covered by the total productivity scheme. Thus, in accordance with the generally accepted rules of transaction performance, the scheme of applying LRTs in business and e-commerce in particular is the following:
From the perspective of the structured principles, there is strong necessity to emphasize that the original necessity of overcoming challenges generally appears at the stage of transformation. Originally, when business description is performed using one or several of the orchestration languages, it should be stated that the business transactions, which are generally regarded to be the common practice, involving Long Running Transactions, the challenges, which appear during these practices are associated with the data security issues as well as the issues of the internal company’s structure. The allover tendencies within the e-commerce business sphere are regarded to be centralized. Chessell, Vines and Griffin (2002, p. 364) emphasize the following statement:
Web Services Transactions and Business Transaction Protocol seem to be geared towards centralized control, which means some knowledge of the internal build-up of the participants is required. This violates the primary requirement of Service Oriented Architecture for coupled services and may not be acceptable or even possible in a business environment – in a digital ecosystem involving communities of SMEs this raises a barrier for the adoption of SOA as it violates local autonomy. Part of the problem seems to be that these frameworks lack a formal model for the coordination of the underlying services involved in the execution of a long-running transaction.
In the light of this consideration, the fact that SOA may be regarded as the key defining principle for the matters of the Transaction procedure formation and definition of the main possible challenges within the e-commerce business sphere. Anyway, the orchestration principles and rules are applied for regulating the activity of the Service Oriented Architecture.
Jointly with the matters of business services the orchestration and flow composition, it should be emphasized that the largest difference of these two factors is in the time, which is required to execute the necessary means for providing business services and arranging the necessary orchestration level. Additionally to the described matters, Butler and Simon (2006) claim that compensation is among the important challenges of the LRTs, and if the Business Description phase may cause failure of the business performance flow, problems within the Technical Orchestration Model may cause compensation. Thus, compensable processes should be properly arranged within the principles of risk management. Butler and Simon (2006) claim the following:
A compensable process is one, which has compensation actions attached to it. A compensable process consists of a forward behavior and a compensation behavior. In the case of an exception, compensation will be executed to compensate the forward behavior. Both the forward and compensation behavior are standard processes. The basic way of constructing a compensable process is through the compensation pair construct P ÷ Q, where P is the forward behavior and Q is its associated compensation. Q should be designed to compensate for the effect of P and may be run long after P has completed.
Consequently, the undefined or potential violations of the informational privacy are associated with the improper structuring of the service architecture. From this point of view, it should be emphasized that the original value of the compensation and risk management is generally identified when the failure is located. Thus, the long-running nature of the transactions affects the orchestration principles, thus, maintaining the running process. In accordance with Razavi and Moschoyiannis (2007, p. 321) “if the orchestration is blocked for a significant period of time, keeping this state in memory doesn’t make much sense. Instead, a BPM server should provide a way for an orchestration’s state to be automatically written to disk, then restored again when the business process resumes, even if it’s days or weeks later”
Related Works
The works, which are related with the Long Running Transactions and the matters of their survivability, may be regarded as the supporting researches for the transaction systems and e-commerce in general. The fact is that, these are the matters of the transaction structure, channels, security of these channels, and the principles of transaction organization on the backgrounds on the on-line services, provided by the companies.
Thus, most researches are based on the principles of proper transaction handling. As for the matters of services and application of the Transaction principles, there is strong necessity to mention that management generally illustrates the notable difference between Long Running Transactions, which is covered in the notion of the primary purpose of the long-running business processes. As they are particularly aimed to support long-running orchestration principles and processes, nevertheless, BPM servers offer these services. In order to add to the issues of Long Running Transactions, and handling of the transactions in e-commerce in the context of survivability, the considerations by Papazoglou (2003, p. 34) should be represented: “State management illustrates another notable difference between BPM servers and application servers. Since supporting long-running business processes isn’t their primary purpose, application servers haven’t traditionally addressed this kind of state management. Because they are explicitly intended to support long-running orchestrations, however, BPM servers do provide this service.”
Laneve and Zavattaro (2005) in their turn claim that the business process, which involves the application of the Long Running Transactions require the all-or-nothing behavior, and the business performance should be based on this principle, as LRTs should be technically maintained on a proper level. Thus, the necessity to improve the technical base and the qualification of the technical personnel is associated with the matters of running business in accordance with the latest tendencies of business performance.
As for thee business process in general, and the frames of running business Lanotte and Maggiolo-Schettini (2004, p. 457) emphasize the following:
To be useful, business processes are often connected together so that the output from one process becomes the input for the next. The network of business processes for a business function is usually defined in a business process model. These models can often be complex, especially when error handling and exception processing is included. To make them comprehensible, most business process models are arranged in a hierarchy of abstractions. At the top level of the model one can see the major business functions. Each business function can be expanded to show its main internal business processes, which may in turn be expanded through many levels until the simple primitive operations are exposed.
ACID Principles
Originally, usability of the LRT systems, which are based on the ACID principle (Atomicity, Consistency, Isolation and Durability) tends to be simple for the users, easy for technical maintenance and efficient from the perspective of data security. The principle of simplicity (Atomicity) is achieved by dividing the transaction process into several separate processes (intermediate transactions and compensations) which are finally combined into extended transaction.
Consistency is achieved by the sequential and thorough processing of every single sub-process of the allover transaction. As Gray and Reuter (1993) claim: “If one of the transactions in the sequence reverses, the compensations associated with those transactions that were successfully completed are run in reverse order.”
On the one hand the division of the process into smaller processes violates the principle of Isolation, nevertheless, on the other hand this division supports the idea that the allover process is isolated from the majority of the environmental factors. It means that if some factor influences one of the sub-processes, it automatically means that it does not influence the other processes.
Durability is granted by the efficient technical maintenance of the system, high qualification of the technical personnel and thorough processing of the data by coordinator. Originally, the stable work of the controlling and technical teams grants survivability and provides the durability factor into action. Consequently, in order to be effective and reliable, all the four components of the system should be working reliably and steadily, without failures and breakdowns.
In order to summarize the stated information, the notion by Fischer and Majumdar (2007, p. 5) should be given:
The holding of locks and tight coordination of the participating systems is not feasible. Moreover, web services rarely expose distributed transaction interfaces, due to organizational boundaries, protocol limitations, and application limitations. Therefore, one must look for looser notions of correctness. One such notion is cancellation semantics: a long running transaction should either complete successfully or undo all its observable results. The undo mechanism is a programmer-specified compensation action. For example, sub-processes are two-level transactions with compensation actions for each forward action.
Motivation
The issues of motivation in the context of survivability of the LRTs is associated with the matters of atomic transactions and traditional concepts which are applied in the LRTs. Thus, as Kuhne, Thranert and Speck (2005, p. 256) claim “Atomic transaction are similar to traditional transactions with ACID properties. This model supports transactions that are short-lived”. In the light of this perspective the business activity is regarded ass the largest and the most reliable motivator, as in accordance with the business practice, transactional models based on business activity are specially elaborated for the long-running interactions between partners. As Kuhne, Thranert and Speck (2005, p. 281) state, “It allows participants to take part in a transaction without getting their resources locked. The model provides a mechanism that informs the participants to take appropriate action if the transaction outcome is different from the type of action sought by the participant.” Additionally, flow composition languages provide the creation of long running transactions from a set of independent, atomic services. Due to environmental restrictions, such transactions can not be performed with the coincidence with the standard ACID semantics.
On the other hand the matters of motivation define survivability by the means of shaping the stimulus for the successful business activity. If the fine / reward system is properly arranged, the transaction systems will be supplied with the motivated team, the main task of which will be to keep it working. As Butler and Ripon (2006, p. 412) stated:
A long-running transaction can specify a compensation block that will be called to compensate for the transaction’s activities, after it commits. It might simply undo the transaction where feasible, or perform some other function, such as motivation, that helps prevent the effects of the transaction in improper way. Thus, applications utilize multiple services across different modules or layers to serve a particular business need.
Conclusion
Finally, it should be emphasized that Long Running Transactions (LRT) are regarded to be the important building block within the business applications. In order to explain the origin of the LRT definition, there is strong necessity to explain the necessity and importance of transactions in business. Originally, transactions are regarded to be the integral units of business, which generally involves one or several resources. As it was stated in the paper, the survivability of the LRT depends on numerous factors; nevertheless, the main aim of keeping LRT effectively working is the support of the four elements of the ACID principles. Depending on the stage of the transaction system realization, the problems may be defined. Thus, the Survivability is also defined by the properly and timely located problem of the e-business sphere.
References
Butler, M., Ferreira, C., Yong, M (2001) “Precise Modelling of Compensating Business Transactions and its Application to BPEL” School of Electronics and Computer Science, United Kingdom
Bocchi, L. (2003) “A calulus for long-running transactions” FMOODS’03, volume 2884 of LNCS, pages 124–138. Springer-Verlag
Brogi, A., Canal, C., Pimentel, E. and Vallecillo, A. (2007) “Formalizing web services choreographies” Electronic Notes in Theoretical Computer Science, vol. 105. Elsevier. pp. 73-94.
Bruni, R., Melgratti, H. (2005) “Theoretical foundations for compensations in flow composition languages” POPL, p.p. 209–220, 2005.
Bruni, R., Butler, M., Ferreira, C., Hoare, T., Melgratti, H. Montanari, U. (2006) “Comparing two approaches to compensable flow composition” School of Electronics and Computer Science, University of Southamptom, UK. Department of Computer Science, Technical University of Lisbon, Portugal
Butler, M., Hoare, T., (2005) “A trace semantics for long-running transactions” In A. Abdallah, C.B. Jones, and J. Sanders, editors, Proceedings of 25 Years of CSP, volume 3525 of Lect. Notes in Comput. Sci., pages 133–150. Springer Verlag.
Butler, M., Ripon, S (2006) “Executable Semantics for Compensating CSP” School of Electronics and Computer Science, University of Southampton, UK.
Chessell, M. Vines, D., Griffin, M., Butler, C. (2002) “Extending the concept of transaction compensation”. IBM Systems Journal, 41(4):743–758, 2002.
Fischer, J., Majumdar, R., (2007) “Ensuring Consistency in Long Running Transactions” UCLA Computer Science Dept. Technical Report TR-070011, Department of Computer Science, University of California, Los Angeles
Gray, J., Reuter, A. (1993) “Transaction processing: concepts and techniques” Morgan Kauffman Publishers, Inc.
Kuhne, S., Thranert, M., Speck, A. (2005) “Towards a methodology for orchestration and validation of cooperative e-business components” Institute of Cybernetics at Tallinn Technical University
Lanotte, R., Maggiolo-Schettini, A., Milazzo, P. and Troina, A. (2004) “Modeling long-running transactions with communicating hierarchical timed automata” Lecture Notes in Computer Science, vol. 4037. Springer. pp. 108-122.
Laneve, C. Zavattaro, G. (2005) “Foundations of web transactions” In FoSSaCS, volume 3441 of LNCS, pages 282–298.
Milner, R. (1989) “Communication and Concurrency” Prentice-Hall
Moschoyianis, S. Shields, M. (2004) “A Set-Theoretic Framework for Composition” Fundamenta Informaticae 59(4):373-396
Moschoyiannis, S., Razavi, A., Zheng, Y., Krause, P. (2008) “Long-running Transactions: semantics, schemas, implementation” Department of Computing, Faculty of Engineering and Physical Sciences, University of Surrey, Guildford, Surrey, GU2 7XH
Papazoglou, M.P. (2003) “Service-Oriented Computing: Concepts, Characteristics and Directions”. In Proc. WISE’03, IEEE, pp. 3-12.
Razavi, A., Moschoyiannis, S. (2007) “Preliminary Architecture for Autopoietic P2P Network focusing on Hierarchical Super-Peers, Birth and Growth Models.”