Interview: Dino Chiesa on Microsoft's SOA strategy
In addition, Microsoft sponsored a comprehensive Application Platform study targeted at 500 enterprises (1000 or more employees) based in North America. The goal was to identify which software platforms are used to build mission critical applications and what are the preferred providers of key components of the platform. The IDC study claims that :
At the question “Which application technology platform do you expect to use the most for developing mission-critical applications at your company in the next 2 years?”
- 30% of the respondents said .Net and 25% said Java.
- 71% responded that they are currently working on applications that use Service Oriented Architecture.
- Out of 71%, 36% responded that they use Microsoft for these applications that use SOA. IBM was second with 18%.
InfoQ talked to Dino Chiesa, Director of Marketing for .Net in the Connected System Division at Microsoft to better understand Microsoft’s SOA strategy and how customers were using WCF.
InfoQ: Microsoft has been a driver of Web Services technologies and SOA in the industry since 1999. After all these years how would you characterize Microsoft’s approach to SOA?
Dino: SOA is an important trend in the industry, and like many other vendors, Microsoft is investing here. We took a pragmatic approach from the beginning and developed technologies to help our customers reach the benefits of SOA. We tried to get the fundamentals right, the standards right and the programming model right. We have lead the way since 1999, delivering state of the art SOA infrastructures such as ASMX, WSE that were good, but wanted to make them better. We started to build Windows Communication Foundation in 2003 and released it in 2006 as part of .Net 3.0. Over all these years, our approach to SOA has been steady, direct and entrenched in the real world.
Looking at Windows Comunication Framework in particular,Technically speaking, I don’t see a framework that is comparable in elegance and capability in other products. You can’t find such a concerted investment in the Java world, it is delivering a lot of pieces but the effort is fragmented. For instance, Axis is certainly good, but primarily targeted at Web Services, it does not offer a generalized communication model as does WCF.
InfoQ: The WS-* stack is now complete. What are the plans for WCF moving forward?
Dino: WCF has got the broadest support for standards, WebSphere is not yet supporting all the WS-*standards. Ironically, we are still a few inches away from automatic interoperability, but we are getting there. .Net 3.5 is coming up in November and we will be supporting the latest iterations of the standards, WS-AtomicTransaction and WS-ReliableMessaging for instance.
We are also expanding the SOA horizon with the use of syndication protocols at the programming model level. We want to help our customers use RSS for syndication in enterprise applications. We also want to promote the use of REST style services, as a complement to the WS-* stack. There are many cases, where you don’t need intermediaries, transaction, security, or can’t bear the overhead of the Web Services protocols… WCF 3.5 will help you there too. Note that, we are not changing the basic principles of WCF, this is still services, communications and SOA. We are simply not insisting that SOA be only WS-* and SOAP. Here’s a great example: because WCF is a generalized communication framework, it takes just a simple configuration change to shift to a much more efficient binary transport, when communicating between like-to-like endpoints. This generality of the communication framework the main benefit of WCF.
In 3.5 we will release new communication channels, IBM is developing a custom channel for MQSeries for instance. Microsoft wants to satisfy customer demand for alternative protocols. We will also release the WCF Line of Business Adapter SDK, which extends the WCF communication model to enterprise systems such as SAP, Siebel… again, using the same WCF model, despite the fact that on the wire there is no angle brackets. Of course, people can build their own custom channel too.
InfoQ: In the last couple of years, ESBs have gained momentum -most of the Java vendors are marketing at least one ESB. What is Microsoft’s position on ESBs?
Dino: The ESB concept has gained a lot of attention. We’ve invested a lot in this space and want customers to understand how to use Microsoft technology to deliver an enterprise-class Service Bus. One of the key issues with ESB is moving from concept to practical deployment in a way that still makes financial sense. To this end, Microsoft will release the ESB guidance with BizTalk Server 2006 R2 (which is launching this month). This guidance will provide practical, fiscally responsible, guidance on implementing an ESB to solve real world problems.
In addition to the investments Microsoft is making in the ESB space, we are also investing in a web-delivery model for the service bus. This functionality is available today via http://labs.biztalk.net. Customers tell us that over time they will want to utilize the service bus for both on-premise as well as cross fire-wall scenarios. Our investments in the premise and web technologies will enable customers to experience both seamlessly.
InfoQ: How are customers adopting .Net 3.0? Are they adopting all components together (WPF, WF, WCF) or independently?
Dino: It really depends on your perspective: different components are interesting to different people depending on their priorities. For architecture teams in large enterprises, WCF is definitely the key entry point in .Net 3.0, but for somebody focusing on user experience, WPF is going to bring a lot of value. All the components are related because they enable getting the right information to the right people, this is what companies of all sizes want to achieve. This is really the end goal of SOA.
SOA is hot in the industry and the adoption of WCF is terrific, the results from the IDC report show that .Net is the most popular infrastructure for SOA among enterprises. The key to our success it to help our customers get concrete things done with a pragmatic approach. Generally, our customers avoid the big ticket, top-down SOA initiatives. They are looking for a stepwise approach. They want to see the benefits before they go to the next step. We think customers can apply our technologies, the principles of agile development to architecture problems, take a more real world approach, and see if the result generalizes. As a result, a lot of them have already had successful SOA initiatives and they are now targeting increased levels of maturity.
InfoQ: Could you walk us through a few customer success stories?
Dino: Newegg is a good SOA story. As this online retailer grew, they found that integration of disparate systems was becoming more and more complex and costly. They decided they needed to implement a Service Oriented Architecture, and liked the idea of an ESB. The company evaluated ESB products from Sonic, IBM, and Tibco, but in the end decided to build an ESB on WCF, following the ESB Guidance offered by Microsoft. Their choice was based on the learning curve and the complexity of other products. They could do what they needed to do to scale their operation with a much simpler SOA platform. This is real-world SOA.
Crutchfield is another retailer. They had evolved from a catalog sales company into one that utilized multiple sales channels - catalog, online, and through partners like Amazon or others. Each channel used a different sales and customer system. As the number of channels grew, they began facing agility problems. They decided to apply service-oriented design in a very focused way to solve this particular problem. Using WCF, they abstracted order processing logic into a central shared set of services, that multiple channels can use. Again, this is a simple problem and we were able to address it with a technology that did not introduce unnecessary risks.
InfoQ: Thank you very much.