By Udayan Banerjee | Article Rating: |
|
March 28, 2012 10:00 AM EDT | Reads: |
3,389 |

Can an organization have an Enterprise Architecture practice and also implement Agile development methodologies?
Your reaction is probably one of the following:
- Why should it be a challenge?
- Co-existence would be impossible.
- There will be difficulties but it can be done.
Why should this be a challenge?
After all, EA is agnostic to software development methodologies. Irrespective of which EA definition is accepted, no direct link with any software development methodology exists. Therefore, you would argue, that there would be no conflict between any Enterprise Architecture practice and adoption of agile development methodology. (If you want a quick premier on what EA is then have a look at: A Comparison of the Top Four Enterprise-Architecture Methodologies).
If you are thinking along these lines then I think most Enterprise Architects will agree with you.
Co-existence would be impossible
EA and Agile comes from different mindset and different world view. The challenge of co-existence is nicely captured by Dave Nicolette. This is what he has to say about it (see this):
“…the mission, scope, tools, mentality, culture, and personality types of enterprise architects and agilists are so radically different …. not only is the nature of their work different, but the management styles, employment incentives, and career path options that work with one group don’t work with the other …”
In EA you start with a business goal and from the goal work out what needs to change (people, process, technology, application, data …). As the next step you spell out in complete detail, how the changed scenario will look like. This is to be followed by an implementation plan, execution of the plan and proper governance. The approach is top-down, structured and planned.
In Agile, though you have a business goal in sight, the approach is always evolutionary. You take one step at a time, delivering working solution and reorienting you plan as learning from that step. You create the environment for the team and empower them so that they can self-organize and be more productive.
If this was your answer then most agilists will agree with you.
There will be difficulties but it can be done
Since there happens to be a common ground – both EA and Agile believes that delivering business value is the key – it should be possible for them to co-exist. Not only can they co-exist, they can also complement each other. It is explained succinctly by Ronald van Luttikhuizen (see this):
“…enterprise architecture (top-down), works toward a long-range vision … (agile – bottom-up) addresses questions coming out of projects right now – questions that should be answered quickly … but if either the top-down or bottom-up architecture is missing, you’re not going to end up in the situation you want…”
As stated earlier, in EA you always start with a future business scenario work out what you need to do to achieve that. Similarly, the first two of the 12 principles of Agile Manifesto talks about “…delivery of valuable software…” and “…the customer’s competitive advantage…”.
If you are thinking like this then you are in the august company of Scot Ambler who is the Chief Methodologist for Agile and Lean within IBM Rational. Here is what he has to say (see this for detail)
“…when project teams work under the assumption that they can do anything that they want … chaos typically results … although each individual project may be very successful, as a portfolio they may have serious challenges…”
Now let me add a variant to this thought. I am sure I will invite the wrath of both enterprise architect community as well as the agile community for saying this but I think both EA and Agile have a UTOPIAN world view. In the real world you have to find a middle ground.
Neither emergence nor up-front design can be the right answer to all problems. A middle ground, a HYBRID approach is what is needed.
Imposed structure may be right in some situation; self-organizing team may perform better in other. It is important to be ADAPTABLE so that you can judge which way is better for a given team.
I am sure if you are a realist who understands the dynamics of a large enterprise, you will agree with me.
Published March 28, 2012 Reads 3,389
Copyright © 2012 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Udayan Banerjee
Udayan Banerjee is CTO at NIIT Technologies Ltd, an IT industry veteran with more than 30 years' experience. He blogs at http://setandbma.wordpress.com.
The blog focuses on emerging technologies like cloud computing, mobile computing, social media aka web 2.0 etc. It also contains stuff about agile methodology and trends in architecture. It is a world view seen through the lens of a software service provider based out of Bangalore and serving clients across the world.
The focus is mostly on...
- Keep the hype out and project a realistic picture
- Uncover trends not very apparent
- Draw conclusion from real life experience
- Point out fallacy & discrepancy when I see them
- Talk about trends which I find interesting
- iPad3 vs Windows 8 - and the Winner Is...Cloud
- Eleven Reasons Why Windows Phone Will Overtake Android
- Windows Azure Overview Part 4: Security
- GM to Pull Facebook Advertising: WSJ
- System Center Virtual Machine Manager 2012 as Private Cloud Enabler
- The Web – Changing the Way We Work
- Apply Agile When Deploying Apps
- Perhaps I Haven’t Made Myself Clear...
- Cloud Foundry vs Google App Engine
- Cloud Expo: Architect Full Performance Potential of IaaS Cloud Services
- Cloud Expo New York: Hybrid Clouds Get Real
- Microsoft Sets Up an Open Source Subsidiary
- iPad3 vs Windows 8 - and the Winner Is...Cloud
- Cisco Unveils Visual Collaboration Solutions in the Post-PC Era, Extending the Reach of TelePresence With New Mobile-to-Immersive Offerings
- Eleven Reasons Why Windows Phone Will Overtake Android
- Windows Azure Overview Part 4: Security
- Eleven Tips for Successful Cloud Computing Adoption
- Agile Development & Enterprise Architecture Practice – Can They Coexist?
- GM to Pull Facebook Advertising: WSJ
- System Center Virtual Machine Manager 2012 as Private Cloud Enabler
- The Web – Changing the Way We Work
- Apply Agile When Deploying Apps
- Book Review: Decision Management Systems
- Perhaps I Haven’t Made Myself Clear...
- Google Maps and ASP.NET
- Converting VB6 to VB.NET, Part I
- How to Write High-Performance C# Code
- Crystal Reports XI & How It Has Changed
- Creating Controls for.NET Compact Framework in Visual Studio 2005
- Where Are RIA Technologies Headed in 2008?
- Programmatically Posting Data to ASP .NET Web Applications
- Implementing Tab Navigation with ASP.NET 2.0
- AJAX World RIA Conference & Expo Kicks Off in New York City
- i-Technology Viewpoint: "SOA Sucks"
- .NET Archives: Getting Reacquainted with the Father of C#
- i-Technology Photo Exclusive: Bill Gates & Steve Jobs In "Nerds"
- ');
for(i = 0; i < google_ads.length; ++i)
{
document.write('
- ');
document.write('' + google_ads[i].line1 + '
'); document.write('' + google_ads[i].visible_url + '
'); document.write(google_ads[i].line2 + ' ' + google_ads[i].line3); document.write(' ');
}
document.write('