私は現在、とあるパッケージの導入作業を1か月に1、2社のペースで行っています。
パッケージ標準機能そのままで導入する企業、一部機能のカスタマイズや独自機能を実装して導入する企業など様々あります。
プログラムのカスタム自体の難易度はそれほど高くないのですが、難しかったのがマスタ設定で、
設定値を間違えてしまったことによる障害を起こしてしまいました。それも複数…
それまで問題なかったのに、最後にミスを犯すというのが非常に悔しく残念でした。
テスト用に用意したマスタデータは、正しく動作するように設定してしまいがちになり、
本番用のデータは導入先企業からヒアリングしたり、提供してもらったデータをシステムに取り込める形に変換したりと、
テスト時と同じようなデータにはならないものです。
例えば、テーブル上NULLを設定しなければならないところ、空文字を設定したことにより想定と異なる動作をした、
というものがありました。
NULLと空文字、両方同じものとして処理するようにコーディングするというのが対策として考えられますが、
そのマスタは開発者でないと登録変更できないもので、一度設定してしまえばその後ほとんど変わることのないデータでしたので、
どちらかといえばマスタの設定時に注意するべきだったと思います。
他には本番データを使ったテストを実施するなどの対策もありますが、ひとまずチェックシートを作成し、
本番リリース時に確認して再発防止とする、という取り組みを始めました。