Another question for RMH: Some people see Web Services as a better way to develop distributed Object Oriented architectures. Some people see Web Services only for Service Oriented Architectures. Certain aspects of Web Services, such as use of HTTP as transport and XML for payload, make it attractive for distributed OOA systems. At the same time, lack of capabilities such as Session, attributes/properties and reliable messaging, makes it hard to build rich distributed OOA systems. How do you see the future in this regard?
I think Web services are best for SOA. If you need to support Distributed OOA, then you should probably use Java RMI or IIOP or something with better preformance. That said, I see the days of Distributed OOA in decline to some degree. Most people don't use EJB, for example, outside of the server (Servlet - to - EJB). Martin Fowler's first rule of dstirbuted objects is "Don't distribute your objects." I"m not sure I would go that far, but its food for thought. However, you really can't compare SOA to OOA, becuase they are very compatable technologies. SOA exposes a service and OOA is used to implement the service. At least that's how I see it. They are two parts of the same puzzel.