<?xml version="1.0"?>
<rss version="2.0">
<channel>
  <title>Coding the Architecture - role tag</title>
  <link>http://www.codingthearchitecture.com/tags/role/</link>
  <description>Software architecture for developers</description>
  <language>en</language>
  <copyright>Coding the Architecture</copyright>
  <lastBuildDate>Mon, 21 May 2012 09:41:00 GMT</lastBuildDate>
  <generator>Pebble (http://pebble.sourceforge.net)</generator>
  <docs>http://backend.userland.com/rss</docs>
  
  
  <item>
    <title>Is VM size an architectural smell?</title>
    <link>http://www.codingthearchitecture.com/2012/05/16/is_vm_size_an_architectural_smell.html</link>
    
      
        <description>
          &lt;p&gt;
A couple of months ago I went to an excellent set of talks at &lt;a href=&#034;http://www.meetup.com/Londonjavacommunity/events/53477082/&#034;&gt;LJC night at QCon&lt;/a&gt;. This not only inspired my entry on &lt;a href=&#034;http://www.codingthearchitecture.com/2012/03/09/modelling_process_and_staleness.html&#034;&gt;staleness&lt;/a&gt; but also made me think about some more architectural smells.
&lt;/p&gt;&lt;p&gt;
Gil Tene from Azul spoke about the maximum size of VMs we all use. A quick show of hands indicated that the maximum size of VM heap memory most of us ran was 2-4GB. Gil argued, quite convincingly, that this was due to legacy issues with garbage collection but new techniques should make this limit redundant. 
&lt;/p&gt;&lt;p&gt;
I sort of agree... However, even if all the issues surrounding garbage collecting large VMs is solved, the 2-4GB limit is still a useful one.
&lt;/p&gt;&lt;p&gt;
In &lt;a href=&#034;http://www.codingthearchitecture.com/2011/10/02/is_caching_an_architectural_smell.html&#034;&gt;Architectural Smells&lt;/a&gt; I argued that there are architectural smells in the same way that there are code smells (aspects of a system that indicate but not guarantee a possible issue) and the example I gave was caching. I also think that VM size is an architectural smell.
&lt;/p&gt;&lt;p&gt;
When designing complex systems one of the most common design guidelines is to split differing responsibilities into specific services. Non-functional requirements may complicate this but most of us try to avoid having all functionality in a single service. Certain services are obviously distinct and can be isolated. However it&#039;s easy for functionality creep to result in a service gaining a lot of responsibilities and this often results in a larger run-time footprint.
&lt;/p&gt;&lt;p&gt;
During testing this shows itself as a service requiring a large VM - certainly in comparison to other services. I view this as an architectural smell and analyse the service to see if it should be split up. (Easier if you have some form of &lt;a href=&#034;http://leanpub.com/software-architecture-for-developers&#034;&gt;lightweight and iterative design process.&lt;/a&gt;)
&lt;/p&gt;&lt;p&gt;
This is very similar to the code smell of &lt;a href=&#034;http://en.wikipedia.org/wiki/Code_smell&#034;&gt;long method&lt;/a&gt;. It&#039;s rare that your code size or service size starts out by being too large but tends to happen over time. This is a good reason why an architect can&#039;t just &lt;a href=&#034;http://www.codingthearchitecture.com/2011/04/13/software_development_is_not_a_relay_sport.html&#034;&gt;throw it over the wall&lt;/a&gt; but needs to stay involved with the project. As developers add code to the system the design might need to change.
&lt;/p&gt;&lt;p&gt;
Whether you take an absolute size or relative size will depend on your system in question. Personally, I get concerned when a service is larger than 1GB unless its prime purpose is data storage and even then the data should probably be clustered across services rather than in a single block - but that&#039;s an argument for a different occasion.
&lt;/p&gt;

        </description>
      
      
    
    
    
    <category>What is the the role of a software architect?</category>
    
    <category>How do you deliver software architecture?</category>
    
    <comments>http://www.codingthearchitecture.com/2012/05/16/is_vm_size_an_architectural_smell.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2012/05/16/is_vm_size_an_architectural_smell.html</guid>
    <pubDate>Wed, 16 May 2012 08:01:04 GMT</pubDate>
  </item>
  
  <item>
    <title>Data Integrity and System Design</title>
    <link>http://www.codingthearchitecture.com/2011/04/15/data_integrity_and_system_design.html</link>
    
      
        <description>
          &lt;p&gt;Having been involved in several upgrade projects over the last few years, one thing I&#039;ve often noticed is the poor quality of data that can be present in a large and long running system. This can present problems for upgrading and usually means that you have to spend quite some time fixing the data first.
 
&lt;p&gt;Upgrading is difficult and causes regression tests to fail as:
 
&lt;li&gt; The new system may have more data checking and refuse the old data.
&lt;li&gt; The new system may be more precise e.g. not rounding a number, taking a sign into account etc.
&lt;li&gt; The new system may be using data that was not used before e.g. data entry staff not bothering to enter a product&#039;s weight into a form as &#039;it is never used&#039;.
&lt;li&gt; Years of copy and paste can leave a vast amount of junk that fail consistency checks.
 
&lt;p&gt;After you have corrected the data for upgrade, the original system has much higher quality data and other issues and inconsistencies have been solved. In a recent system we also saw large performance improvements due to duplicate and junk data being removed. On another system we saved the operations staff may hours work a week as the data improvements meant a large number of post report corrections were no longer needed.
 
&lt;p&gt;So why isn&#039;t this analysis done on a regular basis to help keep a system healthy? The main reason is simply that it&#039;s just too hard for the operations staff to do. Therefore when you&#039;re designing a system you should take this into account and enable these kinds of maintenance tasks. This involves reporting and having tools that can correct sets of problematic data.
 
&lt;p&gt;Some things to consider:
 
&lt;li&gt; How easy is it to identity and delete orphaned data i.e. If you can&#039;t get to some data is it required?
&lt;li&gt; Can a user identity data that has not been used for a long time? Can they then archive it?
&lt;li&gt; Can you identify identical or similar data? A common example is user information that differs only by capitalisation e.g. an address.
&lt;li&gt; Can the user run arbitrary consistency checks that go beyond the database rules? E.g. I&#039;ve recently written a tool to allow an operations manager to run xpaths over data to check for bad bookings.
&lt;li&gt; Can the user bulk load sets of missing or corrected data?
 
&lt;p&gt;Please don&#039;t rely on database tools to do this as your operational staff probably won&#039;t know how to use them and your DBAs don&#039;t understand the business domain to analyse the data. You need tools at the appropriate level for the appropriate people and consider the complete lifecycle of your product.
        </description>
      
      
    
    
    
    <category>What is the the role of a software architect?</category>
    
    <comments>http://www.codingthearchitecture.com/2011/04/15/data_integrity_and_system_design.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2011/04/15/data_integrity_and_system_design.html</guid>
    <pubDate>Fri, 15 Apr 2011 14:29:43 GMT</pubDate>
  </item>
  
  <item>
    <title>Software development is not a relay sport</title>
    <link>http://www.codingthearchitecture.com/2011/04/13/software_development_is_not_a_relay_sport.html</link>
    
      
        <description>
          &lt;p&gt;
Software teams that are smaller and/or agile tend to be staffed with people that are generalised specialists; people that have a core specialism along with more general knowledge and experience. In an ideal world, these cross-discipline team members would work together to run and deliver a software project, undertaking everything from requirements capture and architecture through to coding and deployment. Although many software teams strive to be self-organising, in the real world they tend to be larger, more chaotic and staffed only with specialists. These teams, therefore, tend to need and have somebody in a technical leadership role.
&lt;/p&gt;

&lt;p&gt;
There are a lot of people out there calling themselves &#034;solution architects&#034; or &#034;technical architects&#034; (particularly in larger organisations) who define a software architecture and then throw their solutions over the wall to a separate design and development team. What&#039;s worse is that often nobody takes ownership of the architecture, and the original architect takes only a cursory glimpse at the progress from time to time.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&#034;http://www.codingthearchitecture.com/pages/book/software-development-is-not-a-relay-sport.html&#034; target=&#034;_blank&#034;&gt;Read the full essay...&lt;/a&gt;
&lt;/p&gt;
        </description>
      
      
    
    
    
    <category>What is the the role of a software architect?</category>
    
    <comments>http://www.codingthearchitecture.com/2011/04/13/software_development_is_not_a_relay_sport.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2011/04/13/software_development_is_not_a_relay_sport.html</guid>
    <pubDate>Wed, 13 Apr 2011 21:20:58 GMT</pubDate>
  </item>
  
  <item>
    <title>Software architecture introduces control</title>
    <link>http://www.codingthearchitecture.com/2010/11/10/software_architecture_introduces_control.html</link>
    
      
        <description>
          &lt;p&gt;
A while back I wrote about how software architecture introduces &lt;a href=&#034;http://www.codingthearchitecture.com/2010/08/02/structure_and_guidelines_consistency_and_clarity.html&#034; target=&#034;_blank&#034;&gt;structure and guidelines, consistency and clarity&lt;/a&gt; into software projects. When discussing this on the training course over the past few months, it&#039;s become clear to me that software architecture is also, in reality, about introducing control.
&lt;/p&gt;

&lt;div align=&#034;center&#034;&gt;
&lt;img src=&#034;http://www.codingthearchitecture.com/images/20101110-control.png&#034; alt=&#034;Software architecture introduces control&#034; /&gt;
&lt;/div&gt;

&lt;p&gt;
I interviewed a team leader today and when the conversation turned towards quality and specifically quality assurance, I was told that he was fortunate to work with a team that were very competent. It&#039;s a fair answer, but my follow-up was &#034;how do you know that your team members are competent?&#034;.
&lt;/p&gt;

&lt;p&gt;
For me, software architecture is about reducing the number of assumptions that are typically made on software projects, thereby reducing the number of ugly surprises that bite you further down the line. For most projects, benefits can probably be realised by introducing control and restraint, for example, to stop team members going off on tangents. Scrum does this through the introduction of sprint backlogs so that the team has focus on what they need to deliver during any given iteration. Likewise with software architecture; you need some degree of control in order to introduce structure and guidelines, consistency and clarity. For example, you can&#039;t have people writing database access code in your view components if you&#039;ve designed an n-tier application in order to support some of your key non-functionals. Ditto things like ensuring that all of your components are stateless so that they can be scaled-out to cope with additional load. It&#039;s also about simply having a clear and consistent structure to your codebase; appropriately organising your code into packages, namespaces, components, layers, etc.
&lt;/p&gt;

&lt;h3&gt;How much control do you need?&lt;/h3&gt;
&lt;p&gt;
The real question that needs to be answered on any given software project is &lt;i&gt;how much&lt;/i&gt; control needs to be introduced? At one end of the scale you have the dictatorial approach where nobody can make a decision for themselves versus the other end of the scale where nobody is getting any guidance whatsoever. I&#039;ve seen both in real-world software projects and I&#039;ve taken over projects where everybody on the team was basically left to their own devices. Introducing control on this sort of project is really really hard work but it needs to be done if the team are to have any chance of delivering a coherent piece of software that satisifies all of the original drivers.
&lt;/p&gt;

&lt;p&gt;
So how much control do you introduce? My own answer is that it depends on a number of things...
&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Are the team experienced?&lt;/li&gt;
&lt;li&gt;Have they worked together before?&lt;/li&gt;
&lt;li&gt;Are the project requirements complex?&lt;/li&gt;
&lt;li&gt;Are there major constraints that need to be taken into account?&lt;/li&gt;
&lt;li&gt;What sort of discussions are happening on a daily basis?&lt;/li&gt;
&lt;li&gt;etc&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
I&#039;ve also noticed that different countries and cultures place different values on control. Some value control and the restraint that it brings whereas others value empowerment and motivation. There&#039;s no universally correct answer, but it is worth thinking about how much control is right for your own software project.
&lt;/p&gt;
        </description>
      
      
    
    
    
    <category>What is the the role of a software architect?</category>
    
    <category>How do you deliver software architecture?</category>
    
    <comments>http://www.codingthearchitecture.com/2010/11/10/software_architecture_introduces_control.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2010/11/10/software_architecture_introduces_control.html</guid>
    <pubDate>Wed, 10 Nov 2010 21:08:13 GMT</pubDate>
  </item>
  
  <item>
    <title>Speaking at the Software Architect 2010 conference</title>
    <link>http://www.codingthearchitecture.com/2010/09/30/speaking_at_the_software_architect_2010_conference.html</link>
    
      
        <description>
          &lt;p&gt;
&lt;img src=&#034;http://www.codingthearchitecture.com/images/sa2010-speaker.jpg&#034; alt=&#034;I&#039;m speaking at Software Architect 2010&#034; align=&#034;right&#034; style=&#034;padding: 0px 0px 8px 8px;&#034; /&gt;Just a quick post to say that I&#039;m speaking at the &lt;a href=&#034;http://www.software-architect.co.uk&#034; target=&#034;_blank&#034;&gt;Software Architect 2010 conference&lt;/a&gt; in London next month. I&#039;m running a pre-conference workshop, a post-conference workshop and two technical breakout sessions as follows.
&lt;/p&gt;

&lt;blockquote&gt;
&lt;h3&gt;Software Architecture in a Day (pre-conference workshop)&lt;/h3&gt;
&lt;p&gt;
This one-day workshop is an interactive introduction to software architecture and what it means to be a software architect. It&#039;s aimed at software developers who are looking towards their first software architect role, developers who want to become more architecturally aware and software architects that are new to the role. We&#039;ll be asking and answering the following questions:
&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;What is software architecture?&lt;/li&gt;
&lt;li&gt;What is the role of a software architect?&lt;/li&gt;
&lt;li&gt;How do you define software architecture?&lt;/li&gt;
&lt;li&gt;How do you share software architecture?&lt;/li&gt;
&lt;li&gt;How do you deliver software architecture?&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;Where do you start?&lt;/h3&gt;
&lt;p&gt;
One of the hardest things about software development is being asked to come up with a design when all you&#039;re given is a set of requirements and a blank sheet of paper. Many software teams will dive straight into the code and while this can initially be very productive, the slippery slope of constant refactoring is awaiting those teams that haven&#039;t quite found a design that works. Often, a little forethought is all that&#039;s needed to get the development process heading in the right direction. So where do you start?
&lt;/p&gt;

&lt;h3&gt;How do you design for non-functional requirements?&lt;/h3&gt;
&lt;p&gt;
You may have heard people talking about &#034;non-functional requirements&#034;, mentioning things like performance, scalability, availability, security, flexibility and so on. What do you do if you&#039;re asked to design software that exhibits these qualities and furthermore, how do you do it in a pragmatic way? Come along to find out about some of the approaches that you can adopt and some of the trade-offs you&#039;ll need to make.
&lt;/p&gt;

&lt;h3&gt;Boxes &amp; Lines (post-conference workshop)&lt;/h3&gt;
&lt;p&gt;
Talking about software architecture will get you so far, but in reality it&#039;s all about experience and that&#039;s exactly what this workshop offers. Given a set of functional requirements, you&#039;ll be asked to identify the other architectural drivers before doing some design, choosing some technologies and drawing some boxes and lines. Join us if you want to know where to start with designing software and how to go about the software architecture definition process in a lightweight, structured and pragmatic way.
&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;
Feel free to stop me and say hello if you&#039;re at the conference; should be a great event.
&lt;/p&gt;
        </description>
      
      
    
    
    
    <category>How do you share software architecture?</category>
    
    <category>How do you define software architecture?</category>
    
    <category>What is the the role of a software architect?</category>
    
    <category>What is software architecture?</category>
    
    <category>How do you deliver software architecture?</category>
    
    <comments>http://www.codingthearchitecture.com/2010/09/30/speaking_at_the_software_architect_2010_conference.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2010/09/30/speaking_at_the_software_architect_2010_conference.html</guid>
    <pubDate>Thu, 30 Sep 2010 19:12:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Pitfalls for software architects</title>
    <link>http://www.codingthearchitecture.com/2009/03/30/pitfalls_for_software_architects.html</link>
    
      
        <description>
          &lt;p&gt;
Thanks to everybody that came along to my &#034;Pitfalls for new software architects&#034; talk at DevWeek 2009 last week ... I hope you found it a useful look at some of the traps that I&#039;ve seen people (including myself!) fall into over the years. The pitfalls are structured into a number of different areas as shown in the diagram below.
&lt;/p&gt;

&lt;div align=&#034;center&#034;&gt;
&lt;img src=&#034;http://www.codingthearchitecture.com/images/book/role-1.png&#034; alt=&#034;Role of a hands-on software architect&#034; /&gt;
&lt;/div&gt;

&lt;p&gt;
Each of these areas is part of our view of &lt;a href=&#034;http://www.codingthearchitecture.com/pages/book/role.html&#034;&gt;what a hands-on software architect should do&lt;/a&gt;, and the talk itself compliments a session I delivered at Software Architect 2008 called &#034;Why software projects fail&#034;. You can download the slides for both sessions below.
&lt;/p&gt;

&lt;div align=&#034;center&#034;&gt;
&lt;a href=&#034;http://static.codingthearchitecture.com/presentations/dw2009-pitfalls-for-new-software-architects.pdf&#034;&gt;&lt;img src=&#034;http://www.codingthearchitecture.com/images/dw2009-pfnsa-thumbnails.png&#034; alt=&#034;Pitfalls for new software architects&#034; border=&#034;0&#034; /&gt;&lt;/a&gt;
&lt;br/&gt;
&lt;a href=&#034;http://static.codingthearchitecture.com/presentations/dw2009-pitfalls-for-new-software-architects.pdf&#034;&gt;Pitfalls for new software architects&lt;/a&gt; (PDF, ~4MB)
&lt;br /&gt;&lt;br /&gt;
&lt;/div&gt;

&lt;div align=&#034;center&#034;&gt;
&lt;a href=&#034;http://static.codingthearchitecture.com/presentations/sa2008-why-software-projects-fail.pdf&#034;&gt;&lt;img src=&#034;http://www.codingthearchitecture.com/images/sa2008-wspf-thumbnails.png&#034; alt=&#034;Why software projects fail&#034; border=&#034;0&#034; /&gt;&lt;/a&gt;
&lt;br/&gt;
&lt;a href=&#034;http://static.codingthearchitecture.com/presentations/sa2008-why-software-projects-fail.pdf&#034;&gt;Why software projects fail&lt;/a&gt; (PDF, ~6MB)
&lt;/div&gt;
        </description>
      
      
    
    
    
    <comments>http://www.codingthearchitecture.com/2009/03/30/pitfalls_for_software_architects.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2009/03/30/pitfalls_for_software_architects.html</guid>
    <pubDate>Mon, 30 Mar 2009 08:50:00 GMT</pubDate>
  </item>
  
  <item>
    <title>The role of the software architect (video, part 1)</title>
    <link>http://www.codingthearchitecture.com/2009/03/09/the_role_of_the_software_architect_video_part_1.html</link>
    
      
        <description>
          &lt;p&gt;
&lt;a href=&#034;http://www.novantus.co.uk&#034;&gt;Novantus&lt;/a&gt; (a Jersey based cinematic/media production company) and &lt;a href=&#034;http://www.simonbrown.je/blog&#034;&gt;I&lt;/a&gt; have recorded a version of my recent BCS Jersey presentation entitled &lt;a href=&#034;http://www.simonbrown.je/blog/2008/11/26/download_the_slides_from_my_bcs_jersey_presentation.html&#034;&gt;The role of the software architect in successful projects&lt;/a&gt;. This video, part 1 in a series of webisodes, introduces the session by presenting some of the reasons behind software project failure and why software architects typically have a bad reputation.  
&lt;/p&gt;

&lt;div align=&#034;center&#034;&gt;
&lt;object width=&#034;480&#034; height=&#034;295&#034;&gt;&lt;param name=&#034;movie&#034; value=&#034;http://www.youtube.com/v/lFGIVHeQPbg&amp;hl=en&amp;fs=1&#034;&gt;&lt;/param&gt;&lt;param name=&#034;allowFullScreen&#034; value=&#034;true&#034;&gt;&lt;/param&gt;&lt;param name=&#034;allowscriptaccess&#034; value=&#034;always&#034;&gt;&lt;/param&gt;&lt;embed src=&#034;http://www.youtube.com/v/lFGIVHeQPbg&amp;hl=en&amp;fs=1&#034; type=&#034;application/x-shockwave-flash&#034; allowscriptaccess=&#034;always&#034; allowfullscreen=&#034;true&#034; width=&#034;480&#034; height=&#034;295&#034;&gt;&lt;/embed&gt;&lt;/object&gt;
&lt;/div&gt;

&lt;p&gt;
p.s. this presentation is more or less the same as &lt;a href=&#034;http://www.codingthearchitecture.com/2008/06/11/slides_from_our_software_architect_2008_sessions.html&#034;&gt;Why Software Projects Fail&lt;/a&gt;, which I delivered last year at the &#034;Software Architect 2008&#034; conference.
&lt;/p&gt;
        </description>
      
      
    
    
    
    <comments>http://www.codingthearchitecture.com/2009/03/09/the_role_of_the_software_architect_video_part_1.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2009/03/09/the_role_of_the_software_architect_video_part_1.html</guid>
    <pubDate>Mon, 09 Mar 2009 09:49:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Why aren&#039;t software architects held accountable?</title>
    <link>http://www.codingthearchitecture.com/2009/03/03/why_arent_software_architects_held_accountable.html</link>
    
      
        <description>
          &lt;p&gt;
Mike Walker has an interesting post comparing the architect roles across the building and software industries, entitled &lt;a href=&#034;http://blogs.msdn.com/mikewalker/archive/2009/03/02/the-nemesis-of-software-architecture.aspx&#034;&gt;The Nemesis of Software Architecture&lt;/a&gt;. Comparisons aside, there&#039;s one point that I really wanted to pick up on.
&lt;/p&gt;

&lt;blockquote&gt;
4. Accountability Inherent - Building architects are accountable for there work when their specification fail while software architects are not. An example of this is the case of an architect stealing a design for the Freedom Tower or the example of MIT that sued well known architect for defective structures. There is clear accountability whereas I still haven&#039;t heard of someone getting sued for copy &amp; paste...
&lt;/blockquote&gt;

&lt;p&gt;
I&#039;m a big proponent of software architects having the &lt;a href=&#034;http://www.codingthearchitecture.com/tags/responsibility/&#034;&gt;responsibility&lt;/a&gt; and &lt;a href=&#034;http://www.codingthearchitecture.com/tags/authority/&#034;&gt;authority&lt;/a&gt; to ensure that the projects they are working on come to a successful conclusion, but it does raise an interesting question of why project sponsors don&#039;t typically hold software architects accountable. Perhaps it&#039;s because the dynamics and roles of everybody on the project team aren&#039;t well understood in most cases. For example, what&#039;s the working relationship between a project manager and an architect; or the developers and an architect? Or maybe it&#039;s because our agile approaches tend to favour sharing the responsibility throughout the entire team, which can end up with the project lacking a single coherent and consistent direction.
&lt;/p&gt;

&lt;p&gt;
In order to address this, maybe we need to go back to basics. Why aren&#039;t software architects explicitly given accountability at the outset of a project and what incentive is there for them to accept it?
&lt;/p&gt;
        </description>
      
      
    
    
    
    <category>What is the the role of a software architect?</category>
    
    <comments>http://www.codingthearchitecture.com/2009/03/03/why_arent_software_architects_held_accountable.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2009/03/03/why_arent_software_architects_held_accountable.html</guid>
    <pubDate>Tue, 03 Mar 2009 10:14:00 GMT</pubDate>
  </item>
  
  <item>
    <title>The role of the Software Architect in successful projects</title>
    <link>http://www.codingthearchitecture.com/2008/10/30/the_role_of_the_software_architect_in_successful_projects.html</link>
    
      
        <description>
          &lt;p&gt;
Admittedly the &#034;Coding the Architecture&#034; audience for this is probably kind of small (hi Dave!), but I&#039;m presenting a session at the Jersey BCS in a few weeks entitled &#034;The role of the Software Architect in successful projects&#034;.
&lt;/p&gt;

&lt;blockquote&gt;
The IT industry has a love/hate relationship with the Software Architect role, with many organisations dismissing it because of their negative experiences of architects that dictate from ivory towers and aren&#039;t engaged with the actual task of building working software. This reputation is damaging the IT industry and inhibiting project success.
&lt;br /&gt;&lt;br /&gt;
Things need to change. This session looks at some of the reasons why software projects fail and how a hands-on software architect can be invaluable in addressing these issues to drive the project to a successful conclusion. Software architects are here to help, not to hinder.
&lt;/blockquote&gt;

&lt;p&gt;
The session is aimed at anyone undertaking software development projects; including developers, architects and IT managers. It will take place on 
Thursday the 13th of November 2008, 12:00 in the Ouless Room at Jersey Museum. E-mail jersey.events at bcs.org to reserve your place.

&lt;/p&gt;

&lt;p&gt;
p.s. if this sounds familiar, it&#039;s because &lt;a href=&#034;http://www.codingthearchitecture.com/2008/06/11/slides_from_our_software_architect_2008_sessions.html&#034;&gt;it is&lt;/a&gt;
&lt;/p&gt;
        </description>
      
      
    
    
    
    <comments>http://www.codingthearchitecture.com/2008/10/30/the_role_of_the_software_architect_in_successful_projects.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2008/10/30/the_role_of_the_software_architect_in_successful_projects.html</guid>
    <pubDate>Thu, 30 Oct 2008 21:26:00 GMT</pubDate>
  </item>
  
  <item>
    <title>The role of a hands-on software architect</title>
    <link>http://www.codingthearchitecture.com/2008/09/10/the_role_of_a_hands_on_software_architect.html</link>
    
      
        <description>
          &lt;p&gt;
Becoming a software architect isn&#039;t something that simply happens overnight or with a promotion. It&#039;s a role, not a rank. It&#039;s an evolutionary process where you&#039;ll gradually gain the experience and confidence that you need to undertake the role. While the term &#034;software developer&#034; is fairly well understood, &#034;software architect&#034; isn&#039;t. This essay looks at the role I believe a good hands-on software architect should play on any software project.
&lt;/p&gt;

&lt;p&gt;
&lt;a href=&#034;http://www.codingthearchitecture.com/pages/book/role.html&#034;&gt;Read the full essay&lt;/a&gt; in &lt;a href=&#034;http://www.codingthearchitecture.com/pages/book/index.html&#034;&gt;our book&lt;/a&gt;.
&lt;/p&gt;
        </description>
      
      
    
    
    
    <category>What is the the role of a software architect?</category>
    
    <comments>http://www.codingthearchitecture.com/2008/09/10/the_role_of_a_hands_on_software_architect.html#comments</comments>
    <guid isPermaLink="true">http://www.codingthearchitecture.com/2008/09/10/the_role_of_a_hands_on_software_architect.html</guid>
    <pubDate>Wed, 10 Sep 2008 17:33:00 GMT</pubDate>
  </item>
  
  </channel>
</rss>

