Understanding the Architecture of Web

Service-oriented architecture or SOA is an architecture style, not a product or a project. It's an improvement over past architectures in that it captures and uses the best practices of the architectures that came before it. As such, SOA is an evolution in architecture, not a revolution.

By Srikanth Seshadri, CIO.com,

Service-oriented architecture or SOA is an architecture style, not a product or a project. It's an improvement over past architectures in that it captures and uses the best practices of the architectures that came before it. As such, SOA is an evolution in architecture, not a revolution.

Typically the IT department of every organization has applications that can be broadly classified into a back-end and a front-end. The back-end can be considered as the combination of all the business tiers and data tiers of the organization. The front-end layer is the combination of all the presentation tiers.

IT's back-end comprises all the applications developed on J2EE, Microsoft .NET, CICS mainframes and various other technologies that contain the business logic of the organization. It also includes the stored procedures, data in the databases or in various other formats.

The front-end includes all possible business channels, whether Web-based or on the desktop, Web services or Enterprise JavaBeans (EJBs) exposed to partners and clients.

SOA comes to play in the back-end. It's an architecture for the organization's backbone. SOA describes a better way of organizing the back-end, providing mainly high flexibility (faster response to change) and the reuse of existing IT assets. These two characteristics are what make SOA most attractive as an enterprise architecture.

For SOA to work, the back-end must be broken up into a set of services. Each service performs a specific business task. Once the services comprising a set are identified, they can be strung together to form a business process.

Essentially, SOA separates the process logic from the business logic. The business logic is made available as services. The process logic is constructed by linking these services.

The procedure of linking the services to form a business process is also referred to as orchestration. Languages like Business Process Execution Language (BPEL) are used to build the process logic.

The orchestration engines provide support for execution of BPEL, thus facilitating the execution of business processes.

We can use BPEL to build the process logic, but how do we build a service? A service is a specific business task. The first step in building a service is to identify the desired services within the system. A business analyst should identify the reusable business tasks and also provide the granularity of the task. Such a task can be exposed as a service.

In a bank, for example, business analysis can help to determine whether the task of checking an account balance should be a service or whether a cash transfer should be a service. In the latter case, the transfer amount service could be part of a larger business process.

Once the service is identified, the next step would be to implement it. A service must be both loosely coupled and autonomous. In systems developer terms, a service can be compared to a static method of Java that takes as input (as parameters) all the data required for processing and returns the processed output.

By being loosely coupled, SOA mandates that a service be invoked from any type of client, independently of its implementation language or platform. Web services or SOAP technology is one of the better ways of exposing a business service.

SOA strives for maximum reuse. The existing business logic can be exposed as services by writing wrappers around them, thus making the business logic available for various systems in the heterogeneous environment.

As an example, a Microsoft .NET front-end application might use the J2EE back-end, exposed as a service to provide support for a business task. The separation of process logic from business logic makes the system more flexible.

Most of the business changes are related to process logic, rather than business logic. More often than not, new processes are introduced or existing processes modified, while keeping the core business the same. Implementing the change would therefore require only modification or the creation of BPEL script, providing faster response to change.

If any of the business tasks is missing, only the service containing that business logic has to be developed and tested. Hence, this architecture supports incremental development from the very foundation, reducing the overall risk, cost of change, and the development itself.

While this outline describes SOA at a basic level, it may serve as a starting point for anyone who's in the process of trying to comprehend whether service-oriented architecture is applicable to their organization.

Srikanth Seshadri is a technologist with Torry Harris Business Solutions (P) Ltd. Contact him at Srikanth_Seshadri@thbs.com

Copyright © 2007 IDG. All rights reserved.

Related Articles
- Broadband DSLCompared To Cable Modems
Understanding how cable modems operate in comparison to DSL provides a better understanding of why broadband DSL is the preferred choice. To learn more about DSL and internet connections, read the following article.
- Cellular Networks
- Mobile Web Design
- Site Design, Search Engines & Organic Keyword Rankings
- Intel Products
- Website Designing
- Information Risk Management in Context
- Understanding Traffic
- Web Hosting Choices
- Improving the Service-Oriented IT Architecture
Regional Articles
- Understanding the Architecture of Web Alabama
- Understanding the Architecture of Web Alaska
- Understanding the Architecture of Web Arizona
- Understanding the Architecture of Web Arkansas
- Understanding the Architecture of Web California
- Understanding the Architecture of Web Colorado
- Understanding the Architecture of Web Connecticut
- Understanding the Architecture of Web DC
- Understanding the Architecture of Web Delaware
- Understanding the Architecture of Web Florida
- Understanding the Architecture of Web Georgia
- Understanding the Architecture of Web Hawaii
- Understanding the Architecture of Web Idaho
- Understanding the Architecture of Web Illinois
- Understanding the Architecture of Web Indiana
- Understanding the Architecture of Web Iowa
- Understanding the Architecture of Web Kansas
- Understanding the Architecture of Web Kentucky
- Understanding the Architecture of Web Louisiana
- Understanding the Architecture of Web Maine
- Understanding the Architecture of Web Maryland
- Understanding the Architecture of Web Massachusetts
- Understanding the Architecture of Web Michigan
- Understanding the Architecture of Web Minnesota
- Understanding the Architecture of Web Mississippi
- Understanding the Architecture of Web Missouri
- Understanding the Architecture of Web Montana
- Understanding the Architecture of Web Nebraska
- Understanding the Architecture of Web Nevada
- Understanding the Architecture of Web New Hampshire
- Understanding the Architecture of Web New Jersey
- Understanding the Architecture of Web New Mexico
- Understanding the Architecture of Web New York
- Understanding the Architecture of Web North Carolina
- Understanding the Architecture of Web North Dakota
- Understanding the Architecture of Web Ohio
- Understanding the Architecture of Web Oklahoma
- Understanding the Architecture of Web Oregon
- Understanding the Architecture of Web Pennsylvania
- Understanding the Architecture of Web Rhode Island
- Understanding the Architecture of Web South Carolina
- Understanding the Architecture of Web South Dakota
- Understanding the Architecture of Web Tennessee
- Understanding the Architecture of Web Texas
- Understanding the Architecture of Web Utah
- Understanding the Architecture of Web Vermont
- Understanding the Architecture of Web Virginia
- Understanding the Architecture of Web Washington
- Understanding the Architecture of Web West Virginia
- Understanding the Architecture of Web Wisconsin
- Understanding the Architecture of Web Wyoming
Related Articles
- Broadband DSLCompared To Cable Modems
Understanding how cable modems operate in comparison to DSL provides a better understanding of why broadband DSL is the preferred choice. To learn more about DSL and internet connections, read the following article.
- Cellular Networks
- Mobile Web Design
- Site Design, Search Engines & Organic Keyword Rankings
- Intel Products
- Website Designing
- Information Risk Management in Context
- Understanding Traffic
- Web Hosting Choices
- Improving the Service-Oriented IT Architecture

Rss   Delicious   Digg   Add To My Yahoo   Add To My Google   Bookmark   Search Plugin

Topics:
Advertising Family Home Services Real Estate Resources
Business Services Fashion Industrial Goods & Services Retail & Consumer Services
Career Financial Services Insurance Software
Cars Food & Beverage Internet Technology
Computer Hardware Franchise Legal Telecommunications
Construction Health Miscellaneous Trade Shows
Education Holidays Nightlife Travel
Entertainment Home Appliances Online Database Weddings
Environmental Home Electronics Pets World History