Microsoft Works with Apache Foundation Published: March 20, 2009
Stonehenge Project Aims to Demonstrate SOA Best Practices and Application Interoperability
Many organizations are eager to build service-oriented architecture (SOA) applications that span languages and platforms, but they need guidance and examples. In order to address this need, the Apache Foundation announced the Stonehenge incubation project in November 2008. Stonehenge is aimed at building a set of sample SOA applications that are based on approvedW3C (World Wide Web Consortium) and
OASIS (Organization for the Advancement of Structured Information Standards) standard protocols.
Project contributors— Microsoft, University of Moratuwa, Progress Software (Iona), Redhat (Jboss), Eviware, and
WSO2—are providing sample code for applications that work across platforms. They’re also developing best practices for interoperable applications and building confidence in cross-platform deployment of SOA technologies.
“WS02 and several other Apache Foundation veterans proposed Stonehenge as an incubator project and invited other vendors such as Microsoft to participate,” says Kamaljit Bath, a Principal Program Manager in the Interoperability Technical Strategy Team at Microsoft and the lead for Microsoft’s participation in Stonehenge. “Microsoft was very interested in working with the Apache Foundation, because this group’s work is very transparent and encourages openness. Several other Apache projects are focused around Web Services technologies, and there are very knowledgeable people involved. Microsoft is honored to be included.”
The application which Microsoft contributed to is called StockTrader. StockTrader is a sample application that shows end-to-end scenarios addressed by a multi-tier architecture based on WS-* standards that shows best practices around creating SOA applications. It simulates stock trading activities in a fictitious manner.
Microsoft had already developed a Microsoft .NET version of StockTrader, which it made available on
MSDN. StockTrader consists of several distinct layers, each of which can be swapped out and replaced with an implementation developed with other technologies. In addition to Microsoft’s .NET version of the program, there are StockTrader stacks written in PHP and multiple implementations of Java technology.. The various Stocktrader components talk to each other using Web Services.
Customers Demanding Interoperability
Stonehenge can help wire up the “last mile” between the standardized Web services infrastructure that is now implemented across key platforms, and a new generation of service-oriented applications that will span them, says Mike Champion, Senior Program Manager in the Connected Systems Interoperability team at Microsoft. “Existing WS-* interoperability work such of the sort done by WS-I and in our plugfests will continue to solidify the platform-level interoperability,” Champion says. “This new work, exemplified by Apache Stonehenge, should attract a wider community of users who can exploit the hard standardization and platform interoperability work without having to wallow in as many nasty details.”
For Microsoft, projects like Stonehenge are important in enhancing interoperability between different software implementations. While standards organizations do a great job of rolling out standards, “Interoperability work doesn’t stop at the end of the standardization process but, rather, really starts there,” Bath says. “With our Stonehenge contribution, we want to give customers a head start in their Web services implementations. We are working with open source organizations to make our software more interoperable.”
Microsoft believes that it is important for customers and the industry to have multiple standards implementations and to be able to choose the best ones for their requirements. This encourages competition and encourages the creation of better quality software. “Interoperability work within an open community generates both competition and collaboration,” says Bath. “Customers will be able to get code for multiple platforms, and vendors will be able to catch bugs and test interoperability issues in an open manner. Many customers want sample code so they can test interoperability.”
Just the Beginning
StockTrader is just the starting point for the broader goals of Stonehenge, which aims to develop a whole set of sample applications that demonstrate seamless interoperability across multiple underlying platform technologies using W3C and OASIS protocols.
Microsoft is also involved in several other Apache projects. These include the Hadoop search engine optimization project; QPID an MQP message queuing protocol standards; and POI a Java implementation of Microsoft Office documents. For a complete list of Apache incubator projects visit http://incubator.apache.org/projects/