Are automatically generated services the antithesis of SOA? Ronan Bradley and Steve Craggs of Lustratus Research are warning that services automatically generated from tools may not be 'reusable,' and thus, of low value in an SOA scenario.'The idea you could even consider generating services automatically from code is the antithesis of SOA'
In a new post, Ronan issues a warning about automatically generated services:
“The automatic approach to service generation tends to result in hardwired ties and dependencies significantly reducing the likelihood that the service will be reused.”
Ronan goes on to say that "the idea you could even consider generating any kind of service automatically from code must be the antithesis of SOA." He notes that IONA just issued a press release announcing the launch of Enterprise Celtix, an open-source enterprise service bus, which said: “JAX-WS standard to ease development of Java services by automatically converting Java code to Web services.” Not the path to SOA, Ronan warns.
Ronan was picking on IONA, but there are actually many vendors pursuing automated approaches to service design. And, indeed, in many cases they are tied pretty closely to specific systems. For example, IBM's Host Access Transformation Services (HATS) dynamically transforms 3270 (mainframe) and 5250 (midrange) screens into HTML, and also creates Web services based on screen process flows. While this isn't SOA, it's an important step to service-enabling back-end legacy systems.
Ronan argues that this is not true SOA, since true SOA-based services should be completely independent of any underlying systems or infrastructure. Which leads me to wonder, given the widespread use of code and service generation tools in use, how many true, "pure" SOAs do we really have out there? Or, is SOA in the eye of the beholder?
Most of the SOAs out there are probably mixed bags of interfaces, standards, and applications as it is. On this basis, it will be a long time before a company with a completely pure SOA emerges, in which services can run against any hardware or underlying systems. This again demonstrates the fact that there's no such thing as a quick SOA solution.