<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Xebia Blog &#187; Architecture</title>
	<atom:link href="http://blog.xebia.com/tag/architecture/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.xebia.com</link>
	<description>Software development done right!</description>
	<lastBuildDate>Wed, 01 Feb 2012 00:30:00 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Architecture in an Agile world</title>
		<link>http://blog.xebia.com/2011/05/03/architecture-in-an-agile-world/</link>
		<comments>http://blog.xebia.com/2011/05/03/architecture-in-an-agile-world/#comments</comments>
		<pubDate>Tue, 03 May 2011 06:20:40 +0000</pubDate>
		<dc:creator>Niklas Odding</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[kanban]]></category>
		<category><![CDATA[lean architecture]]></category>
		<category><![CDATA[Requirements Management]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[Lean]]></category>

	<!-- AutoMeta Start -->
	<category>cycles</category>
	<category>sync</category>
	<category>architecture</category>
	<category>cycles</category>
	<category>sync</category>
	<category>architecture</category>
	<!-- AutoMeta End -->
	
		<guid isPermaLink="false">http://blog.xebia.com/?p=6773</guid>
		<description><![CDATA[This Blog is a kick off to for many writings about architecture in an Agile World. We will explore the topic from all the views possible, in order to gain a better understanding about it. By doing so, we hope to create a community of followers, who would also like to contribute or discuss about [...]]]></description>
			<content:encoded><![CDATA[<p>This Blog is a kick off to for many writings about architecture in an Agile World. We will explore the topic from all the views possible, in order to gain a better understanding about it. By doing so, we hope to create a community of followers, who would also like to contribute or discuss about this topic.</p>
<p>Xebia is helping many organizations in the Netherlands, France, the United States and India with implementing an agile way of system development. In most of the cases the Scrum method is applied and very good results are achieved. Business and IT are working much closer together, resulting in more quality and much more customer satisfaction. However, lately we also see a trend in problems that seem to occur in (almost) every organization. Software is developed in a fast way with high quality, but it takes forever to get it in production. The more teams are being formed, the more interdependencies between the teams occur<span id="more-6773"></span>, disturbing the heartbeat of the teams. Teams have to wait for other teams to finish, or they have to work together to complete the work. Also it’s not always clear which team should do which job. Next to this product owners are being over asked. They have to supply the teams with user stories / epics, but also have to know upfront which team to ask it, have a clear understanding of the direction of the solution and at the same time define non-functional requirements like availability or system responsiveness.</p>
<p>The scrum masters in the teams are not able to solve all this. They have the interest of their team at hand and are mainly focused on the process to do a good job. They are less focused on the contents of the product backlog or how team deliverables are related to the broader context. However the real situation in many organizations is different. The environment of scrum teams is complex and often not very agile. Scrum teams need to work in the context of an existing organization, which has formed over years. To be able to do so, they need a context. Especially the context in the content in important. Here is where architecture comes in.</p>
<p>The picture below shows how Scrum synchronizes the business cycles with the IT project cycles. Without Scrum the time lines for supply and demand are out of sync. By delivering software faster, Scrum is able to follow the priority of the business and develop IT systems which are in line with current demand (not with a demand from last year). However, businesses also have a longer term strategy, which can make them give significant competitive advantages in the near future. To be able to direct the IT development towards this longer term goals, the business needs architecture. In this way the short terms Business cycles and IT development cycles are in sync, but they move forward towards reaching the ultimate business goals. The picture shows the three different stages from being out of sync, to being in sync and also be moving towards the strategic goals.</p>
<p style="text-align: center;"><a href="http://blog.xebia.com/wp-content/uploads/2011/05/Scrum-architecture.png"><img class="aligncenter size-full wp-image-6774" title="Architecture aligns scrum" src="http://blog.xebia.com/wp-content/uploads/2011/05/Scrum-architecture.png" alt="" width="583" height="257" /></a></p>
<p>Therefore, architecture in the agile world has a very important role to play. However it has to adapt to the new way of working and the new way of looking at the world. In an earlier blog from Xebia, we talk about the 3 C’s of architecture. We defined three goals of the architecture function in IT organizations: The <a href="http://blog.xebia.com/2010/04/the-three-cs-of-architecture/" target="_blank">Three <strong>C’s of Architecture</strong></a>. These are: <strong>Connection, Cohesion and Changeability</strong>. Taking these as the prime principles of architecture provides focus on what to do and how to position architecture in the Agile organization. We deliberately do not speak of “the architect”, because architecture is created by many people: domain experts, (experienced) software developers, testers, operations people, software architects, enterprise architects, etc. Therefor we will talk about the architecture role.</p>
<p>The <strong><em>C</em></strong>onnection with organizational goals is achieved by using enterprise architecture as a way to create a common understanding about the business and IT in the future. But also the architecture role plays an important part in helping the product owner(s) to specify their requirements and give directions to possible solutions (in line with the enterprise architecture). <strong><em>C</em></strong>ohesion between teams and cohesion between teams and their surroundings, are the main aspects the architecture role has to focus on, by helping the teams getting more productive. Finally the architecture role focuses on <strong><em>C</em></strong>hangeability by continuously evolving the architecture and adjusting it to the real world. Architecture creates its own learning cycle. Next to this the modularity of the architecture has to be taken care of, so software is easily adapted without too much interference with other elements in the architecture.</p>
<p>In the coming months we will write a series of blogs, about several aspects of architecture in the agile world. First of all we will write about experiences in the field. How things are done. What can be done better and which lessons are learned. Next to this we would like to present out view about the architecture role in an Agile environment. Which tasks should be done, who contributes to creating architecture. Also we would like to write some blogs, about tools and methodologies used to be able to fulfill this new role in the best way possible. Finally we would like to talk about the architecture itself. How can we make architecture agile? How do we modularize the application architecture, or in what way does virtualization, provisioning and automated deployment help? With all these blogs we intend to redefine the world of architecture in the agile world. Comments and opinions are most welcome, so the architecture and agile communities merge together with a way of thinking on architecture.</p>
<div name="googleone_share_1" style="position:relative;z-index:5;float: right; margin-left: 10px;"><g:plusone size="small" count="1" href="http://blog.xebia.com/2011/05/03/architecture-in-an-agile-world/"></g:plusone></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.xebia.com%2F2011%2F05%2F03%2Farchitecture-in-an-agile-world%2F&amp;title=Architecture%20in%20an%20Agile%20world" id="wpa2a_2"><img src="http://blog.xebia.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.xebia.com/2011/05/03/architecture-in-an-agile-world/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Forum Sentry XML Gateway</title>
		<link>http://blog.xebia.com/2011/03/15/forum-sentry-xml-gateway/</link>
		<comments>http://blog.xebia.com/2011/03/15/forum-sentry-xml-gateway/#comments</comments>
		<pubDate>Tue, 15 Mar 2011 15:00:02 +0000</pubDate>
		<dc:creator>Mark Bakker</dc:creator>
				<category><![CDATA[Middleware]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[SOA]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[esb]]></category>

	<!-- AutoMeta Start -->
	<category>gateway</category>
	<category>datapower</category>
	<category>sentry</category>
	<category>xs40</category>
	<category>conversions</category>
	<category>crosscheck</category>
	<category>virus</category>
	<category>flavors</category>
	<!-- AutoMeta End -->
	
		<guid isPermaLink="false">http://blog.xebia.com/?p=6408</guid>
		<description><![CDATA[Last week I got a presentation for a security device I had never heard about. Most times this means it is something which is not commodity, or has no real use-case. But this time I was really impressed. The device is a possible replacement for IBM Datapower XML Security Gateway. But the way they designed [...]]]></description>
			<content:encoded><![CDATA[<p>Last week I got a presentation for a security device I had never heard about.<br />
Most times this means it is something which is not commodity, or has no real use-case.</p>
<p>But this time I was really impressed. The device is a possible replacement for IBM Datapower XML Security Gateway. But the way they designed the device is totally different.</p>
<p>What CrossCheck networks did was creating a device with just security as main use case. First of all it was an XML gateway, nowadays is does support HTML, XML, SOAP, FTP, JMS and others.<br />
It also translates different flavors of JMS to each other, it can even convert from IBM MQ to JBoss MQ directly.</p>
<p><span id="more-6408"></span></p>
<p>The Forum Sentry XML Gatewat comes in two flavors, as an appliance and as an VMWare image.<br />
This is useful for the Development and Test environments.</p>
<p>The main use-case for the device is as a security device. It will stand in the DMZ and acts as a level 7 security gateway. This is the same use-case as the IBM Datapower, only the marketing is a little bit different, CrossCheck Networks markets the device mainly as a security appliance. IBM did market the Datapower mainly as a ESB in the past. Nowadays they also market it mainly as a security appliance.</p>
<p>The main differences I spotted between those two where:</p>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td><strong>Forum Sentry XML Gateway</strong></td>
<td> </td>
<td><strong>IBM Datapower XML Security Gateway XS40</strong></td>
</tr>
<tr>
<td>Supports protocol conversions (also IBM MQ → JBoss MQ)</td>
<td> </td>
<td>Support protocol conversions (but does only support IBM related JMS technologies)</td>
</tr>
<tr>
<td>Support virus scanning (also in SOAP with attachments)</td>
<td> </td>
<td>-</td>
</tr>
<tr>
<td>Supports large streaming files</td>
<td> </td>
<td>Only does this in the Datapower XB60 B2B gateway</td>
</tr>
<tr>
<td>Supports authentication by using cascading user stores (i.g. If you can not find this username/ password in LDAP go to your Active Directory and try to match there). This can be configured for each url(-part)/ service(-part).</td>
<td> </td>
<td>Support authentication</td>
</tr>
<tr>
<td>Real nice configuration, no need to type any XSLT.</td>
<td> </td>
<td>Most conversions are made in XSLT.</td>
</tr>
<tr>
<td>SSO for web, ftp and services.</td>
<td> </td>
<td>SSO for SOAP.</td>
</tr>
</tbody>
</table>
<p><strong>My conclusion after this short demo</strong><br />
The Forum sentry has some advantages when you compare it to the IBM Datapower XML Security Gateway XS40. The main difference is that you can do more whith only one appliance. You can replace an IBM Webseal, a virus scanner and an IBM Datapower XS40 with only one device.<br />
My advice is to take this device in considerations where you have to choose for an XML firewall/ hardware ESB.</p>
<div name="googleone_share_1" style="position:relative;z-index:5;float: right; margin-left: 10px;"><g:plusone size="small" count="1" href="http://blog.xebia.com/2011/03/15/forum-sentry-xml-gateway/"></g:plusone></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.xebia.com%2F2011%2F03%2F15%2Fforum-sentry-xml-gateway%2F&amp;title=Forum%20Sentry%20XML%20Gateway" id="wpa2a_4"><img src="http://blog.xebia.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.xebia.com/2011/03/15/forum-sentry-xml-gateway/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Architects &amp; Scrum: 4. What is the role of the architect in Scrum?</title>
		<link>http://blog.xebia.com/2011/02/28/architects-scrum-4-what-is-the-role-of-the-architect-in-scrum/</link>
		<comments>http://blog.xebia.com/2011/02/28/architects-scrum-4-what-is-the-role-of-the-architect-in-scrum/#comments</comments>
		<pubDate>Mon, 28 Feb 2011 09:44:51 +0000</pubDate>
		<dc:creator>Niklas Odding</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[lean architecture]]></category>
		<category><![CDATA[Requirements Management]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[role]]></category>

	<!-- AutoMeta Start -->
	<category>architects</category>
	<category>architects</category>
	<!-- AutoMeta End -->
	
		<guid isPermaLink="false">http://blog.xebia.com/?p=6258</guid>
		<description><![CDATA[In my last blog I presented an illustration which shows the two primary aspects of the architects’ role. On one side they play a role in strengthening the heartbeat. On the other side, they play a role in envisioning the future. The focus in this blog is on the solution architect or application architect. The [...]]]></description>
			<content:encoded><![CDATA[<p>In my last blog I presented an illustration which shows the two primary aspects of the  architects’ role. On one side they play a role in strengthening the  heartbeat. On the other side, they play a role in envisioning the  future.</p>
<p>The focus in this blog is on the solution architect or application architect. The way the Enterprise architect deals with Scrum will be explored more in detail in a later blog. This blog combined with the previous 3 blogs can be also downloaded as a whitepaper from the Xebia website: <a title="Whitepaper Architects &amp; Scrum" href="http://www.xebia.com/architects_scrum" target="_blank">http://www.xebia.com/architects_scrum</a></p>
<p><em><strong>What is the role of the architect?</strong></em><br />
Last blog I presented the illustration as shown below. In this blog I will focus on the parts of this illustration in which the solution architect / application architect plays a role</p>
<p><strong><span id="more-6258"></span>Product backlog</strong><a rel="attachment wp-att-6067" href="http://blog.xebia.com/2011/02/09/architects-scrum-3-architects-add-vision/agile-architects-autosaved/"><img class="size-full wp-image-6067 alignright" title="Agile architects" src="http://blog.xebia.com/wp-content/uploads/2011/02/Agile-architects-Autosaved.gif" alt="" width="406" height="304" /></a><br />
Traditionally, architects have been the chief designers in software development. Projects often start with an extensive project architecture document, in which the solution has been written down using many words and lots of paper. In today’s Scrum practice, the focus is on the most prioritized epics and user stories in the product backlog. Epics and user stories are usually short. Teams take epics and user stories from the backlog and design the best solution for them. So what is the role of architects at this stage?</p>
<p>In fact, architects have a very important role during this stage, especially in larger organizations with many software systems. They discuss the requirements with the organization and make the first global design decisions for each epic on the product backlog in line with the overall architecture. In large organizations with multi-layered SOA architectures, the number of software components used can be very high. Ten to twenty agile teams working on new features is not an exception. Architects make the first global design decisions because they are the ones who oversee the whole picture. Questions have to be answered, such as ”do we need extra components?”, ”do we adjust existing components?” and “in which layer of the architecture do we want to implement the change?” These decisions are not made by architects alone. They discuss them with product owners to determine their real needs, and they discuss them with the agile teams to determine how the software really works.</p>
<p>The design decisions made at this stage are normally written down on no more than one-half page. If this is not the case, then the architects could lose themselves in details. These details will be discussed in the teams. The architects can also make an initial estimation of the complexity of the solution, which can be used when epics are picked up by the teams.</p>
<p>Architects help to narrow the cone of uncertainty. The cone of uncertainty describes the evolution of uncertainty during a project. At the beginning of a project, comparatively little is known about the product or work results, so estimates have a high level of uncertainty. Architects help the product owner reduce the level of uncertainty, making it easier for the product owner to set priorities and for teams to focus on the specific solution within their areas of expertise.</p>
<p><strong><em>Agile teamwork</em></strong></p>
<p>Architects are present daily on agile teams. They have to discuss the upcoming epics/user stories in the next sprints. Additionally, daily design decisions are made together with the teams on a lower level. This provides feedback to the architects about the positive and negative sides of the global design decisions they have made. Architects without experience in the teams will lose contact with the real world.</p>
<p>Architects also have an important role in monitoring the architectural principles through all layers of the architecture. This means, for example, that they have to know whether all business rules are implemented within the business layer or whether customer information is always stored in the CRM component. Being on the team can help architects make architectural principles more practical; the architectural principles evolve from a practical standpoint.</p>
<p>The architectural principles also include more technical aspects, such as the use of middleware and hardware. Ideally, the “definition of done” within a team includes the deployment to production. In this respect, the DEVOPS movement has recently become stronger. The architects can provide guidance in performance issues or security issues. This brings these aspects of software development closer to software developers and analysts.</p>
<p>Cooperation in teams between developers, testers, performance specialists, hardware specialists and others will help to create and capture new ideas. These new ideas might not always be implemented directly. New ideas can also impact other teams, or software redesign may require extra time or expertise that is not available to the team, which means the team cannot implement the ideas. So how can architects deal with these ideas?</p>
<p><strong><em> </em></strong></p>
<p><strong><em>Dealing with design ideas</em></strong></p>
<p>Architects who are helping to groom the product backlog and who are working in agile teams are often very busy with daily problems. But there is a second, equally important part to their role: to envision the future. They step out of the daily problem-solving activities to evaluate the big picture. What new ideas are desirable and possible? How does current progress influence the overall architecture? This thinking results in what we call design ideas.</p>
<p>First of all, new design ideas can emerge from grooming the product backlog and working in the teams. Ideas for new components or ideas to change existing components emerge. The focus in agile teams is often on the speed of delivery, so the business can adapt quickly to changes in its environment. Although this is a major strength of Scrum, it also makes architectural deficiencies very likely. Software redesign is not done properly because of lack of time, or is not done at all. It is important that these shortcomings are acknowledged and written down as design ideas for future sprints. A design idea with a valid business case of its own should also be placed on the product backlog.</p>
<p>Design ideas arise not only from software architecture; technical and business areas are also a rich source of design ideas. Virtualization of the hardware can save a lot of money and reduce complexity. Regulatory compliance demands more control over traceability. These types of ideas are often executed by the IT department, without a direct connection to business goals. However, these design ideas should be linked to business requirements and find their way to the product backlog. If necessary, new agile teams — guided by product owners with help from the architects — can be formed to handle the implementation of these ideas.</p>
<p>New ideas also emerge from the strategic alignment of the business and IT. This is the domain of enterprise architecture and IT strategy. IT can become a critical success factor for the business and a catalyst for future business change. Enterprise architects or chief information officers are closely related to and cooperate with organization management. Their goal is to see how IT can be employed as an important production factor in the organization. Enterprise architects translate strategic choices into new design ideas. These design ideas will also find their way to the product backlog.</p>
<p>Traditionally, architects decide on the architecture and on the conformance of software to the enterprise architecture. But a transparent assessment of the real business value is rarely made. Conformance is king. This dynamic has changed in the new reality of Scrum. We employ a different approach for translating enterprise architectural requirements into concrete software artifacts. The main purpose of design ideas is to select the right ideas or architectural features to implement, based on actual value. The first step is to organize design ideas in a backlog. Architects use that backlog while collaborating with product owners in evolving the product backlog. This collaboration is based on a partnership aiming towards business value, now and in the future.</p>
<p>Business value does not necessarily equal cost savings. It is also found in continuity planning (e.g. when the number of servers needs to be increased to preserve system stability) or in software adaptability. The choice of which design ideas to implement is ultimately made by the product owner. Architects have an important role in explaining and promoting these ideas.</p>
<p><strong><em>Balancing the work</em></strong></p>
<p>In companies with a complex multi-system environment and multiple agile teams, architects should be very close to the product owner, helping to create maximum business value out of the requirements on the product backlog. By sketching the solution and the complexity, architects help the product owner to set even better priorities, and help the support teams with the outcome of these global design discussions. Also, new design ideas will be discussed with the product owner and possibly placed on the product backlog. An effective relationship between the product owner and the architects can create more business value with less effort<strong><em>. </em></strong></p>
<p>If we follow Chandler’s principles, the adoption of Scrum should include an alignment of structure, process, and strategy — or it will fail. At best, it results in a sub-optimization within the overall enterprise. In this white paper we explored the alignment of Scrum with the architectural processes and showed how the role of architects within an agile context takes shape in order to create more business value.</p>
<p>Agile architects focus on the most important outcomes of their work. They go back to basics and chose their tools deliberately. By focusing less on documentation and much more on communication, they can become an important accelerator for sprint teams and help the organization to build business value by fostering new design ideas.</p>
<p>But architects not only focus on daily business activities and on strengthening the heartbeat of the Scrum teams. The second pillar of their work is envisioning the future and clarifying the enterprise architecture. All architects therefore should claim time for this and communicate the benefits for business and IT.</p>
<p>Agile architects do not live in ivory towers. They are pragmatic and involved in daily business, while not forgetting their role in envisioning the future.</p>
<div name="googleone_share_1" style="position:relative;z-index:5;float: right; margin-left: 10px;"><g:plusone size="small" count="1" href="http://blog.xebia.com/2011/02/28/architects-scrum-4-what-is-the-role-of-the-architect-in-scrum/"></g:plusone></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.xebia.com%2F2011%2F02%2F28%2Farchitects-scrum-4-what-is-the-role-of-the-architect-in-scrum%2F&amp;title=Architects%20%26%23038%3B%20Scrum%3A%204.%20What%20is%20the%20role%20of%20the%20architect%20in%20Scrum%3F" id="wpa2a_6"><img src="http://blog.xebia.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.xebia.com/2011/02/28/architects-scrum-4-what-is-the-role-of-the-architect-in-scrum/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Architects &amp; Scrum: 3. Architects add vision</title>
		<link>http://blog.xebia.com/2011/02/09/architects-scrum-3-architects-add-vision/</link>
		<comments>http://blog.xebia.com/2011/02/09/architects-scrum-3-architects-add-vision/#comments</comments>
		<pubDate>Wed, 09 Feb 2011 09:10:39 +0000</pubDate>
		<dc:creator>Niklas Odding</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[lean architecture]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Scrum]]></category>

	<!-- AutoMeta Start -->
	<category>architects</category>
	<category>strengthening</category>
	<category>heartbeat</category>
	<category>illustration</category>
	<category>worlds</category>
	<category>assist</category>
	<category>pursuing</category>
	<category>blog </category>
	<category>architects</category>
	<category>strengthening</category>
	<category>heartbeat</category>
	<category>illustration</category>
	<category>worlds</category>
	<category>assist</category>
	<category>pursuing</category>
	<category>blog </category>
	<!-- AutoMeta End -->
	
		<guid isPermaLink="false">http://blog.xebia.com/?p=5891</guid>
		<description><![CDATA[In my last post I stated that there is a lot of emphasis on the fact that architects have to help to get the scrum team to work better, faster en with more quality. By following the agile values the architect will help “strengthening the heartbeat” of the scrum teams. However the activities of architects [...]]]></description>
			<content:encoded><![CDATA[<p>In my last post I stated that there is a lot of emphasis on the fact that architects have to help to get the scrum team to work better, faster en with more quality. By following the agile values the architect will help “strengthening the heartbeat” of the scrum teams. However the activities of architects should encompass more. In this blog  I will explain what this is and how to incorporate this in your way of working with scrum teams.</p>
<p><span id="more-5891"></span></p>
<p><strong><em>Architects add vision</em></strong></p>
<p><em>Strengthening the heartbeat</em> of Scrum teams is an overly limited view of the contribution that architects can make in an agile environment. They also help develop new design ideas, assist the organization in pursuing its strategy with the aid of IT, identify IT opportunities which could promote business value and assist in their implementation. Architects envision the future. In this way architects can also become catalysts for change. New IT developments can have a major impact on the business strategy and on the priorities for IT development.</p>
<p>This part of the work of the architect is often forgotten in organizations that are adopting Scrum. But is a very important part of the architects work. The following illustration shows the two primary aspects of the architects’ role. On one side they play a role in strengthening the heartbeat. On the other side, they play a role in envisioning the future.</p>
<p style="text-align: center;"><a href="http://blog.xebia.com/wp-content/uploads/2011/02/Picture1.png"><br />
</a><a href="http://blog.xebia.com/wp-content/uploads/2011/02/Agile-architects.tif"><img class="aligncenter size-full wp-image-6065" title="Way of working Agile architects" src="http://blog.xebia.com/wp-content/uploads/2011/02/Agile-architects.tif" alt="" /></a><a href="http://blog.xebia.com/wp-content/uploads/2011/02/Agile-architects.tiff"><img class="aligncenter size-full wp-image-6066" title="Agile architects" src="http://blog.xebia.com/wp-content/uploads/2011/02/Agile-architects.tiff" alt="" /></a><a href="http://blog.xebia.com/wp-content/uploads/2011/02/Agile-architects-Autosaved.gif"><img class="aligncenter size-full wp-image-6067" title="Agile architects" src="http://blog.xebia.com/wp-content/uploads/2011/02/Agile-architects-Autosaved.gif" alt="" width="619" height="477" /></a></p>
<p style="text-align: left;">As can be seen in the illustration, there are of course the necessary connections between the two parts of the job. The concept of <em>&#8220;design ideas&#8221;</em> is helping a lot to be able to connect the two worlds. In my next post I will go into more detail about the way the architects can connect both worlds and add more value to the organization.</p>
<div name="googleone_share_1" style="position:relative;z-index:5;float: right; margin-left: 10px;"><g:plusone size="small" count="1" href="http://blog.xebia.com/2011/02/09/architects-scrum-3-architects-add-vision/"></g:plusone></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.xebia.com%2F2011%2F02%2F09%2Farchitects-scrum-3-architects-add-vision%2F&amp;title=Architects%20%26%23038%3B%20Scrum%3A%203.%20Architects%20add%20vision" id="wpa2a_8"><img src="http://blog.xebia.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.xebia.com/2011/02/09/architects-scrum-3-architects-add-vision/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Architects &amp; Scrum: 2. The agile values</title>
		<link>http://blog.xebia.com/2011/01/26/architects-scrum-2-the-agile-principles/</link>
		<comments>http://blog.xebia.com/2011/01/26/architects-scrum-2-the-agile-principles/#comments</comments>
		<pubDate>Wed, 26 Jan 2011 12:45:25 +0000</pubDate>
		<dc:creator>Niklas Odding</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[lean architecture]]></category>
		<category><![CDATA[Process]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[architects]]></category>
		<category><![CDATA[Architecture]]></category>

	<!-- AutoMeta Start -->
	<category>sketches</category>
	<category>architects</category>
	<category>architect</category>
	<category>adjust</category>
	<category>sketches</category>
	<category>architects</category>
	<category>architect</category>
	<category>adjust</category>
	<!-- AutoMeta End -->
	
		<guid isPermaLink="false">http://blog.xebia.com/?p=5790</guid>
		<description><![CDATA[This blog is the second of a series of blogs in which I will examine the role of architects in Scrum. Last week I started with the forgotten questions of Scrum. In this blog I will look in more detail to the Agile Manifesto and the agile values. Architects and the agile values Most of [...]]]></description>
			<content:encoded><![CDATA[<p>This blog is the second of a series of blogs in which I will examine the role of architects in Scrum. Last week I started with the forgotten questions of Scrum. In this blog I will look in more detail to the Agile Manifesto and the agile values.</p>
<p><strong>Architects and the agile values</strong></p>
<p>Most of the literature concerning the role of architects in an agile context focuses on the Agile flow itself and how architects can avoid disturbing that flow. Mike Cohn, in his book “succeeding with agile” makes the distinction between coding &amp; non-coding architects. In where he states that the coding architects will have less trouble finding their new role in de Agile development process.</p>
<p>An architect within a team has to be able to code himself. He is a team member, who has more experience in structuring the application being build compared to other team members.  By using that experience he can add value to the team.  Scrum has no particular role for non-coding architects. The question rises if this is totally true.<span id="more-5790"></span></p>
<p>The role of architects in an agile environment should at least follow the agile values from the agile manifesto. Examining these values leads to guide lines that architects need to follow in able to be of optimal value for the organization.</p>
<ol>
<li><em>Individuals and interactions over processes and tools<br />
</em>The first agile value states that we are dealing with people and the way they communicate. Processes and tools can be helpful in certain situations, but should never become overemphasized. Obligatory thick architecture documents at the start of a project or the lengthy review procedures of documents, are examples where processes and tools have gotten too much attention. In a Scrum environment this is out of the question. Therefor Architects have to change their focus from written to oral communication. They have to communicate in person as much as they can with all of the stakeholders in the organization. Architects need to be able to communicate equally  well with the product owner as with individual members of the teams. Communication has to be two-way, enabling the architect be fed with ideas from others. Architectural frameworks like TOGAF can be used, but only if it helps the architect to get the message across. The method can never prescribe the activities the architects should do.</li>
<li><em>Working software over comprehensive documentation<br />
</em>Architects in the past have been doing this from a distant perspective from the builders. Communicating through extensive design documents proofed to be not the most effective one.  Although architects themselves can be very proud of the documents they produced, this will not work within an environment with Scrum. Implementing Scrum in an organization urges the architects to focus much more on the communicative part of their job.An architect has to focus more on drawing sketches. He has to talk about the sketches to all the stakeholders. Adjust the sketches to remarks that customers en suppliers make.  Adjust the sketches to ideas given by the development team. But also the sketches to the impediments found during implementation, which makes them more in line with the real world.  Using sketches helps the architect to create a common view about the design of the software with all stakeholders, which helps to raise the quality of the software developed.</li>
<li><em>Customer collaboration over contract negotiation<br />
</em>Architects have a big role to play in aligning IT and business. In companies with a complex multi-system environment, and multiple agile teams, the architects should be very close to the product owner, helping him to create maximal business value out of the requirements on the product backlog. By sketching the solution and giving insight in the complexity of this solution, the architect can help the product owner in settings its priorities even better, and support teams with the outcome of these global design discussions. An effective relationship between the product owner and the architect can create more business value with less effort.</li>
<li><em>Responding to change over following a plan<br />
</em>The architect has to be able to respond to daily change. The best way to experience daily difficulties which can lead to changes, is to be close to the development team. The architect should be there to be consulted about all kind of practical design issues. The architect has to adjust his own sketches of the future continuously. The architect should be able to let go of some of his ideas if they are very difficult to execute.</li>
</ol>
<p>Following these agile principles the architect has to communicate &amp; interact more than ever with all stakeholders. In his communication he should make use of sketches instead of large documents. His working desk should be close to the teams and he should daily talk to the product owner. Most of this is focused on <em>“strengthening the heartbeat”</em> of the Scrum teams. He can add more quality to the software and speed up teams by smart designs.</p>
<p>However in my opinion there is missing something. So what is the missing ingredient what could make architects really successful?  In next week blog I give you my answers to that.</p>
<div name="googleone_share_1" style="position:relative;z-index:5;float: right; margin-left: 10px;"><g:plusone size="small" count="1" href="http://blog.xebia.com/2011/01/26/architects-scrum-2-the-agile-principles/"></g:plusone></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.xebia.com%2F2011%2F01%2F26%2Farchitects-scrum-2-the-agile-principles%2F&amp;title=Architects%20%26%23038%3B%20Scrum%3A%202.%20The%20agile%20values" id="wpa2a_10"><img src="http://blog.xebia.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.xebia.com/2011/01/26/architects-scrum-2-the-agile-principles/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Architects &amp; Scrum: 1. The forgotten questions of scrum.</title>
		<link>http://blog.xebia.com/2011/01/18/architects-scrum-1-the-forgotten-questions-of-scrum/</link>
		<comments>http://blog.xebia.com/2011/01/18/architects-scrum-1-the-forgotten-questions-of-scrum/#comments</comments>
		<pubDate>Tue, 18 Jan 2011 09:05:14 +0000</pubDate>
		<dc:creator>Niklas Odding</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[lean architecture]]></category>
		<category><![CDATA[Scrum]]></category>
		<category><![CDATA[role of architect]]></category>

	<!-- AutoMeta Start -->
	<category>chandler</category>
	<category>influenced</category>
	<category>forgotten</category>
	<category>organization</category>
	<category>architects</category>
	<category>departments</category>
	<category>examine</category>
	<category>scrum</category>
	<!-- AutoMeta End -->
	
		<guid isPermaLink="false">http://blog.xebia.com/?p=5735</guid>
		<description><![CDATA[This blog is intended to be the first of a series of blogs in which I will examine the role of architects in Scrum. I will start with what I think that are the forgotten questions of Scrum and in next blogs I will examine how the role of the architect changes, what kind of [...]]]></description>
			<content:encoded><![CDATA[<p>This blog is intended to be the first of a series of blogs in which I will examine the role of architects in Scrum. I will start with what I think that are the forgotten questions of Scrum and in next blogs I will examine how the role of the architect changes, what kind of architects are needed and and which activities architects should be doing to be successful and  valuable.</p>
<p><strong><em>The forgotten questions of  Scrum<a href="http://blog.xebia.com/wp-content/uploads/2011/01/Agile-architects1.jpg"><img class="alignright size-medium wp-image-5782" title="Chandler" src="http://blog.xebia.com/wp-content/uploads/2011/01/Agile-architects1-300x225.jpg" alt="" width="300" height="225" /></a></em></strong></p>
<p><strong><em></em></strong>In the 1960’s Alfred Chandler already wrote that the organization structure of an organization is tightly related to its strategy and based on its organizational processes.  In the optimal world according to Chandler: Structure follows processes follows strategy.<span id="more-5735"></span></p>
<p>But what if a process change occurs in the organization? Should that also not at least influence the organizational structure and the strategy? This blog is the first of an intended series of more, where I will try to find answers to this question when the new process that is implemented is a Scrum process.</p>
<p>A Scrum implementation in any organization is a clear process implementation in a specific part of the organization, namely software development. A new way of working, that starts by having business requirements and ends by having working software. A clear scope of a process. However having the statement of Chandler in mind three questions arise, which have not been given many thoughts in the Agile world:</p>
<ol>
<li>Was there a new strategy from the organization that made Scrum happen? Or will the strategy be influenced by it?<br />
Implementing a process changes without a clear justifiable goal will fail in the end. That&#8217;s why the reason Scrum is implemented in organizations should be examined carefully. Is it really there to support the business strategy towards the future or is is just a nice hobby from a well intended IT-manager?</li>
<li>Are new organization departments being formed now at the IT-side and business side?<br />
Implementing Scrum is forming self organizing teams in the organization. But what does that mean for the old functional departments? Are they ceasing to exist? Does the role of the line manager change? and how? And what about the more supporting departments like architecture, quality and operations?</li>
<li>What about the influence this process change has on processes in the organization that are linked to this Scrum process?<br />
Processes in an organization are linked together. They need each other to work optimally. A scrum process should have clearly influence on the business requirements process. But also all business processes should be able to adopt changes more quickly then ever before. Next to this the more supporting IT-processes should find their new way of working in line with the Scrum development process.</li>
</ol>
<p>In the next upcoming blogs I will first focus on the third question. Specifically I will examine the architecture processes in an organization and the way they are influenced or even incorporated in the Scrum process.  Next week more&#8230;</p>
<div name="googleone_share_1" style="position:relative;z-index:5;float: right; margin-left: 10px;"><g:plusone size="small" count="1" href="http://blog.xebia.com/2011/01/18/architects-scrum-1-the-forgotten-questions-of-scrum/"></g:plusone></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.xebia.com%2F2011%2F01%2F18%2Farchitects-scrum-1-the-forgotten-questions-of-scrum%2F&amp;title=Architects%20%26%23038%3B%20Scrum%3A%201.%20The%20forgotten%20questions%20of%20scrum." id="wpa2a_12"><img src="http://blog.xebia.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.xebia.com/2011/01/18/architects-scrum-1-the-forgotten-questions-of-scrum/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Lean Architecture Principles: Wrap up!</title>
		<link>http://blog.xebia.com/2010/08/11/lean-architecture-principles-wrap-up/</link>
		<comments>http://blog.xebia.com/2010/08/11/lean-architecture-principles-wrap-up/#comments</comments>
		<pubDate>Wed, 11 Aug 2010 18:10:02 +0000</pubDate>
		<dc:creator>Sander van den Berg</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[lean architecture]]></category>
		<category><![CDATA[agile architectuur]]></category>
		<category><![CDATA[Lean]]></category>
		<category><![CDATA[lean architectuur]]></category>

	<!-- AutoMeta Start -->
	<category></category>
	<!-- AutoMeta End -->
	
		<guid isPermaLink="false">http://blog.xebia.com/?p=5134</guid>
		<description><![CDATA[Over the last 4 month&#8217;s we have written a series of blogposts describing 11 principles of Lean Architecture. This post will be the last of the series, the wrap up post. The posts are, in order: Lean Architecture Principle #1: Always involved Lean Architecture Principle #2: Travel light Lean Architecture Principle #3: Think Big, Act [...]]]></description>
			<content:encoded><![CDATA[<p>Over the last 4 month&#8217;s we have written a series of blogposts describing 11 principles of Lean Architecture. This post will be the last of the series, the wrap up post.</p>
<p><span id="more-5134"></span></p>
<p>The posts are, in order:</p>
<ol>
<li><a style="color: #653a71; text-decoration: none; font-weight: normal;" title="Permanent Link to Lean Architecture Principle #1: Always involved" rel="bookmark" href="http://blog.xebia.com/2010/04/28/lean-architecture-principle-1-always-involved/">Lean Architecture Principle #1: Always involved</a></li>
<li><a style="color: #653a71; text-decoration: none; font-weight: normal;" title="Permanent Link to Lean Architecture Principle #2: Travel light" rel="bookmark" href="http://blog.xebia.com/2010/05/13/lean-architecture-principle-2-travel-light/">Lean Architecture Principle #2: Travel light</a></li>
<li><a style="color: #653a71; text-decoration: none; font-weight: normal;" title="Permanent Link to Lean Architecture Principle #3: Think Big, Act Small" rel="bookmark" href="http://blog.xebia.com/2010/05/20/lean-architecture-principle-3-think-big-act-small/">Lean Architecture Principle #3: Think Big, Act Small</a></li>
<li><a style="color: #653a71; text-decoration: none; font-weight: normal;" title="Permanent Link to Lean Architecture Principle #4: All Hands on Deck early on" rel="bookmark" href="http://blog.xebia.com/2010/05/27/lean-architecture-principle-4-all-hands-on-deck-early-on/">Lean Architecture Principle #4: All Hands on Deck early on</a></li>
<li><a style="color: #653a71; text-decoration: none; font-weight: normal;" title="Permanent Link to Lean Architecture Principle #5: Just in time, just enough" rel="bookmark" href="http://blog.xebia.com/2010/06/02/lean-architecture-principle-5-just-in-time-just-enough/">Lean Architecture Principle #5: Just in time, just enough</a></li>
<li><a style="color: #653a71; text-decoration: none; font-weight: normal;" title="Permanent Link to Lean Architecture Principle #6: Iterative Architecture Development" rel="bookmark" href="http://blog.xebia.com/2010/06/11/lean-architecture-principle-6-iterative-architecture-development/">Lean Architecture Principle #6: Iterative Architecture Development</a></li>
<li><a style="color: #653a71; text-decoration: none; font-weight: normal;" title="Permanent Link to Lean Architecture Principle #7: Architecture Initiated by Business Goals" rel="bookmark" href="http://blog.xebia.com/2010/06/21/architecture-initiated-by-business-goals/">Lean Architecture Principle #7: Architecture Initiated by Business Goals</a></li>
<li><a style="color: #653a71; text-decoration: none; font-weight: normal;" title="Permanent Link to Lean Architecture Principle #8: Focus on the Value Stream" rel="bookmark" href="http://blog.xebia.com/2010/07/15/lean-architecture-principle-8-focus-on-the-value-stream/">Lean Architecture Principle #8: Focus on the Value Stream</a></li>
<li><a style="color: #653a71; text-decoration: none; font-weight: normal;" title="Permanent Link to Lean Architecture Principle #9: Comprehensible over comprehensiveness" rel="bookmark" href="http://blog.xebia.com/2010/07/21/lean-architecture-principle-9-comprehensible-over-comprehensiveness/">Lean Architecture Principle #9: Comprehensible over comprehensiveness</a></li>
<li><a style="color: #653a71; text-decoration: none; font-weight: normal;" title="Permanent Link to Lean Architecture Principle #10: Architecture emerging from Projects" rel="bookmark" href="http://blog.xebia.com/2010/07/28/lean-architecture-principle-10-architecture-emerging-from-projects/">Lean Architecture Principle #10: Architecture emerging from Projects</a></li>
<li><a style="color: #653a71; text-decoration: none; font-weight: normal;" title="Permanent Link to Lean Architecture Principle #11: Freedom where possible, standardize where needed" rel="bookmark" href="http://blog.xebia.com/2010/08/10/lean-architecture-principle-11-freedom-where-possible-standardize-where-needed/">Lean Architecture Principle #11: Freedom where possible, standardize where needed</a></li>
</ol>
<p>These posts provide a complete overview of the mindset of a lean architect. The principles were derived from our daily jobs as architects and of experience of our colleagues.</p>
<p>After all this writing we became very curious. Do you recognize the added value of the principles we stated? Do you apply them in your work as an architect in an agile environment? Did you discover any principles yourself? Did you like our posts?</p>
<p>We would love to read and reply to your comments!</p>
<div name="googleone_share_1" style="position:relative;z-index:5;float: right; margin-left: 10px;"><g:plusone size="small" count="1" href="http://blog.xebia.com/2010/08/11/lean-architecture-principles-wrap-up/"></g:plusone></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.xebia.com%2F2010%2F08%2F11%2Flean-architecture-principles-wrap-up%2F&amp;title=Lean%20Architecture%20Principles%3A%20Wrap%20up%21" id="wpa2a_14"><img src="http://blog.xebia.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.xebia.com/2010/08/11/lean-architecture-principles-wrap-up/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Lean Architecture Principle #11: Freedom where possible, standardize where needed</title>
		<link>http://blog.xebia.com/2010/08/10/lean-architecture-principle-11-freedom-where-possible-standardize-where-needed/</link>
		<comments>http://blog.xebia.com/2010/08/10/lean-architecture-principle-11-freedom-where-possible-standardize-where-needed/#comments</comments>
		<pubDate>Tue, 10 Aug 2010 18:10:03 +0000</pubDate>
		<dc:creator>Denis Koelewijn</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[lean architecture]]></category>
		<category><![CDATA[agile architectuur]]></category>
		<category><![CDATA[Lean]]></category>
		<category><![CDATA[lean architectuur]]></category>

	<!-- AutoMeta Start -->
	<category></category>
	<!-- AutoMeta End -->
	
		<guid isPermaLink="false">http://blog.xebia.com/?p=5087</guid>
		<description><![CDATA[This is the eleventh and last post in a series of blog posts discussing Lean Architecture principles. Each post discusses one principle. Applying these principles results in an architecture (process) that is better connected to the business, better able to deal with change and more cohesive. The eleventh principle we discuss is called &#8220;Freedom where possible, [...]]]></description>
			<content:encoded><![CDATA[<p>This is the eleventh and last post in a series of blog posts discussing Lean Architecture principles. Each post discusses one principle. Applying these principles results in an architecture (process) that is <a href="http://blog.xebia.com/2010/04/23/the-three-cs-of-architecture/">better connected to the business, better able to deal with change and more cohesive</a>. The eleventh principle we discuss is called &#8220;<strong>Freedom where possible, standardize where needed</strong>&#8220;.<span id="more-5087"></span></p>
<p>Out of fear to lose control over projects and in an attempt to maintain cohesion on IT systems , tight controls and thus tight restrictions are often placed on IT projects. These restrictions, or standards and regulations as they are also called, have evolved historically in organizations. Ideally these standards result from <a href="http://blog.xebia.com/2010/07/28/lean-architecture-principle-10-architecture-emerging-from-projects/">best practices and experiences during projects</a>, but often the are based on personal preferences, wishes to gain some experience or other non rational reasons. Updating these standards frequently is left behind resulting in outdated standards which as a result hinder projects in creating the solutions the business needs.</p>
<p>Standards should be only concerned with reducing complexity. Suppose that your team is in the business of enterprise application integration, and your company has tens of dozens of dedicated systems for separate departments to be integrated. Your mission statement could be that this team has to solve all integration problems between all these systems, and thus that you shun no integration problem, however difficult and intricate. In a narrow perspective this would be correct, however in perspective of the larger picture solving every possible integration problem on your way is undesirable. This will result in tens of dozens of dedicated solutions with a nightmare in administration and maintenance as a result. So in this case standardization of both proces and techniques is clearly called for. </p>
<p>Examples of relevant standards in this environment are: </p>
<ul>
<li>Use JMS for asynchronous communication.</li>
<li>Use SAML2, OpenId, or some other open standard for authentication company wide.</li>
<li>Use one central directory for storing authentication information.</li>
<li>And so on&#8230;</li>
</ul>
<p>On the other hand, continuing in the field of enterprise application integration, suppose the standards and regulations in your company dictate the use of web services using the WS-* stack. A lot has been written on the pro&#8217;s and con&#8217;s of the WS-* stack in comparison to REST for instance, so this is clearly a case of a disputable standard. Now suppose you need to solve a publish and subscribe integration problem. In this case using JMS instead of WS-* or REST is a viable, and much cleaner and easier way to implement solution. Being limited to the WS-* stack in this case is clearly not in the benefit of the business, which should be the most significant factor in the end.</p>
<p>So what are the requirements for good standards ?</p>
<ul>
<li>For every standard there should be a clear connection with the business goals. If a standard is not endorsed by the business, then it probably does not help the business reaching their goals.</li>
<li>Standards should leave room for innovative idea&#8217;s. Very tight standards kill creative new idea&#8217;s not thought of at the time the standards were devised.</li>
<li>To get support and endorsement for the standards, these standards should be accompanied by the argumentation behind the standard. This makes the argument on following standards in projects much easier.</li>
<li>Standards should be continually updated to comply with the current best practices in the field.</li>
</ul>
<p>The <strong>Cohesion</strong> of the <a href="http://blog.xebia.com/2010/04/23/the-three-cs-of-architecture/">3 C&#8217;s of architecture</a> is supported by this principle due to the fact that standards are prescribed where needed, thus creating the cohesion between IT solutions where applicable, and limiting complexity. <strong>Connection</strong> is accomplished by being able to create the solutions the business really needs, within the burden of to constraining standards. </p>
<p>This was the eleventh and last in a series of blog posts on Lean Architecture principles. Next week will show a short summary of the discussed Lean Architecture principles.</p>
<div name="googleone_share_1" style="position:relative;z-index:5;float: right; margin-left: 10px;"><g:plusone size="small" count="1" href="http://blog.xebia.com/2010/08/10/lean-architecture-principle-11-freedom-where-possible-standardize-where-needed/"></g:plusone></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.xebia.com%2F2010%2F08%2F10%2Flean-architecture-principle-11-freedom-where-possible-standardize-where-needed%2F&amp;title=Lean%20Architecture%20Principle%20%2311%3A%20Freedom%20where%20possible%2C%20standardize%20where%20needed" id="wpa2a_16"><img src="http://blog.xebia.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.xebia.com/2010/08/10/lean-architecture-principle-11-freedom-where-possible-standardize-where-needed/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Lean Architecture Principle #10: Architecture emerging from Projects</title>
		<link>http://blog.xebia.com/2010/07/28/lean-architecture-principle-10-architecture-emerging-from-projects/</link>
		<comments>http://blog.xebia.com/2010/07/28/lean-architecture-principle-10-architecture-emerging-from-projects/#comments</comments>
		<pubDate>Wed, 28 Jul 2010 13:07:49 +0000</pubDate>
		<dc:creator>Gero Vermaas</dc:creator>
		<br />
<b>Warning</b>:  Invalid argument supplied for foreach() in <b>/home/blog.xebia.com/www/wp-content/plugins/autometa/autometa.php</b> on line <b>303</b><br />
		<category><![CDATA[Agile]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[lean architecture]]></category>
		<category><![CDATA[agile architectuur]]></category>
		<category><![CDATA[Lean]]></category>
		<category><![CDATA[lean architectuur]]></category>

	<!-- AutoMeta Start -->
	<!-- AutoMeta End -->
	
		<guid isPermaLink="false">http://blog.xebia.com/?p=4971</guid>
		<description><![CDATA[This is the tenth post in a series of blog posts discussing Lean Architecture principles. Each post discusses one principle. Applying these principles results in an architecture (process) that is better connected to the business, better able to deal with change and more cohesive. The tenth principle we discuss is called &#8220;Architecture emerging from Projects&#8220;. One [...]]]></description>
			<content:encoded><![CDATA[<p>This is the tenth post in a series of blog posts discussing Lean Architecture principles. Each post discusses one principle. Applying these principles results in an architecture (process) that is <a href="http://blog.xebia.com/2010/04/23/the-three-cs-of-architecture/">better connected to the business, better able to deal with change and more cohesive</a>. The tenth principle we discuss is called &#8220;<strong>Architecture emerging from Projects</strong>&#8220;.<span id="more-4971"></span></p>
<p>One of the earlier principles was &#8220;<a href="http://blog.xebia.com/2010/06/11/lean-architecture-principle-6-iterative-architecture-development/">Incremental Development of Architecture</a>&#8220;.  This explained the forward thinking part of our Lean Architecture mindset. Of course not as big up front design, but &#8220;<a href="http://blog.xebia.com/2010/06/02/lean-architecture-principle-5-just-in-time-just-enough/">Just in time, just enough</a>&#8220;. In addition to this it is important learn from projects teams, operational maintenance, business and other stakeholders how architectural decisions work out during development and when the systems are in operation. The &#8220;<strong>Architecture emerging from Projects</strong>&#8221; principle address this important feedback loop. The idea is that there must be a constant feedback loop from the projects to the architecture role. The lessons learned are important input for next architectural decisions and other projects. In addition, these lessons may trigger adjustment of earlier decisions, guidelines or refinement of the architecture vision.</p>
<p>Not every lesson learned is related to an earlier architectural decision, guideline or vision. Project teams will encounter and solve problems that have not been foreseen as they move along. These lessons also have to be fed back to the rest of the organization and architects must cater for this spreading of the knowledge (and learn from it). The &#8220;<a href="http://blog.xebia.com/2010/04/28/lean-architecture-principle-1-always-involved/">Always Involved</a>&#8221; principle helps to capture these lessons and when applied correct it facilitates both the harvesting of lessons learned and spreading of the information to other stakeholders.</p>
<p>The <strong>Cohesion</strong> of the <a href="http://blog.xebia.com/2010/04/23/the-three-cs-of-architecture/">3 C&#8217;s of architecture</a> is supported by this principle due to the constant reality check and alignment that is  facilitated by the &#8220;Architecture emerging from Projects&#8221; principle. Parallel running projects will learn from each other and the architecture stays in-sync with reality. The architects are aware what is being realized, what can be improved and can immediately feed this back into other projects. The short feedback loop also increases <strong>Changeability</strong>. It is much easier to change or revert a decision shortly after it is taken, compared to when significant time has past and lot&#8217;s of other decisions already assumed certain starting points.</p>
<p>This was the tenth in a series of blog posts on Lean Architecture principles, the next one will follow in about a week.</p>
<div name="googleone_share_1" style="position:relative;z-index:5;float: right; margin-left: 10px;"><g:plusone size="small" count="1" href="http://blog.xebia.com/2010/07/28/lean-architecture-principle-10-architecture-emerging-from-projects/"></g:plusone></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.xebia.com%2F2010%2F07%2F28%2Flean-architecture-principle-10-architecture-emerging-from-projects%2F&amp;title=Lean%20Architecture%20Principle%20%2310%3A%20Architecture%20emerging%20from%20Projects" id="wpa2a_18"><img src="http://blog.xebia.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.xebia.com/2010/07/28/lean-architecture-principle-10-architecture-emerging-from-projects/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Lean Architecture Principle #9: Comprehensible over comprehensiveness</title>
		<link>http://blog.xebia.com/2010/07/21/lean-architecture-principle-9-comprehensible-over-comprehensiveness/</link>
		<comments>http://blog.xebia.com/2010/07/21/lean-architecture-principle-9-comprehensible-over-comprehensiveness/#comments</comments>
		<pubDate>Wed, 21 Jul 2010 18:02:20 +0000</pubDate>
		<dc:creator>Sander van den Berg</dc:creator>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Architecture]]></category>
		<category><![CDATA[lean architecture]]></category>
		<category><![CDATA[agile architectuur]]></category>
		<category><![CDATA[lean architectuur]]></category>

	<!-- AutoMeta Start -->
	<category></category>
	<!-- AutoMeta End -->
	
		<guid isPermaLink="false">http://blog.xebia.com/?p=5020</guid>
		<description><![CDATA[This is the ninth post in a series of blog posts discussing Lean Architecture principles. Each post discusses one principle. Applying these principles results in an architecture (process) that is better connected to the business, better able to deal with change and more cohesive. The ninth principle we discuss is &#8220;Comprehensible over Comprehensiveness&#8221;. Documentation is important in architecture. [...]]]></description>
			<content:encoded><![CDATA[<p>This is the ninth post in a series of blog posts discussing Lean Architecture principles. Each post discusses one principle. Applying these principles results in an architecture (process) that is better connected to the business, better able to deal with change and more cohesive. The ninth principle we<br />
discuss is &#8220;Comprehensible over Comprehensiveness&#8221;.</p>
<p><span id="more-5020"></span></p>
<p>Documentation is important in architecture. Architecture is primarily a long-term thing. Even though in a lean-style architecture the focus is on adding value as early as posible, the results of our actions last for the lifetime of the architecture itself. This usually spans years. If we take a step back and reflect on architecture and value creation, we can ask ourself why we write documentation. The prime objective of writing documentation is communication. We want to communicate why we made certain choices, why we standardized on a certain infrastructure. We write things down because someday, we will no longer be there to communicate these things! The goal of (architectural-)documentation is to create some kind of &#8220;organisational memory&#8221;. Documentation describes the knowledge that should be retained within<br />
an organisation.</p>
<p>The focus of documentation is communication. Communication is about delivering a message to a public. Each public has their own way of approaching. To create documentation that will actually be read, we have to take the audience into account. Documentation needs to be comprehensible for the targeted audience, or it will become TAGRI (They Aren&#8217;t Gonna Read It) documentation (thanks to<br />
Scott Ambler). For some audiences it may be important to be as comprehensive as possible, however, just like the agile manifesto, we prefer comprehensible over comprehensiveness.</p>
<p>Documentation should also be just good enough, see our earlier principles of &#8221;<a href="http://blog.xebia.com/2010/06/02/lean-architecture-principle-5-just-in-time-just-enough/">Just in time, just enough</a>&#8221; and &#8220;<a href="http://blog.xebia.com/2010/05/13/lean-architecture-principle-2-travel-light/">Travel Light</a>&#8220;. Any architectural document should provide just enough content to &#8220;get the job done&#8221; and nothing more. The hard part is determining what is good enough. Also, artifacts will become less<br />
&#8220;good enough&#8221; over time. This implies that artifacts are also living things, that should be updated and expanded incrementally.</p>
<p>For example, in my not to recent past, I worked in a software company that wrote specifications for (software)components. These specifications were written in a slightly formalized form of natural language. Naturally this introduced a lack of clarity, leading to questions and new versions of the<br />
specification. In order to prevent this tedious and time-consuming feedback-loop, the descission was made to create new specifications using UML and OCL in a way as formal as possible. This led to very detailed specifications, almost mathematically sound and complete. However, these specifications<br />
were meant to be used in tenders. The audience of the specifications were accountmanagers, businessanalist and other business focused people. These people had little to none experience using and reading formal languages, therefore the specifcation was completely unusable. Had the specification been comprehensible, communication would have been easier.</p>
<p>So how does this match the <a href="http://blog.xebia.com/2010/04/23/the-three-cs-of-architecture/">3 C&#8217;s of architecture</a>? We obviously gain better connection to the business if we communicate in a manner that is comprehensible.This was the ninth post in a series of blog posts on Lean Architecture principles, the next one will follow in about a week.</p>
<div name="googleone_share_1" style="position:relative;z-index:5;float: right; margin-left: 10px;"><g:plusone size="small" count="1" href="http://blog.xebia.com/2010/07/21/lean-architecture-principle-9-comprehensible-over-comprehensiveness/"></g:plusone></div><p><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fblog.xebia.com%2F2010%2F07%2F21%2Flean-architecture-principle-9-comprehensible-over-comprehensiveness%2F&amp;title=Lean%20Architecture%20Principle%20%239%3A%20Comprehensible%20over%20comprehensiveness" id="wpa2a_20"><img src="http://blog.xebia.com/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://blog.xebia.com/2010/07/21/lean-architecture-principle-9-comprehensible-over-comprehensiveness/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
<!-- This Quick Cache file was built for (  blog.xebia.com/tag/architecture/feed/ ) in 1.22895 seconds, on Feb 9th, 2012 at 4:42 pm UTC. -->
<!-- This Quick Cache file will automatically expire ( and be re-built automatically ) on Feb 9th, 2012 at 5:42 pm UTC -->
