1. At a computer system, a method of initiating a channel runtime, the method comprising: an act of accessing an annotated object oriented representation of a service, the annotated object oriented representation being annotated with service description attributes that map objects included in the object oriented representation to corresponding service oriented elements in a service oriented representation of the service; an act of identifying a service description attribute that annotates an object of the annotated object oriented representation; an act of mapping the object to a corresponding service oriented element in accordance with service description information contained in the identified service description attribute; an act of outputting a channel object that is configured to implement the behaviors and data formats described in the service oriented representation; an act of initiating a channel that is compatible with behaviors and data formats of the service using the outputted channel object such that the service offered is accessible through the channel; an act of providing the service on the initiated channel, the service utilizing a first programming model for implementing distributed messaging functionality, such that interfaces, methods, parameters and values of the first programming model are compatible with the behaviors and data formats of the service; and an act of providing a second, different service on the initiated channel, the second, different service utilizing a second, different programming model for implementing the distributed messaging functionality, such that interfaces, methods, parameters and values of the second programming model are compatible with the behaviors and data formats of the second service.