I have received requests for what might be called “Developing for BAM 101”. To address these requests I am planning to provide a topic set that will help the new BAM code developer get started. I have outlined our proposed set of topics below. I welcome your feedback on these topics. Does this set of topics address the needs of the new BAM developer?

The topics in this table of contents will initially be delivered as a stand alone document set. on the Microsoft Dev Center. Moving forward the contents of this guide will be pushed into the core documentation for the BizTalk Server.
The target audience for this document is the new BAM developer. This document will focus on development tasks associated with handling BAM events.

Getting Started Developing For BAM

Topic: What is BAM?
Content: This will be brief overview of BAM and will point to other resources.

Topic: Why Write Code for BAM
Content: This topic discuss the advantages and benefits gained by writing code to perform BAM tasks.
Additional topics that topic covers are code written to be called from inside BizTalk Server using the OrcheestraionEventStream and MessagingEventStream APIs and the use the native Interceptor.
Code written to be called from outside of BizTalk Server using the BufferedEventStream and DiredEventStream.

Topic: BAM Concepts for the Developer
         Topic: What is an Activity
         Topic: Tracking vs. Transactional Processing
         Topic: What are Continuations
         Topic: What is a Reference

Topic: BAM Development Prerequisites

Topic: Other Prerequisites
      Topic: Prerequisites for developing against a BizTalk Solution
      Content: This topic contains information on what minimal BizTalk and BAM infrastructure components must be in place before you can develop against them.

Topic: Key APIS for BAM Development
Content: This topics covers the BAM name spaces and describes the usage of the key BAM APIs. This topic may have several subtopics to address separate areas of functionality.

Topic: Best Practices for BAM development
         Topic: Developing Secure BAM code
         Topic: Considerations for developing BAM code solutions
         Content: This topic helps steer the new developer around common programming issues that are encountered by the new BAM developer.

Topic: Simple Sample
Content: The sample is a minimal sample designed to highlight the usage of the APIs without burying them in to much complexity.