WSE2 and WSDL

I may be at Strategic Architect Forum, but I’ve actually been coding off and on today - using WSE2 to expose web services. I hadn’t realized that SoapService supports auto generation of WSDL – pretty cool. I dug around with Reflector to figure out how it works. Turns out that SoapReceiver (parent of SoapService) exposes a method called GetDescription that returns the WSDL as an XmlDocument. The SoapReceiver version of GetDescription returns null, but the SoapService implementation uses an internal class called WsdlCreator to generate construct a ServiceDescription from SoapService type that you write. Pretty cool.

The only downside is that if you use raw SoapEnvelopes as the input and output parameter of the SoapService methods, the WsdlCreator has no way to know what schema to use for the corrisponding SOAP messages. So, it punts and represents a SoapEnvelope as sequence of xsd:any tags. 😦 If you use XML serializable types for parameters, then the WsdlCreator generates the associated schema in the WSDL. Only issue, I gave up on XML serialization a while ago.

I wish there was a way to adorn the SoapService methods with an attribute indicating the associated message schemas (with the ability to validate those messages automatically).

Architect MVPs

In addition to event activities, we also take advantage of SAF to have side meetings with customers. Yesterday, I spent an hour discussing software factories and high-performance computing with Simon Cox from the University of Southampton. Simon is one of our inaugural group of Architect MVPs. We have fourteen architect MVPs across two categories: Visual Developer – Solutions Architect and Windows Server System – Infrastructure Architect. We’ll be growing this group significantly over the rest of the fiscal year, but there are already some influential names in this group, including Roger Sessions, Paul Preiss (founder of IASA), Ingo Rammer and Clemens Vasters. Congrats to all the new Architect MVPs!

Strategic Architect Forum IV

This week is Strategic Architect Forum IV where we are bring over 200 top strategic architects from around the world to Redmond for a series of presentations and breakout discussions. Norman Judah, CTO of MSFT Services, is doing the opening keynote. Other keynote speakers include Pat Helland, Software Factories’ authors Keith Short and Jack Greenfield, plus a Q&A session with BillG. Last year, we recorded all the sessions and published them as The Architecture Strategy Series. We’re still working out the specifics for this year’s content, but we will be publishing this year’s sessions as soon as we can.

One of the things that’s interesting about SAF is that we do a small number of traditional presentation sessions and a large number of discussion breakouts. For these discussion breakouts, we get around fifteen to twenty architects in a room to discuss a problem. For example, I’m doing a talk discussion breakout tomorrow on Refactoring Your Best Practices. Each breakout also has a moderator and a note taker – the goal being to record the knowledge and to track a list of action items.

In addition to SAF, we have two ancillary events going on. All of our field architect evangelists are in town with their customers, so the past two days we had training for them. I had to speak Sunday morning about our influential and community programs. We also have most of our Architecture Advisory Board in town for SAF and their twice-yearly face-to-face meeting. This is the first face-to-face meeting of MAAB since I took over the program, so I’m looking forward to meeting these folks in person.

Good IASA Meeting

Last night’s IASA meeting went very well. I always take it as a good sign when community get-togethers end because building security kicks you out 45 minutes after you were supposed to be done. About 25 people showed up and were treated to food, free materials and factories. Steven did a good job presenting Software Factories, and he was even nice enough to let me chime in on a regular basis with my $0.02. BTW, the next meeting is on Oct 27th (last Wed of the month) and I’m going to miss it because of OOPSLA. Watch the IASA website for more details.

One of the key questions asked was if MS was going to “break tradition” with factories and embrace open systems. I guess we still have a long way to go to change that perception, even though we standardized CLI & C# and continue to be a major driver of the ongoing web services standardization effort. Regardless of perception, I agreed – I think it’s important to enable Software Factories to be embraced by the industry at large. The Architecture Strategy team has several members who are heavily involved in standards bodies, and they had similar feedback. Of course, we have nothing to embrace beyond the book so far, but we have hinted at tooling to come. As promised, I sent last nights feedback to Keith, Jack and the other folks involved and I hope we’ll see that incorporated into their long term plans.

I asked the hard-core folks who stayed late last night what they thought was the best approach for MS to take for getting Software Factories embraced by the industry. Obviously, any tooling around Software Factories would be built on a set of specifications. We could standardize these specifications as we have for CLI, C# and web services. Alternatively, we could simply publish the specifications with an open and royalty-free license (similar to the Office 2003 XML Reference Schemas). Given recent comments by Grady Booch and Simon Johnston (both from IBM) disparaging domain-specific languages and software factories, I’m not sure how well a standardization process around DSLs would proceed. On the other hand, I’m not sure how much industry buy-in there would be for specifications that weren’t collaboratively developed. Leave your opinion, and I’ll make sure it gets to Jack, Keith, et. al. just like the feedback from last night did.

Architect User Group Meeting Tonight

It’s late notice, but tonight is the inaugural meeting of the Puget Sound chapter of the International Association of Software Architects. Steven Houglum, MS architect evangelist for the Pacific NW, is presenting on SOA and Software Factories. The meeting is on the MS campus from 6:30-8:30 and you can get all the details from the IASA site. As I wrote yesterday, I’m interested to see the general response to software factories, so I’m going to be there.

IASA is a relatively new organization with seven chapters in the US as well as one in Australia. It started as an architect user group in Austin – their first meeting was almost a year ago. The overarching IASA organization started about six months ago, according to the IASA weblog. I’ve spoken to the founder and director Paul Preiss on several occasions and hung out with the Twin Cities chapter president Alex Rupp at TechEd. I think they are doing a great job build a technology agnostic user group community and it’s great to see our local field architects supporting it.

As I said, the first meeting is tonight and that’s pretty late notice. If you’re interested and can’t make it tonight, there are two more meetings scheduled for the Puget Sound group in the next three months. Of course, the other chapters are on different schedules, so maybe you can find a meeting in a city near you. If there isn’t a chapter near you, I’m sure IASA would be interested if you wanted to start one.