Service-oriented architecture, or SOA, is defined as a “software architecture design pattern based on structured collections of discrete software modules, known as services, that collectively provide the complete functionality of a large software application.”
But who really understands what SOA does by such a technical definition, other than IT departments and software consultants? Most people don’t speak this kind of language.
As a way of helping business managers grasp the critical role SOA has on software application, some clever techies got together and came up with an analogy using something every person can understand: Lego blocks.
The Lego Block Analogy
No doubt, many now businessmen and women recall stacking and connecting those small plastic toys for hours as children, building houses, planes, and maybe even large-scale scenes like dueling pirate ships or city skylines. The way these small blocks are able to connect to each other and form larger structures is where its similarity to SOA comes into play.
Like Legos, one of SOA’s most valuable characteristic is in its ability to make IT architecture in businesses more interoperable. Each block has standard bumps and connectors allowing it to connect to other blocks. In SOA, standards-based interfaces are the small bumps that make compatibility possible and connect software to each other.
Lego blocks are also virtually unbreakable. (They have to be to withstand the destructive power of a frenzied toddler.) Similarly, SOA applications designed correctly provides a strong and robust software solution that can endure the pressures and needs of business.
Imagine playing with just one Lego block. Not much fun is it? What makes it enjoyable is the ability to add and subtract pieces to build your own creation. Likewise, SOA allows businesses to compose Services into flexible applications that satisfy a company’s specific needs. In other words, just having the toy isn’t helpful—it’s what you make out the building blocks that matters.
Lastly, Lego blocks are reusable, which means when one creation has served its purpose, it can be torn down to build something else entirely. For instance, if all the red blocks represent customer information Services, then you can disassemble them from one application and use it in another structure.
Are Legos a valid analogy for SOA?
Type the terms “SOA” and “LEGO” in the search bar and you’ll get hundreds of thousands of hits, but is the comparison between the popular childhood toy and complex IT architecture a valid one, or does it miss the mark?
Some argue yes, saying the complexity of SOA cannot be accurately represented by such a simplistic toy. However, while IT departments may find a lack of complexity in the Lego block analogy, for the purposes of most business managers, the comparison is a useful tool for those interested in understanding the value of SOA, rather than the confusing how’s and why’s.
To learn more about value of implementing SOA in your business’s software application model, consult an EDI and SOA expert at Innovative Architects today.