In the majority of object oriented software systems a number of objects will work together to carry out the functionality of the system The objects in the system do this by sending messages to each other Think of a television and its remote control. The remote is an object which can be used to send a message to the television object to turn itself on. It can also send a message to the television object to turn itself off etc Think about the interface the TV object presents to the remote. Is it the same interface that is presented to someone using the TV without a remote?