Sunday, October 6, 2013

The Value of IT Architecture

"The Master does nothing, yet he leaves nothing undone." - The Tao of Architecture


Architecture itself seems to be a misunderstood creature as there is many discussions about how to show value, kick off EA initiatives etc., so first of all, from IT leadership perspective, what’s the value of IT Architecture?

A good architect and good architecture design should be able to prevent issues instead of just fix issues; and a good design can easily handle new requirement without code change, overall, a good architect and architecture design can save company big. However, many projects never had true architecture design. Most time, management only pay attention to the visible part of the project and its immediate result; and in the whole project life cycle, team also only focus on implementing functional requirement. Architecture requirements (scalability, stability, extensibility, maintenance, etc.) are ignored until issue happens, then the hidden architecture requirements become visible functional requirement, new work/resource will be assigned just to fix whatever happened. Every system has architecture, some great some bad most in the middle. The key is the use of artifacts describing the system with some governance body ensuring the standards and reuse.

Architecture should be pro-active at its core. The most important reason why architects and architecture fail is that they are typically reactive or active at best. The challenge is in articulation of value in the earlier stages of the life cycle, when it is in the idea stage and not many steps have been taken yet in realization.. Architecture is an investment and should be considered as such, meaning that you will need to set up the environment for implementing solutions such that it becomes hard to not do good design, that it becomes hard to not develop generic code, to make it hard to not follow set processes. It also means that you have to start small and think big. Make sure that at an early stage your customers, the rest of your organization can reap the benefits and are aware of this. This is not trivial, but that is also the reason why architects are usually the most senior people in your IT department and have transcended beyond being a good engineer or designer.

A roadmap of the journey is a good starting point in taking through the business why EA is important, how it can benefit the business as most times, they also look at immediate needs - quick wins at the least cost. An IT Architect is a technology strategist who is able see beyond tactical solution, understand the need for root cause analysis for an issue with regards to existing system and is able to fine a systemic solution, convince the stakeholders off the systemic fix requiring the extra time and effort over quick patch along with proving a technology roadmap to address the issue. As there's the expectation that the IT Architect is able to communicate with the developers what need to be done and how long with providing direction all along development phase. Finally the developer’s code must be reviewed for the best practice and execution performance meeting tomorrow's and today’s business needs. 

The motivations for the creation of architecture should focus on preemptively building a solution in anticipation of the problem. The value proposition of an IT Architect is the ability to show a cost-benefit of not implementing vs. implementing certain requirements in the architecture. For example, if the business says they need to have their application up and running without fail, they need a High Availability solution. The Architect must explain the cost of not having HA (system down for 2 hours - loss revenue of ?) vs. designing HA as part of the original design. The EA artifacts will also help explain this point to the business. But, it is the C-suite that needs to be convinced that the cost-benefit is worth it, either in the short or long term. At the same time, being proactive you can then start to ask more detailed questions from the business

The value in the architecture is not the technical systems but the human, social and organizational aspects. If you can not build for sustainable development and the pragmatism of efficient delivery for the organizations; no matter how elegant the technical designs they are doomed. The longer view is essential to make sure that the patterns and impacts we are going to provide in "solutions" can be sustained not only in the "systems" but in the systems of people.  Anyone who dug into architecture seriously will end up into sustainability. Architecture is about the human element, it is much needed when someone's needs are being sacrificed for others wants. It is about achieving a situational balanced compromise or a tradeoff.

What’s EA’s value proposition, it is a matter of choice, depending on the situation, where to deep dive and where to spread oneself thin. The value of architects is arguably the most misunderstood role in IT, so as long as the value of the IT architect is well understood in the echelons of the hierarchy, sometimes it involves lot of slide wares; sometimes handholding at code level. Architects suggest implementable solutions. There should not be any imbalance between solution communicated and what the programming team understood it to be. There have been instances where architect teams were used in place of programmers for critical components and significant project budget overflow. Ideally an architect and programmer couple with each other, work well on software products development.

EA’s effort must include and address the worse case scenarios...as missions may change in form during a crisis but the organization does not fall into shock. EA will also decide when those scenarios are actually worth the investment to automate around or whether a "good-enough" no technical procedural solution will accomplish the desired end-state. It is up to EA to communicate and get the buy in from business or the approvers about the need for a larger team of line-of-business architects, solution architects, technical specialists, programmers etc.

To put simply, what are the values EA/EITA can bring to the table? It proactively provide feedback for business betterment, rather than containing knowledge only; EA conveys insight and foresight upon businesses, it's about leverage and balance, how to enforce communication, set up standardization, prioritize project investment, leverage resources and make the balance of the opportunities and risks in catalyzing business growth.

0 comments:

Post a Comment

Twitter Delicious Facebook Digg Stumbleupon Favorites More