In Martin Fowler's Patterns of Enterprise Application Architecture, he describes the concept of Unit of Work. A basic description of the Unit of Work pattern can be found at http://www.martinfowler.com/eaaCatalog/unitOfWork.html.
When you're pulling data in and out of a database, it's important to keep track of what you've changed. Otherwise, that data won't be written back into the database. Similarly, you have to insert the new objects you create and remove any objects you delete.
One way to think of this is to think back to our order. In our traditional model, creating an order would involve something like this:
Create Bill/Ship Contact.
Create Order Header | associate Contact(s).
Create Order Items | associate to Order Header.
Total Order Items, Update Order Header.
Each of these actions would most likely be performed in a discrete database transaction.
In a Unit of Work pattern, "Insert a new Order" would be a single unit of work. Each of the items required to create...