OpenLinkOpenLink

News & Events

Articles Archive

December 2004

Quality is a Priority When Selecting Energy Trading Software

Quality is an important attribute to consider when evaluating trading, risk management, and transaction processing software. A key indicator of a strong software provider is the quality they can assure customers from the earliest stages of the product development cycle. It's not an afterthought. It's about embedding reliability into business practices and processes so that products are recognized industry-wide as well designed, easily assimilated, and defect free as possible.

By BRIAN SHYDLO


Functionality, technology, support and documentation are all important considerations in the software selection process. And, while it is a given requirement for energy trading software to have flexible functionality and robust features, what good are they without equally strong guarantees of quality throughout the product development and support lifecycle? So when evaluating IT partners, look for one that, while it continues to invest resources in new functionality and product line expansion, at the same time balances these efforts with an ongoing commitment to reviewing and improving overall quality. It is critical, as a conscientious Quality Assurance (QA) effort can produce dramatic results.

Lesson One:  QA is More Than Just Buzzword Compliance

The lifecycle of commercial software products - from concept to market - begins with designing and defining product functionality. Without the features that address customer needs, there is no basis for quality improvement.

For many software companies, quality initiatives incorrectly begin as a knee-jerk reaction to the direct cost of defects. A vendor must recognize, early on, the need for a significant investment in the right infrastructure to make a high-quality product. If they don't, you will end up paying the price.

When evaluating your options, make sure that any potential provider maintains a proactive QA structure/program that captures detailed information and identifies the root cause of defects. With the fast pace of evolution in software features, it's important to be sure that they have (i.) implemented ways to methodically test and eliminate any bugs prior to a version's release; and (ii.) have the ability to fill any 'cracks' that might lead to future failures.

Lesson Two:  Look for the Links

Defect prevention may be considered the most fundamental reason for quality checks, but QA has many dimensions, and catching defects is just the tip of the iceberg. QA touches every aspect of a user's experience, including the ability to implement and, as business evolves, expand and upgrade a solution as quickly and easily as possible. Understanding and acting on this connection is a differentiation that separates great software companies from merely good ones.

Identifying a vendor's level of commitment and their comprehension of these links may require a little digging. The signs include open communication through action, such as the care that is taken to make changes 'backwards compatible' with prior releases of code, or, as an example, the availability of information like 'what's changed' documentation. When you upgrade, it's not always apparent whether system modifications were part of a design change or a defect. Some intentional design changes may be reported as bugs or, at a minimum, cause confusion. By providing an overview of the enhancement effects in an easy to read synopsis, a provider conveniently shows, in a central location, all of the system changes that a client needs to know about when upgrading. Actions such as this prove that the vendor understands that a user's experience goes well beyond the boundaries of their software functionality.

Lesson Three:  The Proper Way to Eradicate Bugs

Software defects fall into three categories: the obvious that are easily recreated; the obscure that require special data or setup to reproduce; and the sporadic that cannot be recreated on demand. As quality is improved, the number of defects in the first two categories is reduced significantly. But here is the paradox: some users perceive this as a decrease in quality because while the number of issues reported is reduced, those that do turn up cannot be quickly recreated and resolved. If a vendor is faced with this, it shows that they have reached the most mature stage in defect detection and correction, as there is no more difficult category of bug to catch than those that are sporadic and obscure.

But, there is a solution. Look for investments that have been made in a way to capture debugging data from the customer's side. These systems can assist in determining the root cause of a defect and reduce the number of steps it takes to successfully resolve it.

Quality is not something in which you get a letter grade; it is more of a pass/fail proposition. While even one showstopper issue requiring immediate remedy is too many, users could still potentially upgrade if there are minor bugs. Your vendor should have the resources, structure, ongoing commitment, and desire to earn a passing grade in all areas of their software. Initiatives like a 'Known Defect Report' should be available and distributed regularly, keeping in mind that the sum of all of these efforts is information transparency

Make certain your vendor has tried-and-true practices in place, which help resolve potential problems; it could save you time and money in the long-run.

Lesson Four:  Testing, Testing - 1, 2, 3

While there is always a need to manually test for things that either can't be automated or are extremely difficult to automate, an automated testing framework is the cornerstone of a good QA strategy. Yet, no aspect of software testing is more misunderstood.

Automated testing is not really about cost savings. One might naturally expect a decrease in the cost of each test cycle that is automated, when in fact the cost remains about the same. The primary benefit is thoroughness. Granted, an automated testing infrastructure has a high upfront cost, yet no other initiative sends as strong a signal of a company's commitment to quality. If a vendor has not made sizable investments in automated testing, high quality may not be one of their priorities.

All vendors spend time on improving quality, but some pay less attention to a fundamental piece of the process: sharing those efforts with their clients and getting vital feedback. Communicating via reports is okay, but more can be done to showcase what is tested. Top vendors look to facilitate the 'assurance' side of QA through efforts like beta testing programs and the creation of a Test Case Database where clients can see descriptions of the test cases run with each release. By disclosing test cases, the customer is able to see what is tested and suggest additional tests they may want. They become partners in the process, and, over time, the positive effect is that this invaluable feedback equates to faster, more reliable service.

It is also very important for a provider to have strong reactive capabilities to supplement their proactive testing. Why? Because no amount of testing can catch 100% of a system's bugs. If a bug surfaces, make sure you have access to a well-trained support desk. It is also important that your systems partner utilizes the latest Customer Relationship Management (CRM) tools including a web-based system where you can view resolution status online and programs such as Microsoft Live Meeting to speed time to resolution.

Lesson Five:  Separate the Partner From Just Another Provider

Excellent quality should be a factor that helps focus your purchase decisions rather than remain a neutral consideration in the vendor selection process.

For software firms, improving quality is a business strategy. It covers tools and processes, documentation, automated and manual testing, and beta testing on the defect prevention side. On the defect reaction side, it involves providing a first class support team backed up by the organization's business and technical consultants, comprehensive reports, effective debugging tools, and access to test cases. Transparency is key to the 'assurance' part of quality assurance.

A comprehensive QA program is a long and continuing journey as well as a sizable commitment. It does, however, yield its rewards. The work is never done; new lessons are learned and improvements can always be made. While it's easy to state a policy of quality assurance, a strong vendor is one who is able to articulate, and more importantly, demonstrate future quality initiatives.

During your software review, it will be helpful to ask questions and take a closer look at some of these aspects of your short-listed vendors. High quality may not be fully appreciated in a software demo. Shop around carefully before making a final decision. If a software company's QA processes are materially in place, its goals are clear, it has a flexible and responsive team, and execution is easily understood, these are signs that quality is a high priority. When considering your next software purchase or upgrade, look closely at quality and take it seriously.


Brian Shydlo is Senior Vice President of Customer and Product Support for OpenLink and is responsible for the Quality Assurance, Release Management, Support, Documentation, and Training groups. OpenLink is a leading provider of trading, risk management, and operations software solutions. The company's Adaptive, Dynamic, and Integration-enabling (ADI) Framework-based solutions support the most rigorous business requirements of firms trading in energy, interest rate derivatives, fixed income securities, foreign exchange, money markets, metals, and soft commodities.

As seen in Commodities Now magazine - December 2004

Copyright © 1997 - 2004 Isherwood Production Ltd. All rights reserved.

   Printer-friendly version of this article  ()