As the Apache Software Foundation holds its annual conference in San Diego this week, one of the hot topics under discussion is likely to be a new proposal known as Tuscany.
Tuscany was approved as an Apache incubation last week. It is a project to bridge the gap between language-specific application component implementation technologies and higher-level SOA (service-oriented architecture) concepts and design approaches, the proposal for the project said.
With ease of development a continual goal for enterprise developers, the Tuscany project sets out to simplify the composition of SOA-based systems through a set of frameworks and solutions.
Most of the committers to the Tuscany project are from IBM and BEA Systems Inc. Yet the Tusany proposal said the project is being run as a meritocracy because the scope of the project “is so broad that we find it hard to envision success in any other way.”
Eddie ONeil, a senior software engineer at BEA and an Apache committer, said Java developers should keep an eye on Tuscany and the recently announced SCA (Service Component Architecture). Service enablement and moving up the stack above the J2EE (Java 2 Platform, Enterprise Edition) application layer are emerging trends, he added.
Meanwhile, an initial Tuscany implementation has been written in Java and has already been integrated with Apache Tomcat as a deployment platform, the proposal said. And the implementation will soon be integrated with other Java middleware environments, including Apache Geronimo and ObjectWeb Celtix, according to the proposal. In addition, another implementation has been written in C++, and other languages targeted for support include the BPEL (Business Process Execution Language), the proposal said.
Tuscany provides multiple language implementations of SCA specifications and related technologies such as SDO (Service Data Objects), another specification developed by IBM and BEA.
SCA is a set of specifications authored by BEA, IBM, Iona Technologies, Oracle Corp., SAP AG, Siebel Systems Inc., Sybase Inc. and Paris-based Xcalia S.A. The SCA specifications define a technology- and language-neutral component model that supports metadata for service authoring, composition and assembly.
Meanwhile, although BEA and IBM have not said it, some observers say Tuscany is the open-source project based on the SCA run-time prototype the two companies have been working on for several months now.
And while many would only talk off the record about their thoughts regarding IBMs and BEAs motives, the outspoken leader of JBoss Inc., Marc Fleury, did not hold his tongue.
In his blog, Fleury called SCA “a new shot at a closed standard for SOA.”
Added Fleury as part of a lengthy post on the subject: “I wonder if SCA isnt IBM and BEAs response to Sun open sourcing SeeBeyond, or vice versa. But I dont think this is the heart of the matter anyway. I do, however, really believe IBM and BEA want to bypass the JCP [Java Community Process]. See, what happened to Java EE [Enterprise Edition] when JBoss joined was a rapid commoditization of that stack. We rapidly became the number one vendor. After all, why compete on a standardized technology when it is implemented by a credible and independent open source entity? I knew that when we joined the JCP EC [JCP Executive Committee], achieved standardization and captured volume leadership IBM was going to react. They did so by acquiring Gluecode and are botching it.”
Indeed, Fleury said he believes JBoss continues to worry its bigger competitors. “We commoditized EE [Java Enterprise Edition] fast, capturing volume leadership, and they REALLY dont want to see the same thing happening to SOA and integration where they make so much of their money,” Fleury wrote in his blog.
“To add insult to injury, IBM and BEA are trying to open source the Tuscany project at Apache,” Fleury added.
“Theres a set of projects in Apache around service infrastructure: SCA, the Web service metadata stuff were working on as part of Beehive, and some of the controls infrastructure that weve got … for projects that are starting to build this notion of a programming model around actually doing service enablement and tying together disparate services with various transports,” ONeil said.
Moreover, “I still believe development can be easier,” he said. “If you look at some of the things like Ruby on Rails and some of the frameworks that are happening outside of the Java space, there are efforts going on to continue to make development simpler on all platforms.
“And I think that thats a trend that will continue and accelerate as adoption of the Java 5 VM [Virtual Machine] and some of the annotation and metadata standards that are available in that new virtual machine start to be used and applied inside frameworks to make things more declarative and more dynamic,” ONeil said. “So I think ease of use is a trend well see in a big way going forward.”