<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Applied Enterprise Architecture</title>
	
	<link>http://pragmaticarchitect.wordpress.com</link>
	<description>Hands-On Architecture</description>
	<lastBuildDate>Tue, 14 May 2013 19:26:20 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain="pragmaticarchitect.wordpress.com" port="80" path="/?rsscloud=notify" registerProcedure="" protocol="http-post" />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Applied Enterprise Architecture</title>
		<link>http://pragmaticarchitect.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://pragmaticarchitect.wordpress.com/osd.xml" title="Applied Enterprise Architecture" />
	
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/AppliedEnterpriseArchitecture" /><feedburner:info uri="appliedenterprisearchitecture" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pragmaticarchitect.wordpress.com/?pushpress=hub" /><geo:lat>30.159091</geo:lat><geo:long>-81.630732</geo:long><feedburner:emailServiceId>AppliedEnterpriseArchitecture</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>How to build a Roadmap – Define End State</title>
		<link>http://feedproxy.google.com/~r/AppliedEnterpriseArchitecture/~3/ynCV7lVQgIw/</link>
		<comments>http://pragmaticarchitect.wordpress.com/2013/05/14/how-to-build-a-roadmap-define-end-state/#comments</comments>
		<pubDate>Tue, 14 May 2013 18:32:10 +0000</pubDate>
		<dc:creator>James Parnitzke</dc:creator>
				<category><![CDATA[Architecture Frameworks]]></category>
		<category><![CDATA[Enterprise Architecture]]></category>
		<category><![CDATA[Methodology]]></category>
		<category><![CDATA[Organization Dynamics]]></category>
		<category><![CDATA[Roadmap Development]]></category>

		<guid isPermaLink="false">http://pragmaticarchitect.wordpress.com/?p=431</guid>
		<description><![CDATA[This post will provide a little more exposition and insight into one method I have found useful in practice for quickly defining desired end states. Done well, it can provide an honest and objective look to successfully understand where we truly want to be as an organization and face the uncomfortable truth in some cases where we need to improve.  <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=431&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://pragmaticarchitect.files.wordpress.com/2013/05/changes.png"><img class="size-medium wp-image-434 alignleft" alt="Changes" src="http://pragmaticarchitect.files.wordpress.com/2013/05/changes.png?w=155&#038;h=107" width="155" height="107" /></a>An earlier post (<a title="How to build a roadmap" href="http://pragmaticarchitect.wordpress.com/2011/03/05/how-to-build-a-roadmap" target="_blank">How to Build a Roadmap</a>) discussed the specific steps required to develop a well thought out road map. This method identified specific actions using an overall pattern <span style="text-decoration:underline;">ALL</span> roadmaps should follow. The steps required to complete this work:</p>
<p>1) Develop a clear and unambiguous understanding of the current state</p>
<p>2) Define the desired end state</p>
<p>3) Conduct a Gap Analysis exercise</p>
<p>4) Prioritize the findings from the Gap Analysis exercise into a series of gap closure strategies</p>
<p>5) Discover the optimum sequence of actions (recognizing predecessor &#8211; successor relationships)</p>
<p>6) Develop and Publish the Road Map</p>
<p>I have discussed a way to quickly complete step one (1) <a title="Define current state" href="http://pragmaticarchitect.wordpress.com/2012/09/16/how-to-build-a-roadmap-define-current-state" target="_blank">Define current State </a>. This post will discuss how to craft a suitable desired End State definition so we can use the results from the Current State work and begin our gap analysis. Our intent is to identify the difference (delta) from where we are to what we aspire to become. I know this seems obvious (and maybe a little redundant). This baseline is critical to identify what needs to be accomplished to meet the challenge.</p>
<p>The reality of organizational dynamics and politics (we are human after all) can distort the reality we are seeking here and truly obscure the findings. I think this happens in our quest to preserve the preferred “optics”. This is especially so when trying to define our desired end state. The business will have a set of strategic goals and objectives that may not align with the individuals we are collaborating with to discover what the tactical interpretation of this end state really means. We are seeking a quick or structured way to define a desired end state that can be reviewed and approved by all stakeholders when this activity gets underway.  The tactical realization of the strategy (and objectives) is usually delegated (and rightly so) to the front line management. The real challenge is eliciting, compiling, and gaining agreement on what this desired end state means to each of the stakeholders. This is not an easy exercise and demands a true mastery of communication and facilitation skills many are not comfortable with or have exercised on a regular basis.  A clear understanding of the complex interaction of any organization (and their un-intended consequences) is critical to a clear understanding of the desired end state.</p>
<p><strong>Define Desired End State</strong></p>
<p><a href="http://pragmaticarchitect.files.wordpress.com/2009/03/graph_galbraith_star-model1.jpg"><img class="size-medium wp-image-212 alignright" alt="graph_galbraith_star-model1" src="http://pragmaticarchitect.files.wordpress.com/2009/03/graph_galbraith_star-model1.jpg?w=300&#038;h=177" width="300" height="177" /></a>There are a couple of ways to do this. One interesting approach I have seen is to use the <a title="Galbraith's star model" href="http://www.jaygalbraith.com/index.php?option=com_content&amp;view=article&amp;id=11&amp;Itemid=123" target="_blank">Galbraith Star Model</a> as an organizational design framework. The model is developed within this framework to understand what design policies and guidelines will be needed to align organizational decision making and behavior. The Star model includes the following five categories:</p>
<ul>
<li><span style="text-decoration:underline;">Strategy:</span> Determine direction through goals, objectives, values and mission. It defines the criteria for selecting an organizational structure (for example functional or balanced Matrix). The strategy defines the ways of making the best trade-off between alternatives.</li>
<li><span style="text-decoration:underline;">Structure:</span> Determines the location of decision making power. Structure policies can be subdivided into: specialization: type and number of job specialties; shape: the span of control at each level in the hierarchy; distribution of power: the level of centralization versus decentralization; departmentalization: the basis to form departments (function, product, process, market or geography).</li>
<li><span style="text-decoration:underline;">Processes:</span> The flow of information and decision processes across the proposed organization’s structure. Processes can be either vertical through planning and budgeting, or horizontal through lateral relationships (matrix).</li>
<li><span style="text-decoration:underline;">Reward Systems:</span> Influence the motivation of organization members to align employee goals with the organization’s objectives.</li>
<li><span style="text-decoration:underline;">People and Policies:</span> Influence and define employee’s mindsets and skills through recruitment, promotion, rotation, training and development.</li>
</ul>
<p>The preferred sequence in this design process is composed in the following order:</p>
<ul>
<li>strategy;</li>
<li>structure;</li>
<li>key processes;</li>
<li>key people;</li>
<li>roles and responsibilities;</li>
<li>information systems (supporting and ancillary);</li>
<li>performance measures and rewards;</li>
<li>training and development; and</li>
<li>career paths.</li>
</ul>
<div id="attachment_437" class="wp-caption alignnone" style="width: 424px"><a title="Strategy Model" href="http://pragmaticarchitect.files.wordpress.com/2013/05/strategymodel.png" target="_blank"><img class="wp-image-437 " title="Strategy Model" alt="StrategyModel" src="http://pragmaticarchitect.files.wordpress.com/2013/05/strategymodel.png?w=414&#038;h=410" width="414" height="410" /></a><p class="wp-caption-text">Strategy Model &#8211; Click to enlarge</p></div>
<p>A typical design sequence starts with an understanding of the strategy as defined. This in turns drives the organizational structure. Processes are based on the organization’s structure. Structure and Processes further refine reward systems and policy. Beginning with Strategy we uncover a shared set of goals (and related objectives) to define the desired end state organized around the following categories:</p>
<ul>
<li><span style="text-decoration:underline;">People/Organization</span> considers the human side of Information Management, looking at how people are measured, motivated and supported in related activities.  Those organizations that motivate staff to think about information as a strategic asset tend to extract more value from their systems and overcome shortcomings in other categories.</li>
<li><span style="text-decoration:underline;">Policy</span> considers the message to staff from leadership.  The assessment considers whether staff is required to administer and maintain information assets appropriately and whether there are consequences for inappropriate behaviors.  Without good policies and executive support it is difficult to promote good practices even with the right supporting tools.</li>
<li><span style="text-decoration:underline;">Process and Practice</span> considers whether the organization has adopted standardized approaches to Information Management.  Even with the right tools, measurement approaches and policies, information assets cannot be sustained unless processes are consistently implemented.  Poor processes result in inconsistent data and a lack of trust by stakeholders.</li>
<li><span style="text-decoration:underline;">Technology</span> covers the tools provided to staff to properly meet their Information Management duties.  While technology on its own cannot fill gaps in the information resources, a lack of technological support makes it impractical to establish good practices.</li>
</ul>
<p><strong>Goal Setting</strong></p>
<p><a href="http://pragmaticarchitect.files.wordpress.com/2013/05/smart_goals_bw.png" target="_blank"><img class=" wp-image-441 alignright" alt="smart_goals_bw" src="http://pragmaticarchitect.files.wordpress.com/2013/05/smart_goals_bw.png?w=189&#038;h=155" width="189" height="155" /></a>Goal setting is a process of determining what the stakeholder’s goals are, working towards them and measuring progress to plan. A generally accepted process for setting goals uses the SMART acronym (Specific, Measurable, Achievable, Realistic, and Timely). Each of these attributes related to the goal setting exercise is described below.</p>
<ul>
<li><strong>Specific:</strong> A specific goal has a much greater chance of being accomplished than a general goal.  Don’t “boil the ocean” and try to remain as focused as possible. Provide enough detail so that there is little or no confusion as to what exactly the stakeholder should be doing.</li>
<li><strong>Measurable:</strong> Goals should be measurable so we can measure progress to plan as it occurs. A measurable goal has an outcome that can be assessed either on a sliding scale (1-10), or as a hit or miss, success or failure. Without measurement, it is impossible to sustain and manage the other aspects of the framework.</li>
<li><strong>Achievable:</strong> An achievable goal has an outcome that is realistic given the organization’s capability to deliver given the necessary resources and time. Goal achievement may be more of a “stretch” if the outcome is more difficult to begin with. Is what we are asking the organization possible?</li>
<li><strong>Realistic:</strong> Start small and remain sharply focused with what the organization can and will do and let the stakeholder’s experience the joys of meeting their goals.  Gradually increase the intensity of the goal after having a discussion with the stakeholder’s to redefine the goal.  Is our goal realistic given the budget and timing constraints?  If not, then we might want to redefine the goal.</li>
<li><strong>Time Bound:</strong> Set a timeframe for the goal: for next quarter, in six months, by one year. Setting an end point for the goal gives the stakeholders a clear target to achieve.  Planning follow-up should occur within the 6-month period (best practice) but may occur within one year period or prior based on progress to plan.</li>
</ul>
<p>Defining the desired end state is accomplished through a set of questions used to draw participants into the process to meet our SMART objectives.  This set of questions is compiled, evaluated, and presented in a way that is easy to understand. Our goal here is to help everyone participating in the work to immediately grasp where the true gaps or shortcomings exist and why this is occurring when we get to step three (3) in the gap analysis phase.  This is true if we are evaluating Information Strategy, our readiness to embrace a SOA initiative, or launching a new business initiative. We can complete the design process by using a variety of tools and techniques. I have used IDEF, BPMN or other process management methods and tools (including RASIC charts describing roles and responsibilities for example). Whatever tools you elect to use, they should effectively communicate intent and used to validate changes with the stakeholders who must be engaged in this process.</p>
<p>Now this is where many of us come up short.  Where do I find the questions to help drive SMART goals? How to I make sure they are relevant? What is this engine I need to compile the results? And how do I quickly compile the results dynamically and publish for comment every time I need to?</p>
<p>One of the answers for me came a few years ago when I first saw the <a href="http://mike2.openmethodology.org/wiki/Information_Maturity_QuickScan" target="_blank">MIKE 2.0 quick assessment engine for Information Maturity</a>. The Information Maturity (IM) Quick Scan is the MIKE 2.0 tool used to assess current and desired Information Maturity levels within an organization. This survey instrument is broad in scope and is intended to assess enterprise capabilities as opposed to focusing on a single subject area. Although this instrument focuses on Information Maturity I realized quickly I had been doing something similar for years across many other domains. The real value here is in the open source resource you can use to kick start your own efforts.  I think it is also a good idea to become familiar with the benchmarks and process classification framework the <a title="APQC" href="http://www.apqc.org" target="_blank">American Productivity and Quality Center (APQC)</a> has made available for a variety of industries. The APQC is a terrific source for discovering measures and quantifiable metrics useful for meeting the need for specific, measurable objectives to support the end state definition.</p>
<p><strong>How it Works</strong></p>
<p>The questions in the quick scan are organized around six (6) key groups in this domain to include Organization, Policy, Technology, Compliance, Measurement, and Process/Practice.  The results are tabulated based on responses (in the case of the MIKE 2.0 template) ranging from zero (0 &#8211; Never) to five (5 – Always).  Of course you can customize response the real point here is we want to quantify the responses received.  The engine component takes the results builds a summary, and produces accompanying tabs where radar graphs plots present the Framework, Topic, Lookup, # Questions, Total Score, Average Score, and Optimum within each grouping.  The MS Word document template then links to this worksheet and grabs the values and radar charts produced to assemble the final document. If all this sounds confusing, please grab the templates and try them for yourself.</p>
<div id="attachment_413" class="wp-caption alignnone" style="width: 424px"><a href="http://pragmaticarchitect.files.wordpress.com/2012/09/modeldiagram.png" target="_blank"><img class=" wp-image-413  " alt="Define Current State Diagram" src="http://pragmaticarchitect.files.wordpress.com/2012/09/modeldiagram.png?w=414&#038;h=236" width="414" height="236" /></a><p class="wp-caption-text">Define Desired End State Model &#8211; Click to Enlarge</p></div>
<p>The groupings (and related sub-topics) are organized out of the box like this to include the following perspectives:</p>
<ul>
<li>Compliance</li>
<li>Measurement</li>
<li>People/organization</li>
<li>Policy</li>
<li>Process/Practice</li>
<li>Technology</li>
</ul>
<p>Each of these perspectives is summarized and combined into a MS Word document to present to the stakeholders.  The best part of this tool is it can be used periodically augment quantitative measures (captured in a dashboard for example) to assess progress to plan and improvement realized over time. Quantifying improvement quickly is vital to continued adoption of change. Communicating the results is stakeholders in quick, easy-to-understand format they are already familiar with is just as important using the same consistent, repeatable tool we used to define current state with.</p>
<p><strong>Results </strong></p>
<p>I think you can see this is valuable way to reduce complexity and gather, compile, and present a fairly comprehensive view of the desired end state of the domain in question. Armed with this view we can now proceed to step three (3) and begin to conduct the Gap Analysis exercise. The difference (delta) between these two (current and desired end state) becomes the basis for our road map development.  I hope this has answered many of the questions about step two (2) Define End State. This is not the only way to do this, but has become the most consistent and repeatable methods I’m aware of to define a desired end state quickly in my practice.  Understandings the gaps between the current and the desired end-state across the business, information, application, and technical architecture make development of a robust solution delivery road map possible.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pragmaticarchitect.wordpress.com/431/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pragmaticarchitect.wordpress.com/431/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=431&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" /><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?a=ynCV7lVQgIw:4e2JEfz20Vg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/AppliedEnterpriseArchitecture/~4/ynCV7lVQgIw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pragmaticarchitect.wordpress.com/2013/05/14/how-to-build-a-roadmap-define-end-state/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3fc2a9fd186b660f3368f7bcf61c62ce?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">jparnitzke</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2013/05/changes.png?w=300" medium="image">
			<media:title type="html">Changes</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2009/03/graph_galbraith_star-model1.jpg?w=300" medium="image">
			<media:title type="html">graph_galbraith_star-model1</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2013/05/strategymodel.png?w=460" medium="image">
			<media:title type="html">Strategy Model</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2013/05/smart_goals_bw.png" medium="image">
			<media:title type="html">smart_goals_bw</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2012/09/modeldiagram.png?w=460" medium="image">
			<media:title type="html">Define Current State Diagram</media:title>
		</media:content>
	<feedburner:origLink>http://pragmaticarchitect.wordpress.com/2013/05/14/how-to-build-a-roadmap-define-end-state/</feedburner:origLink></item>
		<item>
		<title>How to build a Roadmap – Define Current State</title>
		<link>http://feedproxy.google.com/~r/AppliedEnterpriseArchitecture/~3/SJko6B-KM18/</link>
		<comments>http://pragmaticarchitect.wordpress.com/2012/09/16/how-to-build-a-roadmap-define-current-state/#comments</comments>
		<pubDate>Sun, 16 Sep 2012 17:05:01 +0000</pubDate>
		<dc:creator>James Parnitzke</dc:creator>
				<category><![CDATA[Architecture Frameworks]]></category>
		<category><![CDATA[Enterprise Architecture]]></category>
		<category><![CDATA[Methodology]]></category>
		<category><![CDATA[Roadmap Development]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Roadmap development]]></category>

		<guid isPermaLink="false">http://pragmaticarchitect.wordpress.com/?p=409</guid>
		<description><![CDATA[This post will provide a little more exposition and insight into one method I have found useful in practice for quickly defining current state. Done well, it can provide an honest and objective look in the mirror to successfully understand where we truly are as an organization and face the uncomfortable truth in some cases where we need to improve.  <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=409&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><strong>Introduction</strong></p>
<p><a href="http://pragmaticarchitect.files.wordpress.com/2012/09/tumblr_lpmcaulucv1qfj6zvo1_500.jpg"><img class="wp-image-411 alignright" style="margin-top:2px;margin-bottom:1px;" title="Warning sign" src="http://pragmaticarchitect.files.wordpress.com/2012/09/tumblr_lpmcaulucv1qfj6zvo1_500.jpg?w=142&#038;h=108" alt="" width="142" height="108" /></a>In an earlier post (<a title="How to build a Roadmap" href="http://pragmaticarchitect.wordpress.com/2011/03/05/how-to-build-a-roadmap/" target="_blank">How to Build a Roadmap</a>) I discussed the specific steps required to develop a defensible, well thought out road map to identify specific actions using an overall pattern <span style="text-decoration:underline;">all roadmaps should follow</span>. The steps required to complete this work:</p>
<ul>
<li>Develop a clear and unambiguous understanding of the current state</li>
<li>Define the desired end state</li>
<li>Conduct a Gap Analysis exercise</li>
<li>Prioritize the findings from the Gap Analysis exercise into a series of gap closure strategies</li>
<li>Discover the optimum sequence of actions (recognizing predecessor &#8211; successor relationships)</li>
<li>Develop the Road Map</li>
</ul>
<p>I have received a lot of questions about step one (1) which is understandable given the lack of details about just how to quickly gather real quantifiable objectives and potential functional gaps. In the interest of simplicity and my attempt  to keep the length of the prior post manageable specific details about how to do this were omitted.</p>
<p>This post will provide a little more exposition and insight into one method I have found useful in practice. Done well, it can provide an honest and objective look in the mirror to successfully understand where we truly are as an organization and face the uncomfortable truth in some cases where we need to improve.  The reality of the organizational dynamic and politics (we are human after all) can distort the reality we are seeking here and truly obscure the findings. I think this happens in our quest to preserve the preferred “optics” without an objective and shared method all stakeholders are aware of and approve before embarking down this path. In the worst case, if left to the hands of outside consultants alone or in the hands of an unskilled practitioner we risk creating more harm than good before even starting. This is why I will present a quick, structured way to gather and evaluate current state that can be reviewed and approved by all stakeholders before the activity even gets underway.  Our objective is to develop a clear and unambiguous understanding of the current state. We should have a formal, well understood way to gather and evaluate the results.</p>
<p><strong>Define Current State</strong></p>
<p>First, we need to have a shared, coherent set of questions we can use to draw participants into the process that are relevant and can be quantified.  This set of questions should be able to be compiled, evaluated, and presented in a way which is easy to understand. Everyone participating in the work should be able to immediately grasp where the true gaps or shortcomings exist and why this is occurring.  This is true if we are evaluating Information Strategy, our readiness to embrace a SOA initiative, or launching a new business initiative. So, we need just a few key components.</p>
<p>A pool or set of relevant questions that can be answered quickly by the participants and results quantified An engine to compile the results A quick way to compile and summarize the results for distribution to the stakeholders</p>
<p>Now this is where many of us come up short.  Where do I find the questions and how to I make sure they are relevant? What is this engine I need to compile the results? And how do I quickly compile the results dynamically and publish for comment every time I need to? One of the answers for me came a few years ago when I first saw the <a title="Mike 2.0 Quick Scan - Information Maturity Assessment" href="http://mike2.openmethodology.org/wiki/Information_Maturity_QuickScan" target="_blank">MIKE 2.0 quick assessment engine for Information Maturity </a>.</p>
<p>The Information Maturity (IM) Quick Scan is the MIKE 2.0 tool used to assess current and desired Information Maturity levels within an organization. This survey instrument is broad in scope and is intended to assess enterprise capabilities as opposed to focusing on a single subject area.  Although this instrument focuses on Information Maturity I realized quickly I had been doing something similar for years across many other domains. The real value here is in the open source resource you can use to kick start your own efforts.</p>
<p><strong>So what does this do?</strong></p>
<p>I’m going to focus on the Mike 2.0 tools here because they are readily available to you. The MS Office templates you need can be found at <a href="http://mike2.openmethodology.org/wiki/QuickScan_MS_Office_survey">http://mike2.openmethodology.org/wiki/QuickScan_MS_Office_survey</a>.</p>
<p><a href="http://pragmaticarchitect.files.wordpress.com/2012/09/ghost-mirror.jpg"><img class="alignright  wp-image-412" style="width:268px;height:201px;" title="The Ghost Mirror" src="http://pragmaticarchitect.files.wordpress.com/2012/09/ghost-mirror.jpg?w=268&#038;h=180" alt="Who am I?" width="268" height="180" /></a>Extending these templates into other subject areas is pretty simple once you understand how they work. The basic premise remains the same it really is just a matter of injecting your own subject matter expertise and organizing the results in a way that makes sense to you and your organization.  So here is what you will find there.</p>
<p>First a set of questions organized around the following categories:</p>
<ul>
<li><em>People/Organization</em> considers the human side of Information Management, looking at how people are measured, motivated and supported in related activities.  Those organizations that motivate staff to think about information as a strategic asset tend to extract more value from their systems and overcome shortcomings in other categories.</li>
<li><em>Policy</em> considers the message to staff from leadership.  The assessment considers whether staffs are required to administer and maintain information assets appropriately and whether there consequences for inappropriate behaviours.  Without good policies and executive support it is difficult to promote good practices even with the right supporting tools.</li>
<li><em>Technology</em> covers the tools that are provided to staff to properly meet their Information Management duties.  While technology on its own cannot fill gaps in the information resources, a lack of technological support makes it impractical to establish good practices.</li>
<li><em>Compliance</em> surveys the external Information Management obligations of the organization.  A low compliance score indicates that the organization is relying on luck rather than good practice to avoid regulatory and legal issues.</li>
<li><em>Measurement</em> looks at how the organization identifies information issues and analyses its data.  Without measurement, it is impossible to sustainably manage the other aspects of the framework.</li>
<li><em>Process and Practice</em> considers whether the organization has adopted standardized approaches to Information Management.  Even with the right tools, measurement approaches and policies, information assets cannot be sustained unless processes are consistently implemented.  Poor processes result in inconsistent data and a lack of trust by stakeholders.</li>
</ul>
<p>The templates include an engine to compile the results and a MS Word document template to render and present the results. Because it is based on MS Office the Assessment_Questions.xlsx, Assessment_Engine.xlsx, and Assessment_Report.docx are linked (rather than relative, they use MS’s way –really hardcoded to find linked files in the c:\assessment folder – yikes!) so that you open and score the Assessment_Questions first, then the Assessment_Engine picks these values and creates a nice tabbed interface and charts across all six subject areas. The Word document picks this up further and creates the customized report.</p>
<p>You can extend this basic model to include your own relevant questions in other domains (for example ESB or SOA related, Business Intelligence).  We are going to stick with the Information Maturity quick scan for now. Note I have extended a similar model to include SOA Readiness, BI/.DW, and Business Strategy Assessments.</p>
<p><strong>How it Works</strong></p>
<p>The questions in the quick scan are organized around six (6) key groups in this domain to include Organization, Policy, Technology, Compliance, Measurement, and Process/Practice.  The results are tabulated based on responses (in the case of the MIKE 2.0 template) ranging from zero (0 &#8211; Never) to five (5 – Always).  Of course you can customize response the real point here is we want to quantify the responses received.</p>
<p>The engine component takes the results builds a summary, and produces accompanying tabs where radar graphs plots present the Framework, Topic, Lookup, # Questions, Total Score, Average Score, and Optimum within each grouping.  The MS Word document template then links to this worksheet and grabs the values and radar charts produced to assemble the final document. If all this sounds confusing, please grab the templates and try them for yourself.</p>
<div id="attachment_413" class="wp-caption alignnone" style="width: 442px"><a href="http://pragmaticarchitect.files.wordpress.com/2012/09/modeldiagram.png" target="_blank"><img class=" wp-image-413 " title="Define Current State Diagram" src="http://pragmaticarchitect.files.wordpress.com/2012/09/modeldiagram.png?w=432&#038;h=217" alt="Define Current State Diagram" width="432" height="217" /></a><p class="wp-caption-text">Define Current State Model</p></div>
<p>Each of these six (6) perspectives is then summarized and combined into a MS Word document to present to the stakeholders.</p>
<p><strong>Results</strong></p>
<p>I think you can see this is valuable way to reduce complexity and gather, compile, and present a fairly comprehensive view of the current state of the domain (in this case Information Management Maturity) in question. Armed with this quantified information we can now proceed to step 3 and conduct a Gap Analysis exercise based on our understanding of what is the desired end state. The delta between these two (current and desired end state) becomes the basis for our road map development.  I hope this has answered many of the questions about step one (1) Define Current State. This is not the only way to do this, but has become the most consistent and repeatable methods I’m aware of to quickly define current state in my practice.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pragmaticarchitect.wordpress.com/409/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pragmaticarchitect.wordpress.com/409/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=409&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" /><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?a=SJko6B-KM18:tjtvEBwAFeg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/AppliedEnterpriseArchitecture/~4/SJko6B-KM18" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pragmaticarchitect.wordpress.com/2012/09/16/how-to-build-a-roadmap-define-current-state/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3fc2a9fd186b660f3368f7bcf61c62ce?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">jparnitzke</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2012/09/tumblr_lpmcaulucv1qfj6zvo1_500.jpg?w=300" medium="image">
			<media:title type="html">Warning sign</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2012/09/ghost-mirror.jpg?w=300" medium="image">
			<media:title type="html">The Ghost Mirror</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2012/09/modeldiagram.png?w=300" medium="image">
			<media:title type="html">Define Current State Diagram</media:title>
		</media:content>
	<feedburner:origLink>http://pragmaticarchitect.wordpress.com/2012/09/16/how-to-build-a-roadmap-define-current-state/</feedburner:origLink></item>
		<item>
		<title>How to build a Roadmap</title>
		<link>http://feedproxy.google.com/~r/AppliedEnterpriseArchitecture/~3/Oc3bGDtEMGo/</link>
		<comments>http://pragmaticarchitect.wordpress.com/2011/03/05/how-to-build-a-roadmap/#comments</comments>
		<pubDate>Sat, 05 Mar 2011 14:48:25 +0000</pubDate>
		<dc:creator>James Parnitzke</dc:creator>
				<category><![CDATA[Enterprise Architecture]]></category>
		<category><![CDATA[Master Data Management]]></category>
		<category><![CDATA[Methodology]]></category>
		<category><![CDATA[Roadmap Development]]></category>
		<category><![CDATA[Roadmap development]]></category>

		<guid isPermaLink="false">http://pragmaticarchitect.wordpress.com/?p=375</guid>
		<description><![CDATA[Introduction of a basic pattern for developing a robust road map for any organization using an example of the adoption of a Master Data Management initiative.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=375&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://pragmaticarchitect.files.wordpress.com/2011/03/roadmap2.png"><img class="alignleft size-full wp-image-381" title="Roadmap Image" src="http://pragmaticarchitect.files.wordpress.com/2011/03/roadmap2.png?w=460" alt="Roadmap Image (Pins)"   /></a>How many of us in the profession can truly say we have been taught to develop, refine, and deliver a professional roadmap based on a sound method with consistent repeatable results?  Have been at this crazy business for years, and still astonished at the wide variety of quality in the results I have experienced over the years – and it’s not getting any better. Not sure I can identify why this is so, maybe it’s the consolidation and changes in the traditional consulting business (big eight to what? two, maybe) or the depreciation of the craft itself among our peers. And then again, maybe sound planning went out of style and I didn’t get the memo. No matter what the root cause(s) is I want to take a little time and share some (not all) of what has worked for me with great success over the years and may make your next roadmap better.</p>
<p>I’m no genius, just believe I have been blessed to come into the industry at a time when the large management consulting firms actually invested in intellectual property and shared this with the “new hires” and up-and-coming staff like me. Investing in structured thinking, communication skills, or just plain good old analytic skills makes sense.  Why there is not more of this kind of investment is truly troubling.</p>
<p>What I’m going to share works well across most transformation programs. You will struggle to find this in textbooks, class rooms, or in your local book store (I have looked, maybe not hard enough). This method I will share is based loosely on the <a title="SEI - IDEAL Model" href="http://www.sei.cmu.edu/library/abstracts/reports/96hb001.cfm" target="_blank">SEI-CM IDEAL</a> model used to guide development of longe-range integrated planning for managing software process improvement programs. You will most likely find something similar to this in the best and brightest organizations who have adopted an optimized way to think about how to guide their organizations to perform as expected (some of us call this experience). Now on to the summary of what I want to share, the balance will be revealed in an upcoming series using the adoption of Master Data Management as an example.</p>
<p><strong>The Overall Pattern</strong></p>
<p>At the risk of over-simplifying things, here is the overall pattern ALL roadmaps follow:</p>
<div id="attachment_376" class="wp-caption alignleft" style="width: 441px"><a href="http://pragmaticarchitect.files.wordpress.com/2011/03/strategyroadmap_development_new.png"><img class="size-full wp-image-376  " title="StrategyRoadMap_Development_New" src="http://pragmaticarchitect.files.wordpress.com/2011/03/strategyroadmap_development_new.png?w=460" alt=""   /></a><p class="wp-caption-text">Click to enlarge</p></div>
<p>1) <span style="text-decoration:underline;">Develop a clear and unambiguous understanding of the current state</span></p>
<p style="padding-left:30px;">- Business Objectives (not just strategy or goals, real quantifiable objectives)<br />
- Functional needs<br />
- High impact business processes or cycles<br />
- Organization (current operating model)<br />
- Cost and complexity drivers<br />
- Business and technical assets (some call these artifacts)</p>
<p>2) <span style="text-decoration:underline;">Define desired end state</span><br />
First, (know this is obvious) what are trying to accomplish? Is there an existing goal-driven strategy clearly articulated into quantifiable objectives? Sounds silly doesn’t it, and if this exists and a no one knows about it or cannot clearly communicate what the end game is we have a problem. This could be a well guarded secret. Or, what is more common the line of sight from executive leadership down to the mail room is broken, where no one knows what the true goals are or cares (it’s just a job after all) becomes a annual charade of MBO objectives with no real understanding.  Some better examples I would expect include:</p>
<p style="padding-left:30px;">- Performance targets (Cash flow, Profitability, Velocity (cycle or PCE), Growth, Customer intimacy)<br />
- Operating Model Improvements<br />
- Guiding principals</p>
<p>3) <span style="text-decoration:underline;">Conduct Gap Analysis</span><br />
Okay, now this is where the true fun starts. Once here we can begin to evaluate the <em><strong>DELTA</strong></em> between who we really are, and what we truly want to become.  Armed with a clear understanding of where we are and where we want to be, the actionable activities begin to fall out and become evident. Gap closure strategies can then begin to be discussed, shared, and resolved into any number of possibilities usually involving the following initiatives:</p>
<p style="padding-left:30px;">- Organizational<br />
- Functional<br />
- Architectural (technology)<br />
- Process<br />
- Reward or economic incentives</p>
<p>For the enterprise architect the following diagram illustrates a sample index or collection of your findings to this point focused across the four architecture domains (Business, Information, Application, and Technology) related to the architecture.  Note how this is aligned into the enterprise architecture meta-model you can see over at the <a title="Essential Project Architecture Meta-Model" href="http://www.enterprise-architecture.org/documentation/doc-meta-model" target="_blank">Essential project</a>. The <em><strong>DELTA</strong></em> in this case represents the recommended Gap Closure Strategy between current and desired end states. Or put simply, the actionable things we need to do to close the gap between where are, and where we want to be.</p>
<div id="attachment_378" class="wp-caption alignleft" style="width: 437px"><a href="http://pragmaticarchitect.files.wordpress.com/2011/03/documentindex.png"><img class="size-full wp-image-378 " title="DocumentIndex" src="http://pragmaticarchitect.files.wordpress.com/2011/03/documentindex.png?w=460" alt="EA Document Index"   /></a><p class="wp-caption-text">Click to enlarge</p></div>
<p>4) <span style="text-decoration:underline;">Prioritize</span><br />
Now that we have the list of actionable items it is time to prioritize what is front of us. This is usually driven (in a technology road map) by evaluating the relative business value AND the technical complexity, plotting the results in a quadrant graph of some kind. It is critical here that the stakeholders are engaged in the collection of the data points and they are keenly aware of what they are scoring. At the end of the day, what we are doing here is IDENTIFYING what is feasible and what has the highest business value. I know, I know this sounds obvious, and you would be astonished by how often this does not occur.</p>
<p>5) <span style="text-decoration:underline;">Discover the Optimum Sequence</span><br />
Okay, now we have the initiatives, the prioritization, how about sequence? In other words are there things we have to get accomplished first, before others? Are there dependencies we have identified that need to be satisfied before moving forward? This sounds foolish as well, and we sometimes we need to learn how to crawl, walk, run, ride a bike, and then drive a motor vehicle. And what about the capacity for any organization to absorb change? Hmmm… Not to be overlooked, this where a clear understanding of the organizational dynamics is critical (see step number 1, this is why we need to truly understand where we are).</p>
<p>6) <span style="text-decoration:underline;">Develop the Road Map</span><br />
Now we are ready to develop the road map. Armed with the <em><strong>DELTA</strong></em> (current vs. desired end state), the prioritization effort (what should be done), and the optimum sequence (in what order) we can begin to assemble a sensible, defensible road map describing what should be done in what order.  How this is communicated is critical now. We have the facts, we have the path outlined, and we have a defensible position to share with our peers. We have the details readily available to support our position. Now the really difficult exercise rears its ugly head. Somehow, we need to distill and simply our message to what I call the “Duckies and Goats” view of the world.  In other words we need to distill all of this work into a simplified yet compelling vision of how we transform an organization, or enabling technology to accomplish what is needed.  Do not underestimate this task, after all the hard work put into an exercise like this, the last thing we need to do is to confuse our stakeholders with mind-numbing detail. Yes, we need this for ourselves to exhaust any possibility we have missed something. And to ensure we haven’t overlooked the obvious – not sure who said this but “when something is obvious, it may be obviously wrong”.  Here is another example of a visual diagram depicting an adoption of Master Data Management platform in its first year.</p>
<div id="attachment_380" class="wp-caption alignleft" style="width: 424px"><a href="http://pragmaticarchitect.files.wordpress.com/2011/03/mdm_roadmap_v1-17.png"><img class="size-full wp-image-380 " title="MDM Roadmap Example" src="http://pragmaticarchitect.files.wordpress.com/2011/03/mdm_roadmap_v1-17.png?w=460" alt="MDM Roadmap"   /></a><p class="wp-caption-text">Click to enlarge</p></div>
<p>So, this is the basic pattern describing how a robust roadmap should be developed for any organization across any discipline (business or technology) to ensure an effective planning effort. Wanted to share this with you to help you with your own work, this is usually not an exercise to be taken lightly. We are after all discussing some real world impacts to many, all the while understanding the laws of unintended consequences, to come up with a set of actionable steps to take along the way that just make sense. This method has worked for me time after time. I think this may just work for you as well. More on this later…</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pragmaticarchitect.wordpress.com/375/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pragmaticarchitect.wordpress.com/375/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=375&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" /><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?a=Oc3bGDtEMGo:PqfA7p5BGig:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/AppliedEnterpriseArchitecture/~4/Oc3bGDtEMGo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pragmaticarchitect.wordpress.com/2011/03/05/how-to-build-a-roadmap/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3fc2a9fd186b660f3368f7bcf61c62ce?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">jparnitzke</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2011/03/roadmap2.png" medium="image">
			<media:title type="html">Roadmap Image</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2011/03/strategyroadmap_development_new.png" medium="image">
			<media:title type="html">StrategyRoadMap_Development_New</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2011/03/documentindex.png" medium="image">
			<media:title type="html">DocumentIndex</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2011/03/mdm_roadmap_v1-17.png" medium="image">
			<media:title type="html">MDM Roadmap Example</media:title>
		</media:content>
	<feedburner:origLink>http://pragmaticarchitect.wordpress.com/2011/03/05/how-to-build-a-roadmap/</feedburner:origLink></item>
		<item>
		<title>The Architecture Value Proposition</title>
		<link>http://feedproxy.google.com/~r/AppliedEnterpriseArchitecture/~3/RFPLf7ONFFY/</link>
		<comments>http://pragmaticarchitect.wordpress.com/2011/02/26/the-architecture-value-proposition/#comments</comments>
		<pubDate>Sat, 26 Feb 2011 20:16:01 +0000</pubDate>
		<dc:creator>James Parnitzke</dc:creator>
				<category><![CDATA[Architecture Frameworks]]></category>
		<category><![CDATA[Business Case]]></category>
		<category><![CDATA[Enterprise Architecture]]></category>
		<category><![CDATA[Galbraith Star Model]]></category>
		<category><![CDATA[Methodology]]></category>

		<guid isPermaLink="false">http://pragmaticarchitect.wordpress.com/?p=357</guid>
		<description><![CDATA[An enterprise architecture value proposition is presented with accompanying tables of suggested values that can be explored and used within any organization.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=357&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://pragmaticarchitect.files.wordpress.com/2011/02/imagescaeejtms.jpg"><img class="alignleft size-full wp-image-361" title="imagesCAEEJTMS" src="http://pragmaticarchitect.files.wordpress.com/2011/02/imagescaeejtms.jpg?w=460" alt=""   /></a>A lot of discussions are flying around on the Enterprise Architecture boards about our role (or lack of) and the need to demonstrate value. Some have even questioned why this is so (after all, we all know the value of accountants, right?).  Do all EA professionals have an identity crisis?  Seems so, and I decided to share this post to clear the air a bit and share some thoughts of the kind of value we should deliver to our business peers.  If you are impatient enough with this introduction just scroll down to the “money” section and see what a quick taxonomy (not complete by any measure) of what our value proposition should look like – at a minimum what values we should find in our day to day work to share with our business peers on a regular basis. If this sounds like a lot of foo-foo to you, get ready to be challenged on a regular basis – and spend an inordinate amount of time and effort justifying your pay-check.  And less time solving for the important and urgent challenges we have been asked to help with.</p>
<p>First, how about a little context?  I believe (and I think you will too) that architecture is a comprehensive framework of well understood processes used to manage and align an organization&#8217;s IS assets with:</p>
<ul>
<li>People and Organization (Structure)</li>
<li>Processes, and<a href="http://pragmaticarchitect.files.wordpress.com/2009/03/graph_galbraith_star-model1.jpg"><img class="alignright size-medium wp-image-212" title="graph_galbraith_star-model1" src="http://pragmaticarchitect.files.wordpress.com/2009/03/graph_galbraith_star-model1.jpg?w=300&#038;h=177" alt="" width="300" height="177" /></a></li>
<li>Technology used to meet specific, actionable strategic business goals.</li>
</ul>
<p>For example, reference the <a title="Star Model link" href="http://www.provenmodels.com/43" target="_blank">Galbraith Star Model</a>.<br />
A typical design sequence (in my world) starts with an understanding of the strategy as defined by the business. This in turns drives the organizational structure. Processes are based on the organization&#8217;s structure. Structure and Processes define the implementation of reward systems and people policy.</p>
<p>This is one way to understand our true role in architecture management is to ensure technology investment and widespread adoption within the organization occurs because:</p>
<ul>
<li>The investment has value,</li>
<li>The program (projects) will be properly managed,</li>
<li>The organization has the capability to deliver the benefits,</li>
<li>Dedicated resources are working on the highest value opportunities,</li>
<li>Projects with inter-dependencies are undertaken in the optimum sequence.</li>
</ul>
<p>Actionable objectives this function (architecture) enables include:</p>
<ul>
<li>Driving costs (not shifting them) from the business processes meta-cycles and improve value-added efficiency across operating models
<ul>
<li>Cycle time reduction</li>
<li>Error reduction</li>
<li>Resource liberation</li>
<li>Cost reduction</li>
<li>Cost avoidance</li>
</ul>
</li>
<li>Turning service portfolio investment into an operational variable cost which can relate directly to business volume
<ul>
<li>The business should only pay for what they use…</li>
<li>Can budget for services on a per usage basis</li>
<li>Use Strategic decision-making framework to:
<ul>
<li>manage cascading goals to evaluate corporate or shared goals along a vertical and horizontal axis to mitigate alignment issues</li>
<li>use functional views to focus IS investment choices</li>
</ul>
</li>
<li>Realizing economic value through business process improvement as a:
<ul>
<li>Vehicle to drive measurable performance improvement:
<ul>
<li>Reduces defects embedded at the design stage of lifecycle by applying architectural principals</li>
<li>Uses problem solving approach upstream, reducing operational rework costs.</li>
</ul>
</li>
</ul>
</li>
<li>Enable process optimization through continuous, complimentary investment in reengineering and organizational development.</li>
</ul>
</li>
</ul>
<p>Our work then is to develop and promote management’s use of architecture to drive costs out of the organization and continue to meet stakeholder demands for distinctive, quality products and services.  The value proposition we bring should include detailed findings and quantitative methods to uncover how to accomplish this to meet the following objectives:</p>
<ul>
<li>Improved planning helps to make more informed decisions. Ensures project plans are complete and consistent with business priorities and addresses the impact of changes (alignment) as needed.</li>
<li>Technology investments can be managed using consistent, repeatable processes to effectively build (acquire), maintain, and retire these assets over their useful life.</li>
<li>We can enable cost efficiencies through elimination or consolidation of redundant or obsolete resources.</li>
<li>Delivering quality information, designed and architected for the enterprise as a whole, has proven time and time again to be faster and less expensive by:
<ul>
<li>Reducing complexity</li>
<li>Encouraging component reuse</li>
<li>Improving communications within the organization</li>
<li>Providing a standardized, easy-to-use reference models and templates.</li>
</ul>
</li>
<li>We can significantly improve IT and business alignment by encouraging the rapid adoption of technology to meet changing business needs in an effective manner. Improved service levels to key constituents — customers, employees, partners.</li>
<li>Encourage less expensive development and delivery by reusing and leveraging previously-developed shared services and products. Results in lower maintenance and integration costs. Provide a logical construction blueprint for defining and controlling the integration of systems and components by combining organizational, data, and business processes.</li>
<li>Communicate using common terminology, standard descriptions, and generally accepted industry standards between the business and technology providers.</li>
</ul>
<p><strong>Delivering Value</strong></p>
<p>The following section represents the majority of the business value I have helped other organizations uncover and exploit through the architecture function. We should be able to quickly discover and describe each of the opportunities we encounter within technology management alone (forget about the business for now) to include:</p>
<ul>
<li>Plan to Manage (Lifecycle),</li>
<li>Manage to Availability (Protect),</li>
<li>Request to Resolve (Support), and</li>
<li>Develop to Deploy (Develop).</li>
</ul>
<p>We should be able to tie service orientation for example, to its impact on one or more target metrics – use short-term tactical focus to start with and describe its impact (i.e., quantify its value, examples are included) in terms of:</p>
<ul>
<li>Process Cycle Efficiency (reduce the time to close a defect by 40% within three months)</li>
<li>Time (Reduce system testing time by three weeks on the next project)</li>
<li>Accuracy (Improve schedule estimation accuracy to within 10% of actual)</li>
<li>Resources (Reduce maintenance costs by 50% within one year)
<ul>
<li>People</li>
<li>Money</li>
<li>Physical (e.g., physical plant, infrastructure)</li>
</ul>
</li>
</ul>
<p>The following themes represent the significant elements we should examine and evaluate for the size and relative scale of the respective opportunity that can be realized.</p>
<p><span style="text-decoration:underline;"><strong>Communications</strong></span></p>
<ul>
<li>Communicate effective alignment of IS strategy
<ul>
<li>Clear understanding of the current and future direction</li>
<li>Ensure business focus is on the highest priority and mission critical efforts.</li>
<li>Make more informed decisions
<ul>
<li>Control Strategic Scope and economic intent</li>
<li>Enhance investment decision-making by providing ready access to the business to information about the people, processes, and technology.</li>
<li>Assess the impact and mitigate risks associated with tactical decisions.</li>
</ul>
</li>
</ul>
</li>
<li>Improve Service levels</li>
<li>Produce Higher Quality Products
<ul>
<li>Improved reliability</li>
<li>Predictability (variance reduction). Methods to deliver services and information in a consistent and structured manner.</li>
</ul>
</li>
<li>Increase project success rates</li>
<li>Meet operational goals and objectives
<ul>
<li>Process control objectives</li>
<li>Professional staff is accountable for compliance with policy and management direction.</li>
<li>Optimize activity objectives</li>
</ul>
</li>
</ul>
<p><span style="text-decoration:underline;"><strong>Efficiency</strong></span></p>
<ul>
<li>Shorten work cycles
<ul>
<li>Improve Process Cycle Efficiency
<ul>
<li>Shift focus to value-added activities</li>
<li>Minimize Non-Value-Added activity</li>
<li>Eliminate obsolete non-value added practices</li>
<li>Optimize Essential Non-Value-Added-But-Necessary activity</li>
</ul>
</li>
<li>Schedules</li>
<li>Maintenance costs</li>
<li>Development time</li>
</ul>
</li>
<li>Reduce costly rework</li>
<li>Leverage Economies of Scale &#8211; Consolidation
<ul>
<li>Leverage existing IS assets</li>
<li>Shared knowledge base</li>
<li>Infrastructure and Shared Services</li>
<li>Skills and resources</li>
</ul>
</li>
<li>Reduce or eliminate redundant investment</li>
<li>Promote Interoperability
<ul>
<li>Identify opportunities for vertical and horizontal interoperability between business units.  Improve or reuse existing IS assets.</li>
</ul>
</li>
<li>Improve developer productivity
<ul>
<li>Leverage strengths of different types of developers.</li>
<li>Preserves business logic by isolating significant changes to “plumbing”</li>
</ul>
</li>
<li>Reduce Need for Customization
<ul>
<li>Lower labor costs and lower Total Cost of Ownership</li>
</ul>
</li>
<li>Enable vendor independence</li>
<li>Leverage the benefits of Standardization
<ul>
<li>Use standard, reusable components and services
<ul>
<li>Proven &#8211; Based on field experience</li>
<li>Authoritative &#8211; Offer the best advice available</li>
<li>Accurate &#8211; Technically validated and tested</li>
<li>Actionable &#8211; Provide the steps to success</li>
<li>Relevant &#8211; Address real-world problems</li>
</ul>
</li>
<li>Use common processes, methods and tools
<ul>
<li>Tooling</li>
<li>Wizards</li>
<li>Templates</li>
<li>Metadata, Code configuration generation</li>
</ul>
</li>
</ul>
</li>
</ul>
<p><span style="text-decoration:underline;"><strong>Agility</strong></span></p>
<ul>
<li>Adapt quickly to changing business needs that require significant requirement changes</li>
<li>Accommodate Emerging Technologies</li>
<li>Engineering Life Cycle Support
<ul>
<li>Streamlined Governance and Stewardship
<ul>
<li>Meet Process control objectives</li>
<li>Optimize activity objectives</li>
</ul>
</li>
<li>Guidance for tasks such as deployment and operations</li>
</ul>
</li>
<li>Prepare for New Opportunities
<ul>
<li>Off-shoring</li>
<li>Emerging technologies</li>
</ul>
</li>
<li>Improved Speed to Market
<ul>
<li>Increased productivity due to the need to develop and test only code that is related to business requirements.</li>
</ul>
</li>
<li>Higher levels of customer satisfaction</li>
<li>Improve communications</li>
<li>Illustrate and communicate the business of the enterprise to all stakeholders</li>
<li>Common terminology and semantics
<ul>
<li>Standard descriptions</li>
<li>Generally accepted industry standards and models</li>
<li>Promote Global collaboration</li>
</ul>
</li>
<li>Improve Risk Mitigation Strategies
<ul>
<li>Leverage proven Business Reference Models</li>
<li>Identify Capacity Planning needs and impact</li>
<li>Reuse previously identified Solution Set patterns that link preferred Business, Information, and Technology Architecture Components.</li>
<li>Provide explicit linkage between stated business goals and the solution proposal (clear line-of-sight).</li>
</ul>
</li>
<li>Support Innovation</li>
<li>Identify opportunities to employ innovative processes and technology.<span style="text-decoration:underline;">﻿</span></li>
</ul>
<p><span style="text-decoration:underline;"><strong>Quality</strong></span></p>
<ul>
<li>Drive one or more systems to common “use” or purpose
<ul>
<li>Shared information is more accurate. Information is collected once and used many times, avoiding the misunderstandings and keying errors associated with multiple collection points.</li>
<li>Shared information is more timely. Information can be made available instantly rather than waiting for a separate collection effort.</li>
<li>Shared information is more complete. Information from multiple sources can be assembled into a full description.</li>
<li>Shared information is less expensive. Information costs much less to store data and send it to another user than it does to collect it again.</li>
</ul>
</li>
<li>Work Product Impact
<ul>
<li>Less variance in work products
<ul>
<li>Provide atomic solutions to recurring problems (Solve problems once)</li>
<li>Application Frameworks standardize the way in which a class of problems is solved.</li>
<li>Set of classes which enforce the architecture</li>
</ul>
</li>
<li>Teach developers how to use it</li>
<li>Support and evolve framework</li>
</ul>
</li>
</ul>
<p>This is how I have demonstrated real business value in my practice. Not sure why this is still questioned unless our role remains a mystery (poor communications) or maybe we have simply not executed (execution failure does happen).  So hopefully this has helped some of you to understand and place into “business terms” the kind of value we should be delivering to our business peers.  And more important to all of us in the profession is how we can define an effective value proposition to share benefits that can be realized in a sustained, consistent, and repeatable manner.  Thanks for listening&#8230;</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pragmaticarchitect.wordpress.com/357/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pragmaticarchitect.wordpress.com/357/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=357&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" /><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?a=RFPLf7ONFFY:qIW8Sogi_DE:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/AppliedEnterpriseArchitecture/~4/RFPLf7ONFFY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pragmaticarchitect.wordpress.com/2011/02/26/the-architecture-value-proposition/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3fc2a9fd186b660f3368f7bcf61c62ce?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">jparnitzke</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2011/02/imagescaeejtms.jpg" medium="image">
			<media:title type="html">imagesCAEEJTMS</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2009/03/graph_galbraith_star-model1.jpg?w=300" medium="image">
			<media:title type="html">graph_galbraith_star-model1</media:title>
		</media:content>
	<feedburner:origLink>http://pragmaticarchitect.wordpress.com/2011/02/26/the-architecture-value-proposition/</feedburner:origLink></item>
		<item>
		<title>Design Goals</title>
		<link>http://feedproxy.google.com/~r/AppliedEnterpriseArchitecture/~3/qCyp0pwxsBw/</link>
		<comments>http://pragmaticarchitect.wordpress.com/2011/02/19/design-goals/#comments</comments>
		<pubDate>Sat, 19 Feb 2011 17:47:42 +0000</pubDate>
		<dc:creator>James Parnitzke</dc:creator>
				<category><![CDATA[Cloud Computing]]></category>
		<category><![CDATA[Enterprise Architecture]]></category>
		<category><![CDATA[Space Based Architecture]]></category>
		<category><![CDATA[Tuple Spaces]]></category>
		<category><![CDATA[Reference Architecture]]></category>
		<category><![CDATA[Tuple Space]]></category>

		<guid isPermaLink="false">http://pragmaticarchitect.wordpress.com/?p=337</guid>
		<description><![CDATA[It is always a good idea to express our stated design goals right up front – and use these to guide the inevitable trade-offs and decisions that will need to be made along this journey. So let’s get started with a few design goals in our space based architecture model that combines and integrates distributed caching, content-based distributed messaging, and parallel processing into a powerful architecture within a grid computing framework.  <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=337&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://pragmaticarchitect.files.wordpress.com/2011/02/imagescawwm4sl.jpg"><img class="alignright size-full wp-image-338" title="GoalSetting" src="http://pragmaticarchitect.files.wordpress.com/2011/02/imagescawwm4sl.jpg?w=460" alt="Design Goals"   /></a>In my last post (<a title="Wide open spaces" href="http://pragmaticarchitect.wordpress.com/2010/09/14/wide-open-spaces/" target="_blank">Wide open spaces</a>) we discussed the elegance of using <a title="Space Based Architecture" href="http://en.wikipedia.org/wiki/Space-based_architecture" target="_blank">space based architecture</a> platforms based on their simplicity and power. Compared to other models for developing distributed applications, it offers simpler design, savings in development and debugging effort, and more robust results that are easier to maintain and integrate.  Recall, this model combines and integrates distributed caching, content-based distributed messaging, and parallel processing into a powerful architecture within a grid computing framework.  </p>
<p>That was a mouthful. You may want to read that last sentence again carefully. And think about what this means to you as a professional practitioner.  More importantly, how this may change the way you think about application platforms in general.</p>
<p>Before diving into this important concept, I think it is always good idea to express our stated <strong><span style="text-decoration:underline;">design goals</span></strong> right up front – and use these to guide the inevitable trade-offs and decisions that will need to be made along this journey. So let’s get started with a few design goals I’m comfortable with. I’m sure there are more, but this represents a good start.</p>
<p><span style="text-decoration:underline;">The platform’s ability to scale must be completely transparent</span></p>
<p>The architecture should be based on technology that can be deployed across a grid of commodity hardware nodes, providing a scalable and adaptable platform that supports high-volume, high-performance processing. The resulting platform should be tolerant of failure in individual nodes, can be matched to changing volumes easily by increasing (or decreasing) the number of processing nodes and, by virtue of its decoupled business logic, is extendible and adaptable to evolve as the business landscape changes.</p>
<p>Unlike conventional application server models, our elastic application platform <span style="text-decoration:underline;"><em>should not</em></span> require application developers to do anything different in their code <span style="text-decoration:underline;"><em>in order to scale</em></span>. The developer uses a simple API that provides a vast key-value data store that looks like a large shared memory space. Underneath the covers distributed caching features of the application platform spread the data across multiple servers (e.g. using a sophisticated hash algorithm). The application developer should remain unaware of the underlying implementation that distributes the data across the servers on his behalf. In brief, the goal of the grid-enabled middleware is designed to hide complexities of partitioning, distributing, and load balancing.</p>
<p><span style="text-decoration:underline;">The platform provides resiliency by design</span></p>
<p>Applications must be available to customers and expected service level objectives must be met.  The business cannot afford a single point of failure to impact customer access to other features and functions of the customer applications suite otherwise available. The platform should operate continuously and needs to be highly resilient to avoid any interruption in processing. This means that the application suite cannot have any single point of failure in the software, hardware, or network. High Availability (HA) is a basic requirement.  Failing services and application components will continue on different backup servers, without service disruption.</p>
<p>Distributed data caches are resilient by design because they should automatically replicate data stored in the cache to one or more backup servers, guided by the policies defined by an administrator and executed in a consistent controlled manner. If one server fails, then another server provides the data (the more replicas, the more resilient the cache). Note, distributed data caches can be vulnerable to data center outages if all the compute servers are located in the same physical data center. To address this weakness, the distributed caching mechanism should offer special WAN features to replicate and recover data across multiple physical locations. The improvement in resilience reduces the risk of expensive system down-time due to hardware or software failure, allowing the business to continue operating albeit with reduced performance, during partial outages. An added benefit of this architecture composed of discrete units working together would enable rapid development and a controlled introduction of new features in response to changing requirements without the need for a big-bang rollout approach.</p>
<p><span style="text-decoration:underline;">The platform is prepared to meet demanding performance requirements</span></p>
<p>A performance characteristic of distributed caches is that they store data in fast-access memory rather than on disk, although backing store on disk may be an option. Since this data spans multiple servers, there is no bottleneck or single point of failure. Using this advanced elastic application platform provides a means to ensure that cached data will tend to be on the same server where application code is processing, reducing network latency. We can do this by implementing a “near-cache” concept that places data on the server running the application using that data or by directly managing application code execution in the platform, placing adjacent code and data in cache nodes that are on the same server.</p>
<p><span style="text-decoration:underline;">The platform needs to support robust integratation with other data sources</span></p>
<p>Most distributed caching platforms offer read-through, write-through, and write-behind features to synchronize data in the cache with external data sources. Rather than the developer having to write the code that does this, an administrator configures the cache to automatically read or write to a database or other external data source whenever an application performs a data operation in the cache. Data is an asset that is valuable. Sharing this asset across the platform improves the ability to support better data enrichment, improve accuracy and meet business goals.</p>
<p><span style="text-decoration:underline;">The platform’s application workload is by nature distributed</span></p>
<p>For elastic application platforms offering distributed code execution we should consider the nature of the workload the applications will present to servers. If we can divide the workload into units that naturally fit into the distribution schemes as offered then the greater sophistication of the distributed code execution capability can be just what’s needed to turn a troublesome, resource intensive application into one that performs well and meets expectations.</p>
<p><a href="http://pragmaticarchitect.files.wordpress.com/2011/02/set-your-design-goals.jpg"><img class="alignleft size-medium wp-image-342" title="Set-Your-Design-Goals" src="http://pragmaticarchitect.files.wordpress.com/2011/02/set-your-design-goals.jpg?w=216&#038;h=280" alt="" width="216" height="280" /></a>Specific application responsibilities that repeat (or are redundant) across the application architecture should be separated out in the application architecture.  Shared global or common use application functional solutions are sometimes referred to as “cross-cutting concerns” and forward the key principle of “separation of concerns”. The platform should support component designs which minimize coupling.  The law of <a title="Law of Demeter" href="http://en.wikipedia.org/wiki/Law_of_Demeter" target="_blank">Demeter</a> (Principle of Least Knowledge or only know your neighbor applies). The platform should promote loose coupling by minimizing:</p>
<ul>
<li>dependency between modules (e.g. shared global variables)</li>
<li>discouraging content coupling (one module relying on another’s content)</li>
<li>protocol or format dependencies</li>
<li>control based coupling where one program controls another’s behavior</li>
<li>Non-traceable message coupling which can lead to a dynamic spaghetti-like results impossible to manage</li>
</ul>
<p>There are other goals I have not addressed here which we should all be familiar with to include:</p>
<ul>
<li>Desire to BUY vs. Build and Maintain</li>
<li>Remain Technology and Vendor Independent</li>
<li>Promote Interoperability</li>
<li>Meet security and privacy needs</li>
</ul>
<p>So, now we have a better idea of the design goals we are going to try to achieve. I think it is always important to take these goals to the next step in the high-level specification in order to begin quantifying how we will meet these into actionable objectives. Remember our original strategy which has driven our design goals. The design goals now should be used to create quantifiable objectives we can plan and measure progress to.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pragmaticarchitect.wordpress.com/337/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pragmaticarchitect.wordpress.com/337/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=337&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" /><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?a=qCyp0pwxsBw:eDG5PYXZGc8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/AppliedEnterpriseArchitecture/~4/qCyp0pwxsBw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pragmaticarchitect.wordpress.com/2011/02/19/design-goals/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3fc2a9fd186b660f3368f7bcf61c62ce?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">jparnitzke</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2011/02/imagescawwm4sl.jpg" medium="image">
			<media:title type="html">GoalSetting</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2011/02/set-your-design-goals.jpg?w=242" medium="image">
			<media:title type="html">Set-Your-Design-Goals</media:title>
		</media:content>
	<feedburner:origLink>http://pragmaticarchitect.wordpress.com/2011/02/19/design-goals/</feedburner:origLink></item>
		<item>
		<title>Wide open spaces</title>
		<link>http://feedproxy.google.com/~r/AppliedEnterpriseArchitecture/~3/aEEI0xmZT8c/</link>
		<comments>http://pragmaticarchitect.wordpress.com/2010/09/14/wide-open-spaces/#comments</comments>
		<pubDate>Tue, 14 Sep 2010 17:46:51 +0000</pubDate>
		<dc:creator>James Parnitzke</dc:creator>
				<category><![CDATA[Enterprise Architecture]]></category>
		<category><![CDATA[Reference Architecture]]></category>
		<category><![CDATA[Space Based Architecture]]></category>
		<category><![CDATA[Tuple Spaces]]></category>
		<category><![CDATA[Grid Computing]]></category>
		<category><![CDATA[Tuple Space]]></category>

		<guid isPermaLink="false">http://pragmaticarchitect.wordpress.com/?p=314</guid>
		<description><![CDATA[Introduction to the Tuple Space (Space based Architecture) pattern model that combines and integrates distributed caching (Data Grid), content-based distributed messaging (Messaging Grid), and parallel processing (Processing Grid) into a powerful service oriented architecture built on shared spaces within a grid computing framework. <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=314&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<div id="attachment_316" class="wp-caption alignleft" style="width: 287px"><a title="Wide open spaces - Wyoming" href="http://pragmaticarchitect.files.wordpress.com/2010/09/wideopenspaces.png" target="_blank"><img class="size-medium wp-image-316 " title="WideOpenSpaces" src="http://pragmaticarchitect.files.wordpress.com/2010/09/wideopenspaces.png?w=277&#038;h=203" alt="" width="277" height="203" /></a><p class="wp-caption-text">Wide open spaces - Wyoming </p></div>
<p>Okay, okay – know I should keep this blog more up to date, just have been a little busy with my day job&#8230; and now after a much needed rest in last weeks in August I can now share a few things you may find especially interesting and timely.  It is no coincidence that the image accompanying this post is of wide open spaces. This is in fact where I spent most satisfying part of my “summer vacation”.  And spaces (<a title="Tuple Spaces" href="http://c2.com/cgi/wiki?TupleSpace" target="_blank">Tuple Spaces</a>) is what I intend to share with you in the coming weeks.           </p>
<p>As architects we have a professional responsibility to always remain on the look-out for new (and sometimes revisited) ideas about how to improve and adopt good ideas. Especially when our business needs to invest in some key technology changes to remain competitive and deliver value customers will continue to seek for its distinctive quality of service and value.            </p>
<p>I have been pretty busy in the last year engaged in a variety of industries where road map development and execution of next generation platforms and paradigm shifts were needed.  Many of the more difficult challenges were solved by adopting a <a title="SBA" href="http://en.wikipedia.org/wiki/Space-based_architecture" target="_blank">Space-Based Architecture (SBA) architecture pattern</a>. This is a demonstrated pattern used to achieve near linear scalability of stateful, high-performance applications using the tuple spaces. This is not a new idea; the tuple space model was developed by <a title="David Gelernter" href="http://en.wikipedia.org/wiki/David_Gelernter" target="_blank">David Gelernter </a>over thirty years ago at Yale University. Implementations of tuple spaces have also been developed for Smalltalk, Java (JavaSpaces), and the .NET framework). A tuple space is an implementation of the <a title="Tuple Space" href="http://c2.com/cgi/wiki?TupleSpace" target="_blank">associative memory model</a> for parallel (distributed) computing by providing a repository of tuples that can be accessed concurrently. I know, this is a mouthful and a little too academic for me too. What this really means is we can group processors that produce pieces of data and group processors that use the data. Producers post their data as tuples in the space, and the consumers then retrieve data from the space that match a certain pattern. This is also known as the <a title="Blackboard Metaphor" href="http://en.wikipedia.org/wiki/Blackboard_system" target="_blank">blackboard metaphor</a>. Tuple spaces may be thought as a form of distributed shared memory. The model is closely related to other patterns that have been proved successful in addressing the application scalability challenge used by <a title="Google - MapReduce" href="http://static.googleusercontent.com/external_content/untrusted_dlcp/labs.google.com/en/us/papers/mapreduce-osdi04.pdf" target="_blank">Google</a> and <a title="Amazon EC2" href="http://aws.amazon.com/ec2/" target="_blank">Amazon.com (EC2)</a> for example. The model has also been applied by many firms in the securities i<a href="http://pragmaticarchitect.files.wordpress.com/2010/09/applicationobjectspace.png"><img class="alignright size-medium wp-image-317" title="ApplicationObjectSpace" src="http://pragmaticarchitect.files.wordpress.com/2010/09/applicationobjectspace.png?w=300&#038;h=201" alt="" width="300" height="201" /></a>ndustry for implementing scalable electronic securities trading applications for example.   </p>
<p>Before you think I have gone daft on you, I recommend you see a commercial implementation of this at <a title="Gigaspaces" href="http://www.gigaspaces.com/" target="_blank">Gigaspaces</a>.  Review the site and developer documentation and you will see how this platform is used to embrace many of the principles of <a title="REST" href="http://en.wikipedia.org/wiki/Representational_State_Transfer" target="_blank">Representational State Transfer (REST)</a>, service-oriented architecture (SOA) and Event-driven architecture (EDA), as well as elements of grid computing.  The beauty of the space based architecture resides in its tandem of simplicity and power. Compared to other models for developing distributed applications, it offers simpler design, savings in development and debugging effort, and more robust results that are easier to maintain and integrate.          </p>
<p>The pattern represents a model that combines and integrates distributed caching (Data Grid), content-based distributed messaging (Messaging Grid), and parallel processing (Processing Grid) into a powerful service oriented architecture built on shared spaces within a grid computing framework. Research results and commercial use have shown that a large number of problems in parallel and distributed computing have been solved using this architecture. And the implications of its adoption beyond high performance On-Line Transaction Processing extend well into other uses (including Master Data Management, Complex Event Processing, and Rules Processing for example).           </p>
<p>And this is what I intend to share with you in the coming weeks. <br />
Wide open spaces…</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pragmaticarchitect.wordpress.com/314/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pragmaticarchitect.wordpress.com/314/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=314&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" /><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?a=aEEI0xmZT8c:ndsNf0tlvbM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/AppliedEnterpriseArchitecture/~4/aEEI0xmZT8c" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pragmaticarchitect.wordpress.com/2010/09/14/wide-open-spaces/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3fc2a9fd186b660f3368f7bcf61c62ce?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">jparnitzke</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2010/09/wideopenspaces.png?w=300" medium="image">
			<media:title type="html">WideOpenSpaces</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2010/09/applicationobjectspace.png?w=300" medium="image">
			<media:title type="html">ApplicationObjectSpace</media:title>
		</media:content>
	<feedburner:origLink>http://pragmaticarchitect.wordpress.com/2010/09/14/wide-open-spaces/</feedburner:origLink></item>
		<item>
		<title>Modeling the MDM Blueprint – Part VI</title>
		<link>http://feedproxy.google.com/~r/AppliedEnterpriseArchitecture/~3/y-VJNgJjsn8/</link>
		<comments>http://pragmaticarchitect.wordpress.com/2009/06/06/modeling-the-mdm-blueprint-part-vi/#comments</comments>
		<pubDate>Sat, 06 Jun 2009 14:28:50 +0000</pubDate>
		<dc:creator>James Parnitzke</dc:creator>
				<category><![CDATA[Canonical Model]]></category>
		<category><![CDATA[Common Information Model]]></category>
		<category><![CDATA[Master Data Management]]></category>
		<category><![CDATA[Operating Model]]></category>
		<category><![CDATA[Reference Architecture]]></category>

		<guid isPermaLink="false">http://pragmaticarchitect.wordpress.com/?p=257</guid>
		<description><![CDATA[In this series we have discussed developing the MDM blueprint by developing the Common Information (part II), Canonical (part III) , and Operating (part IV)  models in our work. In Part V  I introduced the Reference Architecture model into the mix to apply the technical infrastructure or patterns we plan on using. The blueprint has [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=257&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://pragmaticarchitect.files.wordpress.com/2009/06/er_model.png"><img class="alignleft size-medium wp-image-406" title="ER_Model" src="http://pragmaticarchitect.files.wordpress.com/2009/06/er_model.png?w=142&#038;h=78" alt="" width="142" height="78" /></a>In this series we have discussed developing the MDM blueprint by developing the <a href="http://pragmaticarchitect.wordpress.com/2009/03/07/modeling-the-mdm-blueprint-%e2%80%93-part-ii/" target="_blank">Common Information (part II)</a>, <a href="http://pragmaticarchitect.wordpress.com/2009/03/17/modeling-the-mdm-blueprint-part-iii/" target="_blank">Canonical (part III) </a>, and <a href="http://pragmaticarchitect.wordpress.com/2009/03/26/modeling-the-blueprint-for-mdm-part-iv" target="_blank">Operating (part IV) </a> models in our work. In <a href="http://pragmaticarchitect.wordpress.com/2009/04/16/modeling-the-mdm-blueprint-part-v" target="_blank">Part V  I introduced the Reference Architecture model</a> into the mix to apply the technical infrastructure or patterns we plan on using. The blueprint has now moved from being computation and platform independent to one of expressing intent through the use of more concrete platform specific model.  The solution specification is now documented (independent of the functional Business Requirements) to provide shared insight into the overall design solution.  Now it is time to bring the modeling products together and incorporate them into a MDM solution specification we can use in many ways to communicate the intent of the project.</p>
<p>First, the MDM blueprint specification becomes the <strong><em><span style="text-decoration:underline;">vehicle for communicating the system’s design to interested stakeholders at each stage of its evolution</span></em></strong>. The blueprint can be used by:</p>
<ul>
<li>Downstream designers and implementers to provide overall policy and design guidance. This establishes inviolable constraints (and a certain amount of freedom) on downstream development activities.</li>
<li>Testers and integrators to dictate the correct black-box behavior of the pieces that must fit together.</li>
<li>Technical managers as the basis for forming development teams corresponding to the work assignments identified.</li>
<li>Project managers as the basis for a work breakdown structure, planning, allocation of project resources, and tracking of progress by the various teams.</li>
<li>Designers of other systems with which this one must interoperate to define the set of operations provided and required, and the protocols for their operation, that allows the inter-operation to take place.</li>
</ul>
<p>Second, the MDM blueprint specification provides <strong><span style="text-decoration:underline;">a basis for performing up-front analysis to validate (or uncover deficiencies) design decisions</span></strong> and refine or alter those decisions where necessary. The blueprint could be used by:</p>
<ul>
<li>Architects and requirements engineers who represent the customer the MDM blueprint specification becomes the forum for negotiating and making trade-offs among competing requirements.</li>
<li>Architects and component designers as a vehicle for arbitrating resource contention and establishing performance and other kinds of run-time resource consumption budgets.</li>
<li>Development using vendor-provided products from the commercial marketplace to establish the possibilities for commercial off-the-shelf (COTS) component integration by setting system and component boundaries and establishing requirements for the required behavior and quality properties of those components.</li>
<li>Architects to evaluate the ability of the design to meet the system’s quality objectives. The MDM blueprint specification serves as the input for architectural evaluation methods such as the Software Architecture Analysis Method [and the <a href="http://www.sei.cmu.edu/publications/documents/00.reports/00tr004.html" target="_blank">Architecture Tradeoff Analysis Method (ATAM-SM</a>) and <a href="http://en.wikipedia.org/wiki/Performance_engineering" target="_blank">Software Performance Engineering (SPE) </a>  as well as less ambitious (and less effective) activities such as unfocused design walkthroughs.</li>
<li>Performance engineers as the formal model that drives analytical tools such as rate schedulers, simulations, and simulation generators.</li>
<li>Development product line managers to determine whether a potential new member of a product family is in or out of scope, and if out, by how much.</li>
</ul>
<p>Third the MDM blueprint becomes <strong><em><span style="text-decoration:underline;">the first artifact used to achieve system understanding</span></em></strong> for:</p>
<ul>
<li>Technical mangers as the basis for conformance checking, for assurance that implementations have in fact been faithful to the architectural prescriptions.</li>
<li>Maintainers as a starting point for maintenance activities, revealing the areas a prospective change will affect.</li>
<li>New project members, as the first artifact for familiarization with a system’s design.</li>
<li>New architects as the artifacts that (if properly documented) preserve and capture the previous incumbent’s knowledge and rationale.</li>
<li>Re-engineers as the first artifact recovered from a program understanding activity or (in the event that the architecture is known or has already been recovered) the artifact that drives program understanding activities at the appropriate level of component granularity.</li>
</ul>
<p><strong>Blueprint for MDM - Where this fits within a larger program</strong></p>
<p>Developing and refining the MDM blueprint is typically associated with larger programs or strategic initiatives. In this last part of the series I will now discuss where all this typically fits within a larger program and how to organize and plan this work within context.  The following diagram (click to enlarge and use your browser to magnify the png file) puts our modeling efforts within the context of a larger program taken from a mix of actual engagements with large, global customers.  The key MDM blueprint components are highlighted with numbers representing:</p>
<ol>
<li>Common Information Model</li>
<li>The Canonical Model</li>
<li>The Operating Model</li>
<li>The Reference Architecture</li>
</ol>
<div id="attachment_399" class="wp-caption alignleft" style="width: 448px"><a href="http://pragmaticarchitect.files.wordpress.com/2009/06/programmanagementdesign_ammeded_v61.png"><img class="size-full wp-image-399 " title="Program Management Design" src="http://pragmaticarchitect.files.wordpress.com/2009/06/programmanagementdesign_ammeded_v61.png?w=460" alt="Program Management Design"   /></a><p class="wp-caption-text">Click to enlarge</p></div>
<p>I have also assumed a business case exists (you have this right?) and the functional requirements are known.  Taken together with the MDM blueprint we now have a powerful arsenal of robust information products we can use to prepare a high quality solution specification that is relevant and can be used to meet a wide variety of needs.  Typically, use of the MDM blueprint may include:</p>
<ul>
<li>Identifying all necessary components and services</li>
<li>Reviewing existing progress to validate (or uncover deficiencies in) design decisions; refine or alter those decisions where necessary</li>
<li>Preparation of detailed planning products (Product, Organization, and Work Breakdown structures)</li>
<li>Program planning and coordination of resources</li>
<li>Facilitating prioritization of key requirements – technical and business</li>
<li>Development of Request for Quotation, Request for Information products (make vs. buy)</li>
<li>Preparing funding estimates (Capital and Operating Expense) and program budget preparation</li>
<li>Understanding a vendors contribution to the solution and pricing accordingly (for example, repurpose as needed in contract and licensing activities and decouple supplier proprietary lock-in from solution where appropriate)</li>
</ul>
<p>We are also helping to ensure the business needs drive the solution by mitigating the impact of the dreaded Vendor Driven Architecture (VDA) in the MDM solution specification.</p>
<p><strong>Summary</strong></p>
<p>I hope you have enjoyed this brief journey through Modeling the MDM blueprint and have gained something from my experience.  I’m always interested in learning from others, please let me know what you have encountered yourself, and maybe we can help others avoid the pitfalls and pain in this difficult demanding work.  A key differentiator and the difference between success and failure on an MDM journey is taking the time to model the blueprint and share this early and often with the business.  This is after all a business project, not an elegant technical exercise.  In an early reference I mentioned <a href="http://en.wikipedia.org/wiki/Technical_debt" target="_blank">Ward Cunningham’s Technical Debt concept</a>.  Recall this metaphor means doing things the quick and dirty way sets us up with a technical debt, which is similar to a financial debt. Like a financial debt, the technical debt incurs interest payments, which come in the form of the extra effort that we have to do in future development because of the quick and dirty design choices we have made. The technical debt and resulting interest due in MDM initiative with this kind of far-reaching impact across the enterprise is, well, unthinkable. Take the time to develop your MDM blueprint and use this product to ensure success by clearly communicating business and technical intent with your stakeholders.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pragmaticarchitect.wordpress.com/257/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pragmaticarchitect.wordpress.com/257/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=257&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" /><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?a=y-VJNgJjsn8:0400aDMA5wk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/AppliedEnterpriseArchitecture/~4/y-VJNgJjsn8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pragmaticarchitect.wordpress.com/2009/06/06/modeling-the-mdm-blueprint-part-vi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3fc2a9fd186b660f3368f7bcf61c62ce?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">jparnitzke</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2009/06/er_model.png?w=300" medium="image">
			<media:title type="html">ER_Model</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2009/06/programmanagementdesign_ammeded_v61.png" medium="image">
			<media:title type="html">Program Management Design</media:title>
		</media:content>
	<feedburner:origLink>http://pragmaticarchitect.wordpress.com/2009/06/06/modeling-the-mdm-blueprint-part-vi/</feedburner:origLink></item>
		<item>
		<title>Modeling the MDM Blueprint – Part V</title>
		<link>http://feedproxy.google.com/~r/AppliedEnterpriseArchitecture/~3/6s_NS4l5tKo/</link>
		<comments>http://pragmaticarchitect.wordpress.com/2009/04/16/modeling-the-mdm-blueprint-part-v/#comments</comments>
		<pubDate>Thu, 16 Apr 2009 17:50:51 +0000</pubDate>
		<dc:creator>James Parnitzke</dc:creator>
				<category><![CDATA[Architecture Frameworks]]></category>
		<category><![CDATA[Master Data Management]]></category>
		<category><![CDATA[Reference Architecture]]></category>
		<category><![CDATA[Service Orientated Modeling]]></category>

		<guid isPermaLink="false">http://pragmaticarchitect.wordpress.com/?p=226</guid>
		<description><![CDATA[In this series we have discussed developing the MDM blueprint by creating Common Information (part II), Canonical (part III), and Operating (part IV) models in our work streams. We have introduced the Operating Model into the mix to communicate how the solution will be adopted and used to realize the benefits we expect with the [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=226&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://pragmaticarchitect.files.wordpress.com/2009/04/er_model.jpg"><img class="alignleft size-full wp-image-228" title="er_model" src="http://pragmaticarchitect.files.wordpress.com/2009/04/er_model.jpg?w=460" alt="er_model"   /></a>In this series we have discussed developing the MDM blueprint by creating <a href="http://pragmaticarchitect.wordpress.com/2009/03/07/modeling-the-mdm-blueprint-%e2%80%93-part-ii/" target="_blank">Common Information (part II)</a>, <a href="http://pragmaticarchitect.wordpress.com/2009/03/17/modeling-the-mdm-blueprint-part-iii/" target="_blank">Canonical (part III)</a>, and <a href="http://pragmaticarchitect.wordpress.com/2009/03/26/modeling-the-blueprint-for-mdm-part-iv/" target="_blank">Operating (part IV)</a> models in our work streams. We have introduced the Operating Model into the mix to communicate how the solution will be adopted and used to realize the benefits we expect with the business in a meaningful way.  And hopefully set reasonable expectations with our business partners as to what this solution will look like when deployed.</p>
<p>Now it is time to model and apply the technical infrastructure or patterns we plan on using. The blueprint now moves from being computation and platform independent to one of expressing intent through the use of more concrete platform specific models.</p>
<p><strong>Reference Architecture</strong><br />
After the initial (CIM, Canonical, and Operating models) work is completed then, and only then are we ready to move on to the computation and platform specific models. We know how to do this well – for example see Information service patterns, <a href="http://www.ibm.com/developerworks/data/library/techarticle/dm-0703sauter/#Introduction" target="_blank">Part 4: Master Data Management architecture patterns</a>.</p>
<p>At this point we now have enough information to create the reference architecture. One way (there are several) to organize this content is to use the Rozanski and Woods extensions to the classic <a href="http://en.wikipedia.org/wiki/4%2B1" target="_blank">4+1 view model</a> introduced by <a href="http://en.wikipedia.org/wiki/Philippe_Kruchten" target="_blank">Philippe Kruchten</a>. The views are used to describe the system in the viewpoint of different stakeholders (end-users, developers and project managers). The four views of the model are logical, development, process and physical view. In addition selected use cases or scenarios are used to demonstrate or show the architecture’s intent. Which is why the model contains 4+1 views (the +1 being the selected scenarios).  <a href="http://pragmaticarchitect.files.wordpress.com/2009/04/41views.jpg" target="_blank"></a></p>
<p style="text-align:justify;"><a href="http://www.nick.rozanski.org.uk/nickrozanski/doc/Nick.Rozanski.pdf" target="_blank"></a><a href="http://pragmaticarchitect.files.wordpress.com/2009/04/41views1.jpg?w=300" target="_blank"><img class="aligncenter size-medium wp-image-250" title="41views1" src="http://pragmaticarchitect.files.wordpress.com/2009/04/41views1.jpg?w=300&#038;h=171" alt="41views1" width="300" height="171" /></a></p>
<p style="text-align:justify;"><a href="http://www.nick.rozanski.org.uk/nickrozanski/doc/Nick.Rozanski.pdf" target="_blank">Rozanski </a>and <a href="http://www.eoinwoods.info/index.php?page=about" target="_blank">Woods</a> extended this idea by introducing a catalog of six core viewpoints for information systems architecture: the Functional, Information, Concurrency, Development, Deployment, and Operational viewpoints and related perspectives. This is elaborated in detail in their book titled <a href="http://www.viewpoints-and-perspectives.info/index.php?page=book" target="_blank">“Software Systems Architecture: Working with Stakeholders Using Viewpoints and Perspectives”</a>. There is much to learn from their work, I encourage you to visit the <a href="http://www.viewpoints-and-perspectives.info/" target="_blank">book&#8217;s web site</a> for more information.</p>
<p>What we are describing here is how MDM leadership within very large-scale organization can eventually realize the five key &#8220;markers&#8221; or characteristics in the reference architecture to include:</p>
<p>- Shared services architecture evolving to process hubs;<br />
- Sophisticated hierarchy management;<br />
- High-performance identity management;<br />
- Data governance-ready framework; and<br />
- Registry, persisted or hybrid design options in the architecture selected.</p>
<p>Recommended, this is an exceptional way to tie the technical models back to the stakeholders needs as reflected in the viewpoints, perspectives, guidelines, principles, and template models used in the reference architecture. <a href="http://en.wikipedia.org/wiki/Grady_Booch" target="_blank">Grady Booch</a> said “…the 4+1 view model has proven to be both necessary and sufficient for most interesting systems”, and there is no doubt that MDM is interesting.  Once this work has been accomplished and agreed to as part of a common vision, we have several different options to proceed with. One interesting approach is leveraging this effort into a <a href="http://en.wikipedia.org/wiki/Service-Oriented_Modeling" target="_blank">Service Orientated Modeling Framework</a> introduced by <a href="http://modelingconcepts.com/" target="_blank">Michael Bell</a> at <a href="http://modelingconcepts.com/index.html" target="_blank">Methodologies Corporation</a>.</p>
<p><strong>Service Orientated Modeling</strong><br />
The service-oriented modeling framework (SOMF) is a service-oriented development life cycle methodology. It offers a number of modeling practices and disciplines that contribute to a successful <a href="http://pragmaticarchitect.files.wordpress.com/2009/04/somf_v_2_0.jpg" target="_blank"><img class="alignleft size-medium wp-image-234" title="somf_v_2_0" src="http://pragmaticarchitect.files.wordpress.com/2009/04/somf_v_2_0.jpg?w=300&#038;h=212" alt="somf_v_2_0" width="300" height="212" /></a>service-oriented life cycle management and modeling. It illustrates the major elements that identify the “what to do” aspects of a service development scheme. These are the modeling pillars that will enable practitioners to craft an effective project plan and to identify the milestones of a service-oriented initiative—in this case crafting an effective MDM solution.</p>
<p>SOMF provides four major SOA modeling styles that are useful throughout a service life cycle (conceptualization, discovery and analysis, business integration, logical design, conceptual and logical architecture). These modeling styles: Circular, Hierarchical, Network, and Star, can assist us with the following modeling aspects:</p>
<p>- Identify service relationships: contextual and technological affiliations<br />
- Establish message routes between consumers and services<br />
- Provide efficient service orchestration and choreography methods<br />
- Create powerful service transaction and behavioral patterns<br />
- Offer valuable service packaging solutions</p>
<p><strong>SOMF Modeling Styles</strong><br />
SOMF offers four major service-oriented modeling styles. Each pattern identifies the various approaches and strategies that one should consider employing when modeling MDM services in a SOA environment.</p>
<p>- Circular Modeling Style: enables message exchange in a circular fashion, rather than employing a controller to carry out the distribution of messages. The Circular Style also offers a way to affiliate services.</p>
<p>- Hierarchical Modeling Style: offers a relationship pattern between services for the purpose of establishing transactions and message exchange routes between consumers and services. The Hierarchical pattern enforces parent/child associations between services and lends itself to a well known taxonomy. <a href="http://pragmaticarchitect.files.wordpress.com/2009/04/somf_styles.jpg" target="_blank"><img class="alignright size-full wp-image-236" title="somf_styles" src="http://pragmaticarchitect.files.wordpress.com/2009/04/somf_styles.jpg?w=460" alt="somf_styles"   /></a></p>
<p>- Network Modeling Style: this pattern establishes “many to many” relationship between services, their peer services, and consumers similar to RDF. The Network pattern accentuates on distributed environments and interoperable computing networks.</p>
<p>- Star Modeling Style: the Star pattern advocates arranging services in a star formation, in which the central service passes messages to its extending arms. The Star modeling style is often used in “multi casting” or “publish and subscribe” instances, where “solicitation” or “fire and forget” message styles are involved.</p>
<p>There is much more to this method, encourage you to visit the <a href="http://modelingconcepts.com/index.html" target="_blank">Methodologies Corporation site</a> (Michael is the founder) and download the <a href="http://modelingconcepts.com/pages/download.htm" target="_blank">tools, power point presentations, and articles</a> they have shared with us.</p>
<p><strong>Summary</strong><br />
So, based on my experience we have to get this modeling effort completed to improve the probability we will be successful. MDM is really just another set of tools and processes for modeling and managing business knowledge of data in a sustainable way.  Take the time to develop a robust blueprint to include Common Information (semantic, pragmatic and logical modeling), Canonical, (business rules and format specifications), and Operating Models to ensure completeness.  Use these models to drive a suitable Reference Architecture to guide design choices in the technical implementation.</p>
<p>This is hard, difficult work. Anything worthwhile usually is. Why put the business at risk to solve this important and urgent need without our stakeholders understanding and real enthusiasm for shared success?  A key differentiator and the difference between success and failure on an MDM journey is taking the time to model the blueprint and share this early and often with the business.  This is after all a business project, not an elegant technical exercise.  Creating and sharing a common vision through our modeling efforts helps ensure success from inception through adoption by communicating clearly the business and technical intent of each element of the MDM program.</p>
<p>In the last part of the series I will be discussing where all this fits into the larger MDM program and how to plan, organize, and complete this work.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pragmaticarchitect.wordpress.com/226/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pragmaticarchitect.wordpress.com/226/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=226&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" /><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?a=6s_NS4l5tKo:FjCkaZdolag:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/AppliedEnterpriseArchitecture/~4/6s_NS4l5tKo" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pragmaticarchitect.wordpress.com/2009/04/16/modeling-the-mdm-blueprint-part-v/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3fc2a9fd186b660f3368f7bcf61c62ce?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">jparnitzke</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2009/04/er_model.jpg" medium="image">
			<media:title type="html">er_model</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2009/04/41views1.jpg?w=300" medium="image">
			<media:title type="html">41views1</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2009/04/somf_v_2_0.jpg?w=300" medium="image">
			<media:title type="html">somf_v_2_0</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2009/04/somf_styles.jpg" medium="image">
			<media:title type="html">somf_styles</media:title>
		</media:content>
	<feedburner:origLink>http://pragmaticarchitect.wordpress.com/2009/04/16/modeling-the-mdm-blueprint-part-v/</feedburner:origLink></item>
		<item>
		<title>Modeling the MDM Blueprint – Part IV</title>
		<link>http://feedproxy.google.com/~r/AppliedEnterpriseArchitecture/~3/s9-qstc9emY/</link>
		<comments>http://pragmaticarchitect.wordpress.com/2009/03/26/modeling-the-blueprint-for-mdm-part-iv/#comments</comments>
		<pubDate>Thu, 26 Mar 2009 22:06:25 +0000</pubDate>
		<dc:creator>James Parnitzke</dc:creator>
				<category><![CDATA[Canonical Model]]></category>
		<category><![CDATA[Common Information Model]]></category>
		<category><![CDATA[Governance]]></category>
		<category><![CDATA[Master Data Management]]></category>
		<category><![CDATA[Operating Model]]></category>
		<category><![CDATA[Organization Dynamics]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Galbraith Star Model]]></category>

		<guid isPermaLink="false">http://pragmaticarchitect.wordpress.com/?p=198</guid>
		<description><![CDATA[In part II and III of this series we discussed the Common Information and Canonical Models. Because MDM is a business project we need to establish of a common set of models that can be referenced independent of the technical infrastructure or patterns we plan on using. Now it is time to introduce the Operating [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=198&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p><a href="http://pragmaticarchitect.files.wordpress.com/2009/03/option.jpg"><img class="alignleft size-full wp-image-203" title="option" src="http://pragmaticarchitect.files.wordpress.com/2009/03/option.jpg?w=460" alt="option"   /></a>In <a href="http://pragmaticarchitect.wordpress.com/2009/03/07/modeling-the-mdm-blueprint-%e2%80%93-part-ii/" target="_blank">part II</a> and <a href="http://pragmaticarchitect.wordpress.com/2009/03/17/modeling-the-mdm-blueprint-part-iii/" target="_blank">III</a> of this series we discussed the <a href="http://pragmaticarchitect.wordpress.com/2009/03/07/modeling-the-mdm-blueprint-%e2%80%93-part-ii/" target="_blank">Common Information</a> and <a href="http://pragmaticarchitect.wordpress.com/2009/03/17/modeling-the-mdm-blueprint-part-iii/" target="_blank">Canonical Models</a>. Because MDM is a business project we need to establish of a common set of models that can be referenced independent of the technical infrastructure or patterns we plan on using. Now it is time to introduce the <strong><em><span style="text-decoration:underline;">Operating Model</span></em></strong> into the mix to communicate how the solution will actually be deployed and used to realize the benefits we expect with the business in a meaningful way.</p>
<p><strong><em>This is the most important set of models you will undertake</em></strong>. And sadly not accounted for in practice “in the wild”, meaning rarely seen, much less achieved. This effort describes how the organization will govern, create, maintain, use, and analyze consistent, complete, contextual, and accurate data values for all stakeholders.</p>
<p>There are a couple of ways to do this. One interesting approach I have seen is to use the <a href="http://www.provenmodels.com/43/five-star-model/galbraith" target="_blank">Galbraith Star Model</a> as an organizational design framework. The model is developed within this framework to understand what design policies and guidelines will be needed to align organizational decision making and behavior within the MDM initiative. The Star model includes the following five categories:</p>
<p><strong>Strategy:</strong><br />
Determine direction through goals, objectives, values and mission. It defines the criteria for selecting an organizational structure (for example functional or balanced Matrix). The strategy defines the ways of making the best trade-off between alternatives.</p>
<p><strong>Structure:<br />
</strong>Determines the location of decision making power. Structure policies can be subdivided into:<br />
- specialization: type and number of job specialties;<br />
- shape: the span of control at each level in the hierarchy;<br />
- distribution of power: the level of centralization versus decentralization;<br />
- departmentalization: the basis to form departments (function, product, process, market or geography).</p>
<p>In our case this will really help when it comes time to designing the entitlement and data steward functions.</p>
<p><strong><a href="http://pragmaticarchitect.files.wordpress.com/2009/03/graph_galbraith_star-model1.jpg"><img class="alignleft size-full wp-image-212" title="graph_galbraith_star-model1" src="http://pragmaticarchitect.files.wordpress.com/2009/03/graph_galbraith_star-model1.jpg?w=460" alt="graph_galbraith_star-model1"   /></a>Processes:</strong><br />
The flow of information and decision processes across the proposed organization’s structure. Processes can be either vertical through planning and budgeting, or horizontal through lateral relationships (matrix).</p>
<p><strong>Reward Systems:<br />
</strong>Influence the motivation of organization members to align employee goals with the organization&#8217;s objectives.</p>
<p><strong>People and Policies:<br />
</strong>Influence and define employee&#8217;s mindsets and skills through recruitment, promotion, rotation, training and development.</p>
<p>Now before your eyes glaze over, I’m only suggesting this be used as a starting point. We are not originating much of this thought capital, only examining the impact the adoption of MDM will have on the operating model within this framework. And more importantly identifying how any gaps uncovered will be addressed to ensure this model remains internally consistent. After all, we do want to enable the kind of behavior we expect in order to be effective, right? A typical design sequence starts with an understanding of the strategy as defined. This in turns drives the organizational structure. Processes are based on the organization&#8217;s structure. Structure and Processes define the implementation of reward systems and people policies.</p>
<p>The preferred sequence in this design process is composed in the following order:<br />
a &#8211; strategy;<br />
b &#8211; structure;<br />
c &#8211; key processes;<br />
d &#8211; key people;<br />
e &#8211; roles and responsibilities;<br />
f &#8211; information systems (supporting and ancillary);<br />
g &#8211; performance measures and rewards;<br />
h &#8211; training and development;<br />
i &#8211; career paths.</p>
<p>The design process can be accomplished using a variety of tools and techniques. I have used <a href="http://www.idef.com/" target="_blank">IDEF</a>, <a href="http://www.bpmi.org/" target="_blank">BPMN</a> or other process management methods and tools (including <a href="http://en.wikipedia.org/wiki/RASIC" target="_blank">RASIC charts </a>describing roles and responsibilities for example), What ever tools you elect to use, they should effectively communicate intent and used to validate changes with the stakeholders who must be engaged in this process. Armed with a clear understanding of how the <a href="http://www.provenmodels.com/43/five-star-model/galbraith" target="_blank">Star model</a> works we can turn our attention to specific MDM model elements to include:</p>
<p>Master Data Life Cycle Management processes<br />
- Process used to standardize the way the asset (data) is used across an enterprise<br />
- Process to coordinate and manage the lifecycle of master data<br />
- How to understand and model the life-cycle of each business object using state machines (UML)<br />
- Process to externalize business rules locked in proprietary applications (ERP) for use with Business Rules Management Systems (BRMS) (if you are lucky enough to have one )<br />
- Operating Unit interaction<br />
- Stewardship (Governance Model)<br />
- Version and variant management, permission management, approval processes.<br />
- Context (languages, countries, channels, organizations, etc.) and inheritance of reference data values between contexts<br />
- Hierarchy management<br />
- Lineage (historical), auditability, traceability</p>
<p>I know this seems like a lot of work. Ensuring success and widespread adoption of Master Data Management mandates this kind of clear understanding and shared vision among all stakeholders. We do this to communicate how the solution will actually be deployed and used to realize the benefits we expect.</p>
<p>In many respects this is the business equivalent to the <a href="http://en.wikipedia.org/wiki/Technical_debt" target="_blank">Technical Debt concept Ward Cunningham</a> developed (we will address this in the next part on Reference Architecture) to help us think about this problem. Recall this metaphor means doing things the quick and dirty way sets us up with a technical debt, which is similar to a financial debt. Like a financial debt, the technical debt incurs interest payments, which come in the form of the extra effort that we have to do in future development because of the quick and dirty design choices we have made. The same concept applies to this effort. The most elegant technical design may be the worst possible fit for the business. The interest due in a case like this is, well, unthinkable.</p>
<p>Take the time to get this right. You will be rewarded with enthusiastic and supportive sponsors who will welcome your efforts to achieve success within an <strong><em>operating model</em></strong> they understand.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pragmaticarchitect.wordpress.com/198/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pragmaticarchitect.wordpress.com/198/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=198&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" /><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?a=s9-qstc9emY:70c2bKLnHbI:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/AppliedEnterpriseArchitecture/~4/s9-qstc9emY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pragmaticarchitect.wordpress.com/2009/03/26/modeling-the-blueprint-for-mdm-part-iv/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3fc2a9fd186b660f3368f7bcf61c62ce?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">jparnitzke</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2009/03/option.jpg" medium="image">
			<media:title type="html">option</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2009/03/graph_galbraith_star-model1.jpg" medium="image">
			<media:title type="html">graph_galbraith_star-model1</media:title>
		</media:content>
	<feedburner:origLink>http://pragmaticarchitect.wordpress.com/2009/03/26/modeling-the-blueprint-for-mdm-part-iv/</feedburner:origLink></item>
		<item>
		<title>Modeling the MDM Blueprint – Part III</title>
		<link>http://feedproxy.google.com/~r/AppliedEnterpriseArchitecture/~3/jg5BjpavFxQ/</link>
		<comments>http://pragmaticarchitect.wordpress.com/2009/03/17/modeling-the-mdm-blueprint-part-iii/#comments</comments>
		<pubDate>Tue, 17 Mar 2009 11:09:04 +0000</pubDate>
		<dc:creator>James Parnitzke</dc:creator>
				<category><![CDATA[Canonical Model]]></category>
		<category><![CDATA[Common Information Model]]></category>
		<category><![CDATA[Master Data Management]]></category>
		<category><![CDATA[Methodology]]></category>

		<guid isPermaLink="false">http://pragmaticarchitect.wordpress.com/?p=161</guid>
		<description><![CDATA[In part II of this series we discussed the Common Information Model. Because MDM is a business project we need to establish of a common set of models that can be referenced independent of the technical infrastructure or patterns we plan on using. The essential elements should include: - Common Information Model - Canonical Model [&#8230;]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=161&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" />]]></description>
				<content:encoded><![CDATA[<p>In <a href="http://pragmaticarchitect.wordpress.com/2009/03/07/modeling-the-mdm-blueprint-%e2%80%93-part-ii/" target="_blank">part II</a> of this series we discussed the <a href="http://pragmaticarchitect.wordpress.com/2009/03/07/modeling-the-mdm-blueprint-%e2%80%93-part-ii/" target="_blank">Common Information Model</a>. Because MDM is a <strong><em>business project</em></strong> we need to establish of a common set of models that can be referenced independent of the technical infrastructure or patterns we plan on using. The essential elements should include:</p>
<p>- Common Information Model<br />
- Canonical Model<br />
- Operating Model, and<br />
- Reference Architecture (e.g. 4+1 views, viewpoints and perspectives).</p>
<p>We will now turn our attention to the second element, the <strong>Canonical Model</strong>.</p>
<p>The Canonical Model (business rules and format specification) describes how the extraction of business rules from the software portfolio are managed and shared <img class="alignright size-full wp-image-164" title="oagis_model" src="http://pragmaticarchitect.files.wordpress.com/2009/03/oagis_model.jpg?w=460" alt="oagis_model"   />among other applications.  In addition to externalizing business rules locked in proprietary applications (for example ERP or CRM) we also use design patterns defined here to communicate between different data formats. Instead of writing translators between each and every format (with potential for a combinatorial explosion), use this in combination with the <a href="http://pragmaticarchitect.wordpress.com/2009/03/07/modeling-the-mdm-blueprint-%e2%80%93-part-ii/" target="_blank">CIM</a> to write a translator between each format and the canonical format using rules to guide the effort. See the <a href="http://www.oagi.org" target="_blank">Open Applications Group Integration Specification (OAGIS)</a> as example of an integration architecture that is based on a canonical data model. Implicit (and emerging now as generally accepted practice) is the use of rules (rules engines like <a href="http://www.ilog.com/" target="_blank">iLOG </a>for example) to handle reference data that must be shared across systems beyond software packages in our portfolio.  OAGIS uses XML as the common protocol for defining business messages and processes (scenarios) to enable business applications to communicate among one another in a standard manner. Not only the most complete set of XML business messages currently available (there are others several others, see the eXtensible Business Reporting Language (<a href="http://www.xbrl.org/Home/" target="_blank">XBRL) </a>for example), it also accommodates the specific industries by collaborating with vertical industry groups to add and extend additional requirements as needed. For another real working example in the Product Information Management (PIM) space see <a href="http://www.gs1.org/productssolutions/gdsn/ds/how.html" target="_blank">GS1 Global Data Synchronization Network</a> and the <a href="http://www.gs1.org/services/gsmp/kc/gdsn/index.html" target="_blank">standards</a> that make this possible. </p>
<p>Nick Malik over at <a href="http://blogs.msdn.com/nickmalik/archive/2007/06/12/canonical-model-canonical-schema-and-event-driven-soa.aspx" target="_blank">Inside Architecture </a> has written an exceptional post about this. We may not agree on all aspects (mostly semantics) but I think he has summed up well what this set of models should address in the blueprint. His post addresses the essential elements a complete modeling effort would produce. These products would typically include:</p>
<p><strong>Canonical Message Schema </strong>- describes how when passing messages from one application to another we pass a set of data between applications where both the sender and the receiver have a shared understanding of what the values are:<br />
(a) data type,<br />
(b) range of values, and<br />
(c) semantic meaning. </p>
<p><strong>Event Driven Perspective (Views) </strong>- a style of architecture characterized by a set of relatively independent actors who communicate events amongst themselves in order to achieve a coordinated goal.  This can be done at the application level, the distributed system level, the enterprise level, and the inter-enterprise level (B2B and EDI).  Although we disagree on where this effort belongs (see Part IV of this series on reference architecture development), the logical view will have its origins here. </p>
<p><strong>Business Event Ontology</strong><br />
This ontology includes a list of business events, usually in a hierarchy, that represents the points in the overall business process where two or more objects (entities) need to communicate or share the same data values and intent (semantics).  And this, as Nick states is &#8220;is not the same as a process step. An event may trigger a process step, but the event itself is strictly speaking simply a &#8220;notification of something that has occurred,&#8221; not the name of the process.  Ontology development is a pretty exciting technology I have watched mature from simple lab exercises (toys really), to something far more useful. For more on this see <a href="http://pragmaticarchitect.wordpress.com/2009/03/07/modeling-the-mdm-blueprint-%e2%80%93-part-ii/" target="_blank">Part II (The Common Information Model) </a>or my post at <a href="http://essentialanalytics.wordpress.com/2009/03/04/protege-%e2%80%93-ontology-editor/" target="_blank">Essential Analytics </a>about the Protege ontology editor.</p>
<p><strong>Business Rules</strong><br />
The last remaining modeling effort is the collection (identification and grouping) of the rules used to define the behavior of the elements we have already referred to. Typically buried in application code, (if you are not lucky enough to have a Business Rules engine &lt;g&gt;), this model describes the business rules, protocol, and default behavior expected when the model elements interact with each other (especially useful when exceptions occur or logical constraints are violated).  Not a common artifact I find, wish more of us would take the time and effort to accomplish this task.  For another real world reference see the  <a href="http://www.gs1.org/services/gsmp/kc/gdsn/index.html" target="_blank">GDSN Package Measurement Rules (issue 1.9.2)</a> for the global definition of nominal measurement attributes of product packaging or the <a href="http://www.gs1.org/services/gsmp/kc/gdsn/index.html" target="_blank">GDSN Validation Rules</a>.</p>
<p>As I stated in <a href="http://pragmaticarchitect.wordpress.com/2009/03/07/modeling-the-mdm-blueprint-%e2%80%93-part-ii/" target="_blank">Part II</a>, this is hard challenging work. The key differentiator and difference between success and failure on your MDM journey will be taking the time to model the blueprint and sharing this work early and often with the business. We will be discussing the third (and most important element) of the MDM blueprint, the Operating model in part IV. I encourage you to participate and share your experience, we can all learn from each other.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/pragmaticarchitect.wordpress.com/161/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/pragmaticarchitect.wordpress.com/161/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=pragmaticarchitect.wordpress.com&#038;blog=6539365&#038;post=161&#038;subd=pragmaticarchitect&#038;ref=&#038;feed=1" width="1" height="1" /><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?a=jg5BjpavFxQ:awD07cdU15U:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/AppliedEnterpriseArchitecture?d=yIl2AUoC8zA" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/AppliedEnterpriseArchitecture/~4/jg5BjpavFxQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://pragmaticarchitect.wordpress.com/2009/03/17/modeling-the-mdm-blueprint-part-iii/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/3fc2a9fd186b660f3368f7bcf61c62ce?s=96&amp;d=identicon&amp;r=G" medium="image">
			<media:title type="html">jparnitzke</media:title>
		</media:content>

		<media:content url="http://pragmaticarchitect.files.wordpress.com/2009/03/oagis_model.jpg" medium="image">
			<media:title type="html">oagis_model</media:title>
		</media:content>
	<feedburner:origLink>http://pragmaticarchitect.wordpress.com/2009/03/17/modeling-the-mdm-blueprint-part-iii/</feedburner:origLink></item>
	</channel>
</rss>
