On 30 Jun 2008, at 05:28, Michael Poulin wrote:
>> If businesses are to have any hope of building flexible services
that
>> offer the performance and agility needed to succeed with SOA,
those
>> businesses must solve the technical challenge of accessing
>> information – that is, data – across application platforms and
their
>> organization as a whole.
>
> I disagree. The challenge in an SO approach is *not* to gain
access to
> data within legacy applications. (That would be a data oriented
> approach--and, as it happens, a typical old-school integration
> approach). An SO approach would strive to extract and leverage
> *services* from legacy applications. Or at least capabilities that
> would be an implementation component of a service implementation.
Exactly. We want the behavior of the existing applications. How
they implement that behavior is of little to no interest.
Well, we want not only "the behavior of the existing applications"
but the behavior in SO manner.
For example, let us take an old Lotus Domino 5 applications server
and a Java application deployed on it. The application performs very
important to us functionality. Now, we TAKE it as a FUNCTIONALITY,
i.e. behavior, wrap it with a Web Service and ... fail. Why? It is
the right behavior, we need it! The reason is a very small thing not
visible at the level of Functionality - Java on Lotus Domino 5 is
single-threaded.
That is, the legacy application simply cannot work in SOA. Period.
That is not the case. I've personally designed and implemented
systems that wrapped existing applications and other components that
had a wide variety of restrictions, including being single threaded,
having only flat files as an API, being implemented on top of a
proprietary and closed database, running only on non-standard hardware
and operating systems, and numerous other restrictions. As with all
other architectural decisions, it comes down to an economic tradeoff:
Can I live with the SLAs that are possible for the amount of effort
I'm able to invest in creating wrapping services or is it worth the
risk and cost to rewrite the component?
Regards,
Patrick
----
[EMAIL PROTECTED]
S P Engineering, Inc.
Large scale, mission-critical, distributed OO systems design and
implementation.
(C++, Java, Common Lisp, Jini, middleware, SOA)