Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Introduction to BizTalk Server 2010


Published on

Introduction to DevScope
Enterprise Application Integration Challenges
Introduction to BizTalk Server 2010
- What is? What does BizTalk do? And what type of problems it solves?
- Major features

Job Market

Published in: Technology
  • Be the first to comment

Introduction to BizTalk Server 2010

  1. 1. Universidade PortucalenseDevScope Universidade Portucalense 19-11-2012 Sandro Pereira
  2. 2.••••••••• • • 2
  3. 3. ••• • • •• 3
  4. 4. DevScopeWHO WE ARE
  5. 5. consulting mobile portals crm
  6. 6. software
  7. 7. software as a >_ service
  8. 8. 11
  9. 9. Enterprise Application Integration ChallengesMICROSOFT INTEGRATION STORY
  10. 10. 13
  11. 11. 14
  12. 12. Supplier Customer Manufacturer CRM SMTPSAP Company A 15
  13. 13. Java .Net Appl. Appl.• Service Service • SAP Oracle Service Service • • JD • MS CRM Edwards Service• Service • CICS AS/400 Service Service 16
  14. 14. • • • • • 17
  15. 15. ••••••••• 18
  16. 16. Microsoft BizTalk Server 2010INTRODUCTION
  17. 17. Empresa Fabricante Revendedor Distribuido r Escritórios Fornecedor Fornecedo r 20
  18. 18. EAI / BPM 21
  19. 19. Company A BizTalk exchange of Application Serverinformation Application business Applicationprocesses insight Internet Company B 22
  20. 20. •••• 23
  21. 21. Common complaints: Disparate applications Programming overruns Time-consuming deployment Dissimilar reports Modification difficulties Lack of set procedures Limited tracking Changing partners 24
  22. 22. ••••••• 25
  23. 23. 10000+ 10,000+ Global Customers benefit from using BizTalk Server 23 23 of 27 EU governments use BizTalk Server to provide government services81% 81% of the Global 100 are running BizTalk Server 64 6 of the 8 largest U.S. Pharmaceutical Companies use Microsoft BizTalk Server 4 of the 5 largest U.S. Electronics Parts Manufacturers use Microsoft BizTalk Server 9 of 109 9 of 10 largest U.S. Telecommunications Companies use BizTalk Server of 10 5 9 of the 10 largest Aerospace and Defense Companies in the U.S. run BizTalk Server 5 of the 8 largest U.S. Chemical Companies run Microsoft BizTalk Server 4 4 of the 5 largest Railroads in the U.S. run Microsoft BizTalk Server 9 of the 10 largest Insurance Companies in the World run Microsoft BizTalk Server 26
  24. 24. BizTalk Server BizTalk Server 2010 BizTalk Server 2009 • Workflow Integration BizTalk Server 2006 R2 • ALM Support • ESB 2.1 • B2B • SharePoint 2010 2006 BizTalk Server • SOA/ESB Enhancements BCS • Simple EDI/AS2 • RFID Mobile BizTalk Server 2004 • • Adapter Pack 2.0 • Data Mapper configuration • RFID • TPMBizTalk Server 2002 • VS + .NET • Adapters in box • WCF • ESB 2.0 Toolkit • Secure FTP 2000 • Deployment • Messaging + • Runtime+ • Adapter Pack • BAM+ • Updated Swift • Hyper-V Support and HIPAA• Messaging Tools Orchestration • BAM+ • Adapter SDK • HIS 2009 • SQL Server• XML tools • XSD • BRE • HIS 2006 • BAHS 2.0 2008 R2• XLang • EAI (partner • Routing • BAHS • Windows Server adapters) • BAM 2008 R2 • Vertical B2B • Scale-out • HIS 2010 500 2,000 4,000 7,000 8,500 10,500 12,000 Customers Customers Customers Customers Customers Customers Customers 27
  25. 25. Committed to innovation in Integration~12 years, 12,000+ customers8th releaseRegular updates 18-24 months BizTalk PaaS - EAI Capabilities in the Cloud BizTalk Server 2013 - EDI Capabilities in the - Integration with Cloud Cloud Services: - Build Hybrid Applications BizTalk Server 2010 - RESTful services - Platform Support - New Adapters and many - Productivity improvements in existing adapters improvements - B2B scenarios made easy Available now 2013 Future 28
  26. 26. Edition Description For large organizations, trading hubs, and marketplaces Includes all application and technology adaptersEnterprise Unlimited internal applications Multiple processors and clustered deployments For small to medium-sized organizations Includes all application and technology adaptersStandard Up to five internal applications Up to two processors For remote locations of an organization Includes all technology adaptersBranch Single internal application Up to two processors For development and testing usesDeveloper Free license with same capabilities as Enterprise Edition 29
  27. 27. BizTalk Server 2010 Capabilities and Runtime Architecture 30
  28. 28. Business to Business Rule BusinessManagement Framework Business Integration and Activity Operations Monitoring Orchestration AppFabric ConnectIntegration Messaging Tools RFID Platform 31
  29. 29. RFI Filter Tags Policy Read 5 Shipment RFID Tags Microsoft BizTalk Server 2010 MessagingInventory Manage Re-stock Orders andApplication Operate 1 Orchestration EDI Messaging Assign Supplier 4 Up-to-date Design and Implement IT Pros and Developers Policy Suppliers KPIs in BAM Messaging Application 2 3 Business Enterprise Resource Planning (ERP) Users Application 32
  30. 30. XML EDI or XML EDI or Flat File Flat File Receive Port Orchestration Send Port Receive Receive Send Adapter Location Adapter Receive Send Pipeline PipelineMapping Mapping FROM: Contoso TO: NWTraders (Flat file format) (Flat file format) MessageBox TO: Fabrikam (XML FROM: Fabrikam format) (XML format) 33
  31. 31. Lesson 3 34
  32. 32. • • • •• • 35
  33. 33. BT BT Empty BizTalk BizTalk Server Server Project BPEL Import• Contain files, programs, tools for creating BizTalk applications• Specify the structure, constraints, and content of the items in a project 36
  34. 34. Define Schemas Transform Data Customer Header Order Name BizTalk Editor PO PO Title Record Item Status Date PO Header Field1 Item Detail Status PO Field2 Field1 FieldA ItemID Status Field3 BizTalk Mapper Field2 FieldB Qty Item UnitPrice Field1 Field3 Date Field2 Field3 Visual Studio 2010 Process Messages Design Business Processes Orchestration Designer Pipeline Designer 37
  35. 35. 38
  36. 36.  Each unique document type requires a separate schema that defines the records and fields contained in that document. The XML schema defines:  The elements, attributes, and data types that appear in a document.  The ordering of tags in the document.  Fields that are mandatory or that might occur multiple times in a single document. 39
  37. 37. Namespaces Provide unique names for elements and attributes Prevent naming conflicts with other schemas Use the xmlns attribute to declare the namespace the element belongs to A prefix is added to the declaration to remove ambiguity<salesReport xmlns=""<salesReport<salesReport>xmlns=""> xmlns:prod=""> <customer id="Fabrikam"> <customer id="Fabrikam"> <sales> <sales> <id>widget1004</id> <prod:id>widget1004</prod:id> <id>widget1004</id> <unitsSold>100</unitsSold> <prod:unitsSold>100</prod:unitsSold> <unitsSold>100</unitsSold> <price currency="USD">35</price> <prod:price prod:currency="USD">35</prod:price> <price currency="USD">35</price> </sales> </sales> </customer> </customer></salesReport></salesReport> 40
  38. 38. Message A BizTalk ServerTargetNamespace=“NewOrders” Schema A TargetNamespace= “NewOrders”Message BTargetNamespace= Schema B“OrderUpdate” TargetNamespace= “OrdersUpdate”Message CTargetNamespace= No Match“Inventory” 41
  39. 39. Message Type DetailsXML Item Description Quantity UnitPrice Supports native XML message types TotalPrice ItemID Defined in XML Schema definition language (XSD) StatusFlat File Structure Start Length Supports delimited or positional file formats Node Description Delimited 0 50 XML tags used to represent values UnitPrice Delimited 50 10 Quantity Delimited 60 10 Tag information stored using the annotation capabilities of TotalPrice ItemID Delimited Delimited 70 80 10 10 XSD Status Delimited 99 1EDI Specially formatted text message ISA:00: :00: :01:1515151515 :01:515151 :041201:1217: U:00403:000032123:0:P:*~GS:CT:99887766 55:1122334455:20041201:1217:128:X:004030~ST:831:0012 8001~BGN BizTalk supports EDIFACT and X12 formats :00:88200001:20041201~N9:BT:88200001~TRN:1:8820000 1~AMT:2:10 XSD annotations used to define format 42
  40. 40. Delimited flat files Fields separated by a specified delimiter Have a common end-of-record terminator John, Smith, 123 Main St., “Learning BizTalk Server 2010”Positional flat files Fields are fixed length Have a common end-of-record terminator John Smith 123 Main St. Learning BizTalk Server 2010 43
  41. 41. Validate XSDValidate XMLCreate XML 44
  42. 42. Flat File Schema Wizard Graphical tool for defining flat file schemas Can define schemas for delimited or positional flat files 45
  43. 43. 46
  44. 44. 47
  45. 45. • Data Transformation Perform computational and Map other data operations Source Schema Destination Schema Copy the data from one PO PurchaseOrder message to another PO PO_Number Status Date Data Translation ItemID Item_No Qty Quantity Change the format of data UnitPrice Order_Status between messages Date Example: translate between a flat file and an XML file 48
  46. 46. BizTalk Mapper Integrated within Visual Studio Starts when a map is opened or added to a project Source and destination schemas must be part of the project or contained in a referenced assembly Source Destination Map Grid Schema Schema 49
  47. 47. Link Type Usage Record Order PO PO No Create a single link by dragging and dropping Status Date ItemID Can be made between nodes or records Item NoSimple link (one-to-one) Record Order Create multiple links simultaneously PO PO No Status Relevant schema structures must be the same Status Flag ItemID Item No Use when node names are different but order is the same (or similar)Structure link (multiple) Record Order PO Status Create multiple links simultaneously Status Item Record or field names must match Item PO Similar but not identical schema structures 50 www.devscope.netName-matching link (multiple)
  48. 48. Mapping Operation Usage Record Order PO PO_Number Status Date Most common type of mapping ItemID Item_No Values simply copied from input message to output Qty Quantity message UnitPrice Order_Status Supports most types of transformations and translations DateBasic PO Order ID PO_Num Records can occur multiple times for a single message Status Date (looping) Items Detail Source schema must specify repeating element Item FieldA Field1 FieldB Compiler will automatically generate an XSLT for-each loop Field2 51Complex
  49. 49. 52
  50. 50. Functoids Map Source Schema Destination Schema Use to manipulate mapped data Record Order (..) Can use predefined PO PO Number functoids or create custom Status Date functoids ItemID Item No Custom functoids can call Qty Quantity scripts UnitPrice X Order Status Date Total PriceBizTalk Mapper Extensions UtilityPack: BizTalk Mapper Extensions UtilityPack is a setof libraries with several useful functoids to include and use it in a map, which willprovide an extension of BizTalk Mapper capabilities. 53
  51. 51. 2 Link functoids to fields1 Drag functoid from Toolbox to map 3 Configure functoid inputs 54
  52. 52. •Grid Pages Create unlimited different pages Source Schema Destination Schema Isolate different parts of a map Record Order (..) Work with different parts of PO PO Number a map separately Status Date Must create connected ItemID Item No functoids on the same layer Qty Quantity UnitPrice X Order Status Date Total PriceGrid Preview Find and work with a portion Page 1 Page 2 Page 3 Page 4 of a large map 55
  53. 53. 56
  54. 54. 57
  55. 55. Use pipelines to: Normalize data from various formats to XML Translate data from XML to various formats Assemble and disassemble documents Decode and encode documents Decrypt and encrypt documents Assign and verify digital signaturesReceive Pipeline Orchestration Send Pipeline 58 Pipeline Components
  56. 56. Receive Pipelines: Send Pipelines: Decrypt inbound messages Encrypt outbound messages from trading partners to trading partners Split batched messages Digitally sign outbound Validate messages against messages known schemas Provide a wrapper for Verify the sender of a outbound messages message for non- Validate messages against repudiation known schemas Create custom processors to extend built-in functionality 59
  57. 57. Decode Use to decode or decrypt messages Decode Use when secure document exchange is required BizTalk includes a MIME/SMIME Decoder ! Drop Here!Disassemble Disassemble Use to parse or disassemble components Use to probe messages and verify context properties ! Drop Here! BizTalk Server includes an XML, flat file, and a BTF disassembler  ValidateValidate Use to validate the format of an XML message ! Drop Here! Use to compare a message to a known schema  Resolve PartyResolve Party Use to verify the sending party for a received message ! Drop Here! Use with public certificates to validate sender 60
  58. 58. Pre-assemble Pre-Assemble Use to process a message before it is sent Use for custom components only ! Drop Here!Assemble Assemble Use to assemble or serialize a message ! Drop Here! Use to convert a message from XML to native formatEncode Encode To encode or encrypt messages Use when secure document exchange is required ! Drop Here! BizTalk includes a MIME/SMIME decoder 61
  59. 59. Pipeline UsagePass-Through Receive Contains no components(PassThruReceive) No decoding, disassembling, or validation required Contains no componentsPass-Through Send No encoding or assembling required(PassThruTransmit) Use for basic message routing Contains the XML disassembler componentXML Receive Party resolution component for security(XMLReceive) No decoding or validation stageXML Send Contains the XML assembler component(XMLTransmit) Other stages empty by default 62
  60. 60. Pipeline Files Properties WindowToolbox Design Surface 63
  61. 61. 64
  62. 62. Transformation of criticalbusiness activities frommanual to automatedprocessingIncreases coordination,higher productivity, andbetter efficiencyImplemented throughBizTalk orchestrations andthe BusinessRule Engine 65
  63. 63. Port Surface << >> Port SurfaceOrchestration Designer ReceivePOPort Receive PO Is a visual design Operation_1 -> Request environment Check Quantity Provides implementation shapes for modeling Denied Else automated business processes Denied Msg Send_Approve SendApprvPort Saves business process Operation_1 model for later Transform -> Request compilation SendDeniedPort Operation_1 <- Request Send_DeniedBizTalk Orchestration Is a run-time engine Compile and Executes business Deploy processes 67 BizTalk Server
  64. 64. Orchestration engine Orchestration Engine Creates orchestration instances Maintains state of orchestrations Performs resource optimizations Dehydrate Provides reliable shutdown and recovery Rehydrate MessageBox 68
  65. 65. Group Process Loan Orchestration Visually group shapes Receive Loan Application Collapsible Not saved as code Scope Request Credit ReportScope Order Appraisal Framework for organizing actions Used for exception handling and Exception Handlers transactional execution Contains one or more blocks Compensation Can have appended exception-handling blocks Can have appended compensation blocks Sign Documents if transactional 70
  66. 66. Shape Use To represent If/Else logic Check QuantityDecide Define rule for each branch Rule Else To control the timing of Drop a shape Drop a shape from the toolbox here from the toolbox here the orchestrationDelay Specify pause time or predefined date or time Delay To wait for events to occur before proceeding Listen Must use Receive or Delay as theListen first shape Drop a shape Drop a shape Follows the first condition met in from the toolbox here from the toolbox here the branch Drop a shape Drop a shape Can use as many branches as needed from the toolbox here from the toolbox here 71
  67. 67. Shape Use Loop To repeat actions while a condition is metLoop Drop a shape from Use Expression Editor to set the condition the toolbox here Ensures that all branches complete before continuingParallel Single-threaded execution. Does not runActions branches concurrently Parallel Actions Used primarily for coordinating multiple receive shapes Drop a Drop a shape To suspend a running orchestration shape from from the the toolbox toolbox here Use Expression Editor to set the condition hereSuspend Administrator intervention required to resume To end a running orchestration immediatelyTerminate Can specify an error message string to Suspend help diagnosis Terminate 72
  68. 68. Shape Use Enter any expression in an orchestrationExpression Use Expression Editor to define Expression expression Explicitly throw an exceptionThrow Exception Exceptions are caught at present Throw Exception scope or at the next containing scope 73
  69. 69. Call Orchestration Start OrchestrationInvokes another orchestration Invokes another orchestrationsynchronously asynchronouslyCan pass parameters in and out Can pass in parametersCalling orchestration waits Calling orchestration continues processing 74
  70. 70. Orchestration View Port Port Surface Surface Properties Process AreaToolbox 75
  71. 71. Lesson 1 76
  72. 72. Adapters .NET or COM software components Connect BizTalk to specific applications and systems Can use standard protocols (HTTP, FTP, POP3) Can use proprietary communication mechanisms Support one-way or two-way communications Add metadata to data stream of received messages 77
  73. 73. Adapter Sources Standard BizTalk Server 2010 adapters Microsoft add-on adapters Third-party adapters Custom adaptersList of Custom Adapters: of Third-Party Adapters: 78party-adapters.aspx
  74. 74. • • • • • • • • • • • • • • • • • • • • • • • 79
  75. 75. 80
  76. 76. File adapter properties 81
  77. 77. 1 2 WCF-NetMsmqadapter properties 82
  78. 78. 83
  79. 79. Business Rule Engine: Use business rules to: Enables policy changes in real time Trigger notifications Enables policy changes Automate approvals without recoding or rebuilding the orchestration Reroute documents Business Event Business Decisions Rules If customer ID exists, then customer is Is customer known? knownReceive If product ID exists, then product isPurchase Order Is product known? known Is product available and If quantity on hand < reorder in inventory? quantity, then reorder product 84
  80. 80. Term Description Set of conditions and one or moreRules consequent actions Return either True or False Contains a logical grouping of rulesPolicy Published and deployed to a production environment Collection of definitions for rule conditionsVocabulary and actions Assigns a friendly name to the definition 85
  81. 81. Policy Rules Rule Set Conditions: true/false expression with predicates Actions: initiated when rule condition is met Rules Facts: data upon which rules operateFacts derived from: XML schemas SQL databases .NET classes Predefined and custom vocabularies 86
  82. 82. Call Rules Call Rules Call Rules {} {} Preprocessing Preprocessing Decision Branch Rule-Based Send Rule-Based Delay Rule Else LogicA LogicB Post-Processing Post-Processing Post-ProcessingCall rule engine todynamically determine Call rule engine forwhich orchestration to dynamic or Call rule engineprocess the next step variable delays and determine path 87
  83. 83. Developers Information Workers Integrate policies Use business vocabularies to within an orchestration design and test policies Define policies and vocabularies Administrators Secure, deploy, and migrate policies Track policy execution 88
  84. 84. PoliciesCreate versionsof vocabulariesCreate vocabularydefinitionsCompose policiesPublish vocabulariesand policies Vocabularies Definitions Rule Composer 89
  85. 85. 90
  86. 86. How many What is theorders processed average cyclewere over duration per$10,000? order?What is theorder trend forproduct XYZ Business Analystover the past 24hours? Order Process Milestones Received Order Cancelled Order Delivered Order 91
  87. 87. BAM allows users to: Business Processes View aggregate data related to thousands of instances of a business process View a single instance of a business activity Browse to related instances of business activities Search for instances of a specific business activity Business Activity Browse aggregations by using key performance Monitoring Databases indicators (KPIs) Filter activities at a given stage of completion Define charts, reports, KPIs, and alerts Business Analyst Real-Time Monitoring 92
  88. 88. Analyst defines: Events and data to be tracked Logical groupings and aggregations of tracked data views Use BAM Activity Wizard to define: Activities Milestones Data points Views Durations Dimensions Measures 93
  89. 89. Tracking Profile: Has characteristics that define a business-related process Contains a mapping between an orchestration and activity definitionUse Tracking Profile Editor to: Create and modify tracking profiles Select orchestration shapes Select schema elements Link multiple activities together Modify existing tracking profiles as long as the activity has not changed 94
  90. 90. 95
  91. 91. 96
  92. 92. XML or Flat File A filter expression defines Business properties of messages in Process 1 which each subscriber is Messages interested. received, process Receive ed, and published Location2 to the MessageBox Receive database Adapter XML Subscribed Message Receive Database A copy of the Pipeline message is 4 delivered to each subscriber Message properties are evaluated to determine 3 which subscribers require a Subscribed copy of the message Send Port 97
  93. 93. MessageBox Database Stores subscription information Delivers messages to subscribers Stores the queues and state tables for each BizTalk host Stores messages and message propertiesAdministration Tasks Adding a new MessageBox database Disabling new message publication Deleting a MessageBox from a BizTalk group 98
  94. 94. Receive Location Receive Send Port A Adapter Send Port B PO Message Receive Send Port C Pipeline MessageBox DatabaseMessage Routing Filter Expression Port If CustomerName = Contoso A Routes directly to a port If Price > 1000 B Based on a filter expression Configured on the send port If Qty > 500 and Price < 1000 C 99
  95. 95. Ports specify: How messages are sent and received by BizTalk The communication direction and communication pattern The location where messages are received or sent Receive Port Send Port Receive Location Maps Maps Receive Location Receive Location MessageBox Database 100
  96. 96. Property promotion Fields that you choose to promote within a message instance Makes the data in the field accessible to BizTalk services Quick promotion automatically creates a property schema 101
  97. 97. Receive location properties: Receive handler (host) Enabled or disabled Start/stop receiving (date) Operating window (time period) 102
  98. 98. Send port properties: Send port name Primary and secondary transport Address (URI) Retry count Service window enabled/disabled 103
  99. 99. 1 Create filter expressionFiltering Filter messages based on an expression Route to a send port Example: If the Amount is greater than or equal to $500, forward the message to a folder for approval 104 Use to subscribe to failed messages
  100. 100. Job MarketJOB OPPORTUNITIES
  101. 101. BizTalk BizTalk BizTalkArchitect Developer Administrator A system administratorKnower of the entire will have other concernssystem integration: Implements and extends the such as the health ofbackup and recovery basic functionalities, taking servers and their activityplans, security, logging, m advantage of the different (HAT - Health andessage tools. Here there are many Activity Tracking), he hasflow, communication areas completely orthogonal overall responsibility forinterface… Using his and a programmer may not the BizTalk Environment,knowledge as well as a master them all at the same such as: installation,programmer, the architect level: Orchestration, Adapters, configuration andshould know the Pipelines, Mappings, Functoids, system maintenance,capabilities and limitations Routing, Rules, Tracking, OLAP, deploying and managingof the tools at his disposal and many more. BizTalk Applications,(BizTalk engine, BAM, BRE) monitoring (unlockingand design projects messages and processesmaking the best choices or ensuring proper flowfor each situation. of messages), disaster recovery. 107
  102. 102. ••••• 108
  103. 103. What’s Next?FUTURE AND EVOLUTION
  104. 104. Stay up-to-date with the latest Industry standards Start enjoying the benefits of theplatform. support, performance cloud. improvements. 110
  105. 105. • New Platforms and Infrastructure • Agile Response to Industry Standards • BizTalk Server on Windows Azure • Windows Server 8 • Regular updates to schemas, accelerators • Enable running BizTalk Server on a Windows Azure • SQL Server 2012 (“Denali”) certifications and adapters. Highlights include: virtual machine • Continued support for Windows Server 2008 R2, • Healthcare: HIPPA 5010 extensions: • Enjoy the benefits of IaaS scale and elasticity SQL Server 2008 R2 2777CA, 999, HL7 2.5.1 • Leverage Windows Azure services, such as Service• Increased Developer and IT Productivity • Finance: SWIFT SRG 2011 support, SWIFT SRG Bus 2012, SWIFTNet 7.0 (new messaging platform) • Extend on-premises solution to the cloud • Visual Studio 11 and Windows 8 to develop solutions • Improved Performance and Scalability • Easily extend your on-premises BizTalk Server • In-place migration from BizTalk Server 2010 • HL7 MLLP adapter performance improvements solution to the cloud in a secure manner• Extended Platform Integration • Better performance with ordered send ports • Tighter integration of on-premises BizTalk Server • Enhanced scale out configuration with multiple hosts applications with Windows Azure Service Bus • DB2 client connectivity to SQL Server, conversion of commands to T-SQL, • Expanded adapter options for faster batch • Improved Licensing migration of packages to stored procedures processing • Adjustments to licensing that are geared towards • Adapter connectivity to new data sources, cloud hosting, including: including IBM Informix V11 and IBM IMS/DB V11 • Purchase from a hoster on a monthly basis (SPLA) • Register your existing license with a hoster (License Mobility) 111
  106. 106. 5/2011 Cumulative Updates +6 months11/2010 BizTalk Server 2013BizTalk Server 2010 Windows Server 8 112
  107. 107. Questions?
  108. 108. ••• 114
  109. 109. Rua Passos Manuel Nº 223 4º Andar 4000-385 Porto