Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM...

43

Transcript of Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM...

Page 1: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.
Page 2: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

CON308

Building an Enterprise-Wide Instrumentation Solution Using the

Microsoft BizTalk BAM Infrastructure

Ulrich Roxburgh,Solution Architect,[email protected]

Services2 Ltd.

Page 3: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Raise awareness of the existence of the Business Activity Monitoring (BAM) technology

Detail BAM capabilities

Demonstrate how it can be used to provide a “enterprise-wide” instrumentation layer

Session Objectives

Page 4: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

The Problem Space

“The Business,” Support Staff, Developers, Stakeholders…

Needs to see what is going onand in a simple

understandable model

Page 5: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Instrumenting the Enterprise

BAM

Page 6: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

SLA Monitoring

BAM

SLA: 3 Minutes

SLA: 5 Hours

Page 7: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

End-to-End Instrumentation

BAM

ASP.NETBizTalk

...

Thick Client

WF ASMXWCF

.NET

Page 8: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BAM Overview

Page 9: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Business Activity Monitoring?

Key component of BizTalk ServerHigh-performance and scalable tracking framework Real-time visibility into business processesAutomatic creation of business monitoring infrastructure (no coding required)

Tables, Views, Archival, OLAP Cube

BAM Event API “Free” once you’ve purchased a BizTalk Server license (BizTalk Server 2006)

BAM API can be installed on non-BizTalk servers if BizTalk is used as part of your solution

Page 10: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Maps KPIs to Orchestration

Data Of Interest

Identifies KPIs

Business Activity MonitoringInformation Worker, Stakeholder..

Needs real-time visibility in a familiar user interface

Analyst, Stakeholder..

Analyzes information and defines what data will be presented and how

Developer

Knows how toget the data

ObservationModel

BAM Infrastructure

Page 11: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Itinerary

Customer Name Business Data (Text)

Customer Age Business Data (Integer)

PO Submitted Business Milestone

PO Processed Business Milestone

A Few Quick Concepts

BAM ActivityCollection of data items

Implemented as a SQL Table

Page 12: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Operations View

Total PO Processing Time Aggregation (Duration)

Supplier Web Service Time Aggregation (Duration)

Shipping Processing Time Time Dimension (Total Shipping Processing Time)

Purchase Order

Customer Name

Customer Status

Total PO Price

PO Submitted

PO Processed

A Few Quick Concepts...

BAM Activity ViewConsolidated “view” of activity data itemsImplemented as a SQL View/OLAP CubeMeasures, Dimensions (Progress, Data, Time, Range)

Business View

POs Processed Aggregation (Count)

Shipping Address Data Dimension (Going To)

Page 13: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BAM Observation Model

Defined using Excel via an add-inActivities and Activity Views created through a wizardData is simulated through PivotTables to help visualize Activity ViewsObservation Model then created by Exporting BAM XML or using the Worksheet directlyExcel can be used for Aggregation views

RTA Aggregations for real-time monitoring Deploy the Excel Spreadsheet for automatic connection

Page 14: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BAM Observation Model

demo

Page 15: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BAM Database Infrastructure

Provisioned automatically by bm.exeActivities are represented as SQL TablesViews are represented by SQL Views and optionally OLAP Cube

Some features require OLAP Cube processing unless RTA is used

Highly performantActive and Complete SplitPartitioningArchiving

Specific indexes can be supplied at creation time

Useful for tuning YOUR queries against the BAM databaseNo need to tune otherwise

Page 16: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BAM Database Infrastructure

demo

Page 17: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Tracking Profile Editor (TPE)

BizTalk Server onlyGraphically define the source for BAM data

Drag Shapes and Message Data to the Activity definition created via Excel

No code required, instant deploymentInstrumentation points are not fixed Can retrofit your existing systems with easeMuch improved in BizTalk Server 2006

New Event SourcesMessaging Context, Pipelines…

Page 18: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

TPE

demo

Page 19: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BAM Portal

Available “in-the-box” with BizTalk Server 2006Activity Searches

Enable you to search and view any activity data with full reference semantics

Aggregation ViewsAny Activity Views defined visible via the portalPivotTable and Chart Views

Not extensible apart from basic skinningBut may be enough for your scenario

SQL Notification Services integration

Page 20: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Tracking Portal

Providing a view “inside the black box”Not just about “support” rolesDifferent variations can be used for all interested parties

Support Staff

What went wrong with PO: 1234 ?

Business User

How many POs are we receiving a day?

0

10

20

30

40

50

60

70

80

90

1st Qtr 2nd Qtr 3rd Qtr 4th Qtr

EastWestNorth

Page 21: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Tracking Portal

demo

Page 22: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BAM Internals

Page 23: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Activity Creation

A unique ID (ActivityID) is supplied at creation time

Examples: BTS.InterchangeID or System.Guid.NewGuid().ToString();

Activities can be long runningThey are “begun” and “ended” explicitlyAllows Activities to be added to over time

Whilst they are in the “begun” state they are held in the “xx_Active” tableWhen completed a trigger fires and they are moved to the “xx_Completed” table

Page 24: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Hotel Activity

Flight Activity

Hire Car Activity

Travel Insurance Activity

Itinerary Activity

Activity References

Any Activity can link to one or more ActivitiesMost Observation Models “model” interrelated items

Orders, Line Items, Credit Card Authorisation..

Stored in thebam_<ActivityName>_<Status>Relationships table

Page 25: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Custom References

“Link” some data to an ActivityUseful for attaching data which doesn’t naturally fit into Activity Data ItemsMessage Bodies are the most common approach

Can only be utilised via the BAM APIAddReference method (longReferenceData)Stored in the

bam_<ActivityName>_<Status>Relationships table

Page 26: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Continuation

Enables multiple “sources” to contribute to Activity Data

The downstream source may not have access to the same ActivityIDContinuation allows you to supply a “new” ActivityID that the downstream system has access to

Must also be used for any Asynchronous EventStream usage even if the same ActivityID is used

Itinerary Message Containing

CustomerReference CustomerRef I …….. I FlightREference

BAM Activity

Wiley Flight Services Booking

Web Service

Wiley Travel Services BIZTalk Solution

ActivityID: CustomerReferncce

ActivityID: BookingID

Booking ID

Page 27: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BAM without BizTalk!

Page 28: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BAM API

Four Event StreamsDirectEventStreamBufferedEventStreamOrchestrationEventStreamMessagingEventStream

BeginActivity, EndActivity, UpdateActivity, EnableContinuation, AddReferenceUntyped to enable flexibilityUnlike TPE your instrumentation points are hardcoded

Page 29: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

GenerateTypedBamApi

BAM API code requires heavy usage of string literals

Brittle, time-consuming, prone to errors…GenerateTypedBamApi enables you to generate a typed API against your Activity DefinitionUtilises a XSLT transform to generate C# codehttp://www.codeplex.com/GenerateTypedBamApi

string ActivityID = System.Guid.NewGuid().ToString();

es.BeginActivity(“Itinerary”,ActivityID);

es.UpdateActivity(“Itinerary”,ActivityID, ”Name”,”Darren”);

es.EndActivity(“Itinerary”,ActivityID);

Page 30: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Instrumentation in Code

demo

Page 31: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BAM Interceptors

Interceptors (Shipped in BizTalk Server 2006 R2)

Windows Workflow (WF)SharePoint not possible at this time

Windows Communication Foundation (WCF)Custom

Instrument key points of your application

Page 32: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BAM Interceptors

demo

Page 33: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Why Would You Not Use TPE?

It’s graphical and easy?Modelling Continuation can be confusingLooping constructs are awkwardCan’t really test it independentlyYou often end up with a mixture of TPE and BAM API which can confuse mattersOnly available for BizTalk parts of your solution

It’s often a personal choice, butCode is easier to understand Straightforward to test directly against the APISource Code DiffHard if you don’t use the GenerateTypedBAMAPI approach

Page 34: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Reporting Services UI

Available “in-the-box” with Microsoft SQL Server 2000 and 2005“Reports” are built using Microsoft Visual Studio or the new Report Builder Windows Forms applicationQuick and straightforward “Portal” developmentReports can also be rendered to PDF, Microsoft Office Excel, etc.

Page 35: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Sample SQL QueriesSELECT ActivityID,Customer$Name,Received,Processed,Address,County,Town,Post$Code,Telephone$Number,Total$Itinerary$PriceFROM bam_Itinerary_CompletedInstances

SELECT f.*FROM bam_Flight_AllInstances f,bam_Itinerary_AllRelationships rWHERE r.ActivityID = @ItineraryActivityIDAND r.ReferenceName = ‘Flight’AND r.ReferenceData = f.ActivityIDAND r.ReferenceType = ‘Activity’

SELECT f.*FROM bam_Hotel_AllInstances f, bam_Itinerary_AllRelationships rWHERE r.ActivityID = @ItineraryActivityIDAND r.ReferenceName = ‘Hotel’AND r.ReferenceData = f.ActivityIDAND r.ReferenceType = ‘Activity’

Page 36: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Tracking Portals

demo

Page 37: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Summary

The Tracking Portal concept can be incredibly important to the supportability of your solutionBAM has a place in virtually all BizTalk solutions

Huge benefit to the overall solutionRemember that you can retro-fit your existing systems with ease

BAM can be used on non-BizTalk serversInstrument your entire solution end-to-end

WCF and Windows Forms BAM Interceptors coming soon

Page 38: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Problem Space, Tracking Portal Demonstration

Real-World Usage Scenarios

BAM Overview

BAM Internals

Getting data into the BAM tables

Tracking Portals

Summary

Page 39: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

ResourcesTechnical Communities, Webcasts, Blogs, Chats & User Groupshttp://www.microsoft.com/communities/default.mspx

Microsoft Developer Network (MSDN) & TechNet http://microsoft.com/msdn http://microsoft.com/technet

Trial Software and Virtual Labshttp://www.microsoft.com/technet/downloads/trials/default.mspx

Microsoft Learning and Certificationhttp://www.microsoft.com/learning/default.mspx

Page 40: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

BizTalk Server TrainingBizTalk 2006 R2 Jumpstart Training (2 Days)

 The course will explore new functionality such as WF and WCF integration with BizTalk, but assumes some existing knowledge in these areas. The course also explores the new EDI and RFID technologies.Prerequisites:

 Experience with Visual Studio 2005, C# and .NET development.1+ year of experience with BizTalk Server 2006 is essential.

AUCKLAND – Dates TBC - register your interest by emailing [email protected]

Designing and Developing BizTalk 2006 and 2006 R2 Solutions (3-day workshop)

BizTalk Architecture – Standards - BizTalk Tools - Development and Web ServicesDebugging and monitoring - Business Rules Engine - Single Sign-On - Deployment and

administrationAdvanced techniques (time permitting) - Hands-on Labs (real-life, end-to-end scenario)Cost $1500 per personLocation Microsoft or on client PremisesDate – Organised as required Email [email protected] to arrange your training

Page 41: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

WW BizTalk R2 Launch Event in Sydney - Sept 14th   September 14 - Sydney, Australia - Sydney Convention & Exhibition Center

9:00 - 9:30 Registration

9:30 - 10:10 Keynote - Empowering Dynamic IT (Don F)

10:10 - 10:30 Break

10:30 - 12:00 BizTalk Server 2006 R2 - Extending the Connected Enterprise

12:00 - 13:00 Lunch

Industry Solutions(Health)- Content Owner – Renee Cathcart

Industry Solutions(Commercial)- Content Owner – Jane Mackarell & David Cryer

Industry Solutions (FSI)- Content Owner – Angela Larkin (BPM

session only)

13:00 - 14:00

Health Information Networks – ie focus on the Health Connect Engine

Supply Chain Management – Hub & Spoke ie How to Integrate disparate systems within Large ERP

systems?Business Process Management in

Organisations (FSI slant)

14:00 - 14:15 Break

14:15 - 15:15 Supply Chain Management – Business Process

Automation & Monitoring (eg Bryn/Datanet & RFID, Dynamics)

CCF (telco & FSI – Services presentation)

15:15 - 15:30 Break

15:30 - 16:30 Supply Chain Management – B-B ie ecommerce &

trading grids (eg Tony from FormFill presenting value chain integration in utilities)

ASB

Email [email protected] for more information  

Page 42: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

Q&A

Page 43: Raise awareness of the existence of the Business Activity Monitoring (BAM) technology Detail BAM capabilities Demonstrate how it can be used to provide.

© 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after

the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.