<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Aligning Agile with Enterprise Architecture</title>
	<atom:link href="http://practicallyagile.com/2008/07/aligning-agile-with-enterprise-architecture/feed/" rel="self" type="application/rss+xml" />
	<link>http://practicallyagile.com/2008/07/aligning-agile-with-enterprise-architecture/</link>
	<description>Using Agile in less-than-perfect situations since Y2K</description>
	<lastBuildDate>Thu, 03 Jun 2010 18:48:03 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=abc</generator>
	<item>
		<title>By: Mike</title>
		<link>http://practicallyagile.com/2008/07/aligning-agile-with-enterprise-architecture/comment-page-1/#comment-15</link>
		<dc:creator>Mike</dc:creator>
		<pubDate>Sat, 12 Jul 2008 18:25:04 +0000</pubDate>
		<guid isPermaLink="false">http://practicallyagile.com/?p=5#comment-15</guid>
		<description>@Bryan: Difficulties with terminology are a large part of the problem Agile tries to solve by using frequent, face-to-face communication and a predilection toward linking requirements very strongly to testing (e.g. BDD). Natural languages are just so full of overloaded terms with connotations that can vary from person to person based on experiences. &quot;Architecture&quot; and &quot;architect&quot; are a great example of this.

With regard to where requirements should originate and how to evaluate them... that should be done in large part with the users. However, the relative priority of those requirements must be set by someone with the big picture view and the overall authority to make decisions. This often - not always - goes along with the big wallet. This is where Scrum came up with the concept of the Product Owner which is a little more specific than (my understanding of) XP&#039;s Customer.</description>
		<content:encoded><![CDATA[<p>@Bryan: Difficulties with terminology are a large part of the problem Agile tries to solve by using frequent, face-to-face communication and a predilection toward linking requirements very strongly to testing (e.g. BDD). Natural languages are just so full of overloaded terms with connotations that can vary from person to person based on experiences. &#8220;Architecture&#8221; and &#8220;architect&#8221; are a great example of this.</p>
<p>With regard to where requirements should originate and how to evaluate them&#8230; that should be done in large part with the users. However, the relative priority of those requirements must be set by someone with the big picture view and the overall authority to make decisions. This often &#8211; not always &#8211; goes along with the big wallet. This is where Scrum came up with the concept of the Product Owner which is a little more specific than (my understanding of) XP&#8217;s Customer.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Bryan Campbell</title>
		<link>http://practicallyagile.com/2008/07/aligning-agile-with-enterprise-architecture/comment-page-1/#comment-14</link>
		<dc:creator>Bryan Campbell</dc:creator>
		<pubDate>Sat, 12 Jul 2008 16:20:18 +0000</pubDate>
		<guid isPermaLink="false">http://practicallyagile.com/?p=5#comment-14</guid>
		<description>This is an interesting thread as it points out the difficulty many people have in separating Analysis from Design and what the word &#039;architecture&#039; really means.  

The challenge much of this is pointing out is that software development, and technology in general, has advanced to the point that projects need a wide variety of different &#039;architects&#039; and they all need to be capable of analysis and design.  These days large organizations have such complex environments that you need input from any number of architects (security, network, enterprise, usability... take your pick).  However, understanding the true goals of the system and ensuring these are well understood is what will make your implementation successful.

On a slight aside, over the course of my career I&#039;ve become increasingly suspect of asking for &#039;users&#039; to define the requirements of a new system or enhancement.  Most users, unfortunately, often have very myopic views of how they use a system and the overarching business processes their activities support.  That &#039;big wallet&#039; guy that Robert referenced often has a better vision of what the system really needs to do because you usually don&#039;t get the big wallet without being connected to the real strategies/direction of the company.</description>
		<content:encoded><![CDATA[<p>This is an interesting thread as it points out the difficulty many people have in separating Analysis from Design and what the word &#8216;architecture&#8217; really means.  </p>
<p>The challenge much of this is pointing out is that software development, and technology in general, has advanced to the point that projects need a wide variety of different &#8216;architects&#8217; and they all need to be capable of analysis and design.  These days large organizations have such complex environments that you need input from any number of architects (security, network, enterprise, usability&#8230; take your pick).  However, understanding the true goals of the system and ensuring these are well understood is what will make your implementation successful.</p>
<p>On a slight aside, over the course of my career I&#8217;ve become increasingly suspect of asking for &#8216;users&#8217; to define the requirements of a new system or enhancement.  Most users, unfortunately, often have very myopic views of how they use a system and the overarching business processes their activities support.  That &#8216;big wallet&#8217; guy that Robert referenced often has a better vision of what the system really needs to do because you usually don&#8217;t get the big wallet without being connected to the real strategies/direction of the company.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike</title>
		<link>http://practicallyagile.com/2008/07/aligning-agile-with-enterprise-architecture/comment-page-1/#comment-12</link>
		<dc:creator>Mike</dc:creator>
		<pubDate>Wed, 09 Jul 2008 20:34:55 +0000</pubDate>
		<guid isPermaLink="false">http://practicallyagile.com/?p=5#comment-12</guid>
		<description>Just to follow-up on the blog post which I have now fully read, I agree completely. The best way to inform your design (or architectural choices) is to talk with a user about how they will use the particular feature. In the same way leaving HCI out is criminal, not having at least a development team member in the room for most of the usability discussions should be too.

I find it funny that both of us reference Fred Brooks.</description>
		<content:encoded><![CDATA[<p>Just to follow-up on the blog post which I have now fully read, I agree completely. The best way to inform your design (or architectural choices) is to talk with a user about how they will use the particular feature. In the same way leaving HCI out is criminal, not having at least a development team member in the room for most of the usability discussions should be too.</p>
<p>I find it funny that both of us reference Fred Brooks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Mike</title>
		<link>http://practicallyagile.com/2008/07/aligning-agile-with-enterprise-architecture/comment-page-1/#comment-11</link>
		<dc:creator>Mike</dc:creator>
		<pubDate>Wed, 09 Jul 2008 20:23:13 +0000</pubDate>
		<guid isPermaLink="false">http://practicallyagile.com/?p=5#comment-11</guid>
		<description>Architects do indeed have a bad reputation with a lot of software development folks. In part this is because of the way the title &quot;architect&quot; was bandied about in the 90s. People who knew nothing about it were given the title. In part it is because &quot;Enterprise Architecture Group&quot; was generally put into practice in the same way as &quot;Project Management Office&quot;: both essentially ended up as gatekeepers rather than as helpers. And I am sure there are a ton of other reasons to go with these two.

Therefore, I suggest that architecture choices (.NET vs. Ruby , Rails vs. MERB, one rubygem vs. another, etc.) should be made by team members rather than by &quot;the Architect&quot;. Note that I say &quot;those with architectural knowledge&quot; in the post. I should probably change that to &quot;team members with architectural knowledge&quot;; it was that way in a draft.

The one point I disagree with in your longer comment is implying that the possibility of bad architecture is a reason to never plan architecture. While bad architecture is painful, lack of *any* architecural planning *can be* even more painful. To detect whether that is the case, I suggested the list of smells.

Also, as I mention at the end, I do not recommend this for all projects. It is generally applicable when there are multiple projects that must integrate. Integrate either in their deployment or in the need for team members to move between projects.

Before anyone hoists me for saying that someone can move between projects... Note: I don&#039;t mean work on multiple projects at a time. That is generally a bad idea. However, if an organization has two products, one may have a lull when the other is trying to deliver more features for a release. In that case,moving staff from one to the other *can be* a good idea. Also in that case, having some consistency in the libraries/frameworks/components used can reduce the impact of ramp up and communication overhead that we&#039;ve known about since even before Fred Brooks&#039; Mythical Man-Month.</description>
		<content:encoded><![CDATA[<p>Architects do indeed have a bad reputation with a lot of software development folks. In part this is because of the way the title &#8220;architect&#8221; was bandied about in the 90s. People who knew nothing about it were given the title. In part it is because &#8220;Enterprise Architecture Group&#8221; was generally put into practice in the same way as &#8220;Project Management Office&#8221;: both essentially ended up as gatekeepers rather than as helpers. And I am sure there are a ton of other reasons to go with these two.</p>
<p>Therefore, I suggest that architecture choices (.NET vs. Ruby , Rails vs. MERB, one rubygem vs. another, etc.) should be made by team members rather than by &#8220;the Architect&#8221;. Note that I say &#8220;those with architectural knowledge&#8221; in the post. I should probably change that to &#8220;team members with architectural knowledge&#8221;; it was that way in a draft.</p>
<p>The one point I disagree with in your longer comment is implying that the possibility of bad architecture is a reason to never plan architecture. While bad architecture is painful, lack of *any* architecural planning *can be* even more painful. To detect whether that is the case, I suggested the list of smells.</p>
<p>Also, as I mention at the end, I do not recommend this for all projects. It is generally applicable when there are multiple projects that must integrate. Integrate either in their deployment or in the need for team members to move between projects.</p>
<p>Before anyone hoists me for saying that someone can move between projects&#8230; Note: I don&#8217;t mean work on multiple projects at a time. That is generally a bad idea. However, if an organization has two products, one may have a lull when the other is trying to deliver more features for a release. In that case,moving staff from one to the other *can be* a good idea. Also in that case, having some consistency in the libraries/frameworks/components used can reduce the impact of ramp up and communication overhead that we&#8217;ve known about since even before Fred Brooks&#8217; Mythical Man-Month.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Robert Stackhouse</title>
		<link>http://practicallyagile.com/2008/07/aligning-agile-with-enterprise-architecture/comment-page-1/#comment-10</link>
		<dc:creator>Robert Stackhouse</dc:creator>
		<pubDate>Wed, 09 Jul 2008 19:17:05 +0000</pubDate>
		<guid isPermaLink="false">http://practicallyagile.com/?p=5#comment-10</guid>
		<description>Believe it or not, I wrote this before you posted and not as a reaction to your article: http://geekswithblogs.net/rstackhouse/archive/2008/07/09/123691.aspx</description>
		<content:encoded><![CDATA[<p>Believe it or not, I wrote this before you posted and not as a reaction to your article: <a href="http://geekswithblogs.net/rstackhouse/archive/2008/07/09/123691.aspx" rel="nofollow">http://geekswithblogs.net/rstackhouse/archive/2008/07/09/123691.aspx</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Robert Stackhouse</title>
		<link>http://practicallyagile.com/2008/07/aligning-agile-with-enterprise-architecture/comment-page-1/#comment-9</link>
		<dc:creator>Robert Stackhouse</dc:creator>
		<pubDate>Wed, 09 Jul 2008 17:12:59 +0000</pubDate>
		<guid isPermaLink="false">http://practicallyagile.com/?p=5#comment-9</guid>
		<description>You are the second person I&#039;ve encountered in as many days who&#039;s suggested in writing that Architecture is a good way to address non-functional requirements.

I&#039;ve been burned by &quot;architects&quot; as have others, as suggested by your own words.  A co-worker of mine has said that he had a really positive experience working for a large private contractor and another good experience working for a large government owned corporation.

I think the case for using an architect may greatly depend on the architect.

When I was at Agile Austin Open Space, Scott Belware introduced me to the term &quot;design hernia&quot;.  Think of a herniatied disk in the spine.  This disk is inflammed and applies pressure to the spinal cord causing in many cases severe pain.  If the hernia is resolved in the body, eventually the surrounding tissue will cease to be affected.  That is, the body is self correcting.  Programming code is not self-correcting.  Effects of a design hernia can continue to be felt even after the hernia is removed.

I&#039;ve been in a few environments now where the &quot;architect&quot; (whether this person refered to themselves as such or not) actually introduced some serious design hernias and was either unable to remove them because of bureaucratic inertia or was too stubborn to concede that the &quot;architecture&quot; was flawed.

In building construction, design is the process and architecture is the result.

To me, too many architects come up with their architecture without thinking about its consequences.  Why do these people try to set in stone what basically should just be design before their ideas are validated through user acceptance testing?

Bad architecture can unnecessarily increase the time to live, increase the overall complexity of the system and increase the maintenance burden.

These things make me question, &quot;Is architecture really worth it?&quot;

Robert

p.s. That other article that suggested non-functional requirements were best handled by architecture was in &quot;Better Software&quot; magazine.</description>
		<content:encoded><![CDATA[<p>You are the second person I&#8217;ve encountered in as many days who&#8217;s suggested in writing that Architecture is a good way to address non-functional requirements.</p>
<p>I&#8217;ve been burned by &#8220;architects&#8221; as have others, as suggested by your own words.  A co-worker of mine has said that he had a really positive experience working for a large private contractor and another good experience working for a large government owned corporation.</p>
<p>I think the case for using an architect may greatly depend on the architect.</p>
<p>When I was at Agile Austin Open Space, Scott Belware introduced me to the term &#8220;design hernia&#8221;.  Think of a herniatied disk in the spine.  This disk is inflammed and applies pressure to the spinal cord causing in many cases severe pain.  If the hernia is resolved in the body, eventually the surrounding tissue will cease to be affected.  That is, the body is self correcting.  Programming code is not self-correcting.  Effects of a design hernia can continue to be felt even after the hernia is removed.</p>
<p>I&#8217;ve been in a few environments now where the &#8220;architect&#8221; (whether this person refered to themselves as such or not) actually introduced some serious design hernias and was either unable to remove them because of bureaucratic inertia or was too stubborn to concede that the &#8220;architecture&#8221; was flawed.</p>
<p>In building construction, design is the process and architecture is the result.</p>
<p>To me, too many architects come up with their architecture without thinking about its consequences.  Why do these people try to set in stone what basically should just be design before their ideas are validated through user acceptance testing?</p>
<p>Bad architecture can unnecessarily increase the time to live, increase the overall complexity of the system and increase the maintenance burden.</p>
<p>These things make me question, &#8220;Is architecture really worth it?&#8221;</p>
<p>Robert</p>
<p>p.s. That other article that suggested non-functional requirements were best handled by architecture was in &#8220;Better Software&#8221; magazine.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
