メインページに戻る
過去ログ

シケた試験

世間では中日を休んで10連休だ! と騒がれていた先日の連休、某社のテスト班は休日全出勤だったらしいよ。
「糞品質で連休なんかとっては怠けているように思われる」
というくだらない理由で、目的も無く出勤したところで何ら成果が出せるわけも無く、バグ票の読み合わせに10日間を費やしたようで。 面白い。実に面白い。

いつまでたってもバグがなくならないので結合テストが終わらないが、いつまでも工程が進まないのはまずいので、 テスト行程を細かく区切って段階的に進んでいるように見せかける事にした。のはいいんだけど

途中から名前が思い付かなくなったのは判るがもうちょっと何とかならんかったのかね。なんだよゴールデンて。 こんなふざけたネーミングを見て何も言ってこない「お客様」も大したもんだけど、 何も言ってこないって事は実のところ資料自体なーんも見てないんじゃないですか。

「こんな事もあろうかと」品質の悪さをオフショア先の中国のせいにするために、中国側に嘘の仕様書を送っていたまでは良かったが、 ふと気付けば本物の仕様書を上書き保存してしまって正しい業務仕様が誰にもわからなくなったというオチ。 某省から受領した業務解説書と照らし合わせて頑張って戻せば?とかファイルサーバのバックアップから復元すれば? とかいうツッコミを入れると見えてはいけないものが見えてしまいそうなので黙っておくことにする。 ちなみに残念なことに、中国側の実装はもちろんとして、日本側で実装した部分も等しくクソ品質なんですよねー。

まあどちらにせよ、正しかろうが誤っていようがソースコードの日本語訳を一個一個丹念に書き並べた「詳細仕様書」で業務仕様がわかるとは思えませんが。

そして日次業務バッチの処理時間が一ヶ月という面白パフォーマンスも相変わらずなので、 本社から自称「SQLスペシャリスト」が派遣されてきました。 確かにSQLの実行計画を見ると実行コストは下がってるんですが、バカの一つ覚えで何でもかんでもUNIONで結合してくださるので、 同じSQLがコピペで大量に繋がるという素敵なクエリになってしまっています。
例えばこんな感じ↓

使用前:


	select
	  column1, column2, column3
	from
	  the_table
	where
	  status_flg in ('1', '2', '3') and
	  create_date >= ?

使用後:


	select 
	  column1, column2, column3
	from
	  the_table
	where
	  status_flg='1' and
	  create_date >= ?
	union
	select
	  column1, column2, column3
	from
	  the_table
	where
	  status_flg='2' and
	  create_date >= ?
	union
	select
	  column1, column2, column3
	from
	  the_table
	where
	  status_flg='3' and
	  create_date >= ?

この例だと3つだけなんだけど、5つも6つも結合しだすから始末が悪い。 実際はSQLをそのまま書くんじゃなくて「高度なフレームワーク」用のXMLファイルに記述するので パラメータの条件分岐なんかが途中に入って可読性なんか地平の彼方へすっ飛ぶ有様ですよ。

無理にSQLだけで小細工するより、クエリをシンプルにしてjava側のコボリッシュな実装を改善した方がいいんじゃないのかね。 COBOLerの中ではSELECT文はバッチ1回につき1回しか発行しちゃ駄目とかいうルールでもあるのかい?

予算を使い果たしても正常系業務が動くレベルすら怪しいような有様で、 このままではシステム強化テスト(笑)は自腹でやらなければならず赤字が確定してしまう! そこで、追加予算をねだれるようお客様への接待を増やすから、人件費削減のため人員を半分にするそうですよ? 私もクビになったらどうしよう、たいへんだなぁ(棒読み)

このプロジェクトの尻拭いのために人員を持って行かれたり戻されたり、他プロジェクトの予算まで接待費の足しにされたりと慌しいので 他のプロジェクトは軒並み凍結状態だったのですが、ついに
「糞プロジェクトなのは勝手だが他のプロジェクトまで巻き添えにするのはいい加減許さん」
という経営層からのお怒りの声を受けて再開された某プロジェクト(といってもこの糞PJの関連案件なんですが)、 4月現在の工程はシステムテストのはずなんですが、いまだにコードのコンパイルが通っていない状態だとか。

そんなステキチックな面々が
「システムテスト用のクライアント環境ですが、仮想マシンなのでOSのインストールができません。これは仕様なので作業を続けられません。」
とか謎のレポートをあげておりました。そんなバカな。普通にホスト側の物理ドライブをマウントしてDVDからインストールすりゃいいんじゃねぇの? つーかOSのインストールができない仮想PCって意味がわからんだろ。 組込み環境とか汎用機のエミュレーションか?

で、よくみるとインストールしようとしているDVDがアップグレード専用という。 物理マシンでも起動できないからおかしいとは思ったんだけどここまで愉快だとは。

ついでにもう一つツッコませてもらうと、未だにビルドが通っていない状況でシステムテスト環境を作るのは結構だけど、結合テストはどこへいったのかな?


メインページに戻る
過去ログ