Yup, yet another spec; this time for managing resources. It's called WS-Management and I guess it's in direct competition with the WS-RF-based WS-Distributed Management (WS-DM). Oh well 🙁
It seems that this specification follows the recent trend to reason in terms of resources instead of services. I really enjoyed the following while reading the WS-Management:
Resource Service: A Web service that provides access to a single category of manageable items, such as disk drives or running processes, that share the same operations and representation schema.
Now, can anyone tell me how this definition of the "resource service" is different from:
public class DiskDrive
{
// This is the disk drive's state
public long Capacity;
public long Free;
public void ParkHeads() {...}
public void Format() {...}
}
You see? Common methods (operations) for all objects (items) and public data properties (representation schema). Don't get me wrong. I don't have anything against distributed objects. It's just that I fear that toolkits will just make it sooooo easy to expose fine-grained objects (together with their state) as resources out there. Network-wide references to state (even if it's representation of state) will be created. Interdependencies that cross service boundaries will be introduced and it'd be extremely difficult to manage them.
You see, in WS-Management, as with WS-Transfer, every manageable resource is addressed through WS-Addressing with the ReferenceProperties
header containing an element which identifies the "item" behind the service boundary. Since WS-Addressing is treated as an opaque construct, it's effectively a pointer.
It seems to me that the most recent specifications are moving us back to a distributed objects world. I recommend that we rename the suite of technologies from "Web Services" to "Distributed Objects Revisited (DOR)" since they have nothing to do with the Web and they are sooooo moving away from the concepts of service-orientation. At least the removal of "Web" will make the REST folks happy 🙂
4 responses to “Are resources the new objects? Proposal to rename “Web Services” to “Distributed Objects Revisited””