1. Tell me what are the various types of BAM Interceptors available?

The BAM Interceptor is an object that lets you instrument your application to capture data of interest.
☛ BAM WCF interceptor: BAM can capture data from SOAP envelope in a WCF request, response or fault message. The data is specified using interceptor configuration (IC) file (XML file created by developer). The service's app.config must be modified to load the BAM components at runtime.
☛ BAM WF interceptor: like WCF Services, BAM can also capture milestones from WF Activities. Am IC file is used to specify the data that must be captured. BAM components must also be loaded at runtime.

2. Explain me what are various event streams used in BAM API?

☛ Orchestration Event Stream (OES)
Asynchronous, participates in BizTalk orchestration transactions.

☛ Buffered Event Stream (BES)
Asynchronous, high throughput, some latency.

☛ Direct Event Stream (DES)
Synchronous, no latency and directly written to the BamPrimaryImportDb.

☛ Messaging Event Stream (MES)
Asynchronous, participates in BizTalk Server pipeline transactions.

3. Explain me how many database are used by BAM?

☛ BAMPrimaryImport,
☛ BAMStarSchema,
☛ BAMAnalysis,
☛ BAMArchive,
☛ BAMAlertsApplication and
☛ BAMAlertsNSMain.

4. Explain me what is ContinuationID?

Continuation is the ability to contribute to a single BAM activity from different applications by using two different unique identifiers as the ActivityID. For example, in one part of a business process, a customer's PO number might be used to track an activity. In another part of the process, an internal order fulfillment number might be used to track the same activity. You could enable continuation and relate the PO number and the order fulfillment number, so that both parts of the process could add information to the same activity.

5. Tell us what is BAM Portal?

It is a Web-based feature that consists of a collection of ASP.NET pages, it portal provides real-time, end-to-end visibility into a business process.

6. Tell me is BAM Tools a prerequisite for EDI/AS2 Runtime in BizTalk Server 2010?

That depends on the functionalities (features) you want to install, but for me the correct answer is no.

7. Do you know what is TDDS?

Tracking Data Decode Service or TDDS, is a service that moves event data from the MessageBox database to the BAM Primary Import database. This service processes and persists both Business intelligence and BizTalk Health Monitoring data.

8. Explain me what is the Rules Engine?

The Run-Time Rule Engine performs the following functions:

☛ Processes rules created as declarative statements without procedural instructions
☛ Groups all the rules that apply to a business process together (a policy) without having to arrange them in order of, or define them in terms of, relationships, contingencies, or dependencies
☛ Resolves rule conflicts arising from the simultaneous presence of multiple facts and conditions
☛ Supports forward chaining of rules that involves reevaluating rules in the executing policy based on changes to the fact base (addition/removal of facts or changes in state/data of existing facts). Forward chaining does not inherently span policies

9. Tell us can we have multiple views created on single Activity?

Yes its possible to have multiple views on single Activity.

10. Tell me it is required to track custom code used in application, which can be used TPE/BAM API or both can be used?

TPE can't be used here as it can only be used to capture data from BizTalk artifacts, thus BAM API have to be used.

Download Interview PDF

11. Top Biztalk Bam Job Interview Questions:

☛ 1. What jobs do you need to configure when you install BizTalk
☛ 2. What is thresholds
☛ 3. Why do you have automatic throttling states and what can it be used for
☛ 4. What does a “high available environment” mean
☛ 5. What is NLB
☛ 6. What is host architecture
☛ 7. How do you route messages by receive port name
☛ 8. How do you measure performance for BizTalk
☛ 9. What are the four most important BizTalk databases
☛ 10. What are the dangers of filters combined with send port groups and multiple send ports
☛ 11. What needs to be backed up for a complete disaster recovery
☛ 12. What is an orphan message
☛ 13. What is a zombie message
☛ 14. what is a DNS server
☛ 15. How can you improve performance for BizTalk
☛ 16. What is ment by “parties”
☛ 17. Which default adapters cannot run with 64 bit OS
☛ 18. Which default adapters can only run with a single host instance
☛ 19. What is TDDS
☛ 20. What are best practices for tracking in production
☛ 21. What is global tracking and what does it track when global tracking is on
☛ 22. What is the difference between BizTalk 2009 and 2010
☛ 23. What is a Cumulative update
☛ 24. how many BizTalk versions is there
☛ 25. What is the BizTalk Adapter Pack
☛ 26. What is the ESB toolkit
☛ 27. What is required to install the Sharepoint adapter
☛ 28. What is special about the BizTalk Backup job?
☛ 29. What SQL agent job came in BizTalk 2010?
☛ 30. What tool were removed in BizTalk 2009?
☛ 31. How do the BizTalk Administration Console cache applications?
☛ 32. How can you solve slow administration consoles
☛ 33. What should be included in a basic guideline
☛ 34. What can you use the tracking database for
☛ 35. What is a trusted / un-trusted host
☛ 35. What is MSMQ used for?
☛ 36. What is ment by dedicated hosts
☛ 37. Should the DTA Purge and Archive job be configured and running if you have global tracking turned off?
☛ 38. What has not been changed regarding hosts since BizTalk 2006?
☛ 39. How do you turn of global tracking in BizTalk 2006 – 2006 R2
☛ 40. What is the main difference between BAM and DTA?

12. Tell us is it possible to integrate BAM installed on server1 and BizTalk installed on server2?

Yes its possible with a condition that BAM server has to be part of the BizTalk group.

13. Tell me is it possible to apply BAM on the retry mechanism of Send Port?

No, Because the code execution for retry happens in adapter which is out of the BAM tracking scope.

14. Tell me where BAM collects raw tracking data?

BAM collects raw tracking data from the BAMPrimaryImport (BAM Primary Import) Database.

15. Tell me what is the difference between TrackingProfile DB and DTADB?

Both are same and terminology is used interchangeably.

16. Please explain what is correlation?

An Orchestration can have more than one instance running simultaneously. Even though each of those multiple instances perform the same action, it does it on different data contained within a message. Correlation is a process of associating an incoming message with the appropriate instance of an orchestration. For Example: If your orchestration issues a purchase order, receives an invoice, and sends a payment, the developer must make certain that the invoice message is received by the orchestration instance which corresponds to the orchestration that sent the Purchase Order. Without correlation, it would be possible to send out an invoice for thousands of items even though the purchase order is for one. And each correlation is based on a set of properties known as correlation types

17. Tell us what is the dfference between Real Time Aggregation and Scheduled Aggregations used in BAM?

The storage of RTA is a SQL table and the aggregation is updated and maintained by SQL trigger. The event importing and aggregation update are completed in the same transaction, therefore its data latency is negligible and almost real-time. The scheduled aggregation is saved in Olap cubes which need to be processed periodically by the cubing DTS package

18. Tell me where the data came from, what the BAM Data Sources?

The most commonly data sources used with BAM are:
☛ BizTalk Application
☛ BAM API
☛ WCF Services (WCF Interceptor)
☛ WF Workflows (WF Interceptor)

19. Explain me what is Activity Relationship?

An activity relationship exists when an activity relates to one or more other activities. An example of this is having multiple Shipment activities related to a single Purchase Order activity, or one Shipment activity containing items from two Purchase Order activities.

To indicate that two activities are related, you need to know both names and have the corresponding ActivityIDs in memory in order to call AddRelatedActivity. This API creates the link between the corresponding activity records.

20. Explain me what is BAM and whats the benefits of using it?

Business Activity Monitoring (BAM) is used to monitor business milestones and key metrics in near real-time throughout a process in BizTalk. Business Activity Monitoring (BAM) is a module in BizTalk that captures business data and process milestones to allows business decision makers to gain insight of their in-flight processes. Using BI tools to derive up-to-date metrics and key performance indicators from the BAM databases, users can forecast process trends and monitor processes in real-time. BAM also provides a mechanism to alert users to situations that require their intervention to prevent undesirable outcome or to encourage a beneficial result.

21. What is rehydration?

When a message is received, or else when a timeout has expired, the orchestration engine can be automatically triggered to rehydrate the instance – it is at this point that the orchestration engine loads the saved instance of the orchestration into memory, restores the state, and runs its from the point it left off.

22. Explain how do you call a Non-Serializable .Net helper class inside an Expression Shape?

Add a reference of that dll (class). The class must be strongly signed and in the GAC.
Make sure your transaction type of Orchestration is Long Running transactional.
Add an Atomic scope.
Create an Orchestration variable of that class inside the scope.
Create an instance on that object inside the scope.
Call the method

23. Explain me is there any shape in Orchestration which can't be tracked?

Yes. There are some shapes like:
☛ Terminate
☛ Throw Exception
☛ Group
☛ Loop
☛ Message Assignment
☛ Suspend
☛ Transform

24. Tell me what is this tool BM.EXE and why do I need it?

BAM Management utility or “bm.exe” provides for end-to-end management and deployment of BAM. You can use the BAM utility to perform the following tasks:
☛ Consume BAM definition and BAM configuration XML as input.
☛ Deploy the run-time infrastructure on the server, which includes the BAM Primary Import database, BAM Star Schema database, BAM Analysis database, and corresponding Data Transformation Services (DTS) packages.

Download Interview PDF

25. Do you know what is a BAM View?

A BAM view is a representation of the milestones and business data tracked in one or more activities on the BAM Portal.

26. Tell me what is an Activity and an Alert?

BAM Activities identify the milestones and tracking data an individual is interested in tracking. Milestones are the steps in an activity that are measured in time, and tracking data are the key data points in a process you are interested in tracking (such as a customer ID or name).