Better Software Testing

ソフトウェアテストをもっと良くしたい

(ビジネス的に)品質の良いソフトウェア

品質の良いソフトウェアってなんだろうと考えていて、想いを一瞬で忘れてしまい、ようやく思い出したので書いておく。

 

僕は職業QAエンジニアだからビジネスコンテキストで考えるけど、いま一言で表現するなら「より少ないコストでより多くの利益をもたらすソフトウェア」かなと考えている。

 

バグが少ないとか、当たり前の価値を備えているとか、魅力的な価値を持っているとか、保守が容易であるとか、堅牢であるとか、運用が容易であるとか、いろんな観点がある(し、それで良い)と思うんだけど、ビジネス的にはまず売上をあげることが大事で、となると「コスパの良さ」はソフトウェア開発における品質のいち観点として無視できない要素なんじゃないかと思う。

 

「売上をあげていて合法で、マナーを守っているなら、バグがあってもいいし、当たり前の価値がなくても良いし、魅力的な価値がなくてもよい」という考え方はあってよい気がしている。実際、(名前は挙げないでおくが)バグがあり、特に魅力的(or当たり前)な価値が見当たらなくても、広く認知され利用されているソフトウェアを幾つか知っている(このような状況が発生するのは、ビジネスの仕組みが優れているからだとも考えている)。利用者は、しばしば文句を言いつつも、なんだかんだそれらのソフトウェアを使うことを辞めない。なんなら、「またバグが出たよ~~w」と話のネタにさえしていることもある。すごいことだと思う。

 

もちろん、バグは少ない方がいいに決まっているし、当然のように期待される機能は実装されているべきだし、可能な限り魅力的な価値を提供した方が良いに決まっている。ソフトウェアだけを見るならそうあるべきだと思う。しかし、開発コストと売上とのコスパ、ビジネスとソフトウェアの融合を考えたときに、最適解となるバランスは何か?優先するべきもの/切り捨てても良い要素は何か?を考えると幸せになる人が増えるんだろうなと思った。