There are some good explanations of EJB Transaction Attributes (and annotations) out there, for example, OpenEJB's.
But sometimes when I try to cover this with someone who hasn't worked with many transactional resources, I see their eyes start to glaze over.
So my question - how would you explain EJB Transaction Attributes to your grandmother?
I'm thinking a contrived example, analogy, or a concise real-world use case would be helpful.
You can think of them in terms of Collaboration. Let's say you are a chef, and you have a dozen ovens to work with. You need to bake some cakes. For this example, you are the called method, the oven is the transaction and the your boss is the caller.
Hope that helps.