歯を食いしばれ!

少し前にあった作業のkptをしておこうと思って記憶から薄れ始めているので、ざっくりした内容でもいいから書き出そうと思った次第です。その作業が別の角度から戻ってきたので忘れることはないんですけどね…

なぜkptをしておこうと思ったか。理由は簡単で、見立ての3倍以上の労力を注ぐことになり、精神的ストレスも必要以上に出てきたためです。といったところで書いていきます。

・keep
事前になにがどの程度の影響があるか確認して、作業内容を明確にする。backlogへ記録しており、作業中にも何度か見直す機会があった。 これは今後も続けようと思う。

・problem
実際の作業の規模感、システムの特性をつかむことができていなかった。具体的な例では、テストのためにデータを開発環境へ入れる必要があったが、件数が多すぎて時間がかかりすぎた。自分の想定では数百万件、実際は約六千万件。この差により想定以上の時間を費やした。 システムの特性では、別のベンダーが絡んでいるため2つの独立したデータベースを参照する。1つは別のベンダーが作ったものであるので営業を与えてはいけないと思っていたが、実際は変更指示を出してもいいらしい。そんなわけあるかって話だけど、あるらしい…これも想定外… システムの構成やDBが2つあることも話をしていて、今回の作業内容を踏まえれば出てきて当然な話なのですが、それが出てこなかった。根掘り葉掘り聞いた上でさらに尋問のようなことをしないといけなかったことになる。問題点ではあるけど対処不可というのが結論です。

・try
速度計測をする観点でDBがかかわるので、実行計画の解析をして最適化したいところ。今回の作業ではどうか?というと若干ピントがずれているが、DBのチューニングという意味では必要なこと。

振り返って思うけど、今回は人災ではないかと… 問題点として挙げた内容をクリアするにはシステムの構成、データの分布、データ量を事前に(誰かに聞くことなく)知っておかないといけなくて、それを全てに当てはめるのは不可能だからです。

同様の内容がきたら歯を食いしばって耐えられるようにする、これが結論です。 ということで、今回の振り返り終了。