Brian Groth and Mark Berman can be found in building 25. They work across the hall from a datacenter (not everyone at Microsoft has so much hardware within arms reach). What caught our attention about Brian and Mark? Well, Brian sent
us an email which we'll just print here:
I work in the Redmond MTC (Microsoft Technology Center) and we have a very interesting Service Oriented Architecture solution that uses InfoPath, BizTalk, ASP.NET Web Services, RPG on an AS/400, CICS on a Mainframe, J2EE on WebSphere, Pocket PC, SQL Server, Speech Server, and MOM. It is really a solution to put web services in front of these non-Microsoft apps, and use MOM to monitor events and play back web services, and use BizTalk to orchestrate everything together.
Here is a very rough idea of what we have:
- We have the following legacy “backend” systems: (they were written for use by a single user, but we now have them working for multiple users):
- RPG application on an AS/400. I think it interacts with a DB2 database on the same box, but would need to verify that.
- WebSphere (J2EE using DB2) on UNIX (an RS/6000 box I think).
- CICS application on an IBM Mainframe (MP/3000 running OS/390).
- These are all “front-ended” by ASP.NET Web Services, which can pop events (when errors occur) to the event log, which are then monitored by our MOM server. We also use a playback feature to monitor what’s behind the web services so we know if these legacy systems go down, even when nobody is using them.
- There is also a SQL Server used to keep track of the status of orders in the AS/400. This is because we also have a Pocket PC application that interacts with a web service to change the status of the order (New Order, Allocated, Picked, Shipped).
- We use an InfoPath form to kick off a purchase order, which starts everything into motion.
- We also record the order in SAP after everything is done.
- We also (soon) use Speech Server to call someone with the status of the order.
- Various BizTalk 2004 orchestrations control the logic of routing the order through the different systems.
Do you grok this? Well, then you'll enjoy seeing Brian and Mark's solution.