I do not think I said anything about objects being "bad" for implementing services, nor would I say so. They are a completely valid option.
But an object is not a service, even though a service can be implemented using one. And therefore it's bad or any counterproductive to think of the world in terms of "things" that maps to objects, instead of as "functions" that map to services. A service is not a subset of an object, either, as some would say. The concept of a service predates the concept of an object and is more abstract. A good test is to ensure that a service design could be implemented using an object, a message queue, a procedure, stored procedure, database query, script, etc. If the service design can only be implemented using an object then the benefit of the abstraction is lost. To me this is a conceptual problem, and a modeling problem, not an implementation issue. People are so used to thinking about software systems in terms of objects that they often misunderstand services. Some folks prefer to draw parallels but I prefer to highlight differences since so many people tend to equate the two. This is why UML and MDA are not well suited for Web services, by the way, since their design center is the class diagram. Eric ----- Original Message ---- From: Gregg Wonderly <[EMAIL PROTECTED]> To: [email protected] Sent: Thursday, February 8, 2007 12:53:42 AM Subject: Re: [service-orientated-architecture] Booch on SOA & Architecture Eric Newcomer wrote: > Obviously someone who can't give up objects in favor of services. Humm, does that mean that a service can never be an object, but must be multiple objects or multiple of something? I agree that all "services" in an SOA may not be software services, but for software based services, what makes it bad for them to be objects in implementation? Gregg Wonderly ____________________________________________________________________________________ Get your own web address. Have a HUGE year through Yahoo! Small Business. http://smallbusiness.yahoo.com/domains/?p=BESTDEAL
