こんにちは、こやぷよ(@coyapuyo)です。
ここ数日は、自分の担当するシステムで本番環境トラブルを起こしまくっています。
本来、本番トラブルなどあってはならないのですが、
あまりにも起こしてしまっているのでふと思いました。
「本番で運用しながらテストしている状態になっちゃてるな」と。
開発環境で見つけきれなかった事象が本番でボロボロと起こってしまった
運用前に食い止めておくべき問題が、本番で発生。
そして、出てくる問題に取り急ぎ対処をしては、
「実は・・・」などと言って
別の問題が次々と五月雨状態で出てきてしまう。
そしてそれが、単体試験レベルのロジック誤りから、月跨ぎの考慮漏れなど、割とありがちで次元の低い原因だったりしているので始末が悪いのです。
明らかにそれ開発で、ろくに見てないでしょ、みたいな状況で・・・
本番で実ユーザーにテストをしてもらっているような、
本番を使って遊ぶな!と言われても仕方がないような状態となってしまいました。
そしてそれをやらかしたのは、周りや配下のメンバーでもなんでもなく、まさに自分自身が実作業をした部分である、という、ね。
もうね、こいつのやることは遅い割には品質も伴っていないので、信用できないですね。
せめて、速くて品質悪いか、遅くて品質が良いか、どちらかであってほしかった。。。
開発と本番はイコールには、なりきれない
ただ、一般的にそれは見落としても仕方がないよね、というような状況もあり得ます。
本番と開発の環境は完全に同じに出来るかというとそうではありませんからね。
テストデータと本番の生きたデータとでは、想定が違うこともあります。
スペックや負荷が異なっていたりもするでしょう。
夜間バッチの処理もフル自動で流していなかったりするでしょう。
毎日の日付や時間軸・時系列が進み方なんかについても、完全に模倣してテストをするというは、難しいポイントの一つですね。
今回の僕の事象は、そこまで高尚なものではないので、言い訳のしようもないのですけれど。
ただ、イコールになりきれない、完全に想定はできない、という事自体はあり得ることだと思うのですよね。
もちろん、だからと言って本番を模擬したり近づける努力は怠ってはいけないですけどね。
ただ、やはり難しい部分もあるし、難しいということは、つまりコストがかかる、ということです。
問題がないことを証明するのは、究極的には悪魔の証明に近づいていくことになりますしね。
本番環境で遊ぶのもアリな空気になってほしい気はしている
であればですよ、
(自分の失態は棚に上げての発言になってしまいますが、)
「本番で遊んでもよいんじゃないか?」
と思ったりする部分もあります。そういう文化になってほしい気がする、と言いますか・・・。
全員でベータテストを楽しむような感じと言ったら良いのですかね?
ああでもない、こうでもない、もっとこうした方が良い、とかね。
トライアンドエラーを繰り返していくという感じですかね。
実際使ってみないと分からないこともありますから。
みんなで育ててみれば良いじゃない!まずはお試しだよ!ぐらいの空気感。
・・・はい、極論ですね。
そうです、「程度問題」というのもありますよね。
仕様の改善はユーザーを巻き込んでも良いかもしれないけど、現仕様に対してテストに巻き込むのはおかしいですし、実際に実害が出てしまいますからね。それは許されない可能性が高いでしょう。
システムにも色々なジャンルがあって、
命に関わるもの、お金に関わるもの、公共系のもの、法令や記録に関わるもの、
このあたりは少しのミスも許されないんですよね。
あとは、そのシステムそのものを仕事に使っていて、業務が止まってしまうもの、とかね。
(うーん、挙げていると大半のシステムがミスが許されないような気もしてきましたね。)
ただ、システムが無くても別の方法はあるけど、あったら便利になるよね。
みたいなシステムは、本番で遊ぶスタイルでも良いのではないかと、やはり思います。
システムに限らず、日本ではお客様でいるには天国ですが、サービス提供側に回った瞬間に鬼のような完成度と過剰サービスを求められたりもする嫌いがあります。
もちろん、良いものを提供すればそれで競争優位になるのは良いと思いますが、良いものは高く、安かろうは悪かろう、という棲み分けができても良いと思うのですよね。
究極的には、どのような契約でどの範囲をいくらで請け負うかという話に終着する話だと思うので、そういうお客様と開発の合意が出来るのであれば成立すると思うのですよね。
(逆に、僕の話は合意済みの内容が履行できていないのだから、瑕疵問題に発展しそうなやつですが・・・)
お互いにある種の緩めのマインドセットで一致していれば合意できるようにも思うので、、社会的にそういった空気感の文化になってくれたら良いな、と思った次第です。
完璧にやらないといけないものは高い。
安い方が良いのなら、
動かないこともあるかもしれないですけれど、
お客様にもテストしてもらうことになりますけど
お試し感覚で徐々にみんなでやってみませんか、
みたいなことも選択肢のひとつになるような、ね。
金払ってるんだから出来て当たり前、というのはとても正しいけれどある面では息苦しくもあり。
出来て当たり前、の基準に金額に応じたグラーデーションがあっても良いのではないかな、と。
もうちょっと失敗にも寛容な文化になっていくのも悪くはないような気がします。
などということをほざく逃避記事でした。
ではでは。
コメント