Java Reference
In-Depth Information
in contract automation. Without a clear interface, service reusability opportunities shrink.
Without platform independence, possible consumers go down and service components be-
come more tightly coupled.
Of course, nothing is free, and you pay for platform independence with performance and com-
plexity.
Available across a network
The world is filled with very useful programs whose functions can be invoked only from with-
in the same virtual machine or within the same physical machines. These programs simply do
not qualify as services. Just as in the real world, your customers have to be able to contact
your business to contract for your cleaning or consulting or catering services. If you're the
only one who knows your phone number, or if you don't have a phone, then there's no show.
If your function is not available remotely, it is simply not a service.
Operates on business objects
My third criterion for a service is that it generally carries out business functions, and generally
does so by operating on business documents. What does this mean? A calculator that adds two
numbers together may not be a good candidate for a service because integers are not business
objects. They can never be defined in a particular way for your organization.
A “business object” means an instance of an entity in your business domain, such as a Cus-
tomer, a Product, an Invoice, a Student, or an Application for Employment. You can decide
for yourself what these will mean, as they are the entities that differentiate your business from
others. Further examination of your add operation must question whether the idea of adding is
particular to your business. It is not. Anyone in the world can add all day long, and will do so
(presupposing any basic mastery of the task) in a manner identical to everyone else. Moreover,
you have no opportunity for innovation in the method in which you add; you cannot conceive
of and employ some custom scheme for adding within your operation's implementation to
gain a competitive advantage in the market. Unless you have a very creative accounting de-
partment, you don't decide for yourself what integers and adding mean.
There is certainly a wide array of popular services publicly available that operate on facts.
These include determining the distance from one location to another, or performing calcula-
tions such as shipping costs based on weight, or finding the location of the nearest store. While
a zip code or a weight in ounces may not in themselves appear to be business objects, such
services do perform a business operation that is distinguishable from something absolutely
generic such as adding two numbers together.
This is just a general guideline. Consider a service that converts currency. There are many
such publicly available web services, and a euro is the same for everyone, so these don't ap-
Search WWH ::




Custom Search