「悪態のプログラマ」さんの「バグを求めるものたち 前編」というブログをみて、「ひょっとして、このプロジェクトマネージャーさん、似たような言葉を誤解してるのではないかな?」と、ちょっと思ったので、書いてみました。

 ちなみに、上記のブログの中には、こういう言葉が出てきます。



「プログラミング中には、作ったプログラムを動かすな。ただソースコードを書いてコンパイルが通ればよい。とにかく、テスト工程に入るまでは絶対に動かさないこと」

あるプロジェクトマネージャが、プログラマにこのような指示をしていた。

おかしなことを言うものだ。



 たしかに、上記のいいかたは、おかしいです。




 しかし、これに似たようなことをいうケースがあります。


「プログラミングは、コンパイルがとおる所まで、一応作っちゃってね。
 で、正常系がとおることを確認したら、いったん、(こっそり)頂戴!。
(「その段階で、誤解が無いかどうかの確認テストをするから。」ということは言わず)
 詳細な単体テストや、異常系の単体テストは、その後にやってね。」


 これは、ウィリアムのいたずらも、言ったことがあります。
 で、意味があります。

 まず、どういうときかというと、

   本当に、このプログラム、できるんかい?って

 自信、ちょっとないとき。あと、インターフェースが合うかどうかを早く確認したいとき。

 単体テストを一生懸命やってもらっても、言ってる意味が通じてなかったり、結合で合わなかったら、結局作り直しになって、単体テストが無駄になってしまう。

 もちろん、仕様は書いているんだけど、正直、意味が通じているかどうか、分からない(「あんた、俺の言った意味、通じてないだろう!」と、プログラマには、失礼で、いえない)。

 さらにひどいときになると、できるかどうかも自信が無い(BREWなどで、マニュアルにはこう書いてあるけど、この機種で、この機能がサポートされているかどうか、わからない)。


 そこで、早いところ、全部通してもらって、意味が通じているのかどうかを、確認したい。


 そういうときに、ウィリアムのいたずらは、上記のことを言います。

 で、正常系は通って、インターフェースが合っていれば、さらに品質を上げていただくための単体テスト、もし、インターフェースが間違っている(誤解されている)などの問題があれば、プロジェクトをそこで止めます(単体テストもストップ!だって、そのプログラム自体、捨てちゃうかもしれないから)。
 というかんじです。




 上記のプロジェクトマネージャーは、ウィリアムのいたずらなどがいう、「コンパイルがとおる所まで、一応作っちゃって、正常系が出来たら、その時点で頂戴。そしたら、俺が、結合できるかどうか確認する(=テストする)から。で、それでOKだったら、本格的にテストしてね」ということばを、誤解して、あるいは、わざとかもしれないけど、言ったような気がします。

 うーん、たしかに、似てる言葉なんだけど、ちがうんだよなー。言ってる意味は。
 もしかしたら、言う側は、そういう気持ちで言っても、聞く側からすると、そのプロジェクトマネージャーが言った言葉のように聞こえるのかなあ??


■GOOD JOB!
この記事よいネ!クリック!→