YOUR FEEDBACK
cautionyou wrote: I agree with that the biggest change is the breadth of the projects that are hap...
Cloud Computing Conference
March 22-24, 2009, New York
Register Today and SAVE !..


2008 East
DIAMOND SPONSOR:
Data Direct
Frontiers in Data Access: The Coming Wave in Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
Intel
Virtualization – Path to Predictive Enterprise
Green Hills
IT Security in a Hostile World
JBoss / freedom oss
Practical SOA Approach
GOLD SPONSORS:
Software AG
The Art & Science of SOA: How Governance Enables Adoption
PlateSpin
Effective Planning for Virtual Infrastructure Growth
Fujitsu
Automated Business Process Discovery & Virtualization Service
Ceedo
Workspace Virtualization
Click For 2007 West
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
As you can imagine, I spend a lot of time speaking to people about service-oriented architecture (and its variants for infrastructure and enterprise) and about how best to create a true implementation (or at least, an effective one). There is a great deal of detail in creating such an artifact – d...
SYS-CON.TV
TODAY'S TOP SOA & WEBSERVICES LINKS


SOA World Product Review: iTKO LISA 4 SOA Testing
A key enabler of broad SOA design and implementation

The result was a lot of uncaught errors that led to a vicious cycle of patches and more testing, consuming valuable enterprise resources for no appreciable gain. Thankfully, SOA has served to break those monolithic components into manageable services, service infrastructure pieces, and integration components, and has brought to fruition collaborative service lifecycle governance.

Test cases can be written against smaller components, shared among staff members with varying roles, and ultimately composed to test business processes across every level of the architecture.

The result can mean deep integration of your testing regime and your solutions, and the automated collaboration of all contributors. But you're going to need some specialized SOA test tooling to get there.

Introducing LISA 4
I recently had the opportunity to take a close look at the LISA 4 SOA testing suite from iTKO. I was immediately struck by the completeness of the tool's vision as a key enabler of not only service governance but of broad SOA design and implementation itself. iTKO describes the vision for LISA as "the 3 Cs":

  • Complete - testing of business processes from the system level all the way down through to the lowest-level component. You'll see shortly how this vision is actually executed in the tool.
  • Collaborative - sharing of test processes and assets between all relevant parties in the solution delivery model.
  • Continuous - testing in SOA never stops and LISA supports this across all phases of service and solution lifecycle, including runtime.
Version 4 of the tool drives further towards this vision with some interesting new features:
  • Virtual service environment
  • Dynamic load testing
  • BPM and workflow testing
  • Enhanced support for governance platforms
  • Native ESB integration
The LISA test suite comprises three components:
  • LISA Enterprise - a desktop test client for building and staging test cases - unit, functional, regression, and process tests.
  • LISA Server - a server-side engine that schedules and orchestrates tests for the purpose of continuous validation, driving load tests, and managing the virtual service environment.
  • LISA Extension Kit - an API for developing instrumentation for legacy applications and platforms, which can then be included as steps in a test case
Creating Test Cases with LISA
LISA offers a unified UI that comprises LISA Enterprise functionality for creating and running test cases, as well as deploying and managing tests on a LISA Server. Figure 1 is a screen capture of an example Test Manager test case with the test steps expanded in the left explorer pane. Test steps are created to exercise the system under test, or execute utility functions, with a wide variety of transports, protocols, messaging styles, and data formats available. Response data can be filtered ("Filters" in the figure) and is tested against a set of assertions ("Assertions" in the view). Data sets are configured against a number of backing stores to drive the test data, and can be randomized. An interactive test run utility lets testers step though test cases and visualize the responses.

LISA ships with the following test steps:

  • Web Services (including Web 2.0)
  • Web - HTTP/HTML
  • Swing
  • Java - EJB, RMI, POJOs
  • CORBA
  • SQL/JDBC
  • External processes (including external JUnit tests)
  • Messaging (native ESB, SonicMQ, Web Methods, Websphere MQ, and Tibco Rendezvous)
  • Invoking subordinate test cases as sub-processes
Each category includes test steps that enable the test case to interrogate a component of the system under test, e.g., a Web page, Web Service, or database. Also included are utility steps for setting up the interrogation steps, e.g., collecting a SAML token for use in a Web Service invocation. And the ability to invoke subordinate test cases enables composing existing cases into a larger test of a business process or solution. Just as service composition in SOA is a key functional enabler, composability of test cases in SOA is a key governance enabler.

The sequence of test steps provide a complete test case and form a workflow that can be visualized in the flowchart view, as illustrated in Figure 2. And like any workflow, LISA supports parallel flow of test steps as well as looping. You could, for example, build a test case composed of ESB component service tests, a BPEL process test, a business rule service test, and validated results against a database system of record.

Each type of test step has its own icon. The dotted line around the outside of the "Ferris Wheel" view constitutes the happy path. The lines extending to the middle stop node represents assertions that must be met for the test to continue. The flowchart view is useful for diagnosing workflow problems like infinite loops. As you should be able to tell by now, LISA operates as a holistic system test tool, able to test every layer of a solution architecture, from the data layer all the way through to the Web layer and all interconnects along the way. Figure 3 is a screen capture of Test Manager's test monitor for the example test case.

Taking a deeper look at a Web Service test case, LISA includes steps for introducing WS-Security elements to service requests. You can generate a SAML token and put it into the SOAP Header, as well as encrypt fields and add digital signatures. You can also add custom transport headers and add client certificates for use in an SSL/TLS certificate exchange. LISA will also procure the Web Service access point from a UDDI inquiry service with a binding key, and even validate the response for WS-I compliance. You can even add attachments to your service requests.

Other LISA 4 Functions and Services
The Continuous Testing Service (CTS) functionality of the LISA Server allows test cases to be scheduled against running systems. Test cases in CTS are called monitors, and the CTS dashboard visualizes running monitors, pass/fail ratio, pass/fail for each monitor displayed as a histogram, and a monitor average response time graph. It's easy to envision how this functionality could come in handy. You could set functional test cases to run periodically against test data in production to ensure that functional requirements are being met. And you could schedule load tests for off-hours to catch any performance problems. Coupled with LISA's built-in reporting engine, which records specified test metrics and performance, a rich historical view of operation and performance of solutions is a snap.

One of LISA's coolest features is its comprehensive Virtual Service Environment or VSE. If you can give LISA a WSDL for a Web Service, or even point it to a UDDI registry inquiry service with a service key, it will create a virtualized version of the service suitable for use in your test case. The virtual service's responses can be fulfilled by multiple backing stores, including JDBC and XLS sources, and even a pre-recorded session of data from the real service. And you can configure your test case to switch over to the virtualized service, and dynamically recorded response data, when and if the real service becomes unavailable. Think of how empowering this is - a BPM developer can thoroughly test their business processes in the absence of underlying services and systems, thereby streamlining promotion to integration testing. And by eliminating a redundant test environment in most large enterprises LISA's cost can be returned tenfold. In this respect, LISA becomes a key enabler of implementing an SOA itself - removing dependencies between elements of the architecture means that they can be implemented in parallel and integrated later.

Another LISA innovation is the Pathfinder, a code instrumentation tool that tracks requests as they are processed through the container. For some application services, e.g., JBoss, enabling Pathfinder is a configuration step. In other cases, it may be required to add an annotation to the code itself. And you must add a LISA code library to the deployment. Pathfinder can be used to probe Web pages, Web Services, ESB process flows, and Java classes, among others. After having enabled Pathfinder at the code execution point, leveraging the data in LISA's test client is a simple matter of adding a technology-specific filter to the test case. Then the interactive test run facility will display deep container metrics that can be extremely helpful in performing root cause analysis.

Conclusion
Testing is a key enabler of governance in SOA. Done properly, testing is collaborative, continuous, and done across all layers of the architecture in the context of a solution test case. LISA 4 from iTKO represents a mature tool with some compelling features to support implementing this vision. Its intuitive user interface, extensive suite of test steps, extensibility, continuous testing service, deep component instrumentation, and virtualization service should get you nicely towards implementing a great SOA testing program.

About Paul O'Connor
Paul O'Connor is SOA Practice Director and Chief SOA Architect for e-brilliance LLC (a leading NE SOA consultancy), and is currently doing major SOA architecture and implementations for Fortune 100 clients across the US. Previously he was chief architect for Damascus Road Systems, specializing in security architecture.

SOA WORLD LATEST STORIES
In his virtualization session on Nov. 21 at the 4th International Virtualization Conference & Expo in San Jose, CA, Roland Wartenberg, SAP's director of virtualization strategy, discussed the supported virtualization solutions provided by partners of SAP's virtualization ecosystem. Sim...
Lighthouse Computer Services has expanded its software-related services with the formation of a new group devoted to IBM WebSphere application infrastructure and integration solutions. Lighthouse's WebSphere Services Practice offers extensive capabilities surrounding application integr...
David S. Linthicum, a well-known pioneer in the worlds of cloud computing and service-oriented architecture, is launching a free cloud computing Webinar series sponsored by Blue Mountain Labs. The first Webinar will be held on December 17 at 2:00 p.m. EST, and is entitled "Where SOA Me...
Carl Icahn, the activist stockholder – and champion of the apparently futile “Microsoft Buys Yahoo” plan – who pushed his way onto the Yahoo board by dint of a threatened proxy fight, bought roughly 6.7 million shares of Yahoo the Monday, Tuesday and Wednesday before Thanksgivi...
How does SOA work, how can it be used? And what is WOA? With the use of a real-world example,this article describes why a properly planned and implemented Service Oriented Architecture can create a flexible way of aligning business and IT.
Overall, very exciting times, and a great event put together by the folks at SYS-CON! There was a lot of excitement and optimism throughout the event. As someone put it: cloud computing is about 700 days old. That means that there are a lot of arguments about definitions, and where thi...
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