<?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/"
	>

<channel>
	<title>soabloke &#187; architecture</title>
	<atom:link href="http://www.soabloke.com/category/architecture/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.soabloke.com</link>
	<description>pushing soa up the slope (with a pointy stick)</description>
	<lastBuildDate>Tue, 03 Aug 2010 22:51:51 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Beautiful Data Polling</title>
		<link>http://www.soabloke.com/2010/08/04/beautiful-data-polling/</link>
		<comments>http://www.soabloke.com/2010/08/04/beautiful-data-polling/#comments</comments>
		<pubDate>Tue, 03 Aug 2010 22:51:51 +0000</pubDate>
		<dc:creator>Saul Caganoff</dc:creator>
				<category><![CDATA[architecture]]></category>
		<category><![CDATA[asynchronous]]></category>
		<category><![CDATA[messaging]]></category>
		<category><![CDATA[polling]]></category>
		<category><![CDATA[pub/sub]]></category>
		<category><![CDATA[push]]></category>
		<category><![CDATA[scalability]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.soabloke.com/?p=276</guid>
		<description><![CDATA[An excellent review of Beautiful Data leads to an interesting discussion on Slashdot argues push models versus polling models and the problems with implementing them.


Related posts:<ol><li><a href='http://www.soabloke.com/2008/08/19/push-versus-pull/' rel='bookmark' title='Permanent Link: Push versus Pull'>Push versus Pull</a></li>
<li><a href='http://www.soabloke.com/2009/04/21/56-architecture-case-studies/' rel='bookmark' title='Permanent Link: 56 Architecture Case Studies'>56 Architecture Case Studies</a></li>
<li><a href='http://www.soabloke.com/2010/01/11/the-year-of-living-asynchronously/' rel='bookmark' title='Permanent Link: The Year of Living Asynchronously'>The Year of Living Asynchronously</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><a href="http://oreilly.com/" target="_blank">O&#8217;Reilly</a> have released a new book in their &#8220;Beautiful&#8230;&#8221; series called &#8220;<a href="http://oreilly.com/catalog/9780596157128" target="_self">Beautiful Data</a>.&#8221;  There&#8217;s a very comprehensive review on <a href="http://science.slashdot.org/story/10/08/02/1258208/Beautiful-Data" target="_blank">Slashdot</a> which I highly recommend. The description of chapter eight caught my eye:</p>
<blockquote><p>Chapter Eight is about social data APIs and pushes <a href="http://gnip.com/" target="_blank">gnip</a> heavily as the de facto social endpoint aggregator for programmers. The chapter mentions <a href="http://www.webhooks.org/" target="_blank">WebHooks</a> as an up and coming HTTP Post event transmission project but doesn&#8217;t offer much more than a wake up call for programmers. The traditional polling has dominated web APIs and has lead to<a href="http://mobile.slashdot.org/story/10/07/07/1836256/Twitter-Throttling-Hits-Third-Party-Apps" target="_blank"> fragile points of failure</a>. This chapter is a much needed call for sanity in the insane world of HTTP transactional polling. Unfortunately, the community seems to be so in love with the simplicity of polling that they use it for everything, even when a slightly more complicated eventing model would save them a large percentage of transactions.</p></blockquote>
<p>The link &#8220;<a href="http://mobile.slashdot.org/story/10/07/07/1836256/Twitter-Throttling-Hits-Third-Party-Apps" target="_blank">fragile points of failure</a>&#8221; is worth following as it leads to a robust slashdot discussion on Twitter APIs and polling versus push for the web.</p>
<blockquote><p>I think for a long time, the &#8220;web&#8221; as we know it has suffered from the lack of the Event/Listener paradigm. This is a pretty simple design concept that I&#8217;m going to refer to as <a title="wikipedia.org" href="http://en.wikipedia.org/wiki/Observer_pattern">the Observer</a> [wikipedia.org]. Let&#8217;s say I want to know what Stephen Hawking is tweeting about and I want to know 24/7. Now if you have to make more than one call, something is wrong. That one call should be a notification to Twitter who I am, where you can contact me and what I want to keep tabs on&#8211;be it a keyword or user. So all I should ever have to do is tell Twitter I want to know everything from Stephen Hawking and everything with #stephenhawking or whatever and from that point on, it will try to submit that message to me via any number of technologies. Simple <a title="wikipedia.org" href="http://en.wikipedia.org/wiki/Publish/subscribe">pub/sub</a> [wikipedia.org] message queues could be implemented here to alleviate my need to continually go to Twitter and say: &#8220;Has Stephen Hawking said anything new yet? *millisecond pause* Has Stephen Hawking said anything new yet? *millisecond pause* &#8230;&#8221; ad infinitum.</p></blockquote>
<p>And yet&#8230;</p>
<blockquote><p>That&#8217;s not easy to do on a large scale. A persistent connection has to be in place between publisher and subscriber. Twitter would have to have a huge number of low-traffic connections open. (Hopefully only one per subscriber, not one per publisher/subscriber combination.) Then, on the server side, they&#8217;d have to have a routing system to track who&#8217;s following what, invert that information, and blast out a message to all followers whenever there was an update. This is all quite feasible, but it&#8217;s quite different from the classic HTTP model.</p>
<p>It&#8217;s been done before, though. Remember <a title="wikipedia.org" href="http://en.wikipedia.org/wiki/Push_technology">Push technology</a> [wikipedia.org]? That&#8217;s what this is. PointCast <a title="cnet.com" href="http://news.cnet.com/2100-1023-237059.html">sent their final news/stock push message</a> [cnet.com] in February 2000. There&#8217;s more support for &#8220;push&#8221; in HTML5, incidentally.</p></blockquote>
<p>Ahhh yes, I remember PointCast well. One of the early darlings of the dot-com era. This reply points at some new hope:</p>
<blockquote><p>For messaging architectures (like, say, the internet), the pattern is usually described as &#8220;Publish/Subscribe&#8221;. All serious messaging protocols support it (XMPP, AMQP, etc.) and some are dedicated to it (PubSubHubbub). The basic problem with using it the whole way to the client is that many clients are run in environments where it is impractical to run a server which makes recieving inbound connections difficult.</p>
<p>There are fairly good solutions to that, mostly involving using a proxy for the client somewhere that can run a server which holds messages, and then having the client call the proxy (rather than the message sources) to get all the pending messages together.</p></blockquote>
<p><a href="http://www.soabloke.com/2010/01/11/the-year-of-living-asynchronously/">Keep watching</a>.</p>


<p>Related posts:<ol><li><a href='http://www.soabloke.com/2008/08/19/push-versus-pull/' rel='bookmark' title='Permanent Link: Push versus Pull'>Push versus Pull</a></li>
<li><a href='http://www.soabloke.com/2009/04/21/56-architecture-case-studies/' rel='bookmark' title='Permanent Link: 56 Architecture Case Studies'>56 Architecture Case Studies</a></li>
<li><a href='http://www.soabloke.com/2010/01/11/the-year-of-living-asynchronously/' rel='bookmark' title='Permanent Link: The Year of Living Asynchronously'>The Year of Living Asynchronously</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.soabloke.com/2010/08/04/beautiful-data-polling/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>An Hypothesis</title>
		<link>http://www.soabloke.com/2010/02/16/an-hypothesis/</link>
		<comments>http://www.soabloke.com/2010/02/16/an-hypothesis/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 07:26:19 +0000</pubDate>
		<dc:creator>Saul Caganoff</dc:creator>
				<category><![CDATA[architecture]]></category>
		<category><![CDATA[enterprise-architecture]]></category>
		<category><![CDATA[standards]]></category>

		<guid isPermaLink="false">http://www.soabloke.com/?p=233</guid>
		<description><![CDATA[Can Enterprise Architecture deliver better productivity and success?


Related posts:<ol><li><a href='http://www.soabloke.com/2009/01/12/11-dont-raise-the-drawbridge/' rel='bookmark' title='Permanent Link: 11. Don&#8217;t Raise the Drawbridge'>11. Don&#8217;t Raise the Drawbridge</a></li>
<li><a href='http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/' rel='bookmark' title='Permanent Link: The Value of Enterprise Architecture'>The Value of Enterprise Architecture</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Enterprise IT is badly broken in most of it&#8217;s current incarnations. This is due to a wide range of influences &#8211; organizational, political and technical. I think there are ways to increase productivity and reduce cost and risk by changing enterprise IT practices towards:</p>
<ol>
<li>A collaborative business and IT culture that owns and manages risk rather than just outsource and lose control.</li>
<li>An Enterprise IT strategy and Architecture that provides &#8220;cohesion&#8221; so that smaller, agile projects can deliver strategic value.</li>
<li>Using (and developing in-house) development frameworks that enhance productivity by:
<ul>
<li>encouraging in-house standards and best practices,</li>
<li>operating at a high level of abstraction &#8211; business processes, services, events, rules</li>
<li>foster developer skills beyond &#8220;commodity&#8221; levels.</li>
</ul>
</li>
</ol>


<p>Related posts:<ol><li><a href='http://www.soabloke.com/2009/01/12/11-dont-raise-the-drawbridge/' rel='bookmark' title='Permanent Link: 11. Don&#8217;t Raise the Drawbridge'>11. Don&#8217;t Raise the Drawbridge</a></li>
<li><a href='http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/' rel='bookmark' title='Permanent Link: The Value of Enterprise Architecture'>The Value of Enterprise Architecture</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.soabloke.com/2010/02/16/an-hypothesis/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Year of Living Asynchronously</title>
		<link>http://www.soabloke.com/2010/01/11/the-year-of-living-asynchronously/</link>
		<comments>http://www.soabloke.com/2010/01/11/the-year-of-living-asynchronously/#comments</comments>
		<pubDate>Sun, 10 Jan 2010 20:51:55 +0000</pubDate>
		<dc:creator>Saul Caganoff</dc:creator>
				<category><![CDATA[architecture]]></category>
		<category><![CDATA[asynchronous]]></category>
		<category><![CDATA[cep]]></category>
		<category><![CDATA[eda]]></category>
		<category><![CDATA[events]]></category>
		<category><![CDATA[loose-coupling]]></category>
		<category><![CDATA[messaging]]></category>
		<category><![CDATA[xmpp]]></category>

		<guid isPermaLink="false">http://www.soabloke.com/?p=222</guid>
		<description><![CDATA[Asynchronicity is busting out all over the web, and 2010 will be the year of "events". Synchronous SOA services can limit scalability. Move to more asynchronous service patterns to benefit your solutions.


Related posts:<ol><li><a href='http://www.soabloke.com/2008/01/31/the-benfits-of-an-esb/' rel='bookmark' title='Permanent Link: The benefits of an ESB'>The benefits of an ESB</a></li>
<li><a href='http://www.soabloke.com/2009/04/28/ian-robinson-on-coupling/' rel='bookmark' title='Permanent Link: Ian Robinson on Coupling'>Ian Robinson on Coupling</a></li>
<li><a href='http://www.soabloke.com/2008/01/21/what-is-an-esb-and-why-do-i-need-one/' rel='bookmark' title='Permanent Link: What is an ESB and why do I need one?'>What is an ESB and why do I need one?</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>Happy New Year! Asynchronicity is busting out all over the web and my prediction is that 2010 will be the year of &#8220;events&#8221;:</p>
<ul>
<li>Of course <a title="Twitter" href="http://twitter.com" target="_blank">Twitter </a>has brought The concept of publish/subscribe messaging to the masses and we enjoyed their journey of discovery to the <a title="Scaling Twitter" href="http://highscalability.com/scaling-twitter-making-twitter-10000-percent-faster" target="_blank">heights of scalability</a> in 2009.</li>
<li><a title="XMPP" href="http://xmpp.org/" target="_blank">XMPP</a> has been embraced by the real-time web crowd, most publicly in <a title="Google Wave" href="http://wave.google.com" target="_blank">Google Wave</a> but also in other <a href="http://www.olympum.com/future/will-xmpp-be-the-messaging-middleware-for-the-rest-web/" target="_blank">&#8220;back-web&#8221; contexts</a> such as <a title="Gnip - relaunching in February 2010" href="http://www.gnip.com/" target="_blank">Gnip</a>.</li>
<li><a title="Web Sockets in Google Chrome" href="http://blog.chromium.org/2009/12/web-sockets-now-available-in-google.html" target="_blank">Web sockets</a> is an experimental feature of HTML 5 which enables push messages directly to web pages.</li>
<li>New frameworks for event-driven programming are emerging such as <a title="Ruby EventMachine" href="http://rubyeventmachine.com/" target="_blank">EventMachine</a>, <a title="Twisted" href="http://twistedmatrix.com/" target="_blank">Twisted</a>, <a title="Node.js" href="http://nodejs.org/" target="_blank">Node.js</a>.</li>
<li>In 2009 every major software vendor had a CEP product.</li>
</ul>
<p>In the meantime, SOA has become so damn synchronous. But it doesn&#8217;t have to be!</p>
<p>One of the fundamental tennets of SOA is that reducing coupling between systems makes them more scalable, reliable and agile (easier to change). SOA goes a long way to reducing coupling by providing a contract-based, platform independent mechanism for service providers and consumers to cooperate. However I still think we can improve on current SOA practices in further reducing coupling.</p>
<p>Coupling still intrudes into many aspects of how SOA is practiced today:</p>
<ul>
<li>HTTP transports tie us to a regimen of <a title="The Power of Later" href="http://www.soabloke.com/2009/05/05/the-power-of-later/" target="_blank">synchronous request-reply with timeouts</a> which creates tight couplings between provider and consumer. Even though one-way MEPs were an original feature of SOAP, <a title="SOAP/JMS Binding" href="http://www.w3.org/TR/2009/CR-soapjms-20090604/" target="_blank">message-oriented transports</a> remain the forgotten orphan of web-services standards.</li>
<li>Many SOA services are conceived, implemented and maintained as point-to-point entities&#8230;providers and consumers forced into lock-step due to inadequate versioning and lifecycle management.</li>
<li>Process orchestration layers often form a bridge between service providers and consumers, which on the face of it provides some level of indirection. But in many cases orchestration provides limited value and may actually serve to increase the overall system coupling.</li>
</ul>
<p>In many cases we can achieve the benefits of service orientation to much greater effect by exercising a little scepticism toward some of these <a title="Shibboleth" href="http://en.wikipedia.org/wiki/Shibboleth" target="_blank">shibboleths</a> of the web services world and embracing a more asynchronous, event-oriented way of building processes. So this year, embrace your asynchronous side and do something to reduce your system coupling: build some pub/sub services, learn about <a title="Complex Events" href="http://complexevents.com/" target="_blank">Event Processing</a> or <a title="Event Driven Architecture" href="http://en.wikipedia.org/wiki/Event-driven_architecture" target="_blank">Event-Driven Architecture</a>, try one of the technologies I pointed to above.</p>
<p>Just as developers should embrace multiple languages to broaden their skills, so should architects embrace and be fluent in multiple <a title="Characterising Architectural Styles" href="http://www.soabloke.com/2009/10/26/characterising-architectural-styles-ii-state/" target="_blank"> architectural styles</a>.</p>


<p>Related posts:<ol><li><a href='http://www.soabloke.com/2008/01/31/the-benfits-of-an-esb/' rel='bookmark' title='Permanent Link: The benefits of an ESB'>The benefits of an ESB</a></li>
<li><a href='http://www.soabloke.com/2009/04/28/ian-robinson-on-coupling/' rel='bookmark' title='Permanent Link: Ian Robinson on Coupling'>Ian Robinson on Coupling</a></li>
<li><a href='http://www.soabloke.com/2008/01/21/what-is-an-esb-and-why-do-i-need-one/' rel='bookmark' title='Permanent Link: What is an ESB and why do I need one?'>What is an ESB and why do I need one?</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.soabloke.com/2010/01/11/the-year-of-living-asynchronously/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Reductio ad Lucidus</title>
		<link>http://www.soabloke.com/2009/11/11/reductio-ad-lucidus/</link>
		<comments>http://www.soabloke.com/2009/11/11/reductio-ad-lucidus/#comments</comments>
		<pubDate>Wed, 11 Nov 2009 00:51:15 +0000</pubDate>
		<dc:creator>Saul Caganoff</dc:creator>
				<category><![CDATA[architecture]]></category>
		<category><![CDATA[cep]]></category>
		<category><![CDATA[eai]]></category>
		<category><![CDATA[eda]]></category>
		<category><![CDATA[patterns]]></category>
		<category><![CDATA[soa]]></category>

		<guid isPermaLink="false">http://www.soabloke.com/?p=215</guid>
		<description><![CDATA[In a recent comment on my Architectural Characteristics posts, Andy astutely observes that I may be &#8220;shoe-horning&#8221;. By this I assume he means that I&#8217;m taking a large and rather lumpy concept and trying to squeeze it into a smaller and more uniformly shaped container while risking some distortion in the process. I&#8217;ll admit that [...]


Related posts:<ol><li><a href='http://www.soabloke.com/2009/10/26/characterising-architectural-styles-ii-state/' rel='bookmark' title='Permanent Link: Characterising Architectural Styles II &#8211; State'>Characterising Architectural Styles II &#8211; State</a></li>
<li><a href='http://www.soabloke.com/2010/01/11/the-year-of-living-asynchronously/' rel='bookmark' title='Permanent Link: The Year of Living Asynchronously'>The Year of Living Asynchronously</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>In a recent comment on my <a title="Characterising Architectural Styles" href="http://www.soabloke.com/?s=Characterising+Architectural+Styles" target="_blank">Architectural Characteristics posts</a>, Andy <a title="Andy's Comment" href="http://www.soabloke.com/2009/10/26/characterising-architectural-styles-ii-state/#comment-625" target="_blank">astutely observes</a> that I may be &#8220;shoe-horning&#8221;. By this I assume he means that I&#8217;m taking a large and rather lumpy concept and trying to squeeze it into a smaller and more uniformly shaped container while risking some distortion in the process. I&#8217;ll admit that in this respect I&#8217;m probably guilty as charged.</p>
<p>But I should clarify my purpose in doing this. I&#8217;m trying to cut back the various architectural styles under consideration to a simpler form where the essential characteristics can be discerned without confusion from some other non-essential characteristics. So rather than shoehorning, I&#8217;m trying to setup a strawman model which can be used as a starting point for discussion. Or maybe like a physicist I&#8217;m trying to model a very complex phenomenon using linear approximations which explain the broad outlines of the phenomenon at the risk of falling short on some of the details.</p>
<p>To extend this latter metaphor, I don&#8217;t think it is too much of a stretch to say that the architectural styles I&#8217;m considering could be likened to &#8220;fundamental&#8221; architectural styles and that real-world architectures could be viewed as &#8220;superpositions&#8221; of those fundamental architectures.</p>
<p>If we consider the simplified forms of EAI and SOA that I describe, each style falls short of representing a real world architecture, but the upside is that the EAI and SOA styles as I describe them are distinct and easily differentiated. So we have a model which provides a way of distinguishing between different styles (via the characteristics I&#8217;ve discussed) but falls short of exactly matching a &#8220;real-world&#8221; architecure.</p>
<p>If we look at any real-world architecture in recent years, I think we can see a superposition of EAI and SOA concepts. This probably reflects an evolutionary path between the two styles. EAI as practiced in the early noughties had already developed the idea of a normalised data model and technology independent interfaces. These were not standardized, but some of the characteristics of SOA were apparent in what was then called EAI.</p>
<p>Similarly, EAI was not always about data integration. There was (and is) a distinction between data integration and process integration. EAI techniques could be used to orchestrate processes across multiple systems. This is even closer to the concept of SOA which has at its core the notion of an independent process layer seperate from the service layer.</p>
<p>Even if we don&#8217;t superpose EAI and SOA into one solution, there are still legitimate ways in which EAI, SOA and EDA coexist within any particular architecture. We can easily imagine a solution in which a business process is orchestrated via SOA services, reference data is synchronised using EAI and overall process state is monitored using EDA techniques such as Event Processing.</p>
<p>So real-world solution architectures exhibit some overlap between the different architectural styles &#8211; EAI, SOA and EDA. Some of this is due to evolutionary legacies, or due to plain-old confusion between the different styles (e.g. JABOWS as really being EAI). Some of it is also due to legitimate mixing of different styles for different aspects of a solution.</p>
<p>I think that real-world architectures can benefit from seperating out the &#8220;essence&#8221; of each architectural style and being explicit about how those styles are being applied. Reducing architectural styles to simplified forms clarifies the stucture of a real-world architecture. Not very different from Design Patterns, really.</p>


<p>Related posts:<ol><li><a href='http://www.soabloke.com/2009/10/26/characterising-architectural-styles-ii-state/' rel='bookmark' title='Permanent Link: Characterising Architectural Styles II &#8211; State'>Characterising Architectural Styles II &#8211; State</a></li>
<li><a href='http://www.soabloke.com/2010/01/11/the-year-of-living-asynchronously/' rel='bookmark' title='Permanent Link: The Year of Living Asynchronously'>The Year of Living Asynchronously</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.soabloke.com/2009/11/11/reductio-ad-lucidus/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The SOA Manifesto</title>
		<link>http://www.soabloke.com/2009/10/27/the-soa-manifesto/</link>
		<comments>http://www.soabloke.com/2009/10/27/the-soa-manifesto/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 22:20:16 +0000</pubDate>
		<dc:creator>Saul Caganoff</dc:creator>
				<category><![CDATA[soa]]></category>
		<category><![CDATA[manifesto]]></category>

		<guid isPermaLink="false">http://www.soabloke.com/?p=210</guid>
		<description><![CDATA[Taking a leaf from the Agile playbook, a group of SOA thought leaders has put together the SOA Manifesto, a succinct list of SOA principles and preferences to guide Service Oriented Architecture. Great work! (I could comment further, but it speaks for itself). Go visit and find out. No related posts.


No related posts.]]></description>
			<content:encoded><![CDATA[<p>Taking a leaf from the <a title="Agile Manifesto" href="http://agilemanifesto.org/" target="_blank">Agile playbook</a>, a group of SOA thought leaders has put together the <a title="SOA Manifesto" href="http://www.soa-manifesto.org/" target="_blank">SOA Manifesto</a>, a succinct list of SOA principles and preferences to guide Service Oriented Architecture. Great work!</p>
<p style="text-align: center;">(I could comment further, but it speaks for itself).</p>
<p style="text-align: center;"><strong><a title="SOA Manifesto" href="http://www.soa-manifesto.org/" target="_blank">Go visit and find out.</a></strong></p>


<p>No related posts.</p>]]></content:encoded>
			<wfw:commentRss>http://www.soabloke.com/2009/10/27/the-soa-manifesto/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Characterising Architectural Styles II &#8211; State</title>
		<link>http://www.soabloke.com/2009/10/26/characterising-architectural-styles-ii-state/</link>
		<comments>http://www.soabloke.com/2009/10/26/characterising-architectural-styles-ii-state/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 00:44:10 +0000</pubDate>
		<dc:creator>Saul Caganoff</dc:creator>
				<category><![CDATA[architecture]]></category>
		<category><![CDATA[cep]]></category>
		<category><![CDATA[distributed]]></category>
		<category><![CDATA[eai]]></category>
		<category><![CDATA[soa]]></category>
		<category><![CDATA[state]]></category>

		<guid isPermaLink="false">http://www.soabloke.com/?p=186</guid>
		<description><![CDATA[My last post explored some distinguishing characteristics of three common architectural styles in an attempt to understand better how they differ and therefore how they may apply in different contexts. A fourth distinguishing characteristic of these architectural styles is the way in which state is managed during the execution of a business process. There are [...]


Related posts:<ol><li><a href='http://www.soabloke.com/2009/10/14/characterising-architectural-styles/' rel='bookmark' title='Permanent Link: Characterising Architectural Styles'>Characterising Architectural Styles</a></li>
<li><a href='http://www.soabloke.com/2009/11/11/reductio-ad-lucidus/' rel='bookmark' title='Permanent Link: Reductio ad Lucidus'>Reductio ad Lucidus</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>My <a title="Characterising Architectural Styles" href="http://www.soabloke.com/2009/10/14/characterising-architectural-styles/" target="_blank">last post</a> explored some distinguishing characteristics of three common architectural styles in an attempt to understand better how they differ and therefore how they may apply in different contexts. A fourth distinguishing characteristic of these architectural styles is the way in which state is managed during the execution of a business process.</p>
<p>There are three aspects of state that I want to consider:</p>
<ul>
<li><strong>Management </strong>- how state change is initiated or managed through a business process.</li>
<li><strong>Monitoring </strong>- how state is monitored or accessed or derived during the execution of a business process.</li>
<li><strong>Consistency </strong>- how state is made consistent across different systems involved in a business process.</li>
</ul>
<p>A summary of the state characteristics of the different architectural styles is listed in the following table along with the other characteristics discussed in my <a title="Characterising Architectural Styles" href="http://www.soabloke.com/2009/10/14/characterising-architectural-styles/" target="_blank">last post</a>.</p>
<p><img class="aligncenter size-full wp-image-206" title="architectural_characteristics_table_2" src="http://www.soabloke.com/blogs/wp-content/uploads/2009/10/architectural_characteristics_table_2.png" alt="architectural_characteristics_table_2" width="575" height="185" /></p>
<p style="text-align: center;">
<p style="text-align: center;">
<p>In EAI, state is managed within one application and then synchronised to other applications, usually after the business process has completed. This means that in some cases state may be inconsistent across the organisation or its systems. That may or may not be a problem (see &#8216;<a title="Eventually Consistent" href="http://queue.acm.org/detail.cfm?id=1466448" target="_blank">Eventually Consistent</a>&#8216;) but is a common side effect when a business process is executed within one system rather than across systems in an independent process layer. During the execution of an EAI process, there is often no monitoring of the state. <em>I.e.</em> the process may simply replicate data changes to other systems without explicily tracking state. A limited form of state monitoring may exist in the sense that the local application or associated middleware may check the status of data synchronization and error out in the event of an exception. I refer to this as &#8216;local&#8217; state monitoring.  So under the EAI architectural style, state is managed locally, monitored locally (if at all) and is eventually consistent.</p>
<p>Under SOA, the driver of a business process is BPM orchestration in an independent process layer. In this case, we can say that state is managed centrally (in the BPM layer) and monitored centrally (also in the BPM layer). State in end-systems is updated progressively through the business process (via service calls) and so we could say that state is &#8216;progressively&#8217; consistent as opposed to &#8216;eventually&#8217; consistent.</p>
<p>Under EDA, there is no central or even local management of state. Instead, events signify distributed actions which together may be used to infer the state of a system. To the extent that any &#8216;management&#8217; occurs, we could say that state is managed in a distributed fashion &#8211; one or more agents each acting on their own. Perhaps  it is more accurate to say that state is manifested globally. Converesely, state is monitored centrally within an Event Processing (CEP) layer which correlates events to infer system state. Under EDA, state is progressively consistent because the system is progressively reacting to events which are a by-product of a hidden or implicit business process.</p>


<p>Related posts:<ol><li><a href='http://www.soabloke.com/2009/10/14/characterising-architectural-styles/' rel='bookmark' title='Permanent Link: Characterising Architectural Styles'>Characterising Architectural Styles</a></li>
<li><a href='http://www.soabloke.com/2009/11/11/reductio-ad-lucidus/' rel='bookmark' title='Permanent Link: Reductio ad Lucidus'>Reductio ad Lucidus</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.soabloke.com/2009/10/26/characterising-architectural-styles-ii-state/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Characterising Architectural Styles</title>
		<link>http://www.soabloke.com/2009/10/14/characterising-architectural-styles/</link>
		<comments>http://www.soabloke.com/2009/10/14/characterising-architectural-styles/#comments</comments>
		<pubDate>Wed, 14 Oct 2009 06:04:29 +0000</pubDate>
		<dc:creator>Saul Caganoff</dc:creator>
				<category><![CDATA[architecture]]></category>
		<category><![CDATA[distributed-computing]]></category>

		<guid isPermaLink="false">http://www.soabloke.com/?p=161</guid>
		<description><![CDATA[A simple characterisation of architectural styles can help distinguish between EAI, SOA and EDA. In particular it helps explain why JABOWS is not SOA.


Related posts:<ol><li><a href='http://www.soabloke.com/2009/10/26/characterising-architectural-styles-ii-state/' rel='bookmark' title='Permanent Link: Characterising Architectural Styles II &#8211; State'>Characterising Architectural Styles II &#8211; State</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently been thinking about simple ways to characterise the different architectural approaches we use in distributed systems today. Three simple architectural characteristics I have come up with are:</p>
<ul>
<li><strong>Asset </strong>- this is a core capability or &#8220;thing&#8221; that must be built, procured, maintained and managed in a corporate IT &#8220;inventory&#8221;.</li>
<li><strong>Element </strong>- these are the &#8220;atomic&#8221; building blocks used in the process of Composition.</li>
<li><strong>Composition </strong>- this is the mechanism which allows the different assets to work together to support a business requirement.</li>
</ul>
<p>If we apply these characteristics to three common architectural approaches then we get the results in the following table.</p>
<p style="text-align: center;"><img class="aligncenter size-full wp-image-179" title="architectural_characteristics_table" src="http://www.soabloke.com/blogs/wp-content/uploads/2009/10/architectural_characteristics_table.png" alt="architectural_characteristics_table" width="549" height="82" /></p>
<p style="text-align: center;">
<p>EAI, although  unfashionable is still prevalent &#8211; even dominant in the industry. For EAI, we are primarily concerned with applications (usually COTS) which embody and support the requirements of different parts of the business. Multiple applications must be coordinated to support the whole business. The primary coordination mechanism under EAI is synchronization of state between the different applications &#8211; primarily via data integration. The composition element is the API.</p>
<p>SOA is characterised by Services as the key asset. Services are acquired or built to execute business operations. Elemental Services are composed to support business processes &#8211; a sequence of operations which results in a business outcome. BPM (or process orchestration) is the composition mechanism within SOA. The underlying functionality of a Service may reside in one or more applications, but from an SOA perspective this is of secondary importance&#8230;SOA is concerned with the Service, not necessarily its implementation.</p>
<p>EDA (Event Driven Architecture) is characterised by Event Services as the key asset which represent an asynchronous notification of an important event associated with the business. Elemental Events are correlated and further processed to derive higher-order business intelligence which may in turn trigger other Events. The primary composition mechanism within EDA is Event Processing (or CEP). An important part of this composition mechanism is the ability to manage or track system state.</p>
<p>This characterization gives more clarity to the difference between JABOWS and true SOA. Many so-called SOA projects have simply involved the &#8220;bottom up&#8221; exposure of application APIs using web-services standards &#8211; resulting in &#8220;Just a Bunch of Web Services&#8221; which don&#8217;t realise the business value of a true SOA. JABOWS <em>is</em> EAI because the applications are the core &#8220;asset&#8221;. A true SOA has a &#8220;top down&#8221; process-centric architecture with Services as the core asset.</p>


<p>Related posts:<ol><li><a href='http://www.soabloke.com/2009/10/26/characterising-architectural-styles-ii-state/' rel='bookmark' title='Permanent Link: Characterising Architectural Styles II &#8211; State'>Characterising Architectural Styles II &#8211; State</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.soabloke.com/2009/10/14/characterising-architectural-styles/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Emergent Architecture</title>
		<link>http://www.soabloke.com/2009/08/19/emergent-architecture/</link>
		<comments>http://www.soabloke.com/2009/08/19/emergent-architecture/#comments</comments>
		<pubDate>Wed, 19 Aug 2009 00:23:43 +0000</pubDate>
		<dc:creator>Saul Caganoff</dc:creator>
				<category><![CDATA[architecture]]></category>
		<category><![CDATA[governance]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[emergence]]></category>
		<category><![CDATA[enterprise-architecture]]></category>

		<guid isPermaLink="false">http://www.soabloke.com/?p=142</guid>
		<description><![CDATA[Dion Hinchcliffe paints a nice picture of emergent enterprise architecture. But is it just wishful thinking? Emergent cultures will embrace this EA style. The rest won't.


Related posts:<ol><li><a href='http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/' rel='bookmark' title='Permanent Link: The Value of Enterprise Architecture'>The Value of Enterprise Architecture</a></li>
<li><a href='http://www.soabloke.com/2007/10/24/design-for-change/' rel='bookmark' title='Permanent Link: Design for Change'>Design for Change</a></li>
<li><a href='http://www.soabloke.com/2009/08/14/ea-and-agile-projects/' rel='bookmark' title='Permanent Link: EA and Agile Projects'>EA and Agile Projects</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p><a title="Dion Hinchcliffe" href="http://blogs.zdnet.com/Hinchcliffe/" target="_blank">Dion Hinchcliffe</a> has written a nice blog entry &#8220;<a href="http://blogs.zdnet.com/Hinchcliffe/?p=674" target="_blank">pragmatic new models for enterprise architecture take shape</a>&#8220;. This resonates well with some of the things I&#8217;ve been saying about how enterprise architecture needs to be enabling rather than blocking:</p>
<p style="padding-left: 30px;">&#8220;In recent years enterprise architecture has been moving from a discipline that provides top-down, <em>a priori</em> technology blueprints to the business side to one that articulates key, strategic possibilities and only the most critical high-level constraints (such as security standards) and then <strong><span style="color: #ff6600;"><em>operates as a conductor, promoter, problem solver, and evangelist across the organization</em></span></strong> through the vehicle of a cohesive community to co-develop needed solutions.&#8221;</p>
<p>(my emphasis added). And:</p>
<p style="padding-left: 30px;">&#8220;Invariably, the best architecture I see comes naturally from self-organizing thought leaders in an organization that seek each other out and collaborate on common solutions to their problems. Rather than the <em>us vs. them</em> mentality of old-world enterprise architecture, there is only an <em>us</em> mentality. Instead of prescribed standards, designs, technologies, and tools there is real [two-way] consensus and immediate buy-in.&#8221;</p>
<p>And as with all Dion&#8217;s posts there is the cool graphic. I especially like the two downward facing arrows &#8211; &#8220;community leadership&#8221; and &#8220;guides&#8221;:</p>
<p style="text-align: center;"><a href="http://blogs.zdnet.com/Hinchcliffe/?p=674"><img class="aligncenter" title="Rethinking Enterprise Architecture for the 21st Century" src="http://i.zdnet.com/blogs/emergent_architecture_large.png" alt="" width="496" height="573" /></a></p>
<p>The <a href="http://blogs.zdnet.com/Hinchcliffe/?p=674" target="_blank">article</a> is well worth reading but I think there is a large element of wishful thinking here. It paints a good picture of how enterprise architecture should be, but I fear we are a long way from this nirvana. Much of the vision depends on a fundamental change in organizational culture. Businesses that recognise the value of an &#8220;emergent culture&#8221; will naturally have an &#8220;emergent enterprise architecture.&#8221; I don&#8217;t think it will go the other way around. Emergent enterprise architecture will not survive in or be able to change a top-down corporation.</p>
<p>In the long term, those companies with the right culture will support emergent enterprise architecture and thrive on IT success. Those companies that don&#8217;t will cede their IT resources to others. Those who can <em>do</em> IT will do it on behalf of those who can&#8217;t. Cloud anyone?</p>


<p>Related posts:<ol><li><a href='http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/' rel='bookmark' title='Permanent Link: The Value of Enterprise Architecture'>The Value of Enterprise Architecture</a></li>
<li><a href='http://www.soabloke.com/2007/10/24/design-for-change/' rel='bookmark' title='Permanent Link: Design for Change'>Design for Change</a></li>
<li><a href='http://www.soabloke.com/2009/08/14/ea-and-agile-projects/' rel='bookmark' title='Permanent Link: EA and Agile Projects'>EA and Agile Projects</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.soabloke.com/2009/08/19/emergent-architecture/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>EA and Agile Projects</title>
		<link>http://www.soabloke.com/2009/08/14/ea-and-agile-projects/</link>
		<comments>http://www.soabloke.com/2009/08/14/ea-and-agile-projects/#comments</comments>
		<pubDate>Thu, 13 Aug 2009 22:20:06 +0000</pubDate>
		<dc:creator>Saul Caganoff</dc:creator>
				<category><![CDATA[architecture]]></category>
		<category><![CDATA[agile]]></category>
		<category><![CDATA[ea]]></category>
		<category><![CDATA[governance]]></category>

		<guid isPermaLink="false">http://www.soabloke.com/?p=127</guid>
		<description><![CDATA[Enterprise Architect representation on agile projects can help with governance, but EA requirements are not quite the same as business requirements.


Related posts:<ol><li><a href='http://www.soabloke.com/2008/01/06/soa-metrics-projects-and-organizations/' rel='bookmark' title='Permanent Link: SOA Metrics, Projects and Organizations'>SOA Metrics, Projects and Organizations</a></li>
<li><a href='http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/' rel='bookmark' title='Permanent Link: The Value of Enterprise Architecture'>The Value of Enterprise Architecture</a></li>
<li><a href='http://www.soabloke.com/2008/12/10/martin-fowler-on-humane-registry/' rel='bookmark' title='Permanent Link: Martin Fowler on Humane Registry'>Martin Fowler on Humane Registry</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>A <a href="http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/#comment-610" target="_blank">recent comment</a> on my post about the <span lang="EN"><a href="http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture" target="_blank">value of enterprise architecture </a>suggested that enterprise architects should be directly involved in Scrum projects. In that post I suggested that the primary value of EA is &#8220;continuity&#8221; and &#8220;self-correction&#8221; across all the IT initiatives. If these qualities represent the value of EA, then the mechanism for realising that value must involve communication.<br />
</span></p>
<p><span lang="EN">Communication is the key to ensuring that IT project deliverables provide cohesion across organizational, geographical and temporal boundaries. I have </span><a href="http://www.soabloke.com/2009/02/13/the-soa-governance-thing/" target="_blank">previously written</a> that communication and governance are effectively the same thing. The problem is that &#8220;governance&#8221; needs to overcome the image of heavy-handed, top-down, hierarchical &#8220;rules&#8221; handed down by &#8220;out of touch&#8221; enterprise architects &#8211; like commandments on tablets of stone. <em>EA must be seen as an enabler, not a roadblock</em>.</p>
<p>But communication and governance must also be <a href="http://www.biske.com/blog/?p=372" target="_blank">relevant to the organizational culture</a>. So if the culture embraces agile development methods such as Scrum, then on the face of it the governance structure ought to conform with agile practices which favour direct verbal communication over documentation. If it is true that an embedded business representative can communicate requirements more effectively than a written requirements document, then perhaps it is also true that an embedded enterprise architect can &#8220;govern&#8221; more effectively than a written EA document.</p>
<p>However, on reflection, I don&#8217;t think the analogy of EA as a &#8220;customer&#8221; of the project is quite as strong as I <a href="http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/#comment-611" target="_blank">first thought</a>. There are a couple of differences between &#8220;business requirements&#8221; and &#8220;EA requirements&#8221;.</p>
<p>First, business requirements for a project are communicated primarily to that project. Few if any other IT projects would be interested in these particular business requirements which we are trying to encode into an IT solution. However, EA requirements must be communicated consistently across multiple projects and consistency demands that the EA requirements &#8211; the &#8220;governance principals&#8221; &#8211; need to be encoded in some written form, independent of an individual architect or even team of architects.</p>
<p>Second, business requirements change very frequently within the timespan of an IT project. Indeed the development process itself can change business requirements. This is why agile methods value verbal communication methods over written &#8211; so as to allow for frequent change in business requirements. EA requirements will not change as rapidly. Even though the Enterprise Architecture will evolve over time, it should not change over the course of a single project. Indeed if your Enterprise Architecture undergoes sudden rapid shifts (e.g. adopting an overnight SOA mandate) then you have a recipe for IT disaster. Hence the agile &#8220;insight&#8221; that written business requirements cannot keep up with reality, is not quite as relevant when it comes to EA requirements.</p>
<p>So my response to <a href="http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/#comment-610" target="_blank">Paul&#8217;s comment </a>is still: Yes! I agree that an EA representation on a Scrum project would be a good idea &#8211; to communicate, elucidate and interpret EA requirements to the project and importantly to take new lessons learned back from the project into the governance structures. However, this is no substitute for EA &#8220;documentation&#8221; &#8211; artefact-based governance &#8211; which is necessary to ensure consistency and continuity.</p>


<p>Related posts:<ol><li><a href='http://www.soabloke.com/2008/01/06/soa-metrics-projects-and-organizations/' rel='bookmark' title='Permanent Link: SOA Metrics, Projects and Organizations'>SOA Metrics, Projects and Organizations</a></li>
<li><a href='http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/' rel='bookmark' title='Permanent Link: The Value of Enterprise Architecture'>The Value of Enterprise Architecture</a></li>
<li><a href='http://www.soabloke.com/2008/12/10/martin-fowler-on-humane-registry/' rel='bookmark' title='Permanent Link: Martin Fowler on Humane Registry'>Martin Fowler on Humane Registry</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.soabloke.com/2009/08/14/ea-and-agile-projects/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>The Value of Enterprise Architecture</title>
		<link>http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/</link>
		<comments>http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/#comments</comments>
		<pubDate>Tue, 16 Jun 2009 11:37:05 +0000</pubDate>
		<dc:creator>Saul Caganoff</dc:creator>
				<category><![CDATA[architecture]]></category>
		<category><![CDATA[business]]></category>
		<category><![CDATA[continuity]]></category>
		<category><![CDATA[enterprise-architecture]]></category>
		<category><![CDATA[project management]]></category>
		<category><![CDATA[strategy]]></category>
		<category><![CDATA[value]]></category>

		<guid isPermaLink="false">http://www.soabloke.com/?p=88</guid>
		<description><![CDATA[Enterprise Architecture needs a value proposition. The value of EA is in continuity and "self correction" supporting the execution of enterprise strategy.


Related posts:<ol><li><a href='http://www.soabloke.com/2009/08/19/emergent-architecture/' rel='bookmark' title='Permanent Link: Emergent Architecture'>Emergent Architecture</a></li>
<li><a href='http://www.soabloke.com/2010/02/16/an-hypothesis/' rel='bookmark' title='Permanent Link: An Hypothesis'>An Hypothesis</a></li>
<li><a href='http://www.soabloke.com/2009/08/14/ea-and-agile-projects/' rel='bookmark' title='Permanent Link: EA and Agile Projects'>EA and Agile Projects</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<p>There has lately been a lot of discussion about Enterprise Architecture (hereafter EA) in my neighbourhood of the blogosphere. Perhaps this is a sign of adolescence for EA. Its existence is apparent, and now EA needs to decide who it <a title="Can Enterprise Architecture be Agile?" href="http://ingenia.wordpress.com/2009/05/08/can-enterprise-architecture-be-agile/" target="_blank">should hang out with</a> and what it wants to be when it grows up. As part of a wider discussion, <a title="Richard Veryard" href="http://rvsoapbox.blogspot.com" target="_blank">Richard Veryard</a> has posted some excellent thoughts on the importance of <a title="A Value Proposition for EA" href="http://rvsoapbox.blogspot.com/2009/06/value-proposition-for-enterprise.html" target="_blank">a </a><a title="A Value Proposition for EA" href="http://rvsoapbox.blogspot.com/2009/06/value-proposition-for-enterprise.html" target="_blank">value proposition for EA</a>. I totally agree with Richard&#8217;s view that EA is not just about making projects successful and since this is my blog, I&#8217;ll put my view on what I think is the value of EA. EA provides two perspectives which are vital in any long-lived and complex system such as an enterprise.</p>
<p><strong>Continuity</strong>: EA provides continuity across organizational boundaries, geographies and &#8211; most importantly &#8211; the span of time. This is something that any individual project &#8211; successful or not &#8211; could not do. During the lifetime of an enterprise there are multitudes of projects executed in different places, by different people &#8211; outsourced and insourced. Ultimately all these projects must pull in approximately the same direction to support the business strategy.</p>
<p>To take a hypothetical example: &#8220;The data warehouse project in Bangalore being built by <em>Tatosys</em> must support the new marketing system being built in Sydney by <em>Bluehair Consulting</em>. And both are critical components for the mobile commerce platform slated for 2012 go-live by either <em>PDQ Global Services</em> or <em>IBS (an HQ company)</em> depending on who bids the lowest fixed price. And by-the-way the core transaction systems run on a mainframe that we are phasing out in the next three years as part of our 2002 strategic plan.&#8221;</p>
<p>Each of these projects is a major undertaking in its own right. Even if every project is 100% successful, you cannot be certain they will all fit together in a coherent and efficient manner. Making them fit is more than just a business problem. It goes beyond getting the functionality right and encompasses deeper technical layers of standards, frameworks and systems partitioning which are neither the domain of the business nor of business analysts.</p>
<p><strong>Self Correction</strong>: The second value proposition of EA that I see is the role of &#8220;external observer and governor&#8221;. Enterprises exist in a constant flux of technologies, fashions, methodologies and business requirements. Someone needs to have the ability to evaluate new practices and make the decision to incorporate those that are valuable and relevant. This is not something that individual projects can do, although they may have a role in trialing new practices.</p>
<p>Each of these areas of change exist in the domain of different parts of the organization. The business is hopefully across changes in business requirements, the Project Management Office is (perhaps) across changes in software development methodologies, and the IT department always want to try out the cool new tools. But normally these parts of the organization don&#8217;t interact outside the constraints of an individual project. You need some constituency that is across all these areas and helping to guide the amalgamation of new &#8220;best practices&#8221; into the enterprise. I think that EA is the natural venue for this interaction.</p>
<p>So is this just the &#8220;old fashioned&#8221; value proposition of &#8220;EA-as-IT-planning&#8221;, instead of the cool new view of &#8220;EA-as-business-strategy&#8221;? I see it as something midway between the two. Certainly &#8220;EA-as-IT-strategy&#8221; is close, but also &#8220;EA-as-trusted-advisor-to-business-strategy&#8221;. Leave the business strategy to the business, but when it comes to the mechanics of implementing business strategy in terms of systems, processes and technologies, the strategy-makers should be able to rely on EA to guide them as to what works, what doesn&#8217;t &#8211; and who might take them for a ride.</p>
<p>Richard mentions that he&#8217;s &#8220;not convinced that the EA value proposition is understood by its customers&#8221;. I would go so far as to say I don&#8217;t think the EA value proposition is even <em>trusted</em> by its customers. EA needs to engage with its customers, figure out the value proposition and then execute.</p>


<p>Related posts:<ol><li><a href='http://www.soabloke.com/2009/08/19/emergent-architecture/' rel='bookmark' title='Permanent Link: Emergent Architecture'>Emergent Architecture</a></li>
<li><a href='http://www.soabloke.com/2010/02/16/an-hypothesis/' rel='bookmark' title='Permanent Link: An Hypothesis'>An Hypothesis</a></li>
<li><a href='http://www.soabloke.com/2009/08/14/ea-and-agile-projects/' rel='bookmark' title='Permanent Link: EA and Agile Projects'>EA and Agile Projects</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://www.soabloke.com/2009/06/16/the-value-of-enterprise-architecture/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
	</channel>
</rss>
