I am working on dreamcar project. I am little unsure how do i tackle transaction in this?
Can someone give any thoughts for me to start, so i can think in some direction, right now looks like i am lost...
I am also working on my part 2 (Big Smokes). One of the key aspects of distributed transaction management (XA transactions) is that the transaction will only work if all parties involved in the transaction are transaction aware since passing the transaction context to a non transaction aware system is meaningless.
We will either have to make an assumption that the external third party system that you might be interacting with is transaction aware. However, in my mind, this would be an unreasonable assumption. How many web service interfaces that we see today on the internet are transaction aware? The best way would be to use a compensating transaction so that you can roll back whatever stuff was updated if the partner's transaction did not go through. It is also possible to use a technique that is commonly referred to as "Last Resource Gambit" to have a transaction when there is exactly one non transaction aware participant.
However, if you look at the SCEA study guide part 2 section (chapter 9), there is no reference to transactions and such. I would prefer not to make it more complex than it needs to be. The simple rule of thumb is that the assignment should be completed in 25 to 40 hours of effort. So squeezing in transaction management within that time frame is a bit of a stretch IMHO.