Skip the navigation
Opinion

Testing SOA: Peeling the Onion

By Linda Hayes
August 15, 2005 12:00 PM ET

Computerworld - The good news about service-oriented architectures (SOA) is the flexibility they provide for ad hoc integration within and across enterprises. It's also the bad news when it comes to testing, which relies on predictability and repeatability.

The key is to first isolate the architectural layers so that functionality can be tested -- and issues exposed -- at their source as early as possible, then to gradually integrate the components until end-to-end business processes can be verified.

Equally important is to engage subject matter experts throughout the development life cycle to ensure compliance not only with technical specifications but also with business requirements. Waiting for business process acceptance testing to be performed when all the layers are complete is to invite disaster and delay: a service that returns the wrong result in the right way is perhaps even more dangerous than one which fails to execute altogether because it has a higher risk of being undetected, and uncovering the root source of a problem takes longer the more layers are involved.

The challenge for testing an SOA is that the test design should be approached from the top down, and test execution from the bottom up. This paradoxical approach assures that as each layer is implemented the overall enterprise objective -- supporting critical business processes -- is maintained.

It's All About the Data

As exciting as SOA is, never forget that it's just another way to move data from one place to another, and if the data is wrong, then nothing else matters.

This is why subject matter experts are crucial to the test process for SOA. Their role is to define the data contents of the transactions that support the business processes. For each business process, they must identify the supporting data that is required, and for each service request and reply, they must provide the expected values. This can be done in a simple spreadsheet format or in a test repository database long before the service architecture is actually implemented, and can be incrementally expanded as the services take shape.
Testing SOA: Peeling the Onion

For example, if an insurance company receives an electronic claim whose adjudication, payment calculation and remittance is handled through services behind the scenes, then it's essential that the final outcome be correct: the claim is approved or refused appropriately and the amount paid, if any, is accurate. Only an insurance claims specialist can or should define the test cases that will verify the functionality of each application's role in the overall process.

The importance of starting with data analysis is that it maintains focus on what business functions must be exposed as services in order to meet high-level business process requirements. Further, it provides the data contents for the messages that will be used to exercise the infrastructure as it's implemented. Without this data focus, the implementation of an SOA runs the risk of delivering a technically acceptable solution that fails to deliver business value.

The Medium is the Message

Once the business experts have identified the data values, these must be formatted into messages that express service requests and replies. For testing, messages must be created for each request and reply between each provider and consumer application that can be used to test each layer of the architecture.

Message templates can be defined by industry standards or internal specifications. Some industries have already promulgated voluntary standards such as Association for Cooperative Operations Research and Development (ACORD) for example, or regulatory standards such as Health Insurance Portability and Accountability Act (HIPAA) for health care-related transactions.

With a language as verbose as XML, the test data should be maintained separately from the templates and merged only for execution. Default values should be provided for any data elements not critical to the verification of a particular service in order to keep the volumes manageable. This shields subject matter experts from the details of formatting, minimizes the opportunity for formatting errors and permits verification of the templates against standards.
Testing SOA: Peeling the Onion

Once the templates and data values are merged into useful messages they can be used to verify every layer of the architecture. Isolating a consumer or provider application can be done by substituting a message stored in a data file for the other side of the transaction. For example, a consumer request can be sent to a file or a reply received from a file instead of the provider.



Additional Resources
Forrester Consulting - Optimizing Users and Applications in a Mobile World
WHITE PAPER
Solving application issues over the WAN requires careful consideration. Based on their independent research, Forrester Consulting offers recommendations on how to tackle application performance issues, insufficient bandwidth and the inability to quickly restore users in a disaster.

Read now.

Security KnowledgeVault
WHITE PAPER
Security is not an option. This KnowledgeVault Series offers professional advice how to be proactive in the fight against cybercrimes and multi-layered security threats; how to adopt a holistic approach to protecting and managing data; and how to hire a qualified security assessor. Make security your Number 1 priority.

Read now.

Cut Communications Costs Once and for All
WHITE PAPER
New IP-based communications systems are being deployed by small and midsized businesses at a rapid rate. Learn how these organizations are enabling faster responsiveness, creating better customer experiences, speeding office or mobile interactions, and dramatically reducing existing communications costs.

Read now.

App Development White Papers
The Keys to Distributed & Agile Application Development
How leading firms are winning with strategies for efficient application development, without relying on co-location.
Overcome Top 7 Admin Challenges of Active Directory
As Active Directory's role in the enterprise has drastically increased, so has the need to secure the data. Gain insight on creating repeatable,...
Insiders Can Ruin Your Company. Take Action.
Did you know that 80 percent of threats to an organization come from the inside? The threat from insiders is often overlooked in...
Top Solutions and Tools to Prevent Devastating Malware
Custom malware frequently goes undetected. According to Forrester Research, the best way to reduce risk of breach is to deploy file integrity monitoring...
Streamline Compliance and Increase ROI
Streamline, simplify, and automate compliance related activities; especially those that impact multiple business units. This white paper from NetIQ, outlines solutions that will...
All App Development White Papers
App Development Webcasts
Reduced TCO for Communications Applications with New Oracle SPARC Servers
In this webcast learn how Oracle's new SPARC T4 servers and SPARC Supercluster deliver the security, performance, and scalability required for 4G network...
Optimizing Networks for the Cloud
Join guest speaker, Rohit Mehra, IDC Director of Enterprise Communications Infrastructure, to explore current trends, discuss best practices for optimizing Data Center and...
Apps QuickStart Series Part 2: Designing and Deploying SQL Server on VMware vSphere
Download this webcast to learn about the design considerations for virtualizing SQL workloads, performance and scalability information and high-availability options, as well as...
Apps QuickStart Series Part 1: Designing and Deploying Exchange 2010 on VMware vSphere
Download this webcast to learn the virtual hardware design considerations for Exchange 2010, deployment using the building block approach, options for high-availability and...
Customer Spotlight: How IPC The Hospitalist Company Implemented Oracle on VMware
Have you been looking to hear about customer's experiences with the new VMware vCenter Site Recovery Manager product? View this webcast to learn...
All App Development Webcasts
Newsletter Sign-Up

Receive the latest news test, reviews and trends on your favorite technology topics

Choose a newsletter
  1. View all newsletters | Privacy Policy
IT Jobs