<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Biztalktrainer's Blog</title>
	<atom:link href="http://biztalktrainer.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://biztalktrainer.wordpress.com</link>
	<description>Architecture, Business Value, Project Management</description>
	<lastBuildDate>Mon, 22 Jun 2009 23:24:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='biztalktrainer.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Biztalktrainer's Blog</title>
		<link>http://biztalktrainer.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://biztalktrainer.wordpress.com/osd.xml" title="Biztalktrainer&#039;s Blog" />
	<atom:link rel='hub' href='http://biztalktrainer.wordpress.com/?pushpress=hub'/>
		<item>
		<title>SOA Patterns With BizTalk Server 2009</title>
		<link>http://biztalktrainer.wordpress.com/2009/06/22/soa-patterns-with-biztalk-server-2009/</link>
		<comments>http://biztalktrainer.wordpress.com/2009/06/22/soa-patterns-with-biztalk-server-2009/#comments</comments>
		<pubDate>Mon, 22 Jun 2009 23:17:15 +0000</pubDate>
		<dc:creator>biztalktrainer</dc:creator>
				<category><![CDATA[biztalk]]></category>
		<category><![CDATA[BizTalk Business Value Propositions]]></category>
		<category><![CDATA[BizTalk SOA Project Management]]></category>
		<category><![CDATA[BizTalk Solution Architecture]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[WCF]]></category>

		<guid isPermaLink="false">http://biztalktrainer.wordpress.com/2009/06/22/soa-patterns-with-biztalk-server-2009/</guid>
		<description><![CDATA[In reviewing Richard Seroter&#8217;s book, &#8220;SOA Patterns with BizTalk Server 2009&#8243;, published by Packt Publishing, I was immediately taken in by its straightforward organization and pleasant layout of text and graphics. Unlike the 17 books on BizTalk Server I have collected since the year 2000, this is the first book that I would recommend to [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biztalktrainer.wordpress.com&amp;blog=6947713&amp;post=7&amp;subd=biztalktrainer&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>In reviewing Richard Seroter&#8217;s book, &#8220;SOA Patterns with BizTalk Server 2009&#8243;, published by Packt Publishing, I was immediately taken in by its straightforward organization and pleasant layout of text and graphics.<br />
Unlike the 17 books on BizTalk Server I have collected since the year 2000, this is the first book that I would recommend to everyone &#8212; novices and experts alike.</p>
<p>&#8220;SOA Patterns with BizTalk Server 2009&#8243; starts off with a brief summary of the goals and benefits of service-oriented architectures,<br />
and then describes how BizTalk Server and the Windows Communication Foundation (WCF) supports actual implementation of SOA.</p>
<p>I think it&#8217;s safe to say that while many of the more experienced BizTalk architects and developers already accept the wisdom of taking a service-oriented approach for designing BizTalk Server solutions,<br />
there are still many BizTalk solutions out there that do not conform to SOA principles, and this is often the source of users&#8217; frustration with BizTalk.<br />
BizTalk Server, which I often call &#8220;the Swiss-Army-Knife&#8221; of systems integration tools, is inherently SOA-friendly. While it can be used to create point-to-point EAI or B2B solutions, or simply provide integration utility services without using SOA principles, these features should be treated as &#8220;accommodating exceptions&#8221; rather than the rule.</p>
<p>Richard shows &#8220;how-to&#8221; architect SOA-compliant solutions using critical and challenging scenarios, and he backs up these designs with real working models. This is not a software feature-based &#8220;how-to&#8221; book<br />
with detailed lab instructions to guide the novice step-by-step to accomplish narrow objectives. This is an architect&#8217;s guide to building solutions based on best practices we all should aspire to.<br />
(Having said that, more advanced readers are likely to discover a few counter-intuitive, undocumented configuration details<br />
that may have eluded them.)</p>
<p>After the first two chapters that explain the basics of BizTalk Server and the WCF, this book quickly gets down to business with code and implementation details, some of which are fairly complex for many readers who are new to BizTalk, WCF, XML Schemas, and C# .NET code.<br />
The downloaded code samples supplied from the publisher&#8217;s website are undocumented and require additional configuration to set up properly. Determined problem-solvers will prevail, but for the WCF or BizTalk novice, I would definitely recommend taking a class before tackling the configuration details which can lead to some confusion.<br />
Fortunately, the book is easy enough to follow without needing the code.</p>
<p>Some may dismiss this book when they see so many chapters devoted to WCF &#8220;because we&#8217;re not using WCF&#8221;. That would be their first mistake!<br />
As a messaging engine, BizTalk provides the mechanisms for routing and interpreting messages, but the transport of messages are dependent on adapters that publish and consume messages via the BizTalk Messaging Bus.<br />
Although BizTalk has a standard framework for implementing adapter interfaces, these adapters are relatively tightly-coupled to specific systems or vendor-specific implementations of standard protocols on one end, and BizTalk on the other end.<br />
The use of messaging to marshall data across platforms and process boundaries can be defeated when tied to adapters which explicitly require point-to-point connections or proprietary interfaces.</p>
<p>WCF provides a more neutral transport layer for loosely-coupled, interoperable interchanges that delivers more reliable capabilities than we had hoped for from web service standards, and can be reused outside of BizTalk Server.</p>
<p>Richard does a good job of explaining the role of abstraction layers and hiding implementation details. He takes a clever &#8220;peel-the-onion&#8221; approach in exposing how the BizTalk-WCF Wizards generate artifacts (like WSDLs) through a variety of use cases. We can see from a design perspective &#8220;the devil in the details&#8221;, and liberate ourselves by manipulating the output through proper design input.</p>
<p>For those who still want to use BizTalk Server without using WCF,<br />
there&#8217;s still alot of great SOA design principles such as asynchronous messaging patterns and code reuse in this book which apply to best practices for designing BizTalk Server solutions. XML schema design, efficient use of ports and maps, and basic publish-subscribe techniques<br />
are extensively covered throughout the book. One of the most difficult hurdles for new BizTalk developers to overcome is understanding its core architecture, and how to work with the messaging engine instead of fighting it for absolute control. I think Richard will be successful in nudging them toward a more composite design style that results in less refactoring of procedural code.</p>
<p>&#8220;Hey! I learned something new!&#8221; In Chapter 7, Richard uses the promoted property, BTS.EmpRRCorrelationToken, which the BizTalk messaging engine uses to associate a response message with the port instance<br />
waiting to send a result to the caller. This is just one example of many &#8220;nuggets of gold&#8221; that you will find in this book. In fact, for such a small book (less than an inch thick), it is packed with use cases and hidden treasures that would take me months to exploit in my everyday projects.<br />
I&#8217;ll bet that people will be blogging on some of these topics for months into the future.</p>
<p>For instance, Richard&#8217;s chapter on Versioning SOA components is not a subject to be taken lightly. I spent an entire afternoon thinking (again) about the vast consequences of changing components in a service-oriented, highly-distributed system where IT environments are mixed with static and dynamic systems. Richard provides sensible solutions for versioning assemblies, namespaces, and configurations, which admittedly, may not apply to all components that comprise a particular process. When you consider that clients may need versioning as well as services, and throw in versions of entire environments (JDE, J2EE, etc.),<br />
this can become quite complicated and overwhelming.</p>
<p>Yet, architecting for change is like trying to design for reusability:<br />
some think it&#8217;s a luxury they can&#8217;t afford under tight deadlines and budget constraints, and that it&#8217;s futile to &#8220;code the future&#8221;.<br />
Yet the future is not as far off as we might think!<br />
Richard outlines specific scenarios that help us reuse code within the scope of our current projects to make our own lives easier.<br />
He offers techniques for versioning endpoints and implementing &#8220;flexible fields&#8221; for changes that could easily throw a project behind schedule.<br />
Incorporating these best practices in our solutions now, inevitably builds confidence over time that change CAN be managed in agile systems.</p>
<p>Richard&#8217;s chapter on the WCF SQL Adapter is one of the best examples of how BizTalk and WCF work together with RPC-style resources like SQL Server. He clearly demonstrates &#8220;how-to&#8221; provide transactional integrity for operations that span multiple tables without relying on stored procedures we may not own.<br />
He also tackles one of the most common challenges:<br />
listening for changes in a database without excessive polling or using database triggers. Leveraging SQL Query Notifications, this section ties in to an earlier chapter on using Event Messages in conjunction with Document Messages to construct powerful event-based processes.</p>
<p>Finally, the book concludes with three chapters on UDDI, ESB Guidance, and What&#8217;s Next for future BizTalk versions.</p>
<p>I haven&#8217;t used the ESB Guidance Toolkit, mostly because it was a third-party vendor offering that hasn&#8217;t been supported by Microsoft in the past, but I believe this policy changed right before this book went to print.<br />
SOA governance is an important topic, and I can only look forward to Microsoft offering its own enterprise-class SOA Repository that would integrate UDDI and Oslo modelling tools into VSTS along with usage policies.</p>
<p>Lastly, I&#8217;d like to conclude with an appeal to readers of this book to participate in on-going conversations online so we can follow up on many of the sound recommendations Richard proposes. I also welcome comments from SOA architects using non-Microsoft technologies.<br />
Call some WCF services from Java clients, and tell us about your experience!</p>
<p>Craig Erickson is the Principal Consultant at Flo Technologies, a consulting firm that specializes in BizTalk solutions<br />
and offers on-demand BizTalk Server and WCF training.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biztalktrainer.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biztalktrainer.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biztalktrainer.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biztalktrainer.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/biztalktrainer.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/biztalktrainer.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/biztalktrainer.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/biztalktrainer.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biztalktrainer.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biztalktrainer.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biztalktrainer.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biztalktrainer.wordpress.com/7/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biztalktrainer.wordpress.com/7/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biztalktrainer.wordpress.com/7/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biztalktrainer.wordpress.com&amp;blog=6947713&amp;post=7&amp;subd=biztalktrainer&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://biztalktrainer.wordpress.com/2009/06/22/soa-patterns-with-biztalk-server-2009/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1443c55d75fcd0c3b0c34e741df41978?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biztalktrainer</media:title>
		</media:content>
	</item>
		<item>
		<title>BizTalk 2009 Marketing blog</title>
		<link>http://biztalktrainer.wordpress.com/2009/03/13/sellingbiztalk2009/</link>
		<comments>http://biztalktrainer.wordpress.com/2009/03/13/sellingbiztalk2009/#comments</comments>
		<pubDate>Fri, 13 Mar 2009 20:15:55 +0000</pubDate>
		<dc:creator>biztalktrainer</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[This blog is dedicated to supporting Microsoft&#8217;s marketing efforts in launching BizTalk Server 2009. This is the right product at the right time and it just gets better with each release. I will be reviewing Richard Seroter&#8217;s new book: SOA Patterns with BizTalk Server 2009 from Packt Publishing, and talking with key members of the BizTalk Product Team about [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biztalktrainer.wordpress.com&amp;blog=6947713&amp;post=1&amp;subd=biztalktrainer&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This blog is dedicated to supporting Microsoft&#8217;s marketing efforts in launching BizTalk Server 2009. This is the right product at the right time and it just gets better with each release. I will be reviewing Richard Seroter&#8217;s new book: SOA Patterns with BizTalk Server 2009 from Packt Publishing, and talking with key members of the BizTalk Product Team about upcoming events and opportunities.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/biztalktrainer.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/biztalktrainer.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/biztalktrainer.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/biztalktrainer.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/biztalktrainer.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/biztalktrainer.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/biztalktrainer.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/biztalktrainer.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/biztalktrainer.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/biztalktrainer.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/biztalktrainer.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/biztalktrainer.wordpress.com/1/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/biztalktrainer.wordpress.com/1/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/biztalktrainer.wordpress.com/1/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=biztalktrainer.wordpress.com&amp;blog=6947713&amp;post=1&amp;subd=biztalktrainer&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://biztalktrainer.wordpress.com/2009/03/13/sellingbiztalk2009/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/1443c55d75fcd0c3b0c34e741df41978?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">biztalktrainer</media:title>
		</media:content>
	</item>
	</channel>
</rss>
