Friday, November 7, 2008

BIzTalk Interview Questions With Answers Part 1

a)      What is the difference between a Document Schema and a Property Schema?

b)      A document schema is like any regular schema, whereas a Property schema consists of only child elements under a root node.

c)      Can an Envelope schema consist of more than one schema type?

d)      Yes. Technically it is possible.

a.       A Pipeline's job is to convert any external format into XML, be it a flat file or EDI or anything else.

b.      Can multiple messages be processed or batched without an envelope schema?

                                                              i.      It is possible to process multiple messages, without an envelope.

c.       What is property promotion, why is it required?

                                                              i.      When a property is Promoted, it is exposed to the orchestration/send port filters etc.

d.      In which scenarios would use a "promoted property" vs "distinguished fields"?

                                                              i.      The rule here is, if you dont want the schema element to appear in send port filters/debugging information then make it a distinguished field.

e.       In Biztalk, what does a message type consist of?

                                                              i.      A message type consists of the TargetNamespace#RootElement name.

f.       What are un-typed messages, how does one create them?

                                                              i.      A message created in BizTalk Orchestration is bound to a schema, this is a typed message. In un-typed messages, the message is bound to System.Xml.XmlDocument instead of a schema.

g.       What is the difference between static, dynamic and direct binding?

 

h.      How does one enable subscriptions in BizTalk?

                                                              i.      A filter on the Send Port is the first step to enable subscriptions in BizTalk.

 

1) What is BizTalk?

      Biztalk is a messaging based integration tool.

      Bonus: It consists of several different pieces including Business Processes (Orchestrations), BAM, Rules Engines, and HAT.

In BizTalk 2002, schemas were DTD based and allowed Xml Elements to be in any order inside a record using the keyword.  How is this different in BizTalk 2004? BizTalk 2004 is XSD based.BizTalk 2004 Elements default to and is no longer available.

2) What is a Message Type (i.e. BTS.MessageType) and how is it used in BizTalk?

         Message Type is a BizTalk System property that is promoted inside a Pipeline.  It is made up of Document Name Space # Root Node Name.

3) How do you call a Non-Serializable .Net helper class inside an Expression Shape?

     Add a reference to that class.         Make sure your 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.      Mention the class must be strongly signed and in the GAC.

4)What if the class is Serializable?

       No transactional Orchestration or Atomic scope is needed.

What does the Value Mapping Functoid do?

     Returns the second parameter if the first parameter is true

5)How do you use Auto Mapping in the BizTalk 2004 mapper?

        Select a top level node, hold down the Shift key, drag the top level node over to the other top level node.

6)What is the default mapping for Auto Mapping?

       The default is by structure.  This can be change to by node name on the map properties. (This default in the auto map messes me up every time.)

7)Step-by-step, how do you set up a basic, pure messaging solution taking in a flat file and send an Xml File out to 5 different places?

      Create a Flat File schema, Create a Custom Pipeline using the Flat File Disassembler,Create a Receive Ports,Create 5 Send Port, Create a Send Port Group, Add each Send Port to the Send Port Group,Create a Filer on the Send Port Group using Bts.ReceivePortName (or something close to this),Additional: no map is required but it is ok to mention it

Design (Architecture) Focused Questions

8)What is the difference between a Distinguished field and a Promoted Property?

Distinguished fields are light weight and can only be used inside an Orchestration.

Promoted Properties are defined inside a property schema, are tracking in SQL, can be tracked in HAT, and can be used for content based routing.

9)How do you achieve First-In-First-Out message processing of messages received from multiple sources using an Orchestration?

Use a Sequential Convoy to process the messages in the order they are received into the Message Box. 

 Make sure Ordered Delivery is set to True inside the Orchestration Receive Port.

10)At high level, what do Receive Ports and Orchestration Send Port really do in terms of messaging? What about Send Ports and Orchestration Receive Ports?

Receive Ports and Orchestration Send Port are both publishers.

Ports and Orchestration Receive Ports are both subscribers.

11)When working with Schemas, Maps, Pipelines, and Orchestrations how should the projects be structured?

Schemas and Maps in its own project

Or Schemas and Maps together in its own project

 Orchestrations in its own project

 Pipelines in it own project

12)What is direct binding?

 Direct binding has three types: direct to message box, self correlating, and partner ports.

Used to route message between the message box and Orchestrations without using bindings or from one Orchestration to another Orchestration.

13)What is BAM used for?

BAM is used to monitor business milestones and key metrics in near real-time throughout a process in BizTalk.

14)What is the Rules Engine?

        Rules are used to provide highly efficient, easily changeable business rules evaluation to Business Processes.  This allows rules to be changed without rebuilding and redeploying .net assemblies.  The Business Rules Engine (BRE) can also be called from any .net component through the API’s.

15)What are Persistence Points and what causes them?

 Persistence is when the state of a running Orchestration is stored into SQL.    It is good enough to know various shape and actions cause persistence.  More specifically, it occurs: end of a transactional scope, at a send shape, at a start Orchestration shape, during dehydration, if the system shuts down expectedly or unexpectedly, or the business process suspends or ends

16)What group does a user need to belong to in order to submit messages to the message box? 

 The user needs to be a member of the hot group or isolated host group (assuming a default installation).

17)What user rights to you need to perform most actions in HAT?

 BizTalk Server Administrator

18)When installing Biztalk in a multi-server configuration with a remote SQL and Analysis Services, what SQL components do you need on the Biztalk Server?

       SQL Analysis Services Client Tools

19) installing Biztalk and SQL on a Windows XP SP2 Desktop, what pre-requests are required?

     Correct answer: A Lot.  The best answer something like I have a custom written              installation document I use or I always referrer to the most current updated installation guide from Microsoft. 

BizTalk Interview Questions

BizTalk Questions Without Answers

1)       How do you call a Non-Serializable .Net helper class inside an Expression Shape?

2)       What is BizTalk?

3)       How do you use Auto Mapping in the BizTalk 2004 mapper?

4)       What if the class is Serializable?

5)       What does the Value Mapping Functoid do?

6)       What is the default mapping for Auto Mapping?

7)       What is a Message Type (i.e. BTS.MessageType) and how is it used in BizTalk? 

8)       Can an Envelope schema consist of more than one schema type?

9)       What is the difference between a Document Schema and a Property Schema?

10)   Enumerate the new functoids added BizTalk 2006?

11)   Does BizTalk 2004/2006 support Synchronous communication? 

12)   How does one enable subscriptions in BizTalk? 

13)   What is the difference between static, dynamic and direct binding? 

14)   What are un-typed messages, how does one create them? 

15)   In Biztalk, what does a message type consist of?

16)   In which scenarios would use a "promoted property" vs "distinguished fields"? 

17)   What is property promotion, why is it required?

18)   Can multiple messages be processed or batched without an envelope schema? 

19)   Can a flat file message be processing without a pipeline?

20)   What is the difference between a Distinguished field and a Promoted Property?

21)   How do you achieve First-In-First-Out message processing of messages received from      multiple sources using an Orchestration?

22)   At high level, what do Receive Ports and Orchestration Send Port really do in terms of messaging?  What about Send Ports and Orchestration Receive Ports?

23)   When working with Schemas, Maps, Pipelines, and Orchestrations how should the projects be structured?

24)   What is direct binding?

25)   What are Persistence Points and what causes them?

26)   What is the Rules Engine?

27)   What is BAM used for?

28)   What group does a user need to belong to in order to submit messages to the message box?

29)   When installing Biztalk in a multi-server configuration with a remote SQL and Analysis Services, what SQL components do you need on the Biztalk Server?

30)   What user rights to you need to perform most actions in HAT?

31)   When installing Biztalk and SQL on a Windows XP SP2 Desktop, what pre-requests are required?

32)   What is the main difference between a Long-Running transaction and an Atomic Transaction in BizTalk context?

33)   Does BizTalk automatically compensate a unsuccessful transaction?

34)   Is it possible to share variables across two branches in a Parallel shape

35)   How does one enable Correlations in BizTalk?

36)   Is it possible to have a exception block for an Atomic scope? if not why?

37)   What is the difference between an Exception block and a Compensation block? is it the equivalent of try-catch-finally?

38)   When do we need set the property "Synchronized" = true for a scope?

39)   Is it necessary for all .NET components being called from an Orchestration be Serializable?

40)   Can an orchestration Start without an Activatable receive?

41)   What is the purpose of the property "Activate" in a Receive shape?

42)   Does BizTalk Orchestrations support recursion?

43)   What is the difference between a "Message Assignment" shape and an "Expression" shape?

44)   When you use Call Orchestration shape vs Start Orchestration shape?

45)   What is the difference between a delay shape vs a listen shape?

46)   How do you prevent occuring of zombies in a Parallel Convoy?

47)   Enumerate the steps required to deploy an BizTalk solution from one machine to another machine.

48)   List out the three important things to consider while designing a BizTalk orchestration!

49)   In an Orchestration design, Orchestration "A" calls another Orchestration "B", and vice versa. Is it possible to implement this design?

50)    Can we get messages to Orchestration without using schema?

51)   How to version your schema?

52)   How to transfer files without using Orchestration?

53)   What is Message routing and Content routing?

54)   What are Host and Host Instance? Did you deploy BizTalk more than one machine?

55)   On which level you have worked in BizTalk development 1-Orchestration, 2-Ports & Adapters?

56)   How and why you have to use Active Directory in BizTalk development?

57)   How did you connect InfoPath with WebServices?

58)   In BizTalk development where and how you have to use custom developed .NET components?

59)   Where and how did you use WebServices in Orchestration?

60)   What is difference between Promoted property and distinguished property?

61)   How to use custom developed adapters?

62)   What is convoy and correlation sets?

63)   How to create dynamic ports?

64)   How to put data using SQL Adapter?

65)   Source schema has nodes First Name, Last Name and destination schema has node Name. How we can get data at destination so that we can have two instance of Name (without using orchestration).

66)   What is Bindin files?

67)   What is Host and Host Instance? Did u deploy BizTalk on more than one machine?

68)   Did You work BAS and Share Point Services? What the types of Share Point Services Setup?

69)   What are the different ways BizTalk can be integrated with SAP?

70)   In a BizTalk project how to consume an external web service?

71)   What is BAM?

72)   What is BAS?

73)   What are adapters? What do we need it?

74)   How to debug an Orchestration?

75)   In the Orchestration what is the difference between Exception and Compensation? Give an example of its usage scenario.

76)   Can we do messaging in BizTalk without Orchestration? If yes how?

77)   What is a Convoy? Why do we need it? Give usage scenario for each Convoy.

78)   Explain the Publisher - Subscriber of BizTalk

79)   What is a Message Box?

80)   What is the difference between MSMQ and MSMQT? Why do we need MSMQT?

81)   What are the security groups created by BizTalk?

82)   What is the difference between distinguished fields and Property fields? Give an example with usage scenarios for each.

83)   What is a MessageType?

84)   What is correlation? Why do we need it?

85)   What is a targetNamespace? Why do we need it?

86)   What is the difference between Windows Workflow and BizTalk server? Explain the scenarios

87)   How to deploy BizTalk in a multicomputer scenario. Assume there would be DMZ and Corpnet?

88)   Explain the Pub-sub of BizTalk ?

89)   What is the need to create MSMQT by BizTalk team when MSMQ is already available?

90)   Architect a solution that would receive 100 messages of 50 - 100 MB in size and process them in 3 mins?

91)   How to deploy BizTalk in a highly available scenario?

92)   What is the future direction of BizTalk?

93)   Why do we need convoy?

94)   How to resubmit a suspended message? What is possible and what is not possible?

95)   How will you create an Error handling framework in BizTalk?

96)   Have you ever used BizTalk server in a scenario other than in a typical messaging environment?

97)   What are the draw-backs of BizTalk?

98)   What has been your most difficult challenge in implementing Biztalk applications in the real world?

99)   What are the challenges you have faced using Soap Adapter?

100)                        What are persistence points?

101)                        What is distinguished Field?

102)                        What is property promotion?

103)                        What are the adapters you have used?

104)                        Can you use excel file in File Adapter?

105)                        How will you specify delimiters for Flat File?

106)                        What is debatching in BizTalk?

107)                        What are the communication patterns available in BizTalk?

108)                        What is XPath? Benefits?

109)                        What are the available message types?

110)                        How does BizTalk Server Integrate with Microsoft Dynamics ERP and CRM solutions? 

111)                        How does BizTalk Server integrate with Office?  

112)                        Where can I find more information on BizTalk RFID  

113)                        What specific functionality will be supported with BizTalk RFID? 

114)                        What is RFID?

115)                        Where can I find more information on SOA?

116)                        What is an ESB and how can Microsoft help me?

117)                        Are there different editions of BizTalk Server?

118)                        What is the difference between accelerators and adapters, and how do we know if our company needs them

119)                        What are the BizTalk Server Adapters, and how do the help customers do business?

120)                        Why should I bet on MS for my SOA/ESB solution? 

121)                        What services and support do you offer for BizTalk Server?   

122)                        What platforms does BizTalk Server support? 

123)                        What advantages does BizTalk Server 2006 R2 offer over the 2006 release?

124)                        How does BizTalk Server work with Office System products like SharePoint and InfoPath?