- mumimushunyu
- 33094
- 83
- 3
- 0
SIer時代にCOBOL→Javaのリプレイスやったんだけど、必ず登場するテストが「現新比較」。 旧システムと新システムで同じデータ食わせて、同じ結果が返ってくればOK。 もし旧システムにバグがあって、新システムで直ってると、テストはNG。 どうするか? 新システムでバグを実装します(実話)
2022-02-12 19:05:57感想
@NaotsuguSomeya うっかりバグを直すと、他の全然関係ないところに影響が出る可能性もあるし、実は政治的な理由や、当時のなんらかの事情の結果として、そうなっている可能性も考えられます。 直したところでお金がもらえるわけではないのに、面倒なことになる可能性だけはあって、デメリットしかないんですよね・・・
2022-02-13 12:27:34@NaotsuguSomeya すごく笑顔になりました。 あ、これバグだ!って思いながら実装するときの心の荒廃感が思い浮かぶようです。
2022-02-13 12:44:00@NaotsuguSomeya まぁ元請けやPMのスタンスにもよると思いますよ 自分も現新突合しましたが 新側で差異が出る レポート書いて比較結果と合わせて提出して 新は旧の変なロジック組み込まずそのままでしたよ
2022-02-13 12:52:17@NaotsuguSomeya @ATM_09_TD 現新比較中にバグに遭遇する事はあるあるデスね😊。 システムリプレイスは保守とスコープが違うので、システムリプレイスチー厶ではそのままにしておいて、保守チームでfixしているはずですよ。
2022-02-13 13:13:22@NaotsuguSomeya 同じく、経験あり大手食品業 四捨五入の丸誤差のバグ 右と左が合わないはずだよ、、仕様書も正しいとはいえないからCOBOLのソースが正 なんだかなぁーと思いながらJava側を合わせたました。
2022-02-13 13:30:30@NaotsuguSomeya 連携先がバグ前提で動いてるから直せなかったりする。シンプルなものだと単純にフラグの0/1が逆転してるとか。他だと素直に考えてバグと判断できるけどホントにバグかどうかは誰にも確定できないとか。よって現新比較のみが判断基準になる。
2022-02-13 14:06:25@NaotsuguSomeya ただ現行互換を考えればこうなるしかなくて、正しい仕様がわからない以上、逆に結果を変えることはできない。下手に変えてどこかで処理結果異常や差分が出て業務止まったらこっちの全責任になるからこうなるしかない。
2022-02-13 14:18:32@NaotsuguSomeya 現新比較でそんなの見つけたら絶好の機会と喜ぶのに… その背景に興味があります。 推測ですが、「バブル時代に、建物建てる時に遺跡見つけたら黙って埋めてた」のと同じ心理な気がする
2022-02-13 14:32:30@NaotsuguSomeya テスト範囲の外側のシステムに、バクをひっくり返す処理が入っている可能性も否定できないので、判断が難しいところですね。
2022-02-13 17:01:56@GHEN_HANDYMEN @NaotsuguSomeya そのバグ直して終わりならいいけど、バグ直した結果生じた非互換性で他のシステムとの結合で不具合が出るかもしれんし、出ないことを保証するための検証もやりきれんからじゃね?
2022-02-13 15:01:23現行と同じにするためのバグの実装やったことありますよ。 ぇ?これ普通ですよね?🤔 twitter.com/NaotsuguSomeya…
2022-02-13 17:09:31中でどう繋がってるかわからないから
あるあるなんだけど、 新システムにバグを搭載させるのが吉。 よかれと思ってもダメ。 リプレイスはリプレイスで区切って、 改善改修は改善改修で行う。 切り分けなきゃダメ。 twitter.com/NaotsuguSomeya…
2022-02-13 17:02:06その時点ではそのようにすると思います。そしてリプレイス後の次期開発で影響範囲を調査してから直すような問題なんだと思います。これは業務に限らず、MSの製品などでもそうなっています。リプレイス時とその後の開発を分けて考えるのが定石かと。 twitter.com/NaotsuguSomeya…
2022-02-13 16:57:50出来るところなら一旦、バグありで仕上げて承認貰って改善で追加発注かな。 マイグレーション中に修正しちゃうと検証に時間がかかるんだよなあ。 一辺に出来るもんじゃあ無いのよね。 twitter.com/NaotsuguSomeya…
2022-02-13 16:51:42この手のリプレースはよくやりました😅 バグ直すとなると設計から始めないといけないからスケジュール収まらないんですよね... 「俺が設計書だ!」みたいな人がいないと絶対納品間に合わない twitter.com/NaotsuguSomeya…
2022-02-13 16:47:56