top | item 38401804

(no title)

helloguillecl | 2 years ago

So a few months ago, after a buggy change to a stock update sent to the channel manager (external system for updating pricing and availability of hotel rooms) we lost 21.000 EUR in just 2 hours of the bug being deployed. We exported low season rates (today’s rates) for the higher seasons.

Luckily a human saw the error, when he saw a big flow of reservation coming in at anomalous peace.

From there on, I’m too scared to make changes to the 20-line function that produces the updates to be sent.

We had not a chance to cancel the reservations made through the channels (websites were you book the reservations).

discuss

order

boricj|2 years ago

> From there on, I’m too scared to make changes to the 20-line function that produces the updates to be sent.

Given enough regression testing coverage, any load-bearing function can be changed.

This sounds to me like your project had insufficient or non-existent software quality practices to let this slip through. Hopefully your team has done a post-mortem analysis to make this a learning experience.

krisoft|2 years ago

> From there on, I’m too scared to make changes to the 20-line function that produces the updates to be sent.

Isn’t this where automated testing shines?

jacquesm|2 years ago

You need much better testing. And probably that 20 line function needs better documentation and may even benefit from being further broken out. I hope that it at least is a function that is 'pure', in other words that it does not reference any globals.