1 / 38

Introduction to Microsoft BizTalk Server

Introduction to Microsoft BizTalk Server. Stephen Mohr, Omicron Consulting. Topics to be Covered. Role of BizTalk Server BizTalk Server Architecture Tools Services BizTalk Development Resources Questions. Role of BizTalk Server (BTS).

janelle
Download Presentation

Introduction to Microsoft BizTalk Server

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction to Microsoft BizTalk Server Stephen Mohr, Omicron Consulting

  2. Topics to be Covered • Role of BizTalk Server • BizTalk Server Architecture • Tools • Services • BizTalk Development • Resources • Questions

  3. Role of BizTalk Server (BTS) • Facilitates application integration through messaging • Configuration in preference to programming • Abstracts integration functions to a server • Automates business processes (workflow) by sequencing application exchanges • Scenarios • B2B trading partners and portals • Legacy application integration

  4. Application Integration • Getting one application to communicate directly with another • Interprocess communications protocols • Data interoperability • "Glue code" • Challenges • Legacy data and applications • Dissimilar platforms • Security and trust

  5. Applications • Running code or components • Any process that performs a unit of processing useful from a business standpoint • Order processing • ERP • Manual functions (though this is a stretch) • Basically, any single application-to-application link

  6. Systems • Ordered sequences of application–to–application interchanges • Dynamic • Sequences • Concurrent • Long transactions • This is your business! • A new area for programmers

  7. BizTalk Architecture • Workflow Orchestration Engine • Manages transactions and state within systems • Messaging • Data interoperability • Routing and protocol selection • Data stores • Ports • Channels • Tracking • Specifications • Maps

  8. Messaging • Asynchronous delivery of structured data intended to trigger activity • Scalable • Resistant to connectivity outages • Facilitates integration by supporting major Internet and Windows protocols • Web: HTTP, SMTP, FTP • Web: SOAP (future) • Native: File, MSMQ, COM/COM+

  9. Messaging (cont'd) • Scalability – BTS server groups • Share a single DTA and queue database • Multiple BTS servers with identical configuration • Reliability • Log documents submitted to the queue (transaction and recovery) • Mix in SQL Server replication, MSCS clusters, RAID

  10. Data Interoperability • Formats for everyone, by everyone • File formats • XML (favored) • Delimited • Positional • Hybrid • Runtime conversion of data in transit based on agreements

  11. XML Data Translation Message Map Initial XML document XSL transformation Final XML document

  12. Flat File Data Translation Sending message specification Message map Initial flat file document Flat file parser XML document XSL transformation Intermediate XML document Final flat file document Serializer Receiving message specification

  13. Orchestration • Draw a flowchart in a Visio-based tool • Sequences • Concurrency • Decisions • Application integration • Tool emits XLANG document • Runtime orchestration engine • Uses document to load workflow • Manages system state • Coordinates application message interchanges

  14. Data Stores • Document specifications • Message maps • Agreements • Workflows • Message tracking

  15. Ports and Channels • Ports • Abstraction of an application, protocol, data format, and location • Denotes a directed connection between BTS and some external entity • Channels • Conjunction of two ports to make a connection between two applications • App 1 + BTS + App 2 = channel • Connectors between workflow and BizTalk messaging

  16. Workflow Engine • Who manages the state of a process when there is no user/client? • Long transactions • What to do next • Coordinates the messaging engine as needed • Consumes XLANG documents • Based on pi calculus for a rigorous mathematical basis

  17. BizTalk Builds On… • XML and related standards • Schemas • XSLT • Web, proprietary protocols • COM+ component software • It's all components (so you can extend it) • Management functions • Functoids • PKI and Digital Signatures

  18. BizTalk Supports… • BizTalk Framework • Message envelopes • Placeholders for process state and routing • SOAP • Just another transport protocol • Often confused as a competing product/technology

  19. Tools • If integration is a matter of configuration, you'll need tools • Biztalk Editor – message formats • BizTalk Mapper – format to format translation • Biztalk Management Desk – specify ports and channels • Orchestration Editor – draw workflow schematics • MMC Snap-In – server administration

  20. BizTalk Editor • Record and field model • Property sheet based • Emits an annotated XML-DR schema • An example

  21. BizTalk Mapper • Draw links, translations between two message specifications • One way: source to target • XSL-based • Functoids for intermediate processing • Maps source field(s) through processing to target field • Functions and scripts • Programmer extensible through COM • An example

  22. BizTalk Management Desk • Everything so far has been concerned with data interoperability – what about the business function? • Location and configuration • Organizations/applications • Location • Protocol • Format used • An example

  23. BizTalk Orchestration • Now that we've mastered applications, what about systems? • Visio based flowchart tool • Generates XLANG • An example

  24. BizTalk Server MMC Snap-in • Some poor drone has to keep these servers running – you'd like a tool, wouldn't you? • Queues • Server Groups • Events • Demonstration

  25. Services • Transport protocols • Web protocols and platform proprietary ones • Listeners on services • Multiple listeners possible, e.g. multiple use of the same protocol • Message tracking • Auditing of message activity to a database • Business analyst can specify which fields to track

  26. Transport Protocols • HTTP • SMTP • FTP • Files • MSMQ • COM (via AICs, IBTSAppIntegration) • SOAP (future)

  27. Tracking • Think Fedex – there is as much value in knowing where it is/went as in receiving it • Batches or individual interchanges • Document Tracking and Activity (DTA) database (SQL Server) • Management desk offers views of activity

  28. Data Formats • XML • Flat files • Delimited • Positional • Mixed hybrid • Some examples • CSV – how many apps support this? • Positional – the rest of the legacy world!

  29. Data Transformation • XSL – an elegant, data driven transformation from one XML vocabulary to another • What about flat files? • Intermediate form – a BTS "vocabulary" • An example • Add COM pre- and post-processor components and you can use XSL with flat files!

  30. Application Integration Components • When you want to weld an application to BTS • A COM interface that allows the component to be called in a predictable way • Leverages Commerce Server's experience in pipeline components • Hmm, this is a good way to offer two views to e-commerce customers • Manual – pipelines • Automated bulk processing – BTS AICs

  31. BizTalk Development • Your (programming) jobs are safe • New applications can use the COM interfaces directly to submit messages to the BTS queue • Programmatic administration and management • Extend the tools • Mapper functoids • Parsers?

  32. Generic Integration • Configure ports and channels in the Management Desk • Write applications • Very little programming required by BTS per se

  33. Direct Integration • Synchronous and asynchronous submission • IInterchange • Getting messages into BTS • Submit and SubmitSync • You can check the queues, but you cannot pop a message off the queue • The focus is on consuming messages in applications via standard protocol delivery • An example

  34. AIC Development • IPipeline Component • ASP pages for properties • Execute • Configure with your message properties • BTS calls Execute method

  35. Adminstrative Programming • ICISReadData Interface • Access to document tracking • Makes liberal use of native objects like ADO • Track interchanges • Get document details • Track what documents were generated by an interchange

  36. Summary • Something new – you may have to sell management • BTS moves developers up on the enterprise food chain • System orchestration is your business • B2B • Data driven application integration • Configuration, not programming, is the goal • Enables integration within the organization (intranet app integration) or across the Internet (extranet integration) • No prerequisites on the other end

  37. Further Resources • XML and XSL http://msdn.microsoft.com/xml http://www.w3.org/TR • BizTalk Framework http://msdn.microsoft.com/xml/articles/biztalk/biztalkfwv2draft.asp • Professional BizTalk • Wrox Press, ISBN 1-861003-29-3

  38. Questions? Stephen Mohr, Omicron Consulting smohr@omicron.com

More Related