An improved web-based solution for specifying transaction models for CAGISTrans
MetadataShow full item record
Transactions have been used for several decades to handle concurrent access to data in databases. These transactions adhere to a strict set of transactional rules that ensure that the correctness of the database is maintained. But transactions are also useful in other settings such as supporting cooperative work over computer networks like the Internet. However the original transaction model is too strict for this. To enable cooperation between transactions on shared objects, a framework for specifying and executing transaction models adapted to the environment in which they are running has been developed. Additionally, a web based user interface for the specification of transaction models for the framework has also been created. In this thesis we look at how the process of specifying transaction models for the framework can be improved. More specifically, we start by carefully reviewing the current web based solution for specifying transaction models. In our review we focus on usability, design and the technical aspects of the solution. We then continue with a thorough look at Web Services in the context of the transaction model framework. Our main objective at this stage is evaluating the possibility of implementing a new solution for specifying transaction models using Web Services. The last part of our work is the actual implementation of an improved application for specifying transaction models. This implementation is based on the results from our evaluation of the current solution and our evaluation of Web Services. We identified several issues in our review of the current solution. The main problem is that it is difficult for the user to get a good overview of the transaction model she is creating during the specification process. This is due to the lack of a visual representation of the model. The specification process is also very tedious containing a large number of steps, a number we feel can be reduced. The technical aspects of the solution also have a lot of room for improvement. The overall design can easily be improved, and additionally utilizing different technologies would make the application less error prone, and also easier to maintain and update. We also reached the conclusion that Web Services is not an ideal technology for a transaction model specification application. The main problem is that the client needs to have a complete overview over the specification process leading to a lot of duplication of data between the client and the web service. In the end this situation leads to a very complex web service that does not improve the transaction model specification process. Based on our results, we decided to implement a web based solution for specifying transaction models. Our solution is similar to the original one, but we had strong focus on improving its shortcomings, both on the usability side and the technical side. This meant focusing on giving the user a good overview of the transaction model during the specification process and also reducing the number of steps in the process. Additionally, we put a lot of effort into developing a solution that is based on technological best practices, leading to a solution that is less error prone than the original solution. It should also be easier to maintain and update.