Monday, January 15, 2024

The importance of testing

The importance of testing:

more than 700 sub-postmasters (Post Office franchisees) were wrongfully prosecuted for fraud, false accounting and theft over a 15-year period, with many imprisoned, losing their livelihoods and facing bankruptcy.


более 700 работников почтовой службы Post Office были несправедливо обвинены в мошенничестве, фальсификации документов и краже финансовых средств, хотя истинной причиной оказалась ошибка в IT-системе Horizon, разработанной Fujitsu и повсеместно используемой в отделениях почтовой связи Великобритании с 1999 года.

Платформа Horizon предназначена для автоматизации и упрощения бухгалтерских процессов. Из-за критической недоработки в коде программное обеспечение вело неправильные подсчёты и раз за разом фиксировало недостачи денег, которые руководители почтовых отделений Post Office затем приписывали работающему на местах персоналу. При этом в головном офисе почтовой службы были убеждены в безупречности финансовых инструментов Horizon и на протяжении многих лет подавали судебные иски против менеджеров филиалов, когда система ошибочно отражала недостачу. Некоторые сотрудники были приговорены к тюремному заключению, многие лишились средств к существованию и столкнулись с банкротством.



"Wrong Result" на примере СУБД Оракл - это больше не про Оракл, а про тестирование и отладку приложений, думаю это понятно.
По моему глубокому убеждению, СУБД Оракл, отлажена гораздо лучше остальных СУБД, потому что используется во множестве зарубежных банков и компаний, у которых процесс тестирования поставлен давно и хорошо (немецкая педантичность, швейцарская точность ... ). Что позволят иметь отлаженную СУБД всем остальным пользователям в мире. Т.е. грамотное тестирование на специально спроектированных тестовых данных быстро выявляет ошибку в расчётах и приводит к исправлению СУБД Оракл.

А вот Постгрес по сравнению с Ораклом вероятно отлажен гораздо меньше и у него гораздо больше шансов на "Wrong Result". Что в сочетании с отсутствующей у нас культурой тестирования, легко приведёт к ситуации как в Почте Великобритании.

В общем, Horizon - это хороший пример, того насколько важно тестировать приложения на специально подобранных тестовых данных и какая может быть цена ошибки.

А второй вывод - своевременно ставить обновления!

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.

Does DEALLOCATE UNUSED or SHRINK SPACE will free space occupied by LOB segment?

Lets check how it works. My env is DB 19.20@Linux-x64 1) I created the table with 4 LOB columns of 4 different LOB types: BASICFILE BLOB, BA...