06 January 2012

Everybody is doing it!

Everybody is doing it...

Are they? How do you know? Just because it's popular doesn't mean everybody or even a majority are doing it. Even if everybody or even most are doing it doesn't mean it is right or always right for everything. And, if it's being done, how well is it being done? How do you know?

What are some things everybody is doing?

Service Oriented Architecture (SOA)

How's that working out for you? Are things better post-SOA than pre-SOA? Have you performed a cost / benefit analysis? Are things more efficient or cost effective? Are things more or less complex? Are you able to better respond to business requirements, faster time-to-market? Have your software, hardware, support, maintenance and labor costs increased due to the need to implement, maintain and support SOA?  Has your availability improved / unplanned outages, SLAs and QoS improved? Can these be associated with your SOA initiative?

What large public web sites offer SOA (SOAP, WSDL) service endpoints vs. offer REST endpoints?

I'm not saying SOA is a bad idea, just saying it could be wrong for your business model or simply overly complex and expensive for your requirements or your organization.

One thing that should be obvious is to look at who is promoting any particular approach, model, technology etc. and consider why they are promoting it.  It is likely they have something to gain from use of that which they are promoting. Yes, this includes me too.

One of my motivations, besides looking for consulting opportunities, is architectural simplification.  Things have a tendency to get complex on their own, without having to start with a complex architectural approach.  For my customers, I make assessments based on many factors to determine a recommended approach, solution and/or technology that will meet their requirements and expectations. Have two or more options with pros and cons is always a good idea.

Who is promoting the use of SOA?  Is it your IT department C-level / SVP execs? Is it a consulting firm? Is it your own "Enterprise Architecture" team/personnel? Is it your software vendors? I find it is not often IT execs promoting SOA or EA unless they have been influenced by some other player.  IT senior execs, other than tech/innovation focused CTO / Labs / R&D types, are predominately cost/efficiency/risk management focused...keeping costs under control, keeping business systems up and running and meeting their customer requirements in a timely/cost effective manner.   Even if something promises to be better, new things introduce disruption, cost, uncertainty and risk.  Even more so if these new things are complex. 

SOA isn't bad or good, it fits or it doesn't which depends on your specific requirements and your capacity to support it. 

So, keep an open mind, consider alternatives and options, and consider the motivations of those who are promoting SOA, EA, Clouds or anything else for that matter. Complexity is expensive, and once in place it is difficult/costly to remove.  Be an informed, educated technology consumer. Just sayin'.

No comments: