YOUR FEEDBACK
José D'Andrade wrote: "...it may never be released..." Why? "...if Midori isn’t heir to Windows Mi...
SOA World Conference
Virtualization Conference
$300 Savings Expire August 8, 2008... – Register Today!


2007 West
GOLD SPONSORS:
Active Endpoints
Your SOA Needs BPEL for Orchestration
BEA
Virtualized SOA: Adaptive Infrastructure for Demanding Applications
Nexaweb
Overcoming Bandwidth Challenges with Nexaweb
TIBCO
What is Service Virtualization?
SILVER SPONSORS:
WSO2
Using Web Services Technologies and FOSS Solutions
Click For 2007 East
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
When I was a kid, which seems like just yesterday (and no comments from the peanut gallery), I loved playing with LEGO, making imaginary ray guns, space ships, and other things that amuse the average boy. LEGO's popularity and longevity have to be due in no small part to the ability to assemble a ne...
SYS-CON.TV
TODAY'S TOP SOA & WEBSERVICES LINKS


SOA Versus the Appliance
They're not necessarily at odds

Two emerging architectural styles are becoming popular: Service Oriented Architecture (SOA) and appliances. Both are becoming ever more relevant and popular in enterprise architectures. But SOA and appliances are very different architectural styles. SOA supports distributed architecture while the appliance represents the epitome of standalone applications. Both SOA and appliances have distinct advantages and drawbacks. How should organizations evaluate and choose which architecture is right for them?

There are no standard definitions for the terms "SOA" and "appliance." To provide some clarity, I'll briefly describe each approach.

SOA can be defined as a technology-agnostic architecture comprised of loosely coupled modules called "services" that interoperate to perform desired functionality and foster reuse across an organization. A service is a set of cohesive business logic units of work that are encapsulated into a coarse-grained autonomous module. These services are then loosely coupled to form applications. This approach has many benefits, including reuse, that drive down the total cost of ownership and improve functional consistency. In addition, the loose coupling of SOA allows your organization's internal and external services to be integrated easier.

Appliances are software stacks that are integrated into a solutionand, although comprised of many components, act as a single autonomous service or application. This is similar to virtualization, where a software stack is deployed and managed as a stack from the operating system up. An appliance often implies that the solution resides within hardware, while virtualization usually resides in an emulated runtime environment. Virtualization and appliances are architecturally quite similar when contrasted with a SOA style of architecture that promotes distributed services. For simplicity, the remainder of this paper will refer to both the virtualization and appliance styles of architectures as "appliances."

The benefits of an appliance are derived from its extreme encapsulation of an application from the operating system up. This encapsulation makes appliances relatively easy to deploy, scale, and maintain. All the components within the appliance are managed as one, abstracted behind the appliance. Without the appliance, the individual components that would reside within the appliance would have to be managed independently. An appliance's administration is often done from a single interface, and the administrator isn't aware of the individual components within. Some popular appliances include Linksys routers and TiVo digital video recorders. When a user administers a Linksys router from the appliances interface, for example, the software components within the device aren't visible. To the end user, the component stack that supports the device looks autonomous, like a single piece of software. But in reality, these devices are assembled software technology stacks that include the Linux operating system.

The appliances style of architecture seems to be at odds with the SOA architecture. Appliances are autonomous and tightly coupled software stacks, while SOA promotes distributed, loosely coupled software services. SOA allows for better reuse, because a single service can be consumed by many applications. An appliance is superior in terms of ease of deployment and administration because the complexity of integrating the components to form an application is already done. So which is the better architecture? Which one should your organization choose?

Before answering this question, it's a good idea to look at why these architectures are becoming relevant now. Is it just coincidence that SOA architectures and appliances are arriving on the scene at about the same time? Interestingly enough, the key factors that are contributing to these architectural styles coming of age is the same for both SOA and appliances - Open Source software and open standards. Both appliances and SOA architectures are supported by Open Source software. Open Source excels at assembling components into larger solutions because Open Source solutions are usually standards-based, often heterogeneous due to their community-driven model. Open Source is available at all levels of granularity, from small libraries through entire operating systems and databases. The popular acronym "LAMP" that people use to refer to Open Source software is itself an assembled stack comprised of an operating system (Linux), a Web server (Apache HTTP Server), a database (MySQL), and programming languages (PHP, Perl, and Python).

Of course there are many other Open Source components that can be assembled as part of a software stack. LAMP is an acronym that represents Open Source's potential as an architectural stack rather than the specific solutions defined by the acronym. Components that can be assembled are a primary capability in building appliances. Open Source software also benefits from a licensing distribution model, which allows it to be embedded and deployed in an appliance. A vendor can't easily embed commercial software into an appliance and distribute it freely like many Open Source solutions. SOA also relies on Open Source software and open standards. The inherent properties of Open Source make it a compelling solution for a SOA tasked with integrating heterogeneous services in a standard way. This is why there are so many Open Source solutions available for SOA and middleware in general. And open standards such as JBI, JMS, and the plethora of WS-* standards are crucial to a SOA's success. (For more information on the available Open Source software and standards for SOA, please see the white paper entitled "Service Oriented Architecture and Open Source Solutions" from Optaros.)

So now that both SOA and appliances are gaining traction, how does an organization choose between them? Which option is better - SOA's distributed and reusable architectural approach or the appliance's simplicity and ease of maintenance? The best choice may not be to choose between them, but to choose them both. Perhaps the best way to view these two architectures is how they complement each other. An enterprise should unify both strategies to leverage the strengths each provides - SOA is adept at enterprise architecture, while appliances excel at application architecture. Appliances are a compelling way to build services and SOA eases the effort to integrate services. (See Figure 1)

In this model an application is built by accessing services through the SOA infrastructure and providing an interface. The services are built and deployed as appliances. This marriage seems optimal, benefiting from each architectural style's inherent benefits. This is a great way to develop services and applications when they are built in-house. Some third-party appliances have user interfaces built into them, and thus are standalone applications. For these appliances, it's a good idea to make sure the appliance has an API that can integrate into the organization's SOA infrastructure. Choose appliances that have open and defined APIs so the SOA can discover and leverage their logic and data. For example, if Web Services are a supported endpoint in your organization's SOA, then the appliance can be wrapped with SOAP, a WSDL can be created for the appliance, and the appliance is entered into a corporate discovery database, such as a UDDI repository. With this approach, the appliance will look like a common service to the other services and applications on the SOA that may want to use it.

Looked at this way, SOA and appliances aren't at odds, but can be used to build stronger enterprise architectures. Many organizations are just beginning to evaluate SOA and appliance architectures, so now is a great time to evaluate the architectural differences between these solutions and create a plan to prevent these different architectural styles from pulling each other apart. Instead, they can coexist by leveraging the inherent and powerful advantages provided by each.

About Adam Michelson
Adam Michelson is the SOA and Enterprise Architecture Practice Lead at Optaros. He has more than 10 years of technology implementation experience in both product-driven organizations and professional services firms. Prior to joining Optaros, he was the Director of Engineering at ZANTAZ, a litigation support and compliance software product company.

YOUR FEEDBACK
Business Integration Architecture & Technology wrote: Trackback Added: Simplify SOA with Software Appliances ; I have been working with several appliances to efficiently provide core services for SOA. The appliances I have found of most value fit into the categories of XML accelerators, web services security and data integration.
SYS-CON Brasil News Desk wrote: Two emerging architectural styles are becoming popular: Service Oriented Architecture (SOA) and appliances. Both are becoming ever more relevant and popular in enterprise architectures. But SOA and appliances are very different architectural styles. SOA supports distributed architecture while the appliance represents the epitome of standalone applications. Both SOA and appliances have distinct advantages and drawbacks. How should organizations evaluate and choose which architecture is right for them?
SOA WORLD LATEST STORIES
Whether you work for a very large company with thousands of services in production or a small company with only a couple, visibility into the performance and uptime of those services is critical. Before you start investigating the myriad of governance products on the market, many of wh...
According to Wikipedia, 'The last mile (or last kilometer) is the final leg of delivering connectivity from a communications provider to a customer. Usually referred to by the telecommunications and cable television industries, it is typically seen as an expensive challenge because 'fa...
CIO's face a common battle to balance the warring requirements of providing critical business value with maximum efficiency and cost savings. As they look to simplify their IT infrastructure, they must consider where it makes sense to draw a line in the sand and say 'Here's what my ven...
Improving business performance is a goal that cannot be realized without mutual cooperation and alignment between business and IT. In collaboration, IT focuses on architecture, system administration, scalability and performance, security and infrastructure, while business evaluates the...
Effectiveness in achieving goals and objectives has replaced efficiency as the most impactful business priority. Delay will impact performance; every day in which you aren't able to respond to a market or competitive challenge is a day lost. Your business depends on achieving planned r...
SOA World Magazine announced today that the polls are now open for the SOA World Magazine Readers' Choice Awards, which recognize excellence in the software, solutions, or services provided by the industry's top vendors. Readers will be casting their votes until November 8, 2008. Winne...
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON FEATURED WHITEPAPERS


ADS BY GOOGLE