I personally refer to how Mike Cohn defined CoS in Agile Estimating and Planning. Here is an excerpt from an online chapter (for example):
Each project is initiated using a set of goals. Your current project may be to create the best word processor in the world. Creating the world's best word processor, however, will usually be just one goal for this project. There will almost certainly be additional goals regarding schedule, budget and quality. These objectives may be considered customer or the conditions of the product owners satisfaction - that is, the criteria that will be used to assess the success of the project.
When I returned when I was in high school and was charged with writing an article about a book such as Moby Dick, I always asked the teacher how long the document should have been. The barn replied something like "Five Pages," and then I knew its basic condition for satisfaction. There were, of course, a number of additional, unwritten conditions for satisfaction, for example, that the paper would be well written, my own work, in English, and so on.
At the beginning of release planning, the team and the product owner jointly explore the conditions of the product owners' satisfaction. These include ordinary items - scope, schedule, budget, and quality, although flexible teams usually prefer to handle quality as they shouldn't. The team and product owner are looking for ways to satisfy all conditions of satisfaction. the owner of the product, for example, may be equally satisfied with the release of five months, including one set of user history, as with the release a month later, including the additional user of the history.
Sometimes, however, all product owners' satisfaction conditions cannot be met. The team may have the best word processor in the world, but they cannot build it by next month. When there is no acceptable solution, the conditions of satisfaction should change. Because of this, let go of the planning and conditions of product owners satisfaction is very iterative, as shown in Figure 3.2.
Satisfaction conditions both for release planning and for iterations http://www.informit.com/content/images/ch03_9780131479418/elementLinks/03fig02.jpg
Figure 3.2. The conditions are satisfied by both output and iteration planning.
Once the release plan is approximately the next three to six months, it is used as an input to the planning of the first iteration. Just as release planning began by examining the conditions of product owners satisfaction, that is, iteration planning. To iterate over the conditions of product owners, satisfaction, as a rule, functions shed as developed following and some high-level tests for each feature.
As an example, consider a travel site that includes the userβs story "As a user, I want to be able to cancel the reservation." When discussing this story with the product owner, developers find out what its conditions. Satisfying this story includes
- A user who cancels more than twenty-four hours receives a full refund.
- A user who cancels less than twenty-four hours in advance has returned everything except the $ 25 fee.
- The cancellation code is displayed on the site and sent to the user by e-mail.
Like release planning, iteration planning is iterative. The product owner and team discuss the various ways to best suit the satisfaction of the iteration.
The feedback loops are shown in Figure 3.2 from the received new product to grow back into the boxes of conditions to satisfy the beginning of both the release and the planning of iterations. Based on the experience of product development incrementing during an iteration, the team may have gained knowledge or experience that affects planning at one or more of these levels. Similarly, showing a product is an increase in existing or potential users can generate new knowledge that cause changes in plans. An agile team will incorporate these changes into their plans to the extent that they result in a higher value product.
All this is very close to your understanding (although I ideally prefer that PO provide acceptance criteria rather than confirming those developed by the team).