When software glitches cost money
Today’s local paper has a story about a software glitch at the Meijer big-box grocery stores that caused them to ring up all store purchases at half price. From the article:
It happened on purchases made Saturday between 10 p.m. and 11 p.m., after an “input error” was made at Meijer Inc. headquarters in Grand Rapids, said company spokeswoman Stacie Behler. The company sells groceries and general merchandise at large superstores in Illinois, Indiana, Kentucky, Michigan and Ohio.
A 50 percent discount intended for a style of oriental rug ended up being accidentally applied to nearly everything sold by the retailer, she said.
“We became aware of it pretty quickly,” Behler told The Grand Rapids Press for a story published Wednesday. “We had lots of folks working on the problem, and within the hour it was fixed.”
Yikes! It sounds like employees at the local Meijer store noticed the error early on and compensated for it appropriately.
As someone who does software development, it’s a pretty good example of the nightmare scenarios that come with the trade: either a problem with your code results in a system-wide failure, or a human error using your software causes an equivalent effect (which can often be traced back to insufficient validation, confirmation or documentation with the software itself). When the software error relates to the handling of money, it gets even worse. When the error relates to the handling of money across an entire regional or national organization…there’s no end to the kinds of horrors one can dream up.
Our software development process at Summersault tries to “code defensively” around these kinds of scenarios. We not only design the software to handle the normal usage models that our clients are planning for, but for all of the bad things that can happen when the software is used improperly or even maliciously. We use quality assurance and testing solutions that insure the code is doing what it’s supposed to do, and not allowing users to make it do things it wasn’t designed to do. And of course, after 10 years, now we also have lots of experience building quality software for website applications.
Still, there’s no substitute for real world experience, and with each new project, we encounter new ways that we need to make software more secure, robust or “foolproof.” It’s a fun part of my job to think about those nightmare scenarios and make sure we’ve planned for them, but it’s also an essential part of the services we provide for clients. I just hope I never have to be the staff person at a place like Meijer who has that forehead-slapping moment of realization that $750,000 in sales was lost due to a software glitch that could have been prevented.
Leave a Reply
The opinions expressed by individuals posting in the Summersault Blog are not necessarily those of Summersault, LLC. While we try to insure the quality and accuracy of the information presented here, we make no guarantees about its suitability for any particular purpose.

