Warning! On average, half of your services are performing worse than average*

Orig­i­nally posted on Octo­ber 4th, 2007 at Progress.

I was about to enter a meet­ing yes­ter­day, when a peek into the room showed me every­one dressed “busi­ness casual.” See­ing as I was wear­ing a suit and didn’t want to be over­dressed, I flipped off my shoes and headed on in.

It wasn’t long before some­one com­mented on my suit. Thank­ful for abil­ity to think on my feet, I pointed to my socks and said, “I real­ized the suit was a bit for­mal so I ix-nayed the footwear… on aver­age, I’m busi­ness casual.”

When the clamor in the room sub­sided, the gen­eral con­sen­sus was that I was insane.

And, actu­ally, that was my point. See, I wore the suit on pur­pose, though I admit, I didn’t think of the shoe-schtick until I was out­side the room. My point was…

It’s insane to make impor­tant deci­sions based upon averages.

SOA What? You have a ser­vice. It’s used by sev­eral appli­ca­tions. You want to know how that ser­vice is per­form­ing. What do you measure?

Well, you might mea­sure ser­vice avail­abil­ity or response time. You might mea­sure how much CPU it’s using, or how many mes­sages per sec­ond it can process. But, you never con­sider the application’s many con­texts. Why’s that?

Well, because it’s hard to do that.

Does a man­u­fac­tur­ing sys­tem shar­ing a ser­vice with an HR time-clock sys­tem also share per­for­mance require­ments? Does a mar­ket research appli­ca­tion have the same per­for­mance char­ac­ter­is­tics as a trad­ing appli­ca­tion? If aver­age SLA com­pli­ance is OK, why isn’t aver­age dress-code com­pli­ance OK? Our dress code is, after all, just another “busi­ness policy.”

Ser­vice own­ers often are unaware of the con­texts in which their ser­vices are used. In fact, that’s a key SOA dri­ver! Shar­ing ser­vices with­out wor­ry­ing the imple­men­ta­tion details. The prob­lem, in these shared ser­vices exam­ples, is that the “on aver­age” is implied. Though, clearly, aver­ages are unsuit­able mea­sur­ing compliance.

Please, if you don’t want your san­ity taken in ques­tion like mine, exam­ine your own SOA com­pli­ance with busi­ness poli­cies for expo­sure to aver­ages… before it’s too late.

*I real­ize that, tech­ni­cally, on aver­age half of your ser­vices are per­form­ing worse than the median. But, that didn’t sound as catchy.