In a recent post, Jasmine Noel of Noel, Ptak, & Associates resurrects the concept of the "eight-second" rule, which, back in the hey-day of the dot-com boom, was considered the longest period of time an online customer would wait for a Web page to load before moving on to a competitive site.
SOA these days could use a similar type of benchmark, Noel writes.
But the SOA rule-of-thumb should not be based on service availability or performance as it was in the early days of the Web, but on "transactional validity." Namely, what percentage of automated transactions between services were successfully completed, and how many were dropped because they were incomplete? A system receiving the error message from another system "will typically just drop the transaction and move onto the next one," Noel observes.
Just as increased visibility into their systems -- through better monitoring and management -- helped lick many of the problems around service availability and performance, Noel says we're going to need better visibility into end-to-end transactions across our systems, and especially those involving automated transactions with business partners.
"Having lived through the maturation of Internet consumer transactions, most business and IT staff have a handle on service-level availability and performance monitoring," she adds. "However, the concept of monitoring transactional validity is still in its infancy."
The challenge is complex. "A SOA-based transaction can involve a portal application, single-sign-on application, J2EE applications, legacy mainframe applications and SOA integration software. Thus the source of the error messages transmitted along the transaction becomes hidden in the complex web of integrated services and technologies. The content of these complex interactions must become more visible for troubleshooting of validity problems."
Noel says she's still wrestling with a threshold number for transactional validity that can be universally applied to all business transactions. "An enterprise with one very important customer dropping one percent of their transactions with that customer can translate into enormous losses, whereas one percent of dropped transactions can be the norm for a different enterprise."
I think establishing such a threshold is a smart idea, especially as SOA expands into B2B interactions. However, the original eight-second rule had a huge stick -- the very visible hand of the market -- that enforced system availability. For SOA-based transactions, how often are companies willing to perform manual workarounds to compensate for transaction errors? And, in considering a transactional validity benchmark, how much of an error rate would a business tolerate before it would consider changing a trading partner relationship?