Ads by TechWords

See your link here
Subscribe to our e-mail newsletters
For more info on a specific newsletter, click the title. Details will be displayed in a new window.
IT Management
Computerworld Daily News (First Look and Wrap-Up)
Computerworld Blogs Newsletter
The Weekly Top 10
More E-Mail Newsletters 
 

Why achieving SOA quality can be so difficult

April 17, 2006 12:00 PM ET

Computerworld - The forgotten footnote in today's SOA-driven journals, articles and discussion is the notion of software quality. Without quality of an application, the inherent benefits of service-oriented architecture -- to better respond to customers, improve business agility and reduce application development costs -- are lost.

Application quality is fast becoming the primary governor for achieving companywide SOA success and deployment. With so many interconnected parts making up applications that can be delivered virtually anywhere, testing no longer becomes a mere matter of finding bugs within the developer's code or problems that occur on a given user interface. Software quality processes must evolve with the architecture to genuinely test a business process and maintain context across the entire workflow.

There are still many differing opinions and concepts on what constitutes an effective test strategy for all of the distributed components that make up SOA applications. To date, most testing efforts have not kept pace with their needs. SOA applications present a formidable challenge to testing because the following characteristics of the applications:

  • Composite: There is a workflow made up of several components and layers that represent business logic, messaging, infrastructure and data and are separate from the "presentation layer" or user interfaces that the end user consumes.
  • Distributed: Each component can be on different machines, housed either within or far outside your network. Each component can also be delivered and maintained by distributed teams.
  • Heterogeneous: Web services enable many SOAs, but in reality, a typical SOA is an alphabet soup of different technologies. Each component can be a different technology and/or require different operating environments.
  • Dynamic: Each component has its own product life cycle, so the runtime environment of an SOA is almost always a "work in process" of legacy components being maintained alongside newly developed code.

Why achieving SOA quality can be so difficultPlease click on image above to view a readable version.

To deliver quality SOA applications, companies need to do the following:

  1. Test every component as well as the end system. Rigorously test SOA components as they are developed in isolation, but also test the interactions at deployment time. It becomes much harder to predictably find the source of a problem when you can't get direct insight into why heterogeneous technologies do not create a cohesive application.
  2. Involve the whole distributed team in quality. Both developers and nonprogrammers must test collaboratively. Finding the root causes of problems across the middle tiers of SOA applications is difficult. Testing a front-end user interface becomes irrelevant when it provides no insight into what is actually happening on the back end. And expecting developers to find missed requirements by conducting more unit testing at the code level doesn't get the team there either -- it may find some bugs in the component-level code, but it won't demonstrate why a business requirement isn't being met.
  3. Test continuously. SOA is a dynamic workflow that leverages constantly changing elements, which may or may not be under your team's control. Trying to find bugs within your coding process has limited value in this scenario, since the majority of your work involves integration, and not new development. Comprehensive regression testing and runtime monitoring across this distributed environment is critical to maintain the integrity of the application.

Quality is at the core of responsible corporate development. You can accelerate development and reduce costs through better application life-cycle management practices. But you can't deliver a piece of business software unless you can ensure that it meets the business requirements and will not fail in front of the end user. Therefore, quality has become a governing factor on the effectiveness and value of corporate software.

When teams truly collaborate and continuously automate tests against every layer of the SOA, companies can more reliably wrest value from today's complex, service-oriented business software.

Shridhar Mittal is CEO of iTKO Inc., a Dallas-based software testing firm.



Additional Resources

POLL RESULTS
Accelerate your knowledge of the IT world you inhabit by viewing the results of a series of polls taken by your IT peers. These polls of 100+ IT professionals each are available for full viewing. They cover key topics such as virtualization, processor performance, green IT, cloud computing and many others. Be a part of the buzz.
WHITE PAPER
Technology is complex. Keeping it running productively shouldn't be. To that end, you want to minimize the number of solutions needed in-house to simplify operations, maintenance, and support. Kodak offers a best-practices model. One company provides support for both scanner and software, for fast problem resolution without vendor finger-pointing. Download now!
WHITE PAPER
Utilizing demand intelligence improves the precision of pricing, product assortments, channel/store placement, and promotion, which are all essential for sustainable revenue management performance. Learn more, download this free whitepaper today.

White Papers & Webcasts

A Truly Global HCM System
Learn about a system built with advanced object-oriented technology that support multi-national requirements and costs less to implement, maintain and upgrade....  

Usability Is Everything
Learn what sets Workday's HR and Payroll solutions apart from the competition....

Moving Beyond Monolithic - What's Next for Enterprise Application Architectures?
This white paper reviews the current state of enterprise application architecture and presents a prediction on what might come next....  

SaaS at Flextronics, Inc.
Dave Smoley, CIO of Flextronics, discusses the real value of software-as-a-service and why he chose Workday for his HR solution....

The Shortcut Guide to Managing Certificate Lifecycles
(Source: Thawte) If you have ever shopped for a certificate, you know that there is a wide selection of products and vendors from...  

Agile Enterprise Content Management (ECM) for Rapid ROI
Find out how combining ECM and BPM will help adress issues about content rich business processes....

MarketVibe: Communications and Collaboration Needs at Business Organizations
In April 2009, IT and business leaders were invited to participate in a survey on business communications and collaboration solutions. The goal of...  

Modernizing the IT Infrastructure
(Source: Oracle) There is a lot of legacy in many government IT systems today - legacy hardware, legacy software platforms, and legacy skills...

The Value of Network and Application Visibility by Aberdeen
This survey-based paper analyzes best practices for improving application visibility and analysis. This paper can help serve as a guideline for organizations looking...  

Taking the Service Desk to the Next Level
Listen to this conversation with Doug Mueller to learn how standards and processes have evolved to bring us the service desk of today...