未来のいつか/hyoshiokの日記

hyoshiokの日々思うことをあれやこれや

デイリービルドの続き

梅田さんにリンクされると山のように新規にリンクが張られたりしてちょっとうれしい。

http://akiko.typepad.com/akikoweblog/2004/05/post.html のデイリービルドの法則はなかなか面白かった。そうなのである。休暇前にむやみにチェックインしてはいけない。コードフリーズの日が近づいてくるとリリースマネージャはこんなようなメールを出す。

忠告:よく読め。
チェックインのあとに休暇をとる予定のもの。お前のコードでビルドが失敗しないようあらかじめ自分の環境でビルドしておけ。お前のコードでリグレッションテストが大量に失敗しないようあらかじめ自分の環境でショートリグレッションテストを流しておけ。この忠告に従わずチェックインして、ビルドないしはショートリグレッションテストに失敗したコードは無条件でロールバックする。

わたしなんかは臆病なもんだから、こんなメールがやってきた日には、そーだよなあ、休暇前にチェックインなんかしちゃいかんよなあ、そーだよなあ、うんうん。毎回チェックインの次の日にはとるものもとりあえづリグレッションテストの結果のメールを祈るようにして見て、自分の関係のテストで問題が発生していないことを確認してとりあえづほっとするみたいな感じつーか。精神衛生上、チェックインの前には同僚にピアレビューをしてもらって、今度このコードをチェックインすんだけど、どんなもんかね?コメントないか?みたいな感じでとりあえづお伺いをたてる。大抵は、トリビアバグフィックスかなんかなので、ふーん、いいんじゃない程度のコメントを貰うのだけど、うーん、どーかな、なんていうような微妙なコメントだと、それを押し切ってまでチェックインする勇気がなかったりして。(とほほ)

時々チェックインをした次の日にテストエンジニアから電話がかかってきて、リグレッションテストのXXXでdiffが出ているんだけどなんでかわかるかい?(しょえーーー、やっちまったか(汗汗))ちょっとまて今確認する(パタタパ(キーボードをたたく音))、うーん、...、あ、これね、これは問題ないよ、メッセージが変わっただけだから、という風になるか、すぐにわからなくて、ちょっとまっててね、調べてからメールするよになるかは、時の運。(おいおい)

でもって、某社の場合は、わたしのような臆病者のためにチェックインする前のチェックリストというのがあって、ビルドをしたか?リグレッションテストを流したか?同僚にコードをレビューしてもらったか?機能テストを追加したか?どのファイルを変更したか?どのテストを変更したか?うんぬんかんぬんというのにチェックをいれてリリースマネージャにチェックインをしてもいいですかというお伺いを立てるというプロセスになっていた。リリースマネージャは毎日毎日各プログラマから送られてくるメールを見て交通整理をしながら、プロジェクトを進行していく。

ある時、リリースマネージャにその承認をもらうためメールを投げたら、電話がかかってきて、「ちょっとオフィスまで来い。質問がある」。ひえーーーー、な、なんなんだ、わたしが悪うございました、とりあえづあやまちゃうか、なんてことを考えながらいそいそとオフィスにいくと、2〜3人のシニアなエンジニアに囲まれてリリースマネージャがワークステーションに向かいながらぶつぶつ言っている。Execuse meとか言っても振り向きもしない。テストエンジニアが難しい顔をして、なんだ?と言う。これこれしかじかで何か問題っすか?と聞くと、お前のチェックインはバグフィックスか?これこれしかじかです。そうか、じゃあいい。と振り向きもしないでリリースマネージャは言う。この儀式を一度でもくぐった者はテストをしないでチェックインをするなんていう蛮勇は絶対しない。間違いない。ましてや休暇前に。