Services are dynamic by nature. Things come together to make good things happen. As and when they do, they may throw errors and exceptions. Good design must account for such possibilities, and that means some dialog and interaction will be necessary between users and agents. This is the part that often creates stress and strain between the two sides, and how well it is handled is often critical to the design of a service. Contracts and agreements have a certain level of flexibility and tolerance, and how much often depends on funding and payments.