As promised here’s my draft Table of Contents for my upcoming Professional BizTalk Server 2006 book.
This TOC is subject to change and I haven’t gone into full detail in each of the chapters for obvious reasons but it’s hopefully enough to whet your appetite! As ever I’m really keen to get feedback and ideas to make sure it really hits the mark for you all.
The Technical Primer chapter is done and I’ve virtually finished the Business Activity Monitoring Chapter, but there's still a lot of work to go!
Chapter 1: Technology Primer
In this chapter I cover XML Schema, XML Namespaces, XPath and Serializable classes, these are core development techniques that you need to understand to make the most of BizTalk Server development. This chapter does not cover the technologies in huge depth but gives you enough to understand why certain things happen the way they do when developing a BizTalk solutions (Schema is a constant source of developer headaches!)
Chapter 2: BizTalk Overview
BizTalk Server 2004 Unleashed is a good introduction book so we are not going to go there in this book – this should be a small intro to get the architecture of BizTalk straight in peoples minds (i.e. Messages don’t go straight from Adapters to Orchestrations)
Chapter 3: Adapters
In this chapter we will cover the BizTalk Adapter architecture and detail how it works under the covers (batches, interchanges, etc.) and then drill into each of “in-box” adapters detailing the nuances of each one, tips/tricks, registry keys, configuration, don’t use this in “this scenario”, etc.
Chapter 4: Pipelines
Pipelines are a very powerful and overlooked BizTalk development technique, we’ll discuss how they work, demonstrate some custom dissasembler/assembler components and outline scenarios where they have worked to great effect. Cover XML Splitting, BAM, Resumable interchanges, etc.
Chapter 5: Orchestration
We’ll cover the usual shapes in this chapter and how things work under the covers, a big focus on persistence points which are the key to good performance, transactions, calling .NET components (the right way), serializable classes, atomic scopes, orchestration patterns, XPath function, how to get around the common desire to use XMLNode and other non-serializable classes.
Chapter 6: Business Activity Monitoring
This chapter will drill heavily into BAM and will cover real-world scenarios where BAM has become the centre of the solution and rightly so, when to use TPE, when to use the Event Streams yourself via code and how you go about doing it. Continuation, Relationships, References and the other new to BizTalk 2006 features.
As part of the chapter we’ll build BAM into a fictional solution and demonstrate how you can build a health/support portal all driven from BAM data using SQL Server Reporting Services.
Chapter 7: Rules Engine
This chapter will cover the rules engine, how you can invoke it from code, tuning and how you might go about building a custom rules UI (which quite a few customers end up doing). If possible we’ll cover how the WF rules engine fits moving forward.
Chapter 8: Testing
In this chapter we’ll cover the whole scope of BizTalk Solution testing, we’ll cover how to use BizUnit to unit-test Orchestrations, integration with Team System, “Code Coverage” tooling. How to load test a BizTalk solution, counters to watch out for and how to diagnose issues. Demonstrate how LoadGen can be used to simulate load and avoid all those custom test harnesses we've all written!
Chapter 9: Performance and Scalability
In this chapter we’ll cover optimal datacenter design, host structure, disk storage, scale-out, how to optimise your design, adapter specific tuning and things to watch out for, tracking and throttling.
Chapter 10: Low Latency
Customers often wish to develop low latency solutions based on BizTalk which BizTalk out-of-the-box doesn’t support without custom tuning and adopting a number of approaches such as in-line web service calls. We’ll cover the possible approaches and details the pros and cons.
Chapter 11: Debugging and Diagnostics
We’ll cover a variety of developer techniques for diagnosing and debugging BizTalk solutions and how you can build your own logging solutions that aren’t performance bottlenecks (EntLib, BAM, etc.). We’ll also cover the most common issues that we see developers hitting to try and head them off before you hit them and waste time!
Chapter 12: Administration
We’ll cover a variety of Administration topics in this chapter, including how the new Application concept and Administration tool work and demonstrate how Microsoft Operations Manager (MOM) can be used in conjunction with BizTalk to greatly simplify BizTalk administration.
Chapter 13: Tips and Tricks (Working title)
This is a catch-all chapter right now and will probably get re-arranged, we’ll cover how SSO can be used to store config information, clearing BizTalk rigs down, creating a daily build process, etc.
Chapter 14: End to End Scenarios (E2E)
This chapter will cover the End to End Scenarios that have been shipped with BizTalk Server 2006 which are based on customer scenarios and are a great way to see how things should be done.
Chapter 15: BizTalk Accelerators
Hopefully I’ll get to cover the accelerators available today, what they can do and how they work.
Chapter 16: BizTalk Patterns
Cover some popular and useful BizTalk patterns, such as Resource Dispenser, Splitting Messages, FIFO, etc.
Chapter 17: Windows Workflow and BizTalk
We’ll cover what scenarios BizTalk and WF should be used for and some BizTalk futures.